プロジェクトでの HTTP バインディングコンポーネントの使用

HTTP バインディングコンポーネントで公開される Tango Web サービス属性の設定

複合アプリケーションの場合、Web サービス属性は、指定されたエンドポイントに関連付けられた WS Policy Attachment エディタを使用して、WSDL ポートに対して設定されます。WSDL ポートの WS Policy Attachment エディタには、CASA エディタからアクセスします。

この節の内容は次のとおりです。

Tango (WSIT) Web サービス属性の設定にアクセスする

Web サービス属性は、指定されたエンドポイントに関連付けられた WS Policy Attachment エディタを使用して、各 WSDL ポートに対して設定されます。WS Policy Attachments エディタには CASA エディタからアクセスします。そのためには、WSDL ポートを右クリックし、「Web サービス属性の編集」—>「サーバー設定」または「クライアント設定」を選択します。

以降の説明では、複合アプリケーションがすでに作成されていると想定しています。このオプションは、CASA で WSDL ポートが複製または作成されたあとで使用可能になります。

Procedure特定のエンドポイントの WS-Policy Attachment エディタにアクセスする

  1. NetBeans IDE の「プロジェクト」ウィンドウで、複合アプリケーションを展開します。「サービスアセンブリ」ノードを右クリックし、ポップアップメニューから「編集」を選択します。

    複合アプリケーションサービスアセンブリ (CASA) エディタが開き、複合アプリケーションが表示されます。

  2. CASA エディタで、「プロジェクトの構築」アイコンをクリックして複合アプリケーションを構築します。

    構築が正常に完了すると、デザインビューに WSDL ポートエンドポイント、JBI モジュール、およびこれらの間の接続が表示されます。

  3. WSDL ポートを作成または複製していない場合、そのポートを設定するための WS Policy Attachment は使用できません。ポートを複製するには、WSDL ポートを右クリックし、ポップアップメニューから「編集する WSDL ポートを複製」を選択します。

    図は、本文中で説明されているとおり、ユーザーが CASA で WSDL ポートを右クリックしている様子を示しています。

    ポートが複製されたあと、「ポートのプロパティー」アイコンと「Web サービス属性」アイコンがポートに追加されます。

  4. ポートの「Web サービス属性」アイコン (ポート下部のアイコン) をクリックし、「サーバー設定」または「クライアント設定」を選択して、該当する WS Policy Attachment 設定エディタを開きます。

サーバー設定 — Web サービス属性

HTTP バインディングコンポーネントで公開されるサーバー設定 Web サービス属性は、WS Policy Attachment 設定エディタから設定されます。

図は、本文中で説明されているとおり、「サーバー設定」の WS Policy Attachment エディタを示しています。

サーバー設定 Web サービス属性には次のようなものがあります。

属性 

説明 

値 

バインディング設定

バイナリデータの送信の最適化 (MTOM) 

Web サービスで、送信するメッセージを最適化するかどうか、および受信した最適化されたメッセージをデコードするかどうかを指定します。 

チェックボックスが選択されている場合、有効になっていることを示します。 

高信頼性メッセージ配信 

クライアントがメッセージ配信の失敗を認識してメッセージを再送信することができるように、配信された各メッセージについてサービスからクライアントに肯定応答を送信するかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

メッセージを正確な順序で配信する:  

特定のメッセージシーケンスのアプリケーションメッセージが、メッセージ番号によって指定された順序でエンドポイントアプリケーションに配信されることを、高信頼性メッセージングプロトコルで保証するかどうかを指定します。  

このオプションを使用すると、アプリケーションメッセージシーケンスの処理時間が増加し、Web サービスのパフォーマンスが低下する可能性があります。Web サービスで順序どおりの配信が必要な場合に限り、このオプションを有効にしてください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

フロー制御: 

フロー制御機能を有効にするかどうかを指定します。順序どおりの配信が必要な場合で、アプリケーションから前のメッセージがまだ到着していないときは、メッセージの保留が必要になることがあります。蓄積されたメッセージの数が「最大バッファーサイズ」設定で指定されたしきい値に達すると、そのシーケンスに属する着信メッセージは無視されます。  

チェックボックスが選択されている場合、有効になっていることを示します。 

フロー制御の最大バッファーサイズ: 

メッセージシーケンスに関してバッファーするメッセージの数を指定します。デフォルト設定は 32 です。 

デフォルト値は 32 です。 

非活動タイムアウト (ミリ秒): 

非アクティブの状態が続いたために発信元または送信先でメッセージシーケンスを中止できる時間間隔を、ミリ秒単位で指定します。Web サービスエンドポイントでは、時間切れになったシーケンスは常に中止されます。シーケンスをアクティブに保つために、非活動タイムアウトの期限が近づくと、アクティブでないクライアントは AckRequested ヘッダーを含んだスタンドアロンメッセージをハートビートとして送信します。 

デフォルト値は 600,000 (ミリ秒) です。 

セキュリティー保護されたサービス 

Web サービスのセキュリティーオプションを Web サービスのすべてのオペレーションに対して有効にするかどうかを指定します。 

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー機構 

Web サービスオペレーションで使用するセキュリティー機構を指定します。 

使用できるセキュリティー機構は次のとおりです。

詳細については、「セキュリティー機構」の節を参照してください。 

アプリケーションで使用するセキュリティー機構を選択します。  

選択した機構とその追加要件が、選択した項目の下のメッセージボックスに表示されます。 

設定: 

設定ボタンをクリックすると、選択したセキュリティー機構の設定エディタが開きます。 

設定プロパティーの詳細については、「セキュリティー機構」の節を参照してください。 

開発用のデフォルトを使用する: 

ただちに開発に使用するために GlassFish のキーストアとトラストストアに証明書をインポートするかどうかを指定します。デフォルトの証明書が正しい形式でインポートされ、「wsitUser」というユーザー名のデフォルトユーザーが file レルムに作成されます。

多くの場合、ユーザーは自分のプロジェクトにユーザー独自の証明書とユーザー設定を使用しますが、開発環境ではデフォルト設定が役立つこともあります。 

チェックボックスが選択されている場合、デフォルトの証明書を使用することを示します。 

キーストア 

「キーストア」ボタンをクリックすると、キーストア設定エディタが開きます。 

