5

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

我们可以将其作为每个视图的属性,或者作为用户启动应用程序时的检查吗?

任何代码示例将不胜感激。

4

1 回答 1

7

在 .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 中与用户和组一起玩变得非常容易!

于 2012-01-23T12:36:10.490 回答