답변:
ASP.NET Active Directory 멤버 자격 공급자는 지정된 사용자 이름, 암호 및 "연결 문자열"을 사용하여 Active Directory에 인증 된 바인딩을 수행합니다. 연결 문자열은 LDAP 서버 이름과 사용자가 지정한 컨테이너 객체의 정규화 된 경로로 구성됩니다.
연결 문자열은 URI로 시작합니다 LDAP://
.
서버 이름으로 해당 도메인의 도메인 컨트롤러 이름을 사용할 수 있습니다 (예 : "dc1.corp.domain.com"). 그것은 지금 LDAP://dc1.corp.domain.com/
까지 우리에게줍니다 .
다음 비트는 바인딩 사용자가있는 컨테이너 오브젝트의 완전한 경로입니다. "관리자"계정을 사용 중이고 도메인 이름이 "corp.domain.com"이라고 가정 해 보겠습니다. "관리자"계정은 도메인 루트의 한 수준 아래에있는 "사용자"라는 컨테이너에 있습니다. 따라서 "사용자"컨테이너의 정규화 된 DN은 다음과 같습니다 CN=Users,DC=corp,DC=domain,DC=com
. 바인딩하는 사용자가 컨테이너 대신 OU에 있으면 경로에 "OU = ou-name"이 포함됩니다.
따라서 이름 Service Accounts
이 지정된 OU의 하위 OU 인 이름 이 지정된 OU에있는 계정을 사용하면 Corp Objects
이름 corp.domain.com
이 지정된 도메인의 하위 OU 가 OU=Service Accounts,OU=Corp Objects,DC=corp,DC=domain,DC=com
됩니다.
결합 LDAP://dc1.corp.domain.com/
바인딩 사용자가 위치한 컨테이너 (같은 말에 대한 완전한 경로로 LDAP://dc1.corp.domain.com/OU=Service Accounts,OU=Corp Objects,DC=corp,DC=domain,DC=com
) 당신은 당신의 "연결 문자열"을 가지고있다.
도메인 컨트롤러 이름과 달리 연결 문자열에 도메인 이름을 사용할 수 있습니다. 차이점은 도메인 이름이 도메인 에 있는 모든 도메인 컨트롤러 의 IP 주소로 확인 된다는 것입니다. 멤버 자격 공급자가 작동하려면 단일 도메인 컨트롤러를 사용하고 실행하지 않아도되지만 이름이 불규칙한 네트워크 연결이있는 원격 위치의 DC로 확인되면 멤버 자격에 문제가있을 수 있습니다 공급자 작업.)
dsquery /?
명령 프롬프트를 입력하십시오 .
예 : dsquery user -name Ja*
Ja *로 시작하는 이름을 가진 모든 사용자의 연결 문자열을 가져옵니다.
Softerra에서이 도구를 사용하여 (현재 우수한 프리웨어 LDAP 브라우저 작성) 현재 로그인 한 사용자로부터 사용자 DN을 얻습니다. http://www.ldapbrowser.com/download.htm
원격 서버 관리 도구 설치 : http://www.microsoft.com/en-us/download/details.aspx?id=7887
명령 프롬프트를 열고> dsquery 서버를 입력하십시오.
자세한 내용은이 게시물 (게시물의 하단)을 확인하십시오. http://www.schiffhauer.com/mvc-5-and-active-directory-authentication/
전체 구문은 http://www.faqs.org/rfcs/rfc2255.html 에 있습니다 .