鍵セットを使用して、暗号鍵の複数のインスタンスを管理できます。WebSphere Application Server は、暗号操作時に鍵を使用して、アウトバウンド・データを暗号化または署名し、インバウンド・データを暗号化解除または検査します。
始める前に
鍵セットから鍵を生成すると、その鍵を格納する鍵ストアへの書き込みアクセス権が必要になります。ただし、WebSphere Application Server の外部で鍵を生成する場合は、鍵の生成時にアクセスできる秘密鍵を格納している読み取り専用の鍵ストアの鍵を参照できます。
X509Certificate および PrivateKey オブジェクトを使用して鍵ペアを作成する場合は、
例: 自動鍵生成用の鍵または鍵ペア生成クラスの作成
を参照してください。
このタスクについて
管理コンソールで以下のステップを実行します。
プロシージャー
- 鍵セットをセルの有効範囲で作成するか、セルの有効範囲よりも下のノード、サーバー、またはクラスターで作成するかを決定します。例えば、以下のようにします。
- セルの有効範囲で鍵セットを作成する場合は、「セキュリティー」>「SSL 証明書および鍵管理」>「鍵セット」をクリックします。
- セル・レベルよりも下の有効範囲で鍵セットを作成する場合は、「セキュリティー」>「SSL 証明書および鍵管理」
>「エンドポイント・セキュリティー構成の管理」>「{Inbound | Outbound}」
>「SSL_configuration」>「鍵セット」をクリックします。
- 「新規」をクリックして、新規の鍵セットを作成します。
- 鍵セット名を入力します。例えば、CellmyKey などです。
- 鍵の別名の接頭部名を入力します。例えば myKey などです。
このフィールドは、新しい鍵を生成して鍵ストアに保管する際の、鍵の別名の接頭部を指定します。
この接頭部の後に、鍵参照バージョン番号 (例えば 2) が続き、完全な鍵別名は myKey_2 となります。
鍵参照が、鍵ストアに存在している鍵に対して指定されている別名をすでに持っている場合、WebSphere Application Server はこのフィールドを無視します。
- 鍵パスワードを入力します。 鍵パスワードは、鍵ストア内の鍵を保護します。すでに鍵別名参照にパスワードを指定している場合、WebSphere Application Server はこのパスワードを無視します。鍵参照パスワードの有無を確認するには、「追加プロパティー」の下の「活動中の鍵ヒストリー」をクリックします。鍵参照パスワードは、鍵ジェネレーター・クラスによって生成された鍵を保護します。
- もう一度パスワードを入力して、そのパスワードを確認します。
- オプション: 鍵ジェネレーター・クラス名を入力します。例えば、com.ibm.ws.security.ltpa.LTPAKeyGenerator などです。
このクラス名から鍵が生成されます。このクラスが com.ibm.websphere.crypto.KeyGenerator をインプリメントしている場合、getKey メソッドは、setKey メソッド使用して鍵ストア内に証明書チェーンなしで設定された java.security.Key オブジェクトを戻します。このクラスが com.ibm.websphere.crypto.KeyPairGenerator をインプリメントしている場合、getKeyPair メソッドは、java.security.PublicKey と java.security.PrivateKey、または
java.security.cert.Certificate と java.security.PrivateKey のいずれかを含む com.ibm.websphere.crypto.KeyPair オブジェクトを戻します。鍵ジェネレーター・クラス、および KeySetHelper API は、生成される鍵の詳細を指定します。
- オプション: WebSphere Application Server が、古い鍵の参照を「活動中の鍵ヒストリー」リストから除去した後に、その古い鍵を鍵ストアに保管しない場合は、「鍵の最大数を超えた鍵参照を削除」を選択します。 「活動中の鍵ヒストリー」には、KeySetHelper API が現在追跡している鍵がリストされます。このリスト内の鍵の数は、「参照される鍵の最大数」で指定した鍵の数に等しくなります。
- 参照される鍵の最大数を表す数値を入力します。
例えば、3 を入力し、「鍵の最大数を超えた鍵参照を削除」を選択した場合、4 回目の鍵バージョン生成では、自動的に WebSphere Application Server がトリガーされて、鍵ストアから最初の鍵バージョンが削除されます。古い鍵を削除しないようにした場合、古い鍵は「活動中の鍵ヒストリー」リストには表示されず、そのまま鍵ストアに残ります。鍵ストア内のこれらの古い鍵は手動で削除できます。
- ドロップダウン・リストから鍵ストアを選択します。
- 秘密鍵を保管する場合は、JCEKS 鍵ストアを選択してください。
- X509Certificate および PrivateKey オブジェクトを使用して鍵ペアを保管する場合は、任意の鍵ストアを選択します。
- オプション: 鍵ジェネレーター・クラス名が、
com.ibm.websphere.crypto.KeyGenerator インターフェースではなく com.ibm.websphere.crypto.KeyPairGenerator インターフェースを
実装している場合は、「鍵ペアの生成」を選択します。
このオプションは、鍵が単一鍵ではなく、鍵ペアを参照することを指定します。鍵ペアには、公開鍵と秘密鍵の両方が含まれます。WebSphere Application Server のランタイムは、鍵ペアが単一鍵とは異なった方法で保管およびロードされているのかどうかを判別します。
- オプション: 「追加プロパティー」の下の「活動中の鍵ヒストリー」を選択して、別名参照を追加するか、さらに鍵を生成する場合は、「適用」をクリックします。
- 「活動中の鍵ヒストリー」をクリックします。
- 鍵ジェネレーター・クラス名を使用しないで、鍵ストアにすでに存在している鍵への鍵別名参照を追加する場合は、「鍵の別名参照の追加」をクリックします。このオプションは、鍵セットで鍵を生成しないで、読み取り専用鍵ストアから鍵を取り出す場合に使用します。
- 別名参照を入力します。
- 鍵セット・パネルで定義したクラス名を使用して鍵を生成する場合は、「鍵の生成」をクリックします。 新しい鍵はそれぞれ、例えば myAlias_2 のように数値が増加していきます。
- 「適用」をクリックします。
- このパネルの上部にあるナビゲーション・パスの鍵セット名をクリックします。
- 「OK」をクリックしてから「保管」をクリックします。
結果
「活動中の鍵ヒストリー」リンクを使用して管理できる鍵セットが作成されました。鍵を手動で生成すると、指定した鍵セットにそれらの鍵を関連付けることができます。
次の作業
鍵セットから鍵を新規に生成すると、com.ibm.websphere.crypto.KeySetHelper API を使用して、その鍵にプログラマチックにアクセスできます。Java 2 Security 許可が使用可能になっている場合、鍵セット内の鍵にアクセスするには、この許可が必要になります。
コード例
WebSphereRuntimePermission "getKeySets.keySetName" のように、細分化された許可内の鍵セット名を指定してください。
詳しくは、
例: 生成された鍵の鍵セット・グループからの検索
を参照してください。同時に複数の鍵タイプを生成するか、または特定のスケジュールに鍵生成をスケジュールする場合は、
鍵セット・グループ構成の作成
を参照してください。