AD でユーザーをルックアップするとき、ユーザーは 2 つのコントローラー間で異なる 2 つのエントリを持つことができますか? ルックアップ 1 でエントリと参照が返された場合、ユーザーに関する追加情報を取得するために参照をたどる必要がありますか? または、参照に同じ情報が含まれているため、無視できますか?
1 に答える
userPrincipalName
一意性は Active Directory によって強制されません。ユーザー オブジェクトを作成したりuserPrincipalName
、フォレスト全体で一意であることを確認する責任を負うのは、アプリケーションです。同じ割り当てを持つユーザー オブジェクトが複数あることを Active Directory が検出した場合userPrincipalName
、ユーザーはそれを使用してログオンできませんuserPrincpialName
。詳細については、このMicrosoft KBを確認してください。
LDAP 参照結果を受け取ることができる理由はたくさんあります。一般的な理由の 1 つは、親ドメインの下にいくつかの子ドメインがあり、親ドメインから開始してサブツリー検索を実行しようとしている場合です。
ディレクトリ パーティションの一部が子ドメインのドメイン コントローラによって処理されているため、親ドメインのドメイン コントローラはクエリに対する完全な回答を提供できません。したがって、いくつかの が返されますSubordinate References
。これは、参照に従って完全な結果を取得するようにクライアントに示唆します。参照結果の完全なリストについては、ここで確認できます
私があなたの質問を正しく理解していれば、に基づいて LDAP クエリを実行し、userPrincipalName
すでに親ドメインから 1 つのエントリを取得しています。クエリを停止するか、参照に従ってクエリを続行するかを尋ねています。常に参照に従ってクエリを続行する必要があると思います。同じ を持つユーザー オブジェクトが複数見つかっuserPrincipalName
た場合は、大文字と小文字を適切に処理する必要があります。たとえば、Windows のように、ユーザーのログオンを停止したり、どこかに警告メッセージを表示したりします。