c#连接到Oracle身份管理LDAP服务器

本文关键字:管理 LDAP 服务器 身份 Oracle 连接 | 更新日期: 2023-09-27 18:06:04

我们正在与另一家拥有Oracle身份管理服务器设置的公司合作。我们将连接到该服务器,并根据从服务器重试的LDAP数据对用户进行身份验证。

我们已经尝试通过使用LdapConnection对象来插入这一点,该对象传入服务器名称和端口以及它们提供给我们的网络凭据,因此我们使用基本的AuthType。然而,在Bind()上,我们总是失败,因为它说我们有无效的凭据。我们已经与客户端合作,以确保他们是正确的,我们已经能够登录到Oracle身份管理凭证,虽然用户名我们必须使用数据从SearchRequests专有名称。但即使这样,我们还是会收到同样的错误。客户端还使用凭据通过Java进行连接。

这是一个我认为没有解决方案的问题,但是有没有人知道如何去做这件事?我们有相同的代码运行,这是工作和从活动目录拉。因此,只要Oracle支持以这种方式连接,我们的代码就应该没问题。但是找到任何与这个话题有关的东西就像拔牙一样。

有人有这方面的经验吗?如果需要,请让我知道我很乐意提供任何额外的细节。

提前感谢!

c#连接到Oracle身份管理LDAP服务器

我最近摸索通过使用LDAP连接到OID。以下是最终为我工作的代码:

// make sure the server and port are correct
using (var ldap = new LdapConnection("ldap.company.com:3060"))
{
    // make sure to pass the username as a distinguishedName
    var dn = string.Format("cn={0},cn=users,dc=company,dc=com", username);
    // passing null for the domain worked for me
    var credentials = new System.Net.NetworkCredential(dn, password, null);
    ldap.AuthType = AuthType.Basic;
    try
    {
        ldap.Bind(credentials);
        return true;
    }
    catch (LdapException ex)
    {
        return false;
    }
}