根据AD组成员身份限制对WPF视图的访问

时间:2012-01-23 11:49:13

标签: c# wpf security active-directory active-directory-group

我们有一个WPF应用程序。我们希望根据用户AD组成员资格重新获取对应用程序的访问权限。

我们可以将此作为每个视图的属性,还是作为用户启动应用程序时的检查?

任何代码示例都将受到赞赏。

1 个答案:

答案 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中的用户和群组一起玩!