このエディタでは、次の情報を指定します。

  • 場所: 参照ボタンを使用して、キーストアの場所と名前を指定します。

  • キーストアパスワード: キーストアファイルのパスワードを指定します。GlassFish の下で実行している場合、GlassFish のパスワードがすでに入力されています。キーストアのパスワードをデフォルト値から変更してある場合は、このフィールドに正しい値を指定する必要があります。

  • 別名: 認証に使用する指定されたキーストア内の証明書の別名を指定します。

    非 STS アプリケーションのキーストア別名は、クライアント側用が xws-security-client、サーバー側設定用が xws-security-server です。

    STS アプリケーションのキーストアの別名は、クライアント側設定用と STS 設定用のどちらも xws-security-client です。

  • キーパスワード: キーストア内のキーのパスワードを指定します。デフォルトでは、キーパスワードにはストアのパスワードが使用されます。キーパスワードが異なっている場合のみ、このフィールドにパスワードを指定してください。

  • 別名セレクタクラス: 別名のセレクタクラスを指定します。

キーストア設定エディタからキーストアを設定します。

トラストストア 

「トラストストア」ボタンをクリックすると、トラストストア設定エディタが開きます。 

このエディタでは、次の情報を指定します。

  • 場所: 参照ボタンを使用して、CA の公開キー証明書とクライアントの公開キー証明書が格納されているトラストストアの場所とファイル名を指定します。

  • トラストストアパスワード: トラストストアのパスワードを指定します。GlassFish の下で実行している場合、GlassFish のパスワードは changeit です。トラストストアのパスワードをデフォルト値から変更してある場合は、このフィールドに正しい値を指定する必要があります。

  • 別名の読み込み: 「別名の読み込み」ボタンをクリックすると、トラストストアファイルに格納されている別名が「別名」フィールドに入力されます。このオプションが機能するためには、「場所」フィールドと「トラストストアパスワード」フィールドに正しく入力する必要があります。

  • 証明書セレクタ: 0 個以上の証明書の識別情報を指定する文字列を指定します。指定子は X.509 命名規則に準拠することができます。証明書セレクタでは、各種のショートカットを使用して、被認証者の代替名、ファイル名、または発行者と照合することもできます。

トラストストア設定エディタからトラストストアを設定します。

バリデータ 

「バリデータ」ボタンをクリックすると、バリデータ設定エディタが開きます。 

このエディタでは、次の情報を指定します。

  • ユーザー名バリデータ: サーバー側でユーザー名とパスワードを検証するためのバリデータクラスを指定します。このオプションを使用するのは Web サービスだけです。

    注: デフォルトのユーザー名バリデータを使用する場合、GlassFish を使用するときは、クライアントのユーザー名とパスワードが (管理コンソールを使用して) GlassFish に登録されていることを確認してください。また、Tomcat を使用するときは、tomcat-users.xml ファイルに含まれていることを確認してください。

  • タイムスタンプバリデータ: トークンのタイムスタンプを確認してトークンの期限が切れているかどうかを判定するためのバリデータクラスを指定します。

  • 証明書バリデータ: クライアントまたは Web サービスから提供された証明書を検証するためのバリデータクラスを指定します。

  • SAML バリデータ: クライアントまたは Web サービスから提供された SAML トークンを検証するためのバリデータクラスを指定します。

バリデータ設定エディタからバリデータを設定します。

詳細 (高度なセキュリティーオプション) 

「詳細」ボタンをクリックすると、高度なセキュリティーオプションエディタが開きます。 

このエディタでは、次の情報を指定します。

  • 最大クロックスキュー (ミリ秒): 送信側と受信側のシステムクロックの間に許容される最大の差を、ミリ秒単位で指定します。

  • タイムスタンプの新しさの制限 (ミリ秒): タイムスタンプの新しさの制限をミリ秒単位で指定します。受信側は、受信したタイムスタンプの作成時刻が「タイムスタンプの新しさの制限」の期間より古い場合、これらを拒否します。

  • デフォルトの証明書失効機構を使用する: このオプションが選択されている場合は、ベースとなる PKIX サービスプロバイダのデフォルトの失効検査機構が使用されます。

高度なセキュリティーオプションエディタから高度なセキュリティーオプションを設定します。

セキュアトークンサービスとして機能する (STS) 

「セキュアトークンサービスとして機能する」チェックボックスを選択し、「設定」ボタンをクリックすると、STS 設定エディタが開きます。 

このエディタでは、次の情報を指定します。

  • 発行者: 発行されるトークンの発行者の識別子を指定します。この値には、STS を一意に識別する任意の文字列を指定できます。

  • 規約実装クラス: トークンの発行や検証などを処理する WSTrustContract インタフェースの実際の実装クラスを指定します。SAML 表明を発行するためのデフォルト値は com.sun.xml.ws.trust.impl.IssueSamlTokenContractImpl です。または、参照ボタンをクリックして、別の規約実装クラスを選択することもできます。

  • 発行済みトークンの寿命 (ミリ秒): STS によって発行されるトークンの寿命を指定します。デフォルト値は 36000 ミリ秒です。

  • 発行するキーを暗号化: サービス証明書を使用して発行するキーを暗号化するかどうかを指定します。選択されている場合は、「はい」を示します。

  • 発行するトークンを暗号化: サービス証明書を使用して発行するトークンを暗号化するかどうかを指定します。選択されている場合は、「はい」を示します。

  • サービスプロバイダ: STS との信頼関係を持つサービスプロバイダを指定します。新規プロバイダを指定するには「追加」をクリックします。次のプロトコルを使用してプロバイダを一覧表示することができます。

    • プロバイダエンドポイント URI: サービスプロバイダのエンドポイント URI を指定します。

    • 証明書の別名: キーストア内のサービスプロバイダの証明書の別名を指定します。

    • トークンタイプ: サービスプロバイダが必要とするトークンのタイプを指定します。

    • キータイプ: サービスプロバイダが必要とするキーのタイプを、公開キーか対称キーかで指定します。

STS 設定エディタから STS 設定オプションを設定します。

TCP トランスポートを許可 

サービスで TCP および HTTP メッセージトランスポートをサポートするかどうかを指定します。TCP では、HTTP プロトコルでメッセージを送信するオーバーヘッドが除去され、小さいメッセージのパフォーマンスが向上します。 

チェックボックスが選択されている場合、有効になっていることを示します。 

Fast Infoset を無効にする 

同等の XML ドキュメントと比較して、より高速な解析、より高速な直列化、およびより小さいサイズのドキュメント作成のために Fast Infoset を有効にするかどうかを指定します。このオプションが選択されている場合、Web サービスでは、Fast Infoset を使用してエンコードされた着信メッセージの処理や送信メッセージの生成は行われません。 

