暗号化属性

eDirectory 8.8以降では、データがディスクに格納されている間は属性を暗号化してデータを保護できます。暗号化属性はサーバ固有の機能です。

属性を暗号化すると、属性値がエンコードされます。たとえば、DIBに保存されている属性empnoを暗号化したとします。empno=1000である場合、属性値(1000)はクリアテキスト形式ではディスクに保存されません。この暗号化された値は、セキュリティ保護されたチャネルからディレクトリにアクセスした場合にのみ読み取ることができます。

方式内のすべての属性に対して暗号化を有効にすることができます。ただし、共通名(CN)属性に対してではなく、重要なデータに対してのみ暗号化を有効にすることをお勧めします。暗号化する属性の決定については、「データを暗号化するときにデータの完全な安全性を確保する」を参照してください。

Publicおよびサーバが読み込める暗号化属性へのアクセスに制限はありません。つまり、クライアントはクリアテキストを使用してこれらの属性にアクセスすることができ、ユーザはこれらの暗号化用の属性にDIBレベルでマークすることができます。

図 37
暗号化属性

eDirectory内のデータは次の方法で保存できます。

属性を暗号化するには、暗号化属性ポリシーを作成してサーバに適用します。

属性を暗号化するには、iManagerで次の操作を実行します。

  1. 暗号化属性ポリシーを作成して定義します。

    1. 暗号化する属性を選択します。

    2. 属性の暗号化方式を選択します。

    詳細については、暗号化属性ポリシーを作成して定義するを参照してください。

  2. サーバに暗号化属性ポリシーを適用します。

    詳細については、暗号化属性ポリシーを適用するを参照してください。

LDAPを使用して属性を暗号化することもできます。詳細については、LDAPを使用して暗号化属性ポリシーを管理するを参照してください。

ベストプラクティスとして、次の操作を行うことをお勧めします。

このセクションでは、次の情報について説明します。


暗号化方式を使用する

eDirectory 8.8では、属性のセキュリティを確保するために、次の暗号化方式がサポートされています。

1つの暗号化属性ポリシーに含まれる各属性に対して、個別に暗号化方式を選択することもできます。たとえば、EP1という暗号化属性ポリシーに含まれる属性cubenoに対しては暗号化方式としてAESを選択し、属性empnoに対してはトリプルDESを選択することができます。詳細については、暗号化属性ポリシーを作成して定義するを参照してください。

属性の暗号化方式を変更するには、暗号化属性ポリシーを編集します。すでに暗号化されている属性を復号化することもできます。詳細については、暗号化属性ポリシーを編集するを参照してください。

レプリカリング内の各サーバに対して、個別に暗号化方式を選択することもできます。たとえば、属性を暗号化する際に、Server1ではAESを使用し、Server2ではトリプルDESを使用し、Server3では暗号化方式を使用しないというような設定が可能です。


暗号化属性ポリシーを管理する

ポリシーを作成して定義し、サーバに適用することで、属性の暗号化を管理できます。

暗号化属性ポリシーを定義するには、暗号化する属性と暗号化方式を選択します。

図 38
属性を暗号化する

暗号化属性ポリシーの管理には、iManagerを使用できます。このセクションでは、次の情報について説明します。


iManagerを使用して暗号化属性ポリシーを管理する

このセクションでは、次の手順について説明します。

暗号化属性がeDirectoryサーバに存在する場合、iManagerは次の方法で動作します。

  1. クリアテキストまたはセキュリティで保護されたチャネルを介して、暗号化属性の読み込み、表示、修正を行うことはできません。
  2. クリアテキストまたはセキュリティで保護されたチャネルでiManagerを介して、暗号化属性以外の属性を持つエントリの属性の読み込み、表示、修正を行うことはできません。これは、エントリ全体がブロックされていることを意味します。

暗号化属性ポリシーを作成して定義する
  1. Novell iManagerで、[役割およびタスク]ボタン[役割およびタスク]ボタンをクリックします。

  2. [eDirectoryの暗号化]>[属性]の順にクリックします。

  3. 暗号化属性ポリシー管理ウィザードで、[作成]>[編集]>[Apply Policy]の順にクリックします。

  4. 暗号化属性ポリシー管理ウィザードの指示に従って、ポリシーを作成し定義します。

    ウィザードの各段階で、[ヘルプ]が利用できます。


暗号化属性ポリシーを編集する
  1. Novell iManagerで、[役割およびタスク]ボタン[役割およびタスク]ボタンをクリックします。

  2. [eDirectoryの暗号化]>[属性]の順にクリックします。

  3. 暗号化属性ポリシー管理ウィザードで、[ポリシーを編集します。]を選択します。

  4. 暗号化属性ポリシー管理ウィザードの指示に従って、ポリシーを編集します。

    ウィザードの各段階で、[ヘルプ]が利用できます。


暗号化属性ポリシーを適用する
  1. Novell iManagerで、[役割およびタスク]ボタン[役割およびタスク]ボタンをクリックします。

  2. [eDirectoryの暗号化]>[属性]の順にクリックします。

  3. 暗号化属性ポリシー管理ウィザードで、[Apply Policy]を選択します。

  4. 暗号化属性ポリシー管理ウィザードの指示に従って、ポリシーを適用します。

    ウィザードの各段階で、[ヘルプ]が利用できます。


