10.4. 暗号化したデータベースのエクスポートおよびインポート

暗号化されたデータベースのエクスポートおよびインポートは、通常のデータベースのエクスポートおよびインポートに似ています。ただし、暗号化された情報は、データをエクスポートするときに復号し、データベースに再インポートするときに再暗号化する必要があります。

10.4.1. 暗号化したデータベースのエクスポート

暗号化されたデータベースからデータをエクスポートするには、-E パラメーターを dsconf コマンドに渡します。
たとえば、復号した属性で完全な userRoot データベースをエクスポートするには、次のコマンドを実行します。
# dsconf -D "cn=Directory Manager" ldap://server.example.com backend export -E userRoot
または、特定のサブツリーのみをエクスポートできます。たとえば、ou=People,dc=example,dc=com エントリーからすべてのデータをエクスポートするには、以下のコマンドを実行します。
# dsconf -D "cn=Directory Manager" ldap://server.example.com backend export -E -s "ou=People,dc=example,dc=com" userRoot
dsconf を使用したデータのエクスポートに関する詳細は、dsconf backend export コマンドを使用したデータベースのエクスポート」を参照してください。

10.4.2. 暗号化されたデータベースへの LDIF ファイルのインポート

属性の暗号化が有効な場合にデータをデータベースにインポートするには、以下を実行します。
  1. Directory Server インスタンスを停止します。
    # dsctl instance_name stop
  2. 前回のエクスポートと今回のインポートとの間で証明書データベースを置き換えた場合は、/etc/dirsrv/slapd-instance_name/dse.ldif ファイルを編集して、その属性を含む以下のエントリーを削除します。
    • cn=AES,cn=encrypted attribute keys,cn=database_name,cn=ldbm database,cn=plugins,cn=config
    • cn=3DES,cn=encrypted attribute keys,cn=database_name,cn=ldbm database,cn=plugins,cn=config
    重要
    全データベースのエントリーを削除します。nsSymmetricKey 属性を含むエントリーが /etc/dirsrv/slapd-instance_name/dse.ldif ファイルに残されると、Directory Server は起動に失敗します。
  3. LDIF ファイルをインポートします。たとえば、/tmp/example.ldifuserRoot データベースにインポートするには、以下を行います。
    # dsctl instance_name ldif2db --encrypted userRoot /tmp/example.ldif
    --encrypted パラメーターを使用すると、スクリプトで属性を暗号化して、インポート中に暗号化を設定できます。
  4. インスタンスを起動します。
    # dsctl instance_name start