チェックボックスが選択されている場合、有効になっていることを示します。 

オペレーション設定

トランザクション 

トランザクションをどのレベルでセキュリティー保護するかを指定します。 

 

入力メッセージ設定

認証トークン 

指定されたメッセージパートの署名や暗号化に使用するサポートトークンを指定します。オプションには、「ユーザー名」、「X509」、「SAML」、「発行済み」、または「なし」があります。

ユーザー名 

署名あり: 

認証トークンは署名付きのサポートトークンでなければならないことを指定します。署名付きのサポートトークンは、主メッセージ署名によっても署名されます。 

チェックボックスが選択されている場合、有効になっていることを示します。 

承認済み: 

認証トークンは承認済みでなければならないことを指定します。承認サポートトークンでは、トークンで表されるキーを使用して主メッセージ署名が承認/署名されます。 

チェックボックスが選択されている場合、有効になっていることを示します。 

 

メッセージパート: 

メッセージパートの署名や暗号化を行う必要があることを指定します。「メッセージパート」ボタンをクリックすると、「メッセージパート」ダイアログボックスが開きます。  

「メッセージパート」ダイアログボックスから、メッセージパートまたは要素に関する次のオプションを指定できます。

  • 署名: このメッセージパートには、完全性を保護するためにデジタル署名が必要であることを指定します。

  • 暗号化: このメッセージパートには、機密性のために暗号化が必要であることを指定します。

  • 必須: このメッセージパートはメッセージに必須であることを指定します。

「メッセージパート」ダイアログボックスには次のボタンもあります。

  • 本体を追加: メッセージ本体の行を追加します (これは行が削除されている場合にのみ必要)。

  • ヘッダーを追加: 特定の SOAP ヘッダーパートまたはすべての SOAP ヘッダーパートの行を追加します (これは該当する SOAP ヘッダー行が削除されている場合にのみ必要)。

  • XPath を追加: 使用する Xpath のバージョンを指定する XPath 式または URI に対して署名や暗号化を指定できる行を追加します。必須フィールドはデフォルトで選択されています。1 つの XPath 要素だけを指定できます。

  • 削除: 選択した行を削除します。

 

出力メッセージ設定

メッセージパート 

メッセージパートの署名や暗号化を行う必要があることを指定します。「メッセージパート」ボタンをクリックすると、「メッセージパート」ダイアログボックスが開きます。  

詳細については、前述の「入力メッセージ」の「メッセージパート」を参照してください。

 

セキュリティー機構を設定する

この節では、Tango を介して使用できる次のセキュリティー機構と、各選択項目のサーバー設定オプションについて説明します。これらのセキュリティー機構の詳細については、Security Mechanisms を参照してください。

使用できるセキュリティー機構は次のとおりです。

対称キーによるユーザー名認証

対称キーによるユーザー名認証機構では、アプリケーションの完全性と機密性が保護されます。対称キー暗号化方式は、メッセージの署名と暗号化の両方に使用される単一の共有秘密鍵を基にしています。通常は、公開キー暗号化方式より高速です。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 12 対称キーによるユーザー名認証の設定プロパティー

プロパティー 

説明 

値 

認証トークン 

指定されたメッセージパートの署名や暗号化に使用するサポートトークンを指定します。オプションには、「ユーザー名」、「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: 「使用前に宣言する」という一般的な原則に従って、セキュリティーヘッダーに項目が追加されます。

  • Lax: WSS: SOAP Message Security に準拠した任意の順序で、セキュリティーヘッダーに項目が追加されます。ただし、Lax が選択されている場合でも、WSIT は Strict に従います。

  • Lax (Timestamp First): セキュリティーヘッダー内の最初の項目が wsse:Timestamp でなければならないという点を除き、Lax と同じです。

  • Lax (Timestamp Last): セキュリティーヘッダー内の最後の項目が wsse:Timestamp でなければならないという点を除き、Lax と同じです。

Strict 

派生キーを必要とする 

派生キーが必要であることを指定します。  

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。たとえばセキュリティー保護された通信の使用時など、繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

このオプションと「派生キーを必要とする」の両方が有効になっている場合は、派生キーが使用されます。それ以外の場合は、元のセッションキーが使用されます。  

セキュリティー保護されたセッションと高信頼性メッセージ配信に関する注: 高信頼性メッセージングはセキュリティー機構とは無関係に使用できます。ただし、セキュリティー機構とともに使用する場合、高信頼性メッセージングにはセキュリティー保護されたセッションを使用する必要があります。セキュリティー機構を選択する前に「高信頼性メッセージング」を選択した場合、セキュリティー保護されたセッションがセキュリティー機構に対して自動的に設定されます。セキュリティー保護されたセッションがセキュリティー機構に対して選択されている場合で、セキュリティー機構を指定する前に高信頼性メッセージングオプションを選択しなかったときは、セキュリティー保護されたセッションが機能するためには高信頼性メッセージングを手動で選択する必要があります。 

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「派生キーを必要とする」を参照してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

署名の確認を必要とする 

レスポンダが要求内の署名を処理することを指定します。WSS のバージョンが 1.1 の場合は、攻撃のリスクを低減するためにこのオプションを選択してください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名を暗号化 

主署名と署名確認要素を暗号化する必要があるかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名前に暗号化 

メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。  

選択されていない場合、デフォルトの動作は「暗号化前に署名」です。  

チェックボックスが選択されている場合、無効になっていることを示します。 

相互証明書セキュリティー

相互証明書セキュリティー機構では、認証とメッセージ保護によるセキュリティーを使用して、完全性と機密性が保護されます。この機構では、アプリケーションのクライアント側とサーバー側の両方に、キーストアおよびトラストストアのファイルが必要です。

相互証明書セキュリティーの WS Security を設定する例については、Using the WSIT Mutual Certificates Security Mechanism with the HTTP BC を参照してください。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 13 相互証明書セキュリティーの設定プロパティー

プロパティー 

説明 

値 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

派生キーを必要とする 

派生キーが必要であることを指定します。  

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。たとえばセキュリティー保護されたセッションの使用時など、繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

詳細については、表 12 の「セキュリティー保護されたセッションを確立する」を参照してください。

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「派生キーを必要とする」を参照してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

署名を暗号化 

主署名と署名確認要素を暗号化する必要があるかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名前に暗号化 

メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。  

選択されていない場合、デフォルトの動作は「暗号化前に署名」です。  

