我们有一个WPF应用程序。我们希望根据用户AD组成员资格重新获取对应用程序的访问权限。
我们可以将此作为每个视图的属性,还是作为用户启动应用程序时的检查?
任何代码示例都将受到赞赏。
答案 0 :(得分:5)
在.NET 3.5及更高版本上执行此操作的最简单方法是使用System.DirectoryServices.AccountManagement
(S.DS.AM)命名空间。在这里阅读所有相关内容:
基本上,您可以定义域上下文并轻松在AD中查找用户和/或组:
// set up domain context
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
// get your group in question
GroupPrincipal group = GroupPrincipal.FindByIdentity(ctx, "YourGroupNameHere");
// check if current user is member of that group
UserPrincipal user = UserPrincipal.Current;
if(user.IsMemberOf(group))
{
// do something here....
}
新的S.DS.AM让您可以轻松地与AD中的用户和群组一起玩!