사용자의 고유 이름을 사용하여 사용자의 유효성을 검사하기 위해 찾은 사용자에게 리 바인드하는 작동중인 LDAP 코드가 있습니다. 효과적으로이 일어나고있는 것입니다 :OpenLdap 고유 이름의 이스케이프 된 문자로 된 C# 바인딩
는 string userDn = @"cn=Feat Studentl+umanroleid=302432,ou=Faculty of Engineering & Physical Sciences Administration,ou=Faculty of Engineering & Physical Sciences,ou=People,o=University of TestSite,c=GB";
string fullPath = @"LDAP://surinam.testsite.ac.uk:636/" + userDn;
DirectoryEntry authUser = new DirectoryEntry(fullPath, userDn, "mypassword", AuthenticationTypes.None);
authUser.RefreshCache();
그러나 이것은 내가 문제가 DN이있는 '+'와 '='고 수 있습니다 의심
DirectoryEntry.Bind()에서 오류 알 수없는 오류 80005000가 발생 CN 속성에. 따라서이 탈출 할 수있는 방법은 \와 문자의 16 진수 값으로해야한다는 찾은 후 나는이 시도 :
string userDn = @"cn=Feat Studentl\2Bumanroleid\3D302432,ou=Faculty of Engineering & Physical Sciences Administration,ou=Faculty of Engineering & Physical Sciences,ou=People,o=University of TestSite,c=GB";
나는 오류 얻을 그러나 :
로그인 실패 : 알 수없는 사용자 이름 또는 잘못된을 암호
나는 이것이 요청에 만족하지만 사용자 DN과 일치하지 않는 이유로 간주합니다.
어딘가에 있습니까?
감사합니다. Gregory. 난 당신의 예제를 시도하고 다른 사람을 도울 것이라고 확신하지만 나에게 그것은 여전히 내부적으로 80005000 오류를 주었다. 나는 그럭저럭 일할 수있는 저수준의 DirectoryServices 예제를 게시했다. – user1444886