チェックボックスが選択されている場合、無効になっていることを示します。 

トランスポートセキュリティー (SSL)

トランスポートセキュリティー機構では、メッセージ移送時の認証と機密性のために SSL が使用されます。トランスポートレイヤーのセキュリティーは、Secure Sockets Layer (SSL) でセキュリティー保護された HTTP トランスポート (HTTPS) を基にしています。このポイントツーポイントのセキュリティー機構は、認証、メッセージの完全性、および機密性のために使用できます。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 14 トランスポートセキュリティー (SSL) の設定プロパティー

プロパティー 

説明 

値 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

クライアント証明書を必要とする 

検証のためにクライアント証明書をサーバーに提供する必要があることを指定します。 

SSL によるセキュリティー機構を使用する場合、サーバーは初期ハンドシェーク中および検証中に再度、クライアント証明書を要求します。  

チェックボックスが選択されている場合、無効になっていることを示します。 

SSL を使用したメッセージ認証

SSL を使用したメッセージ認証機構は、暗号化によってセキュリティー保護された識別情報または認証トークンをメッセージに添付し、機密性保護のために SSL を使用します。認証は、ユーザー名サポートトークンまたは X.509 サポートトークンによって指定されます。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 15 SSL を使用したメッセージ認証の設定プロパティー

プロパティー 

説明 

値 

認証トークン 

指定されたメッセージパートの署名や暗号化に使用するサポートトークンを指定します。オプションには、「ユーザー名」、「X509」、「SAML」、「発行済み」、または「なし」があります。 

ユーザー名 

WSS バージョン 

Web Services Security 仕様のどのバージョンに従うかを指定します。オプションは 1.0 と 1.1 です。 

WSS 1.1 を有効にすると、クライアントによって生成された暗号化済みのキーをサーバーで再利用できます。これにより、応答の過程で対称キーを作成し、クライアントの公開キーを使用して暗号化し (負荷が大きい RSA 操作でもある)、暗号化したキーをメッセージで送信する (マークアップの領域を使用し、Base64 操作も必要) ことが不要になり、時間を節約できます。WSS 1.1 を有効にすると、暗号化されたヘッダーも有効になります。  

1.1 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

詳細については、表 12 の「セキュリティー保護されたセッションを確立する」を参照してください。

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。  

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「セキュリティーセッションに派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名の確認を必要とする 

レスポンダが要求内の署名を処理することを指定します。WSS のバージョンが 1.1 の場合は、攻撃のリスクを低減するためにこのオプションを選択してください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

SSL を使用した SAML 承認

SSL を使用した SAML 承認機構は、承認トークンをメッセージに添付します。機密性保護のために SSL が使用されます。この機構では、エンドユーザーに関する承認情報が SAML トークンで伝送されます。トークンの送信側は、実際に SAML トークンで資格情報を保証しています。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 16 SSL を使用した SAML 承認の設定プロパティー

プロパティー 

説明 

値 

SAML バージョン 

どのバージョンの SAML トークンを使用するかを指定します。SAML バージョンは、セキュリティーランタイムではなくコールバックハンドラで確認すべきものです。  

SAML トークンは、http://www.oasis-open.org/specs/index.php から入手可能な「WSS: SAML Token Profile」ドキュメントで定義されています。

1.1 (Profile 1.0) 

WSS バージョン 

Web Services Security 仕様のどのバージョンに従うかを指定します。オプションは 1.0 と 1.1 です。 

WSS 1.1 を有効にすると、クライアントによって生成された暗号化済みのキーをサーバーで再利用できます。これにより、応答の過程で対称キーを作成し、クライアントの公開キーを使用して暗号化し (負荷が大きい RSA 操作でもある)、暗号化したキーをメッセージで送信する (マークアップの領域を使用し、Base64 操作も必要) ことが不要になり、時間を節約できます。WSS 1.1 を有効にすると、暗号化されたヘッダーも有効になります。  

1.1 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

クライアント証明書を必要とする 

検証のためにクライアント証明書をサーバーに提供する必要があることを指定します。 

SSL によるセキュリティー機構を使用する場合、サーバーは初期ハンドシェーク中および検証中に再度、クライアント証明書を要求します。  

チェックボックスが選択されている場合、無効になっていることを示します。 

署名の確認を必要とする 

レスポンダが要求内の署名を処理することを指定します。WSS のバージョンが 1.1 の場合は、攻撃のリスクを低減するためにこのオプションを選択してください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

承認証明書

承認証明書機構は、完全性と機密性のために対象キーを使用するセキュリティー保護されたメッセージを使用します。また、クライアント承認証明書を使用して、メッセージ署名に関連付けられたトークンで申請する内容を補強します。クライアントはサービスの証明書を認識し、要求は特殊な識別情報によって承認されている必要があります。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 17 承認証明書の設定プロパティー

プロパティー 

説明 

値 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

詳細については、表 12 の「セキュリティー保護されたセッションを確立する」を参照してください。

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「派生キーを必要とする」を参照してください。 

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「セキュリティーセッションに派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名の確認を必要とする 

レスポンダが要求内の署名を処理することを指定します。WSS のバージョンが 1.1 の場合は、攻撃のリスクを低減するためにこのオプションを選択してください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名を暗号化 

主署名と署名確認要素を暗号化する必要があるかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名前に暗号化 

メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。  

選択されていない場合、デフォルトの動作は「暗号化前に署名」です。  

チェックボックスが選択されている場合、無効になっていることを示します。 

SAML Sender-Vouches と証明書

この機構は、相互証明書を使用してメッセージの完全性と機密性を提供し、Sender-Vouches SAML トークンを使用して承認を提供します。Sender-Vouches 方式では、SOAP メッセージとその SOAP メッセージに追加される SAML 表明の間の対応が確立されます。(SAML 表明内の) SAML 主体ステートメントの主体と SOAP メッセージコンテンツの間の対応を確立するのに使用される確認証拠は、証明エンティティーによって提供されます。

メッセージペイロードには署名と暗号化を行う必要があります。要求者は、要求者が代行している実体の資格情報 (SAML 表明内にある) を保証します。イニシエータトークンは X.509 トークンであり、署名に使用されます。受信者トークンも X.509 トークンであり、暗号化に使用されます。サーバーの場合はこれが逆になり、受信者トークンは署名トークン、イニシエータトークンは暗号化トークンです。SAML トークンが承認に使用されます。

