私たちはActive Directoryを実行している企業ネットワーク上にいて、LDAPに関するもの(実際にはActive Directoryメンバーシッププロバイダー)をテストしたいと思っていますが、これまでのところ、LDAP接続文字列を理解することはできません。誰かがそれを見つける方法を知っていますか?私たちが知っている唯一のことは、私たちがいるドメインです。
ASP.NET Active Directoryメンバーシッププロバイダーは、指定されたユーザー名、パスワード、および「接続文字列」を使用して、Active Directoryへの認証済みバインドを実行します。接続文字列は、LDAPサーバーの名前と、ユーザーが指定されているコンテナオブジェクトの完全修飾パスで構成されます。
接続文字列は、URI LDAP://
で始まります。
サーバー名には、そのドメイン内のドメインコントローラーの名前を使用できます。たとえば、「dc1.corp.domain.com」とします。これでLDAP://dc1.corp.domain.com/
が得られます。
次のビットは、バインディングユーザーが配置されているコンテナオブジェクトの完全修飾パスです。 「Administrator」アカウントを使用していて、ドメイン名が「corp.domain.com」であるとします。 「Administrator」アカウントは、ドメインのルートの1つ下のレベルにある「Users」という名前のコンテナにあります。したがって、「ユーザー」コンテナの完全修飾DNはCN=Users,DC=corp,DC=domain,DC=com
になります。バインドしているユーザーがコンテナではなくOU内にある場合、パスには「OU = ou-name」が含まれます。
したがって、Service Accounts
という名前のドメインのサブOUであるCorp Objects
という名前のOUのサブOUである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
)を組み合わせて、「接続文字列」を取得します。
(ドメインコントローラーの名前ではなく、接続文字列でドメインの名前を使用できます。違いは、ドメインの名前がドメインのanyドメインコントローラーのIPアドレスに解決されることです。それはメンバーシッププロバイダーが機能するために単一のドメインコントローラーが稼働していることに依存していませんが、名前はたまたま、たとえばDCに解決されますネットワーク接続が不安定なリモートの場所では、メンバーシッププロバイダーが機能していない可能性があります。)
タイプdsquery /?
コマンドプロンプトで。
例:dsquery user -name Ja*
は、名前がJa *で始まるすべてのユーザーの接続文字列を取得します。
私はSofterraのこのツールを使用して(優れたフリーウェアLDAPブラウザーを作成します)、現在ログインしているユーザーからユーザーDNを取得します。 http://www.ldapbrowser.com/download.htm
OUを入力する正しい方法を見つけるのにいつも問題がありました。コマンド dsquery ou domainroot
は、ドメイン内のすべてのOUの正しい名前のリストを提供します。これが大規模な組織に役立つかどうかはわかりません。
リモートサーバー管理ツールのインストール: http://www.Microsoft.com/en-us/download/details.aspx?id=7887
コマンドプロンプトを開き、> dsquery serverと入力します。
詳細については、この投稿を確認してください(投稿の下部): http://www.schiffhauer.com/mvc-5-and-active-directory-authentication/
完全な構文は http://www.faqs.org/rfcs/rfc2255.html にあります。
最も簡単な方法を見つけました:
からも見つけることができます
Active Directoryサーバー->組織単位OUを選択->右クリック->プロパティ-> AttributeEditor-> DistinguishedName
これらをMicrosoft Windows Server 2012 R2から取得しました