WSSEncryptPart API を使用した暗号化パーツの追加
構成用ポリシー・セットを使用しなくても、Web Services Security API (WSS API) を使用することで SOAP メッセージをセキュアにすることができます。 暗号化パーツを要求生成プログラム (クライアント側) バインディング用に構成するには、 WSSEncryptPart API を使用して定義し、暗号化パーツのエレメントのリストに追加します。 WSSEncryptPart は、com.ibm.websphere.wssecurity.wssapi.encryption パッケージに含まれるインターフェースです。
始める前に
WSS API を使用するか、または管理コンソールでポリシー・セットを構成するかして、 暗号化パーツを使用可能にできます。 SOAP メッセージをセキュアにするには、必要に応じて WSS API を使用して以下の暗号化タスクを実行します。
- WSSEncryption API を使用して、暗号化を構成し、暗号化方式を選択します。
- 必要に応じて WSSEncryptPart API を使用して 暗号化パーツを構成します。
このタスクについて
機密性設定では、生成されたメッセージに機密性の制約が適用される必要があります。 これらの制約には、暗号化する必要がある、生成メッセージ内のメッセージ・パーツを指定することと、 暗号化されたエレメントの付加先のメッセージ・パーツを指定することも含まれます。 ジェネレーター側の暗号化情報は、 発信 SOAP メッセージを暗号化するために使用されます。 要求生成プログラムは、クライアント用に構成されます。
WSSEncryptPart API で暗号化パーツに関連した情報を指定し、メッセージ機密性の保護用に追加されている暗号化パーツを設定します。 WSSEncryptPart を使用して、変換方式の設定と、変換方式の適用先であるパーツの指定を行います。 変換方式は、SOAP with Attachments を使用する場合にのみ設定します。WSSEncryptPart は、変換方式の設定などのタスクの場合を除き、通常は必要ありません。
メッセージの機密性を保護するために、次の表に表示される暗号化パーツおよび関連情報が使用されます。
暗号化パーツ | 説明 |
---|---|
part | WSSEncryptPart オブジェクトを暗号化パーツのターゲットとして追加します。 |
keyword | キーワードを使用して暗号化パーツを追加します。 キーワードを使用して追加できるデフォルトの暗号化パーツは、 BODY_CONTENT と SIGNATURE です。 WebSphere® Application Server は、以下のキーワードの使用をサポートしています。
|
xpath | XPath 式を使用して暗号化パーツを追加します。 |
シグニチャー | WSSSignature コンポーネントを暗号化パーツのターゲットとして追加します。
WSSSignature は、SOAP メッセージにシグニチャー・エレメントが含まれている場合にのみ適用されます。 |
header | SOAP ヘッダー (QName で指定する) を暗号化パーツのターゲットとして追加します。 |
securityToken | SecurityToken オブジェクトを暗号化パーツのターゲットとして追加します。 |
暗号化パーツでは、ある決まったデフォルトの動作が行われます。 WSSEncryptPart API を使用する一番簡単な方法は、デフォルトの動作を使用することです。 WSSEncryptPart API は、変換アルゴリズムの指定、オブジェクトのターゲットとしての設定、 暗号化パーツ (SOAP 本体の内容、シグニチャーなど) の指定用のデフォルトを提供します。
暗号化のデフォルトの動作には、以下のものがあります。
暗号化パーツの決定内容 | デフォルトの動作 |
---|---|
キーワードを使用して暗号化する SOAP メッセージ・パーツ | 暗号化パーツ用に使用するキーワードを指定します。 WebSphere Application Server は、暗号化のためにデフォルトで以下の SOAP メッセージを設定します。
|
追加する変換方式 | WebSphere Application Server は、 デフォルトでは変換方式を何も指定しません。SOAP with Attachments を使用する場合のみ、変換方式を指定します。 |
手順
タスクの結果
次のタスク
暗号化パーツを要求生成プログラム (クライアント側) バインディング用に使用可能にした後、 同一パーツを応答コンシューマー (クライアント側) バインディング用に暗号化解除するように指定する必要があります。 次に、暗号化解除および暗号化解除パーツを構成するために、 WSS API を使用するか、または管理コンソールでポリシー・セットを構成します。