1.1.7.2.2 WS-Securityポリシー・ファイルの使用

SALTには、メッセージ・レベル・セキュリティのユースケースのために使用される複数のWS-Securityポリシー1.0および1.2のファイルが含まれています。

SALTが正常にインストールされると、WS-Policyファイルが$TUXDIR/udataobj/salt/policyに配置されます。

次の例では、SALTに付属するWS-Securityポリシー・ファイルを示します。

表1-8 SALTに付属するWS-Securityポリシー・ファイル

ファイル名 目的
wssp1.0-username-auth.xml WS-Securityポリシー1.0。サービスの認証用の容易なテキスト・ユーザー名トークン
wssp1.0-x509v3-auth.xml WS-Securityポリシー1.0。サービスの認証用のX.509 V3証明書トークン
wssp1.0-signbody.xml WS-Securityポリシー1.0。X.509証明書トークンの検証用のSOAP:Body上の署名
wssp1.2-Wss1.0-UsernameToken-plain-auth.xml WS-Securityポリシー1.2。サービスの認証用の容易なテキスト・ユーザー名トークン
wssp1.2-Wss1.1-X509V3-auth.xml WS-Securityポリシー1.2。サービスの認証用のX.509 V3証明書トークン
wssp1.2-signbody.xml WS-Securityポリシー1.2。X.509証明書トークンの検証用のSOAP:Body上の署名

上述のWS-Security Policy 1.2 UserTokenファイル以外のすべてのポリシー・ファイルを、ネイティブWSDFファイルの<Servicegroup>要素または<Service>要素を使用して参照できます。WSSP 1.2 UserTokenファイルは、<Servicegroup>を使用した場合のみ参照できます

次に、サービス「TOUPPER」で、クライアントがプレーン・テキスト形式のUsernameTokenとリクエスト形式のX509v3Tokenを送信する必要があり、X.509トークンで署名付きメッセージのSOAP:Body部分も必要とする、ポリシー割当ての例を示します。サンプル「“wsseapp”」では、WSSP 1.2 UserTokenファイルを<Service>要素で使用するようにクリップする方法を示します。

例1-22 WS-Securityポリシーの使用方法

<Definition ...>
  <WSBinding id="simpapp_binding">

    <Servicegroup id="simpapp">
      <Policy location="salt:wssp1.2-Wss1.1-X509V3-auth.xml"/>
      <Service name="TOUPPER" >
        <Policy location="D:/wsseapp/wssp1.2-UsernameToken-Plain.xml"/>
        <Policy location="salt:wssp1.2-signbody.xml" use="input"/>
      </Service>
    </Servicegroup>
    ....
  </WSBinding>
  ......
</Definition>

ポリシーは、<Policy>要素の「location」属性で指定されます。接頭辞の「salt:」は、SALTに付属のデフォルト・ポリシー・ファイルがすでに使用されていることを示します。ユーザー定義ポリシー・ファイルは、ファイル・パスを直接指定して使用できます。

ノート:

ポリシーが<Servicegroup>レベルで参照されると、このサービス・グループのすべてのサービスに適用されます。

signbodyポリシーは、use属性をinputに設定して使用する必要があります。これにより、ポリシーが入力メッセージに対してのみ適用されます。発信メッセージのSOAP:Bodyが署名済でないため、これは必要です。