Novell.Directory.Ldap使用SSL
时间: 2023-12-12 20:01:54 浏览: 306
使用SSL连接AD域的代码示例如下:
```csharp
using Novell.Directory.Ldap;
using System.Security.Cryptography.X509Certificates;
public static bool ValidateCredentials(string domain, string username, string password)
{
try
{
var connection = new LdapConnection
{
SecureSocketLayer = true,
UserDefinedServerCertValidationDelegate = (sender, certificate, chain, errors) =>
{
// 根据实际需求验证证书
return certificate.Subject.Contains(domain);
}
};
connection.Connect(domain, LdapConnection.DEFAULT_SSL_PORT);
connection.Bind(username, password);
return true;
}
catch (LdapException)
{
return false;
}
}
```
在上述代码中,我们通过设置SecureSocketLayer属性为true来启用SSL连接;并通过UserDefinedServerCertValidationDelegate属性定义证书验证的委托方法,来验证服务器证书。例如,我们可以按照证书的Subject属性来判断证书是否属于目标域。当然,你也可以根据实际需求进行修改。
阅读全文