o..o
o..o

Reputation: 1921

Connecting to LDAP from .NET Core 3.1 - An invalid dn syntax has been specified: NTLM (0x4E 0x54 0x4C 0x4D ) is invalid

I'm trying to connect .NET Core 3.1 API to LDAP running in docker (dwimberger/ldap-ad-it) (configuration):

dn: dc=wimpi,dc=net
objectclass: top
objectclass: domain
dc: wimpi

dn: ou=users,dc=wimpi,dc=net
ou: users
objectclass: organizationalUnit
objectclass: top

dn: uid=test,ou=users,dc=wimpi,dc=net
uid: test
objectcategory: User
cn: Test User
sn: test
memberof: admin
objectclass: top
objectclass: person
objectclass: inetOrgPerson
objectclass: simulatedMicrosoftSecurityPrincipal
samaccountname: test
userpassword: secret

dn: ou=roles,dc=wimpi,dc=net
ou: roles
objectclass: top
objectclass: organizationalUnit

dn: cn=admin,ou=roles,dc=wimpi,dc=net
member: uid=test,ou=users,dc=wimpi,dc=net
cn: admin
objectclass: top
objectclass: groupOfNames

You can connect to the server now
URL:      ldap://127.0.0.1:10389
User DN:  uid=admin,ou=system
Password: secret
LDAP server started in 2187ms

Here is my connection code:

public User Login(string userName, string password)
{
    try
    {
        using (DirectoryEntry entry = new DirectoryEntry("LDAP://127.0.0.1:10389/DC=wimpi,DC=net", "cn=admin,ou=roles,dc=wimpi,dc=net", "secret"))
        {
            using (DirectorySearcher searcher = new DirectorySearcher(entry))
            {
                var all = searcher.FindAll();
            }
        }
    }
    catch (Exception ex)
    {
    }
    return null;
}

But I'm getting an error

An invalid dn syntax has been specified

and in the extended error message I see

Incorrect DN given : NTLM (0x4E 0x54 0x4C 0x4D ) is invalid

What is wrong?

Thanks

Upvotes: 1

Views: 896

Answers (1)

Hamza Tahiri
Hamza Tahiri

Reputation: 506

You should try setting AuthType=Basic in your request, apparently the server is trying NTLM instead of basic.

Upvotes: 1

Related Questions