gpt4 book ai didi

.net - c# 通过 ssl 连接到 Active Directory 使 ldap 服务器不可用

转载 作者:太空宇宙 更新时间:2023-11-03 13:41:49 26 4
gpt4 key购买 nike

我正在尝试使用 .net System.DirectoryServices.Protocols namespace api 通过 ssl 连接到事件目录

这是我为连接到事件目录而编写的片段

LdapConnection ldapConnection = new LdapConnection(new LdapDirectoryIdentifier("<ipaddress>:<port>"));
ldapConnection.AuthType = AuthType.Basic;

LdapSessionOptions options = ldapConnection.SessionOptions;
options.SecureSocketLayer = true;
options.ProtocolVersion = 3;

X509Certificate cert = new X509Certificate();
cert.Import(@"E:\client.crt");

ldapConnection.ClientCertificates.Add(cert);
ldapConnection.Credential = new NetworkCredential("administrator", "xxxxxxxxxx");

ldapConnection.Bind();
Console.WriteLine("successfully connected");

当我尝试执行此代码段时,我总是收到 LDAP 服务器不可用错误。我已经为此编写了一个 JAVA 等效程序,它能够连接到服务器,所以我认为证书或事件目录连接没有问题。我也可以使用相同的 IP 地址和端口 389,在没有 ssl 的情况下连接到 Active Directory。

谢谢

最佳答案

LdapConnection ldapConnection = new LdapConnection(server + ":" + port);
ldapConnection.AuthType = AuthType.Basic;
ldapConnection.Credential = new System.Net.NetworkCredential(username,
password);
ldapConnection.SessionOptions.ProtocolVersion = 3;
if (sslEnabled)
{
ldapConnection.SessionOptions.SecureSocketLayer = sslEnabled;
}

这就是我所做的,我能够通过 SSL 连接到 AD。你说你有 Java 程序通过 SSL 连接到同一台服务器。您是否在与 C# 相同的机器上运行 Java 程序?如果不是,如果是 AD 中的自签名证书,请在您的客户端计算机上安装该证书并尝试。

关于.net - c# 通过 ssl 连接到 Active Directory 使 ldap 服务器不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18555600/

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