対称キーによるユーザー名認証機構では、アプリケーションの完全性と機密性が保護されます。対称キー暗号化方式は、メッセージの署名と暗号化の両方に使用される単一の共有秘密鍵を基にしています。通常は、公開キー暗号化方式より高速です。
サーバー側の要件
このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。
キーストア: キーストアを設定して、サービス証明書と非公開キーを識別する別名を指定します。GlassFish キーストアの場合、ファイルは keystore.jks、別名は xws-security-server です。ただし、GlassFish のデフォルトの証明書ストアを更新済みであると想定しています。
GlassFish のユーザー: 認証にユーザーデータベースを必要とする機構を使用するために、GlassFish の file レルムにユーザーを追加します。
クライアント側の要件
このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。
トラストストア: サーバーの証明書および信頼できるルートが格納されているトラストストアを設定します。GlassFish トラストストアの場合、ファイルは cacerts.jks、別名は xws-security-server です。ただし、GlassFish のデフォルトの証明書ストアを更新済みであると想定しています。STS 機構を使用する場合、クライアントはサービスではなく STS のトラストストアと証明書別名を指定します。GlassFish ストアの場合、ファイルは cacerts.jks、別名は wssip です。
デフォルトユーザー: デフォルトのユーザー名とパスワードか UsernameCallbackHandler を設定します。あるいは、これらのオプションを空白にしておいて実行時にユーザーを指定します。
GlassFish のユーザー: 認証にユーザーデータベースを必要とする機構を使用するために、GlassFish の file レルムにユーザーを追加します。
プロパティー |
説明 |
値 |
---|---|---|
認証トークン |
指定されたメッセージパートの署名や暗号化に使用するサポートトークンを指定します。オプションには、「ユーザー名」、「X509」、「SAML」、「発行済み」、または「なし」があります。 |
ユーザー名 |
アルゴリズム群 |
対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。 アルゴリズム群により、実際のアルゴリズムおよび許容されるキーの長さが指定されます。代替の機構により、どのアルゴリズムをどのように使用するかが定義されます。通常、この属性の値はセキュリティーバインディングによって参照され、そのセキュリティーバインディングの下で実行されるすべての暗号化操作に使用するアルゴリズムを指定します。デフォルト値は Basic 128 ビットです。 一部のアルゴリズム群の設定、特に 256 ビットの暗号化を使用するアルゴリズム群では、Java Runtime Environment (JRE) で無制限強度の暗号化を設定する必要があります。無制限強度の暗号化をダウンロードして設定する方法については、http://java.sun.com/products/jce/javase.html または http://java.sun.com/javase/downloads/index_jdk5.jsp#docs を参照してください。 |
Basic 128 ビット |
セキュリティーヘッダーのレイアウト |
セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。 オプションは次のとおりです。
|
Strict |
派生キーを必要とする |
派生キーが必要であることを指定します。 派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。たとえばセキュリティー保護された通信の使用時など、繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「派生キーを必要とする」を有効にしてください。 |
チェックボックスが選択されている場合、有効になっていることを示します。 |
セキュリティー保護されたセッションを確立する (Secure Conversation) |
セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。 このオプションと「派生キーを必要とする」の両方が有効になっている場合は、派生キーが使用されます。それ以外の場合は、元のセッションキーが使用されます。 セキュリティー保護されたセッションと高信頼性メッセージ配信に関する注: 高信頼性メッセージングはセキュリティー機構とは無関係に使用できます。ただし、セキュリティー機構とともに使用する場合、高信頼性メッセージングにはセキュリティー保護されたセッションを使用する必要があります。セキュリティー機構を選択する前に「高信頼性メッセージング」を選択した場合、セキュリティー保護されたセッションがセキュリティー機構に対して自動的に設定されます。セキュリティー保護されたセッションがセキュリティー機構に対して選択されている場合で、セキュリティー機構を指定する前に高信頼性メッセージングオプションを選択しなかったときは、セキュリティー保護されたセッションが機能するためには高信頼性メッセージングを手動で選択する必要があります。 |
チェックボックスが選択されている場合、有効になっていることを示します。 |
セキュリティーセッションに派生キーを必要とする |
セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「派生キーを必要とする」を参照してください。 |
チェックボックスが選択されている場合、有効になっていることを示します。 |
署名の確認を必要とする |
レスポンダが要求内の署名を処理することを指定します。WSS のバージョンが 1.1 の場合は、攻撃のリスクを低減するためにこのオプションを選択してください。 |
チェックボックスが選択されている場合、有効になっていることを示します。 |
署名を暗号化 |
主署名と署名確認要素を暗号化する必要があるかどうかを指定します。 |
チェックボックスが選択されている場合、有効になっていることを示します。 |
署名前に暗号化 |
メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。 選択されていない場合、デフォルトの動作は「暗号化前に署名」です。 |
チェックボックスが選択されている場合、無効になっていることを示します。 |