C# - 确定用户是否在AD中处于活动状态

时间:2014-04-16 13:52:45

标签: c# active-directory

我正在尝试在C#中创建一个方法,以检查在AD中是否启用或禁用了提供的用户名。 我想传递用户名和所需的任何其他信息,如auth用户名和auth密码,因为我自己的id无法查询AD。 我在论坛上搜索了很多例子,但没有一个涉及提供用于查询AD的身份验证用户名和密码。 有人可以帮助我。 非常感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

如果您使用的是.NET 3.5及更高版本,则应查看System.DirectoryServices.AccountManagement(S.DS.AM)命名空间。在这里阅读所有相关内容:

基本上,您可以定义域上下文并轻松在AD中查找用户和/或组:

// set up domain context
using (PrincipalContext ctx = new PrincipalContext(ContextType.Domain))
{
    // find a user
    UserPrincipal user = UserPrincipal.FindByIdentity(ctx, "SomeUserName");

    if(user != null)
    {
       bool isActive = user.Enabled;
    }
}

新的S.DS.AM让您可以轻松地与AD中的用户和群组一起玩!