gpt4 book ai didi

exception - LdapConnection SearchRequest 抛出对象不存在错误

转载 作者:行者123 更新时间:2023-12-05 05:27:18 26 4
gpt4 key购买 nike

我正在尝试查询 LDAP 服务器以查找 LDAP 用户并将其导入我的系统。但是,当我尝试这样做时,请求抛出 DirectoryOperationException,提示 The object does not exist

ldapConnection.AuthType = AuthType.Negotiate;

if (ldapDomain.UseEncryption)
{
ldapConnection.SessionOptions.SecureSocketLayer = true;
ldapConnection.SessionOptions.StartTransportLayerSecurity(null);
}

var credentials = new NetworkCredential(loginName, password, ldapDomain.Name);
ldapConnection.Bind(credentials);

var filter = String.Format("(&(objectCategory=person)(objectClass=user)(anr={0})(!(UserAccountControl:1.2.840.113556.1.4.803:=2)))", loginName);
var request = new SearchRequest(containerDistinguishedName, filter, SearchScope.Subtree);
var response = ldapConnection.SendRequest(request) as SearchResponse;
var entry = response.Entries[0];

我只需要在 Microsoft/Windows LDAP 服务器上工作。现在,containerDistinguishedName 是空的,但可以用值填充以进一步限制搜索过滤器。

最佳答案

由此看来,一个空的 containerDistinguishedName 指的是 Root DSE,但是 subtree 范围的搜索应该仍然有效,假设连接的授权状态允许拖网DIT(根 DSE 仅在搜索结果为 base 时才在搜索结果中返回)。尝试使用“位于”containerDistinguishedName 的 DIT 之上的基础对象,例如 dc=example,dc=com

另见

关于exception - LdapConnection SearchRequest 抛出对象不存在错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20220651/

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