SAML Sender-Vouches と証明書を使用して WS Security を設定する例については、Using the SAML Sender Vouches with Certificates Security Mechanism with the HTTP BC を参照してください。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 18 SAML Sender-Vouches と証明書の設定プロパティー

プロパティー 

説明 

値 

SAML バージョン 

どのバージョンの SAML トークンを使用するかを指定します。SAML バージョンは、セキュリティーランタイムではなくコールバックハンドラで確認すべきものです。  

SAML トークンは、http://www.oasis-open.org/specs/index.php から入手可能な「WSS: SAML Token Profile」ドキュメントで定義されています。

1.1 (Profile 1.0) 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

派生キーを必要とする 

派生キーが必要であることを指定します。  

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

詳細については、表 12 の「セキュリティー保護されたセッションを確立する」を参照してください。

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「派生キーを必要とする」を参照してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

署名を暗号化 

主署名と署名確認要素を暗号化する必要があるかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名前に暗号化 

メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。  

選択されていない場合、デフォルトの動作は「暗号化前に署名」です。  

チェックボックスが選択されている場合、無効になっていることを示します。 

SAML Holder-of-Key

この機構は、クライアントの公開キーおよび承認情報を伝送する (信頼できる機関から発行された) 署名付き SAML 表明を含んだメッセージの完全性と機密性を、相互証明書を使用して保護します。Holder-of-Key (HOK) 方式では、SOAP メッセージとその SOAP メッセージに追加される SAML 表明の間の対応が確立されます。詳細については、http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0.pdf で「SAML Token Profile」ドキュメントを参照してください。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 19 SAML Holder-of-Key の設定プロパティー

プロパティー 

説明 

値 

SAML バージョン 

どのバージョンの SAML トークンを使用するかを指定します。SAML バージョンは、セキュリティーランタイムではなくコールバックハンドラで確認すべきものです。  

SAML トークンは、http://www.oasis-open.org/specs/index.php から入手可能な「WSS: SAML Token Profile」ドキュメントで定義されています。

1.1 (Profile 1.0) 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

派生キーを必要とする 

派生キーが必要であることを指定します。  

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

詳細については、表 12 の「セキュリティー保護されたセッションを確立する」を参照してください。

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「派生キーを必要とする」を参照してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

署名を暗号化 

主署名と署名確認要素を暗号化する必要があるかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名前に暗号化 

メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。  

選択されていない場合、デフォルトの動作は「暗号化前に署名」です。  

チェックボックスが選択されている場合、無効になっていることを示します。 

STS 発行トークン

信頼できるセキュアトークンサービス (STS) によって発行されたトークンを使用してメッセージの完全性と機密性を保護します。

この機構を Web サービスに使用するには、使用するセキュリティー機構でこのオプションを選択します。サービスから参照できるセキュリティートークンサービスが必要です。このアプリケーションのクライアント側のセキュリティー設定は、アプリケーションに対して選択されたセキュリティー機構ではなく、STS に対して選択されたセキュリティー機構によって決まります。クライアントのトラストストアに STS の証明書が格納されている必要があります。更新済みの GlassFish 証明書を使用していれば、この証明書の別名は wssip です。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 20 STS 発行トークンの設定プロパティー

プロパティー 

説明 

値 

発行者アドレス 

メッセージで提供されるセキュリティートークンを受け入れる発行者 (STS) のアドレスを指定します。要素のタイプはエンドポイント参照です。STS には、セキュリティートークンの発行、交換、および検証に使用される一連のインタフェースが含まれています。 

たとえば、JAX-WS サービスの場合、発行者アドレスは http://localhost:8080/jaxws-sts/sts です。

http://localhost:8080/jaxws-sts/sts 

発行者メタデータアドレス 

発行者のメタデータを取得するアドレスを指定します。これは単に URL です。  

たとえば、JAX-WS サービスの場合、発行者メタデータアドレスは http://localhost:8080/jaxws-sts/sts です。

http://localhost:8080/jaxws-sts/sts 

トークンタイプ 

サービスプロバイダが必要とする SAML トークンのタイプを指定します。たとえば、urn:oasis:names:tc:SAML1.0:assertion です。

オプションは 1.0、1.1、または 2.0 です。 

1.1 

キータイプ 

サービスプロバイダが必要とするキーのタイプを指定します。  

選択肢は公開キーまたは対称キーです。

  • 対称キー暗号化方式は共有シークレットを基にしており、通常は公開キー暗号化方式より高速です。

  • 公開キー暗号化方式は、全員に公開されるキーを基にしており、主に暗号化に使用されますが、署名の検証にも使用可能です。

発行済みトークン機構だけに適用されます。 

対称キー 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

発行済みトークンに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。  

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「発行済みトークンに派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

詳細については、表 12 の「セキュリティー保護されたセッションを確立する」を参照してください。

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「発行済みトークンに派生キーを必要とする」を参照してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

署名の確認を必要とする 

レスポンダが要求内の署名を処理することを指定します。WSS のバージョンが 1.1 の場合は、攻撃のリスクを低減するためにこのオプションを選択してください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名を暗号化 

主署名と署名確認要素を暗号化する必要があるかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名前に暗号化 

メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。  

選択されていない場合、デフォルトの動作は「暗号化前に署名」です。  

チェックボックスが選択されている場合、無効になっていることを示します。 

STS 発行トークンとサービス証明書

「STS 発行トークン」に似ていますが、クライアントは指定の STS によって発行された SAML トークンを使用して認証するようにサービスから要求されます。また、サービス証明書を使用して機密性保護が実現される点も異なります。サービス証明書は、サービスを認証するため、およびメッセージ保護を提供するためにクライアントで使用されます。GlassFish の場合は、デフォルトの証明書 s1as が付属しています。

この機構を Web サービスに使用するには、使用するセキュリティー機構でこのオプションを選択します。サービスから参照できるセキュリティートークンサービスが必要です。このアプリケーションのクライアント側のセキュリティー設定は、アプリケーションに対して選択されたセキュリティー機構ではなく、STS に対して選択されたセキュリティー機構によって決まります。クライアントのトラストストアに STS の証明書が格納されている必要があります。更新済みの GlassFish 証明書を使用していれば、この証明書の別名は wssip です。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 21 STS 発行トークンとサービス証明書の設定プロパティー

プロパティー 

説明 

値 

発行者アドレス 

メッセージで提供されるセキュリティートークンを受け入れる発行者 (STS) のアドレスを指定します。要素のタイプはエンドポイント参照です。STS には、セキュリティートークンの発行、交換、および検証に使用される一連のインタフェースが含まれています。 

