【发布时间】:2019-07-22 03:30:35
【问题描述】:
我有一个使用 Okta LDAP 接口工具的客户端。我们有一个 LDAP v3 工具,可以连接 AD,Open LDAP 其他 LDAP v3 支持的服务器。
我们希望将 Okta LDAP 接口集成到我们的工具中,因为它与 LDAPv3 兼容。我们的代码基于 .NET 框架 + C Sharp。
我们在连接 Okta LDAP 接口时面临一些问题/挑战。
我们目前使用微软提供的微软库中的System.DirectoryServices。但面临 LDAP 接口的问题。
对于StartTLS/389
我得到了错误:
不愿意表演。 LDAP 错误代码 53
更多:无法建立安全连接。致管理员:此服务需要 TLS。 LDAP
对于 SSL/636
错误:服务器无法运行。
链接:
https://docs.microsoft.com/en-us/dotnet/api/system.directoryservices?view=netframework-4.8
https://ldapwiki.com/wiki/LDAP_UNWILLING_TO_PERFORM
var oktaLDAPPath = "LDAP://dev-506668.ldap.oktapreview.com:636/ou=users,dc=dev-506668,dc=oktapreview,dc=com";
var un = "uid=*******,dc=dev-506668,dc=oktapreview,dc=com";
var pass = "*******";
var filter = "((objectClass=*))";
try
{
using (var userDirectoryEntry = new DirectoryEntry(oktaLDAPPath, un, pass,AuthenticationTypes.SecureSocketsLayer))
{
using (var directorySearcher = new DirectorySearcher(userDirectoryEntry, filter) { PageSize = 100 })
{
directorySearcher.FindOne();
}
}
}
catch (DirectoryServicesCOMException dex)
{
}
catch (Exception ex)
{
}
谢谢
【问题讨论】:
标签: c# ssl ldap okta directoryservices