16.7. 一方向の同期の設定
図16.1「Active Directory - Directory Server の同期プロセス」に示すように、同期はデフォルトで 双方向 となります。つまり、Active Directory の変更が Directory Server に送信され、Directory Server の変更が Active Directory に送信されることを意味します。
変更が一方向のみに送信される場合は、一方向同期 を作成できます。これはマスターとコンシューマーの関係と似ています。[2] マルチマスターとは対照的です。
同期合意の追加属性
oneWaySync
は、一方向の同期を有効にし、変更を送信する方向を指定します。使用できる値は fromWindows
(Active Directory から Directory Server への同期の場合) および toWindows
(Directory Server から Active Directory の同期の場合) です。この属性がない場合、同期は双方向になります。
図16.6 一方向の同期
同期プロセス自体は、双方向と一方向の同期にほぼ同じです。これは、同じ同期間隔と設定を使用します。唯一の違いは、同期情報の要求方法にあります。
Windows Active Directory から Directory Server への同期では、定期的な同期の更新間隔で、Directory Server が Active Directory Server に接続し、DirSync コントロールを送信して更新を要求します。ただし、Directory Server は、その側から変更やエントリーは送信されません。つまり、同期更新は、Active Directory の変更内容が Directory Server のエントリーに送信され、更新されることで構成されています。
Directory Server から Active Directory 同期では、Directory Server は通常の更新で Active Directory サーバーにエントリー変更を送信しますが、Active Directory 側から更新を要求しないように DirSync 制御は含まれません。
一方向の同期を有効にするには、以下を実行します。
- 「ステップ 7: 同期合意の作成」 にあるように、同期合意を作成します。
- Directory Server コンソールには、合意の初回作成時に一方向同期を設定するオプションはありません。同期合意を編集して、
oneWaySync
属性を追加します。ldapmodify
の使用:# ldapmodify -D "cn=Directory Manager" -W -p 389 -h server.example.com -x dn: cn=replication_agreement_name,cn=replica,cn="dc=example,dc=com",cn=mapping tree,cn=config changetype: modify add: oneWaySync oneWaySync: fromWindows
注記
一方向同期を有効にすると、同期されていないサーバーで自動的に変更ができなくなる わけではないため、同期更新間の同期ピア間で不整合が生じる可能性があります。たとえば、一方向性同期は、Active Directory から Directory Server に行くように設定されているため、Active Directory が (実質的に) データマスターとなります。Directory Server でエントリーを変更または削除すると、Directory Server 情報はその情報とは異なるため、これらの変更は Active Directory に引き継がれません。次の同期更新時に、編集内容は Directory Server で上書きされ、削除済みのエントリーが再追加されます。
データの不整合が発生するのを防ぐには、アクセス制御ルールを使用して、同期 されていない サーバーの同期サブツリー内のエントリーを編集または削除しないようにします。Directory Server のアクセス制御については、「18章アクセス制御の管理」で説明しています。Active Directory の場合は、適切な Windows ドキュメントを参照してください。
一方向の同期はパスワードの同期には影響しません。
oneWaySync
が toWindows
に設定されている場合でも、Active Directory サーバーでパスワードを更新した後に、パスワードは Directory Server に送信されます。