たとえば、JAX-WS サービスの場合、発行者アドレスは http://localhost:8080/jaxws-sts/sts です。

http://localhost:8080/jaxws-sts/sts 

発行者メタデータアドレス 

発行者のメタデータを取得するアドレスを指定します。これは単に URL です。  

たとえば、JAX-WS サービスの場合、発行者メタデータアドレスは http://localhost:8080/jaxws-sts/sts です。

http://localhost:8080/jaxws-sts/sts 

トークンタイプ 

サービスプロバイダが必要とする SAML トークンのタイプを指定します。たとえば、urn:oasis:names:tc:SAML1.0:assertion です。

オプションは 1.0、1.1、または 2.0 です。 

1.1 

キータイプ 

サービスプロバイダが必要とするキーのタイプを指定します。  

選択肢は公開キーまたは対称キーです。

  • 対称キー暗号化方式は共有シークレットを基にしており、通常は公開キー暗号化方式より高速です。

  • 公開キー暗号化方式は、全員に公開されるキーを基にしており、主に暗号化に使用されますが、署名の検証にも使用可能です。

発行済みトークン機構だけに適用されます。 

対称キー 

キーサイズ 

要求する対称キーのサイズをビット数で指定します。  

これは、望ましいセキュリティー強度を示す情報として指定されます。有効な選択肢は 128、192、および 256 です。セキュリティートークンは、要求されたキーサイズの使用を強制されるわけではなく、STS も、同じキーサイズのトークンの発行を強制されるわけではありません。ただし、受信者はできるかぎり、指定された値以上の強度を持つキーを使用するように努めるべきです。  

発行済みトークン機構だけに適用されます。 

128 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

派生キーを必要とする 

派生キーが必要であることを指定します。  

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

詳細については、表 12 の「セキュリティー保護されたセッションを確立する」を参照してください。

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「派生キーを必要とする」を参照してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

署名の確認を必要とする 

レスポンダが要求内の署名を処理することを指定します。WSS のバージョンが 1.1 の場合は、攻撃のリスクを低減するためにこのオプションを選択してください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名を暗号化 

主署名と署名確認要素を暗号化する必要があるかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名前に暗号化 

メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。  

選択されていない場合、デフォルトの動作は「暗号化前に署名」です。  

チェックボックスが選択されている場合、無効になっていることを示します。 

STS 発行承認トークン

「STS 発行トークン」に似ていますが、クライアントは指定の STS によって発行された SAML トークンを使用して認証されます。承認トークンがメッセージ署名への署名に使用されます。

メッセージの完全性と機密性は、サービス用の暗号化された短期キーを使用して保護されます。短期キーでは、キーハンドルが破棄されたときに交換キーの値を暗号化サービスプロバイダ (CSP) から削除するアルゴリズムが使用されます。サービスでは、指定の STS によって発行された SAML トークンでメッセージが承認されていることが要求されます。

この機構の場合、サービスでは、セキュリティー保護された通信が信頼できる STS によって承認されていることが要求されます。サービスは、クライアントを直接信頼するのではなく、指定の STS によって発行されたトークンを信頼します。つまり、STS はクライアントを安全に認証するための 2 番目のサービスの役割を果たします。

この機構を Web サービスに使用するには、使用するセキュリティー機構でこのオプションを選択します。サービスから参照できるセキュリティートークンサービスが必要です。このアプリケーションのクライアント側のセキュリティー設定は、アプリケーションに対して選択されたセキュリティー機構ではなく、STS に対して選択されたセキュリティー機構によって決まります。クライアントのトラストストアに STS の証明書が格納されている必要があります。更新済みの GlassFish 証明書を使用していれば、この証明書の別名は wssip です。

サーバー側の要件

このセキュリティー機構に関しては、次のサーバー側オプションを設定する必要があります。

クライアント側の要件

このセキュリティー機構に関しては、次のクライアント側オプションを設定する必要があります。

表 22 STS 発行承認トークンの設定プロパティー

プロパティー 

説明 

値 

発行者アドレス 

メッセージで提供されるセキュリティートークンを受け入れる発行者 (STS) のアドレスを指定します。要素のタイプはエンドポイント参照です。STS には、セキュリティートークンの発行、交換、および検証に使用される一連のインタフェースが含まれています。 

たとえば、JAX-WS サービスの場合、発行者アドレスは http://localhost:8080/jaxws-sts/sts です。

http://localhost:8080/jaxws-sts/sts 

発行者メタデータアドレス 

発行者のメタデータを取得するアドレスを指定します。これは単に URL です。  

たとえば、JAX-WS サービスの場合、発行者メタデータアドレスは http://localhost:8080/jaxws-sts/sts です。

http://localhost:8080/jaxws-sts/sts 

トークンタイプ 

サービスプロバイダが必要とする SAML トークンのタイプを指定します。たとえば、urn:oasis:names:tc:SAML1.0:assertion です。

オプションは 1.0、1.1、または 2.0 です。 

1.1 

キータイプ 

サービスプロバイダが必要とするキーのタイプを指定します。  

選択肢は公開キーまたは対称キーです。

  • 対称キー暗号化方式は共有シークレットを基にしており、通常は公開キー暗号化方式より高速です。

  • 公開キー暗号化方式は、全員に公開されるキーを基にしており、主に暗号化に使用されますが、署名の検証にも使用可能です。

発行済みトークン機構だけに適用されます。 

対称キー 

キーサイズ 

要求する対称キーのサイズをビット数で指定します。  

これは、望ましいセキュリティー強度を示す情報として指定されます。有効な選択肢は 128、192、および 256 です。セキュリティートークンは、要求されたキーサイズの使用を強制されるわけではなく、STS も、同じキーサイズのトークンの発行を強制されるわけではありません。ただし、受信者はできるかぎり、指定された値以上の強度を持つキーを使用するように努めるべきです。  

発行済みトークン機構だけに適用されます。 

128 

アルゴリズム群 

対称キーベースまたは非対称キーベースのセキュリティートークンによる暗号化操作を実行するために必要なアルゴリズム群を指定します。  

詳細については、表 12 の「アルゴリズム群」を参照してください。

Basic 128 ビット 

セキュリティーヘッダーのレイアウト 

セキュリティーヘッダーに項目を追加する際に適用するレイアウト規則を指定します。オプションは、Strict、Lax、Lax (Timestamp First)、および Lax (Timestamp Last) です。 

