Windows 2012R2マシンにActive Directoryを設定しました。無効にしようとしています匿名バインディングAD にバインドしたいのですが、まだ方法がわかりません。その結果、IP アドレスと LDAP ブラウザなどのプログラムだけを使用して AD にバインドできるようになりました。
匿名バインディングを無効にするにはどうすればいいですか?
答え1
Active Directory (Windows 2000 以降) では、デフォルトでは検索以外の匿名操作は許可されませんrootDSE
。したがって、Active Directory に匿名でバインドできる場合、次の 2 つのうちのいずれかを意味します。
- 匿名バインドのRootDSEに接続していますすべき設計により許可される。
- すでに Active Directory を変更して、非 rootDSE 操作の匿名バインドを許可しているため、その構成を元に戻す必要があります。
匿名はRootDSEにバインドしますすべきである許可されています。これは、ほとんどのアプリケーションが、さまざまなパーティションの識別名など、さらなるバインドを完了するためにディレクトリに関する情報を取得する方法が RootDSE であるためです。RootDSE には機密情報は含まれておらず、RootDSE への匿名バインドは、RootDSE が動作するように設計されている方法です。アプリケーションが RootDSE に匿名でバインドできない場合は、問題が発生します。
たとえば、アプリケーションが AD にバインドするためにサポートされている認証メカニズムを知りたい場合、 のsupportedSASLMechanisms
属性からその情報を取得できますRootDSE
が、もちろん、どの認証メカニズムの使用が許可されているかさえまだわからないため、この処理は認証が行われる前に実行する必要があります。
読む:https://msdn.microsoft.com/en-us/library/ms677945(v=vs.85).aspx
2 番目のケースでは、非 RootDSE 操作に対して AD への匿名バインドを有効にしていると仮定し、dsHeuristics
次のディレクトリ オブジェクトの属性の 7 番目の文字を変更してこれを無効にします。
CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,Root domain in forest
dsHeuristics 属性の有効な値は 0 と 2 です。デフォルトでは、dsHeuristics 属性は存在しませんが、内部の既定値は 0 です。7 番目の文字を 2 に設定すると、匿名クライアントはアクセス制御リスト (ACL) で許可されているすべての操作を実行できます。属性が既に設定されている場合は、dsHeuristics 文字列の 7 番目のビット以外のビットを変更しないでください。値が設定されていない場合は、7 番目のビットまでの先頭のゼロを必ず指定してください。dsHeuristics 属性を変更するには、Adsiedit.msc を使用できます。
さらに明確にするために、現在とんでもないRootDSE への匿名バインドを無効にします。これは Active Directory 固有のものではありません。これは LDAP v3 仕様の一部です。
読む:https://technet.microsoft.com/ja-jp/library/cc755809%28v=ws.10%29.aspx より