暗号化属性ポリシーを削除する
  1. Novell iManagerで、[役割およびタスク]ボタン[役割およびタスク]ボタンをクリックします。

  2. [eDirectoryの暗号化]>[属性]の順にクリックします。

  3. 暗号化属性ポリシー管理ウィザードで、[ポリシーを削除します。]を選択します。

  4. 暗号化属性ポリシー管理ウィザードの指示に従って、ポリシーを削除します。

    ウィザードの各段階で、[ヘルプ]が利用できます。


LDAPを使用して暗号化属性ポリシーを管理する

重要:  暗号化属性の管理には、LDAPではなく、iManagerを使用することを強くお勧めします。

このセクションでは、次の手順について説明します。

注:  LDIFで暗号化する属性をマーキングする場合は、属性と方式のリストではなく、属性と方式のペアを指定する必要があります。これは暗号化属性に付随する現行の制約です。


暗号化属性ポリシーを作成して定義する
  1. 暗号化属性ポリシーを作成します。

    たとえば、AE Policy- test-serverという暗号化属性ポリシーの場合は次のようになります。

    dn:cn=AE Policy - test-server, o=novell 
    changetype:add
    objectClass:encryptionPolicy
  2. 作成したポリシーオブジェクトにattrEncryptionDefinition属性を追加して、暗号化する属性をマーキングします。

    たとえば、暗号化する属性の名前がCRIDの場合は、次のように暗号化方式と属性名を指定します。

    dn:cn=AE Policy - test-server, o=novell 
    changetype:modify
    add:attrEncryptionDefinition
    attrEncryptionDefinition:aes$CRID

    注:  属性名の指定には、その属性のNDS名を使用します。eDirectoryでは多くの属性がLDAP名とNDS名の両方を持っています。ここでは、属性名としてNDS名を指定する必要があります。

  3. attrEncryptionRequiresSecure属性をポリシーに追加します。

    この属性の値によって、暗号化属性にアクセスする際にセキュリティ保護されたチャネルの使用を常に要求するかどうかが指定されます。この値が0の場合、常には要求しないことを示します。この値が1の場合は、常に要求することを示します。

    例:

    dn:cn=AE Policy - test-server, o=novell 
    changetype:modify
    add:attrEncryptionRequiresSecure
    attrEncryptionRequiresSecure: 0
  4. NCPサーバにポリシーを関連付けます。

    test-serverというNCPサーバの場合は次のようになります。

    dn:cn=test-server, o=novell 
    changetype:modify
    add:encryptionPolicyDN
    encryptionPolicyDN:cn=AE Policy - test-server, o=novell

暗号化属性ポリシーを編集する

次のLDIFファイルは、attrEncryptionRequireSecure属性の値を変更することで暗号化属性ポリシーを編集する方法を示しています。

dn:cn=AE Policy - test-server, o=novell 
changetype:modify
replace:attrEncryptionRequiresSecure
attrEncrytionRequiresSecure: 1

暗号化属性ポリシーを適用する

次のLDIFファイルは、AE Policy-test-serverという暗号化属性ポリシーをtest-serverというサーバに適用する方法を示しています。

dn:cn=test-server, o=novell 
changetype:modify
add:encryptionPolicyDN
encryptionPolicyDN:cn=AE Policy - test-server, o=novell

暗号化属性ポリシーを削除する

次のLDIFファイルは、暗号化属性ポリシーを削除する方法を示しています。

dn:cn=AE Policy - test-server, o=novell 
changetype:delete


暗号化属性ポリシーをコピーする

eDirectory 8.8以降では、暗号化属性ポリシーをコピーして多数のサーバに同一の設定内容を反映することができます。ポリシーは、オブジェクトとしてeDirectoryに保存されます。

iManagerを使用してポリシーオブジェクトをコピーする手順については、オブジェクトをコピーするを参照してください。


パーティション操作

2つのパーティションをマージすると、ペアレントのポリシーがマージ後のパーティションで保持されます。パーティションを分割すると、ペアレントのポリシーがチャイルドパーティションに継承されます。


暗号化属性にアクセスする

属性を暗号化すると、暗号化属性へのアクセスも保護されます。eDirectory 8.8以降では、セキュリティ保護されたチャネル(LDAPセキュアチャネルまたはHTTPセキュアチャネル)を使用した暗号化属性へのアクセスを制限できるようになっています。

デフォルトでは、セキュリティ保護されたチャネルからしか暗号化属性にアクセスできません。

ただし、クライアントがクリアテキストで暗号化属性にアクセスできるようにするには、[常にセキュアチャネルが必要]オプションを無効にする必要があります。詳細については、クリアテキストチャネルから暗号化属性へのアクセスを有効/無効にするを参照してください。


クリアテキストチャネルから暗号化属性へのアクセスを有効/無効にする

iManagerまたはLDAPのいずれかを使用して、[常にセキュアチャネルが必要]オプション(つまり、attrEncryptionRequireSecure属性)を有効または無効にすることで、クリアテキストチャネルから暗号化属性へのアクセスを有効または無効にすることができます。