詳細については、表 12 の「セキュリティーヘッダーのレイアウト」を参照してください。

Strict 

X509 トークンに派生キーを必要とする 

X509 トークンには派生キーが必要であることを指定します。詳細については、前述の「派生キーを必要とする」を参照してください。 

派生キーは、パスワードまたはほかのユーザーデータから作成される暗号化キーです。アプリケーションでは、必要に応じて派生キーを使用してセッションキーを作成できるため、特定のキーを保存する必要がなくなります。繰り返し行われるメッセージ交換に同じセッションキーを使用することは、リスクと見なされることがあります。そのようなリスクを低減するには、「X509 トークンに派生キーを必要とする」を有効にしてください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

発行済みトークンに派生キーを必要とする 

発行済みトークンには派生キーが必要であることを指定します。詳細については、前述の「X509 トークンに派生キーを必要とする」を参照してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー保護されたセッションを確立する (Secure Conversation) 

セキュリティー保護されたセッションでは、複数メッセージ交換のシーケンスが最初に開始されたときに、コンシューマとプロバイダの間で共有セキュリティーコンテキストを確立できます。後続のメッセージ (派生メッセージの場合もある) ではセッションキーを使用することにより、全体的なセキュリティーが向上するとともに、各メッセージのセキュリティー処理のオーバーヘッドが減少します。  

詳細については、表 12 の「セキュリティー保護されたセッションを確立する」を参照してください。

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティーセッションに派生キーを必要とする 

セキュリティー保護されたセッションには派生キーが必要であることを指定します。詳細については、前述の「X509 トークンに派生キーを必要とする」を参照してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

署名の確認を必要とする 

レスポンダが要求内の署名を処理することを指定します。WSS のバージョンが 1.1 の場合は、攻撃のリスクを低減するためにこのオプションを選択してください。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名を暗号化 

主署名と署名確認要素を暗号化する必要があるかどうかを指定します。  

チェックボックスが選択されている場合、有効になっていることを示します。 

署名前に暗号化 

メッセージ保護の順序として、SOAP コンテンツを暗号化してから SOAP 本体全体に署名することを指定します。暗号化キーと署名キーは、同じソースキーから派生させる必要があります。  

選択されていない場合、デフォルトの動作は「暗号化前に署名」です。  

チェックボックスが選択されている場合、無効になっていることを示します。 

クライアント設定 — Web サービス属性

WS Policy Attachment エディタに公開されるクライアント設定 Web サービス属性は、プロジェクトおよびサーバー設定によって決まります。

図は、本文中で説明されているとおり、「サーバー設定」の WS Policy Attachment エディタを示しています。

HTTP バインディングコンポーネントで公開される属性について、次の表で説明します。

属性 

説明 

値 

トランスポート設定

最適なエンコーディングを自動的に選択する (XML/Fast Infoset) 

XML を使用するか Fast Infoset エンコーディングを使用するかを指定します。 

Fast Infoset は、XML に代わる、より効率のよいバイナリエンコーディングです。サービスが Fast Infoset を許可するように設定されている場合、このオプションを選択して Fast Infoset を使用すると、同等の XML ドキュメントと比較して、より高速な解析、より高速な直列化、およびより小さいサイズのドキュメント作成が可能になります。 

チェックボックスが選択されている場合、有効になっていることを示します。 

最適なトランスポートを自動的に選択する (XML/Fast Infoset) 

サービスが TCP をサポートしているかどうかをクライアントランタイムで確認するかどうかを指定します。サービスが TCP をサポートしている場合、クライアントはサービスとクライアントの通信に自動的に TCP トランスポートを使用します。  

TCP を使用すると、小さいメッセージの送信時により高いパフォーマンスが得られます。パフォーマンスの向上は主に小さいメッセージで現れます。これは、HTTP プロトコルでメッセージを送信するオーバーヘッドが除去されるからです。サービスが TCP をサポートしていない場合や、クライアントに対してこのオプションが選択されていない場合は、HTTP がトランスポートとして使用されます。 

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー設定

開発用のデフォルトを使用する 

ただちに開発に使用できるように GlassFish のキーストアとトラストストアに証明書をインポートするかどうかを指定します。セキュリティー機構では、v3 証明書を使用する必要があります。デフォルトの GlassFish のキーストアとトラストストアには、この時点で v3 証明書は含まれていません。GlassFish でメッセージセキュリティー機構を使用するには、v3 証明書の入ったキーストアファイルとトラストストアファイルを入手し、適切な証明書をデフォルトの GlassFish ストアにインポートする必要があります。  

証明書のインポートに加え、このオプションを選択すると、「wsitUser」というユーザー名のデフォルトユーザーが file レルムに作成されます。  

本稼働環境にはユーザー独自の証明書とユーザー設定を指定してください。 

チェックボックスが選択されている場合、有効になっていることを示します。 

キーストア 

「キーストア」ボタンをクリックすると、キーストア設定エディタが開きます。 

このエディタでは、次の情報を指定します。

  • 場所: クライアントを認証するための証明書キーが格納されているディレクトリとファイル名を指定します。場所と名前を指定するには、参照ボタンを使用します。

  • キーストアパスワード: クライアントで使用されるキーストアのパスワードを指定します。デフォルトの GlassFish パスワードは changeit です。

  • 別名: 認証に使用する指定されたキーストア内の証明書の別名を指定します。

  • 別名の読み込み: このボタンをクリックすると、選択したキーストアで使用可能なすべての証明書が「別名」リストに入力されます。このオプションは、キーストアの場所とパスワードが正しい場合にのみ機能します。

  • キーパスワード: キーストア内のキーのパスワードを指定します。デフォルトでは、キーパスワードにはストアのパスワードが使用されます。キーパスワードが異なっている場合のみ、このフィールドにパスワードを指定してください。

  • 別名セレクタクラス: 別名のセレクタクラスを指定します。

キーストア設定エディタからキーストアを設定します。

トラストストア 

「トラストストア」ボタンをクリックすると、トラストストア設定エディタが開きます。 

