gpt4 book ai didi

c# - 用户需要什么权限才能在 Active Directory 中验证凭据?

转载 作者:太空狗 更新时间:2023-10-29 19:47:57 25 4
gpt4 key购买 nike

我有一些代码使用 PrincipalContext 对象,并将特定的用户名和密码传递到其构造函数中以绑定(bind)到 Active Directory。

然后调用 .ValidateCredentials() 为正在验证的用户传递不同的用户名和密码。

我的问题是,为了让第一个用户在 Active Directory 中绑定(bind),Active Directory 中需要什么权限?

最佳答案

当我开始研究这个主题时,我发现一切都非常困惑,本教程是最好的入门教程之一,因为其中有很多首字母缩略词,这增加了难度。 https://hynek.me/articles/ldap-a-gentle-introduction/

我会向您推荐一个关于验证的类似问题,但不是专门针对凭证因为有几个代码片段与此类工作相关。

Validate a username and password against Active Directory?

我想你问的是身份验证功能

我认为发布我的整个代码只会让您感到困惑,因此我将解释它的结构并希望能帮助您继续前进并给出一个片段。

我的做法有很多,方法如下:

公共(public)类 LdapAuthentication使用方法 IsAuthenticated其中方法传递域、用户名和密码

然后我用目录条目目录搜索器查找和过滤 SAMAccountName然后,这取决于您的应用程序和您要查找的内容。

但是大部分都在里面系统目录服务

            try
{ //Bind to the native AdsObject to force authentication.
Object obj = entry.NativeObject;

DirectorySearcher search = new DirectorySearcher(entry);

search.Filter = "(SAMAccountName=" + username + ")";
search.PropertiesToLoad.Add("cn");
SearchResult result = search.FindOne();

if (null == result)
{
return false;
}

//Update the new path to the user in the directory.
_path = result.Path;
_filterAttribute = (String)result.Properties["cn"][0];
}
catch (Exception ex)
{
throw new Exception("Error authenticating user. " + ex.Message);
}

这应该足以让您开始搜索并获得所需的内容。祝你好运!

关于c# - 用户需要什么权限才能在 Active Directory 中验证凭据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20482176/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com