このセクションでは、次の情報について説明します。


iManagerを使用してクリアテキストチャネルから暗号化属性へのアクセスを有効/無効にする

iManagerを使用してクリアテキストチャネルから暗号化属性へのアクセスを有効または無効にするには、次の作業を行う際に、暗号化属性ポリシー管理ウィザードで[常にセキュアチャネルが必要]を有効または無効にします。


LDAPを使用してクリアテキストチャネルから暗号化属性へのアクセスを有効/無効にする

LDAPを使用してクリアテキストチャネルから暗号化属性へのアクセスを有効にするには、次の属性を暗号化属性ポリシーに追加します。

attrEncryptionRequiresSecure

この属性を0に設定すると、セキュリティ保護されたチャネルを必ずしも使用する必要はなくなります。つまり、クリアテキストチャネルから暗号化属性にアクセスできます。この属性を1に設定すると、セキュリティ保護されたチャネルの使用が常に要求されるようになります。つまり、セキュリティ保護されたチャネルからのみ暗号化属性にアクセスできます。

詳細については、ステップ 3を参照してください。


暗号化属性を表示する

暗号化されている属性が表示されるかどうかは、[常にセキュアチャネルが必要]オプションが有効になっているかどうかによって決定されます。つまり、暗号化属性にアクセスする際にセキュリティ保護されたチャネルを使用するかどうかによって決まります。


iManagerを使用して暗号化属性を表示する

[常にセキュアチャネルが必要]が有効になっている場合は、暗号化属性を表示できません。エラー「?6089」が返されます。これは、暗号化属性にアクセスする際にセキュリティ保護されたチャネルを使用する必要があることを示しています。

[常にセキュアチャネルが必要]が無効になっている場合は、iManagerで暗号化属性値を表示できます。

詳細については、ツリー内のオブジェクトの参照 を参照してください。


DSBrowseを使用して暗号化属性を表示する

[常にセキュアチャネルが必要]オプションが有効になっている場合、つまり、暗号化属性にアクセスする際にセキュリティ保護されたチャネルの使用が常に要求される場合は、暗号化されたエントリの属性を表示することはできません。ただし、暗号化されていないエントリの属性は表示できます。


SNMPトラップ

暗号化属性にアクセスする際にセキュリティ保護されたチャネルの使用を常に要求するように指定している場合は、NDS(R)値イベントがブロックされます。値イベントに関連するトラップの値データはNULLになり、結果は-6089に設定されます。これは、暗号化属性の値を取得するために、セキュリティ保護されたチャネルを使用する必要があることを示します。次のトラップの値データはNULLになります。

  • ndsAddValue
  • ndsDeleteValue
  • ndsDeleteAttribute


バックアップデータを暗号化/復号化する

暗号化属性を含むサーバ上のデータをバックアップする際には、バックアップデータを暗号化または復号化するためのパスワードを入力するよう求められます。これは、ndsbackupユーティリティの-Eオプションを使用して簡単に指定できます。詳細については、ndsbackupのmanpageを参照してください。

データのバックアップの詳細については、「Novell eDirectoryのバックアップと復元」を参照してください。


暗号化属性を含むDIBファイルセットのクローンを作成する

暗号化属性を含むeDirectoryデータベースのクローンを作成すると、DIBファイルセットのクローンにも暗号化属性値が含まれます。DIBファイルセットのクローンに含まれる値を暗号化するには、eDirectoryで使用されるキーを保護するためのパスワードを設定する必要があります。DIBファイルセットのクローンを他のサーバに配置する際には、このパスワードの入力を求められます。

詳細については、DIBセットのクローンを参照してください。


レプリカリングにeDirectory 8.8サーバを追加する

eDirectory 8.8サーバは、レプリカが格納されたいずれかのサーバまたはすべてのサーバ上で属性が暗号化されているかどうか、あるいは[常にセキュアチャネルが必要]が有効になっているかどうかに関わらず、レプリカリングに追加できます。

eDirectory 8.8サーバをレプリカリングに追加する際の詳細については、「レプリカを追加する」を参照してください。


下位互換性

暗号化属性にアクセスするには、iManager、SNMP、DirXML(R)、NSureAuditなどのすべてのeDirectoryユーティリティを、セキュリティ保護されたNCPTMに変更する必要があります。変更しない場合は、暗号化属性にアクセスする際にセキュリティ保護されたチャネルの使用を要求しないように指定する必要があります。詳細については、クリアテキストチャネルから暗号化属性へのアクセスを有効/無効にするを参照してください。


暗号化属性に移行する

eDirectory 8.8以降のバージョンにアップグレードすると、暗号化属性ポリシーを作成して定義することで、既存の属性を暗号化できます。詳細については、暗号化属性ポリシーを管理するを参照してください。


暗号化属性のレプリカを作成する

デフォルトでは、サーバに暗号化属性が存在している場合でも、暗号化複製は無効になっています。暗号化属性を安全に複製するには、暗号化複製を有効にする必要があります。暗号化複製の設定については、「暗号化レプリケーション」を参照してください。