如何在Azman中获取用户与之关联的组列表?

时间:2010-02-24 12:44:30

标签: active-directory active-directory-group 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 个答案:

答案 0 :(得分:1)

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