Как получить список групп, с которыми связан пользователь в Azman?

Я могу получить роли, связанные с аутентифицированным пользователем, но не с группами. Есть ли способ получить группы

WindowsIdentity userIdentity = HttpContext.Current.User.Identity as WindowsIdentity;

AzAuthorizationStoreClass azManStore = new AzAuthorizationStoreClass();

string storeConnectionString = ConfigurationManager.ConnectionStrings["<CONN STRING>"].ConnectionString;

azManStore.Initialize(0, storeConnectionString, null);

IAzApplication azApp = azManStore.OpenApplication("<APP NAME>", null);

ulong token = (ulong)userIdentity.Token;

IAzClientContext ctx = azApp.InitializeClientContextFromToken(token, null);

object roles = ctx.GetRoles(String.Empty);

1 ответ

Я не нашел способ. В моем проекте у нас было одно требование для этого, и в итоге мы выполнили упрощенную реализацию, которая прошла через каждую группу и проверила, является ли пользователь участником. Проблема этого подхода заключается в том, что он игнорирует членство через группы в группах, а также членство через пользователя, являющегося членом группы AD, которая является членом группы AzMan. Вы могли бы расширить решение для этих сценариев, но в конечном итоге я думаю, что когда вы начнете задавать подобные вопросы, вы, возможно, идете по пути безопасности на основе ролей с Azman (который является безопасностью на основе операций (или задач)).

Другие вопросы по тегам