2010-05-05 4 views
0

ADSI 공급자를 사용하는 C# 클라이언트에서 ADAM 인스턴스에 바인딩하고 있습니다. 바인드가 실패하면 실패를 나타내는 일반 오류 조건이 다시 나타납니다. 내가 트래픽의 네트워크 추적을 보면 ADAM 인스턴스 자체가 확장 인증 정보가 실패한 이유를 나타내는 확장 된 오류 정보를 클라이언트에 보냈지 만 ADSI 공급자가이 확장 정보를 삭제하고 사실을 알려주는 것처럼 보입니다 바인드가 실패했음을 나타냅니다.C#에서 ADSI를 사용하는 LDAP 바인드 오류 코드

예를 들어 실패한 바인드에서 COMException은 항상 값 8007052E를 포함하는 ErrorCode 특성과 함께 throw됩니다. 네트워크 추적을 보면 LDAP가 다시 전송하는 데 실패 할 수있는 여러 가지 이유가 있으며 암호 만료, 계정 사용 안 함, 암호가 유효하지 않음, 사용자가 존재하지 않는 등의 오류가있을 수 있습니다.

ADSI 또는 COMException 객체를 사용하여이 확장 오류 정보를 얻으시겠습니까? 그렇지 않은 경우 누군가가이 정보를 얻을 수있는 다른 .NET 공급자가 있습니까?

답변

0

답변이 없으므로 해결 방법을 통해 직접 답변 해 드리겠습니다.

특정 반환 코드를 사용하고 LDAP 호출에 대한 데이터를 반환하는 대신 바인드가 실패 할 경우 계정에 대한 추가 조사를 수행 할 수있는 서비스 계정을 설정했습니다. 예를 들어, user1의 바인드가 실패하면 서비스 계정으로 바인드하고 user1 계정을 쿼리하고 계정 속성을 읽으면 바인드가 실패한 이유를 더 자세히 확인한 다음 해당 정보를 최종 사용자에게 반환합니다.

관련 문제