0

我能够获得与经过身份验证的用户关联的角色,但不能获得与组关联的角色。有没有办法获取群组

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);
4

1 回答 1

1

我还没有找到办法。在我的项目中,我们对此有一个要求,最终做了一个简单的实现,遍历每个组并检查用户是否是成员。这种方法的问题在于,它忽略了通过组中的组的成员资格以及通过作为 AD 组成员的用户的成员资格,该 AD 组的成员是 AzMan 组的成员。您可以扩展解决方案以涵盖这些场景,但最终我认为,当您开始提出此类问题时,您可能正在使用 Azman(基于操作(或任务)的安全性)沿着基于角色的安全路径前进。

于 2010-09-21T19:12:58.747 回答