Страницы

Поиск по вопросам

пятница, 24 января 2020 г.

Проверка принадлежности группе безопасности Azure AD

#aspnet #active_directory #azure


Имеется Локальная Active Directory и её реплика в Azure Active Directory. Пишу Asp.net
приложение с аутентификацией через рабочие аккаунты в облаке, аутентификация работает
нормально. Хочу проверить, принадлежит ли пользователь определенной группе с помощью
такого кода:

User.Identity.IsInRole("имя_группы");


или

[Authorize(Role = "имя_группы")]


Проблема в том, что если в приложении windows-аутентификация, то в локальной AD группы
указываются как ДОМЕН\имя_группы (например Contoso\administrators), но в Azure AD же
нет доменов? Как правильно указать группу в условии?

Авторизация проходит через ADFS, который в том же Azure.
    


Ответы

Ответ 1



Так сделайте тестовую страничку, на которой без авторизации выведите список ролей пользователя. Например, так: public ActionResult Roles() => Content(string.Join(",", from claim in ((ClaimsIdentity)User.Identity).Claims.FindAll(ClaimTypes.Role) select claim.Value)); Сразу станет видно в каком формате там роли передаются.

Комментариев нет:

Отправить комментарий