ディレクトリ対応アプリケーションは、オブジェクトの属性にデータを格納することによって、Active Directory ドメイン サービス (AD DS) をディレクトリ ストアとして使用します。ディレクトリ対応アプリケーションは、既定の Active Directory スキーマによって提供される属性を使用する場合があります。それ以外の場合、ディレクトリ対応アプリケーションは、新しい属性を導入することによって既定の Active Directory スキーマを拡張します。これらの属性の中には、その値がディレクトリ対応アプリケーションで一意であることが必要なものがあります。ただし、アプリケーションがデータを格納するために使用する属性が既定のスキーマに含まれているか、またはディレクトリ対応アプリケーションによって既定のスキーマに導入されたかどうかに関係なく、AD DS では、それらの属性の一意性は保証も強制もされません。
次に例を示します。管理者が構造化照会言語 (SQL) サービス アカウント ServiceAccount1 をインストールし、servicePrincipalName 属性を使用して AD DS でサービス プリンシパル名 (SPN) を登録するとします。
メモ |
|
SPN は、クライアント コンピューターがサービスのインスタンスを一意に識別するために使用する名前です。フォレスト全体のコンピューターにサービスの複数のインスタンスをインストールする場合は、各サービス インスタンスが独自の SPN を持っている必要があります。 |
後で、管理者が ServiceAccount1 を削除し、ServiceAccount2 を作成します。その管理者は、ServiceAccount2 にも ServiceAccount1 の元の SPN を割り当てます。しばらく経ってから、管理者が Active Directory のごみ箱を使用して ServiceAccount1 を復元します。この時点で、ServiceAccount1 と ServiceAccount2 の両方のライブ オブジェクトが同じ SPN を持っているため、認証に関する問題が発生します。
データを格納するためにディレクトリ対応アプリケーションでよく使用される、既定の Active Directory スキーマにある属性の例を次に示します。AD DS では、次の属性の一意性は強制されません。
-
userPrincipalName
-
servicePrincipalName
-
uid
-
uidNumber
-
employeeID
-
employeeNumber
-
legacyExchangeDN
-
proxyAddresses
-
mail
-
textencodedORAddress