動的オブジェクト
Windows Server 2003以降のバージョンのWindowsでは、Active Directory Domain Servicesは、ディレクトリに動的エントリを格納するためのサポートを提供します。 動的エントリは、関連付けられた有効期限 (TTL) 値を持つディレクトリ内のオブジェクトです。 エントリのTTLは、エントリの作成時に設定されます。 有効期限は自動的に減少し、有効期限が切れると動的エントリは消去されます。 クライアントは、TTL値を更新 (変更) することによって、動的エントリを現在の残りの有効期限よりも長くすることができます。 動的データをディレクトリに格納するクライアントは、そのデータが消えないように定期的に更新する必要があります。
LDAPを使用してActive Directoryサーバーからの比較的静的でグローバルに関心のあるデータを格納およびアクセスする多くのアプリケーションやサービスは、動的データのニーズに応じてLDAPアクセスを引き続き使用することを好みます。 さらに、アプリケーションによっては、有効期間が限られているDS内のガベージコレクションオブジェクトのタスクをディレクトリサービスにオフロードすることが望ましい場合があります。 アプリケーションディレクトリパーティション (レプリカの配置を制御する機能を備えています) とオブジェクトごとのTTLは、Active Directory Domain Servicesで動的データをホストする機能を提供します。これにより、LDAPアクセスが可能になります。
OID=1.3.6.1.4.1.1466.101.119.2を持つdynamicObjectという新しい補助オブジェクトクラスが、動的エントリによって使用されるベースADスキーマに定義されます。 この補助クラスには、OID=1.3.6.1.4.1.1466.101.119.3を持つentryTTLという属性がsystem-may-contain属性として含まれています。 この属性の値は、対応するディレクトリエントリがディレクトリから消えるまで存在し続ける"秒単位の時間"です。 クライアントがオブジェクトの作成時にこの属性の値を明示的に指定しない場合、DSは後で指定される既定値を提供します。
ディレクトリ内の動的エントリのクライアント更新のためのOID=1.3.6.1.4.1.1466.101.119.1を持つ新しい拡張LDAP操作が、ルートDSEオブジェクトのsupportedExtension属性で定義され、公開されます。
実際の実装では、entryTTLは構築された属性です。 実際のオブジェクトの有効期限は、ms-DS-Entry-Time-To-Liveというシステム専用の属性に、オブジェクトを破棄できる絶対時間として格納されます。
すべての動的オブジェクトには、次の制限があります。
- TTLの有効期限が切れたために削除された動的オブジェクトは、廃棄されません。
- 動的オブジェクトのレプリカを保持するすべてのDCは、Windows Server 2003で実行する必要があります。
- TTL値を持つ動的エントリは、構成パーティションとスキーマパーティションを除くすべてのパーティションでサポートされています。
- Active Directory Domain Servicesは、RFC 2589で説明されているように、オプションのdynamicSubtrees属性をルートDSEオブジェクトに発行しません。
- 動的エントリは、検索、比較、追加、削除、変更、およびmodifyDN操作を処理するときに、非動的エントリと同様に処理されます。
- 静的エントリを動的エントリに変更したり、その逆に変更したりすることはできません。
- 非動的エントリを動的エントリの下位に追加することはできません。