Active Directory轻量级目录服务如何从AD DS获取数据

时间:2015-01-23 17:00:01

标签: c# asp.net active-directory

我刚刚开始使用轻量级目录服务,我阅读了很多文章,但我仍然没有什么问题。

我的目标是使用轻量级目录服务对应用程序中的用户进行身份验证。

为了实现目标,我使用this教程安装了轻型目录服务。

完成本教程中的步骤后,我可以使用 ADSI Edit成功连接到它。

然而,当我开始环顾四周时,我发现这个实例是空的。没有用户对象。

我的生产中安装了完整版的Active Directory(2008 R2)。如何将用户数据从完整版本提升到Lightweight,以便进行身份验证?

这可以用我正在采用的方法来完成,还是我误解了轻量级目录服务的概念?

在轻量级目录服务中验证用户的概念是否类似于我通过完整版AD对用户进行身份验证,如下面的代码?

public string Authenticate(string username, string pwd)
    {
        string domain = "mydomain";
        using (PrincipalContext ad = new PrincipalContext(ContextType.Domain, domain))
        {
            bool isValid = ad.ValidateCredentials(username, pwd);
            string result = isValid.ToString();
            return result;
        }
    }

注意*完整的活动目录正在生产中,位于防火墙后面,而轻量级目录服务位于防火墙另一侧的DMZ中。

1 个答案:

答案 0 :(得分:0)

var fullName = string.Empty;
using (PrincipalContext context = new PrincipalContext(ContextType.Domain))
{
    using (UserPrincipal user = UserPrincipal.FindByIdentity(context,"racerX")) //User.Identity.Name
    {
        if (user != null)
        {
            fullName = user.DisplayName;
        }
    }
}
  • 如果用户在AD中,那么您知道他们已经过验证,假设他们的帐户也得到了正确维护..