このエディタでは、次の情報を指定します。

  • 場所: サーバーの証明書キーが格納されているクライアントトラストストアのディレクトリとファイル名を指定します。場所とファイル名を選択するには、参照ボタンを使用します。

  • トラストストアパスワード: クライアントで使用されるトラストストアのパスワードを指定します。GlassFish の下で実行している場合、GlassFish のパスワードは changeit です。

  • 別名: クライアントが暗号化したデータを送信する必要があるときに使用する、トラストストア内の証明書のピア別名を指定します。

  • 別名の読み込み: 「別名の読み込み」ボタンをクリックすると、トラストストアファイルに格納されている別名が「別名」フィールドに入力されます。このオプションが機能するためには、「場所」フィールドと「トラストストアパスワード」フィールドに正しく入力する必要があります。

  • 証明書セレクタ: 0 個以上の証明書の識別情報を指定する文字列を指定します。指定子は X.509 命名規則に準拠することができます。証明書セレクタでは、各種のショートカットを使用して、被認証者の代替名、ファイル名、または発行者と照合することもできます。

トラストストア設定エディタからトラストストアを設定します。

認証資格 

認証資格が動的か静的かを指定します。「認証資格」の前にある関連する 2 つのプロパティーフィールドは、「認証資格」プロパティーの値によって変化します。 

  • 動的

  • 静的: この設定の場合、デフォルトのユーザー名とパスワードを指定してください。

注: 「静的」オプションでは、WSIT のクライアント側設定にプレーンテキスト文字列として格納されたパスワードが、公開されるリスクがあります。ただし、GlassFish のコンテキストで使用する場合、「静的」オプションは組み込み Web サービスクライアント (Web サービスクライアントとして機能するサーブレットや EJB など) に特に役立ちます。この場合のパスワードは、パスワード文字列を「$」文字で始めることにより、プレースホルダとして指定できます。次に、WSIT セキュリティーランタイムは SecretKeyCallback を作成し、パスワードのプレースホルダ (「$」文字を除いたもの) を渡します。SecretKeyCallback の結果として実際のパスワードが取得されます。  

詳細については、WSIT Security Configuration Demystified を参照してください。

動的 

ユーザー名コールバックハンドラまたはユーザー名

ユーザー名コールバックハンドラを指定します (「認証資格」の値が「動的」に設定されている場合)。 

CallbackHandler は javax.security.auth.callback を実装するクラスです。ユーザー名コールバックハンドラ (javax.security.auth.callback.NameCallback) の場合、NameCallback を使用してユーザー名が取得されます。これは、セキュリティー機構でクライアントがユーザー名とパスワードを指定するよう要求されている場合に必要です。CallbackHandler の呼び出しは、単純な J2SE Web サービスクライアントだけに適用されます。  

詳細については、WSIT Security Configuration Demystified を参照してください。

ユーザー名コールバックハンドラ

承認済みユーザーの名前を指定します (「認証資格」の値が「静的」に設定されている場合)。 

このオプションは開発環境での使用にのみ適しています。「デフォルトユーザー」と「デフォルトパスワード」を指定すると、ユーザー名とパスワードは wsit-client.xml ファイルに平文で保存され、それによってセキュリティーリスクが発生します。本稼働環境にはこのオプションを使用しないでください。 

ユーザー名

パスワードコールバックハンドラまたはパスワード

ユーザー名コールバックハンドラを指定します (「認証資格」の値が「動的」に設定されている場合)。 

パスワードコールバックハンドラ (javax.security.auth.callback.PasswordCallback) の場合、PasswordCallback を使用してパスワードが取得されます。これは、セキュリティー機構でクライアントがユーザー名とパスワードを指定するよう要求されている場合に必要です。CallbackHandler の呼び出しは、単純な J2SE Web サービスクライアントだけに適用されます。  

詳細については、WSIT Security Configuration Demystified を参照してください。

パスワードコールバックハンドラ

承認済みユーザーのパスワードを指定します (「認証資格」の値が「静的」に設定されている場合)。 

このオプションは開発環境での使用にのみ適しています。「デフォルトユーザー」と「デフォルトパスワード」を指定すると、ユーザー名とパスワードは wsit-client.xml ファイルに平文で保存され、それによってセキュリティーリスクが発生します。本稼働環境にはこのオプションを使用しないでください。 

パスワード

SAML コールバックハンドラ 

SAML コールバックハンドラを指定します。デフォルトの SAML コールバックハンドラはないので、SAML コールバックハンドラを使用するにはそれを作成する必要があります。 

CallbackHandler は javax.security.auth.callback を実装するクラスです。SAML コールバックハンドラ (com.sun.xml.wss.impl.callback.SAMLCallback) は、セキュリティー機構でクライアントが SAML 表明 (Sender-Vouches や Holder-of-Key など) を指定するよう要求されている場合に必要です。 

詳細については、WSIT Security Configuration Demystified を参照してください。

SAML コールバックハンドラ

詳細設定

RM 再送信間隔 (ミリ秒) 

送信側が受信側に未確認のメッセージを再送信する時間間隔を、ミリ秒単位で指定します。デフォルトでは、再送信は 2000 ミリ秒ごとに行われます。 

2000 

RM クローズタイムアウト (ミリ秒) 

クライアントが close() 呼び出しの戻りを待機する時間を、ミリ秒単位で指定します。この時間に達したあとで未確認のメッセージが受信され、close の呼び出しが戻っている場合は、失われたメッセージに関するエラーがログに記録されます。

RM Ack 要求間隔 (ミリ秒) 

送信側が受信側に Ack 要求を再度送信するまでに最小限待つべき推奨間隔を、ミリ秒単位で指定します。 

200 

セキュリティー保護されたセッションのトークンの寿命 (ミリ秒) 

セキュリティー保護されたセッションの期間 (セッションが期限切れになる間隔) を指定します。 

36000 

セキュリティー保護されたセッションの期限切れトークンを再生 

セキュリティー保護されたセッションの期限切れトークンを再生するかどうかを指定します。 

チェックボックスが選択されている場合、有効になっていることを示します。 

セキュリティー保護されたセッションの取り消しを必要とする 

セキュリティー保護されたセッションの取り消しを有効にするかどうかを指定します。 

チェックボックスが選択されている場合、有効になっていることを示します。 

最大クロックスキュー (ミリ秒) 

送信側と受信側のシステムクロックの間に許容される最大の差を、ミリ秒単位で指定します。 

300000 

タイムスタンプの新しさの制限 (ミリ秒) 

タイムスタンプの新しさの制限をミリ秒単位で指定します。受信側は、受信したタイムスタンプの作成時刻が「タイムスタンプの新しさの制限」の期間より古い場合、これらを拒否します。 

300000 

デフォルトの証明書失効機構を使用する 

このオプションが選択されている場合は、ベースとなる PKIX サービスプロバイダのデフォルトの失効検査機構が使用されます。 

チェックボックスが選択されている場合、有効になっていることを示します。