ナビゲーションをスキップ

WebLogic Web サービス プログラマーズ ガイド

  前 次 前/次ボタンと目次ボタンとの区切り線 目次  

セキュリティ ポリシー アサーションのリファレンス

以下の節では、WS-Policy ファイルでコンフィグレーション可能なセキュリティ アサーションに関するリファレンス情報を示します。

 


セキュリティ アサーションを含む WS-Policy ファイルの概要

WS-Policy ファイルを使用すると、WebLogic Web サービスのメッセージングレベルのセキュリティをコンフィグレーションできます。WebLogic Web サービスに関連付けられている WS-Policy ファイルの名前を指定するには、その Web サービスを実装している JWS ファイルで @Policy および @Policies JWS アノテーションを使用します。

WS-Policy ファイルは、WS-Policy 仕様に準拠する XML ファイルです。WS-Policy ファイルのルート要素は、常に <wsp:Policy> です。メッセージレベルのセキュリティをコンフィグレーションするには、認証用にサポートされているトークンの種類、および SOAP メッセージを暗号化してデジタル署名する方法を指定するポリシー アサーションを追加します。

注意 : これらのセキュリティ ポリシー アサーションは、2002 年 12 月 18 日に公開された Web Services Security Policy Language (WS-SecurityPolicy) 仕様に基づいています。つまり、WebLogic Server のアサーションの正確な構文と使用方法は、この仕様で説明されているアサーションとは異なっていますが、意味上の違いはありません。このリリースの WebLogic Server のアサーションは、最新の仕様 (2005 年 7 月 13 日付) には基づいていません

WebLogic Server には、標準的なセキュリティ アサーションを含む 3 つの WS-Policy ファイル (Auth.xmlSign.xml、および Encrypt.xml) があります。独自の WS-Policy ファイルを作成しない場合は、このファイルのいずれかを使用できます。この 3 つのファイルの詳細については、「メッセージレベルのセキュリティ コンフィグレーションに対する WS-Policy ファイルの使い方の概要」を参照してください。

メッセージレベルでセキュリティ保護された WebLogic Web サービスをタスク中心に説明している内容については、「メッセージレベルのセキュリティ (デジタル署名と暗号化) のコンフィグレーション」を参照してください

 


グラフィカルな表現

以下の図では、WS-Policy ファイルのセキュリティ アサーションの要素の階層を示します。

図 12-2 セキュリティ WS-Policy アサーションの要素階層

セキュリティ WS-Policy アサーションの要素階層


 

 


セキュリティ要素のあるポリシー ファイルの例

<?xml version="1.0"?>
<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
>
  <wssp:Identity>
<wssp:SupportedTokens>
<wssp:SecurityToken TokenType="http://docs.oasis-open.org/wss/2004/01/oasis-2004-01-saml-token-profile-1.0#SAMLAssertionID">
<wssp:Claims>
<wssp:ConfirmationMethod>sender-vouches</wssp:ConfirmationMethod>
</wssp:Claims>
</wssp:SecurityToken>
</wssp:SupportedTokens>
</wssp:Identity>
  <wssp:Confidentiality>
<wssp:KeyWrappingAlgorithm
URI="http://www.w3.org/2001/04/xmlenc#rsa-1_5"/>
    <wssp:Target>
<wssp:EncryptionAlgorithm
URI="http://www.w3.org/2001/04/xmlenc#tripledes-cbc"/>
<wssp:MessageParts
Dialect="http://www.bea.com/wls90/security/policy/wsee#part">
wls:SecurityHeader(Assertion)
</wssp:MessageParts>
</wssp:Target>
    <wssp:Target>
<wssp:EncryptionAlgorithm
URI="http://www.w3.org/2001/04/xmlenc#tripledes-cbc"/>
      <wssp:MessageParts 
Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">
wsp:Body()</wssp:MessageParts>
</wssp:Target>
    <wssp:KeyInfo />
</wssp:Confidentiality>
</wsp:Policy>

 


要素の説明

CanonicalizationAlgorithm

デジタル署名する SOAP メッセージの要素を標準化するのに使用するアルゴリズムを指定します。

表 D-1 <CanonicalizationAlgorithm> の属性

属性

解説

必須/省略可能

URI

デジタル署名する SOAP メッセージの標準化に使用するアルゴリズム。

指定できるのは以下の標準化アルゴリズムのみ。

http://www.w3.org/2001/10/xml-exc-cl4n#

必須

Claims

特定の種類のセキュリティ トークンに関連付けられる追加メタデータ情報を指定します。セキュリティ トークンの種類によって、以下の子要素を指定できます。

この要素は、属性を持ちません。

Confidentiality

SOAP メッセージの暗号化に使用するアルゴリズムやキーに加え、SOAP メッセージの一部または全部を暗号化するように指定します。

たとえば、Web サービスで、SOAP メッセージの本文全体を triple-DES で暗号化する必要がある場合などです。

表 D-2 <Confidentiality> の属性

属性

解説

必須/省略可能

encryptContentOnly

要素全体を暗号化するか、その内容のみを暗号化するかを指定する。

この属性のデフォルト値は true で、内容のみが暗号化される。

省略可能

ConfirmationMethod

認証用に SAML トークンを使用する場合に使う確認メソッドの種類を指定します。この要素では、sender-vouches または holder-of-key の値を指定できます。

この要素は、属性を持ちません。

DigestAlgorithm

SOAP メッセージの指定部分にデジタル署名する際に使用するダイジェスト アルゴリズムを指定します。デジタル署名する SOAP メッセージの一部を指定するには、<MessageParts> 兄弟要素を使用します。

表 D-3 <DigestAlgorithm> の属性

属性

解説

必須/省略可能

URI

SOAP メッセージの指定部分にデジタル署名する際に使用するダイジェスト アルゴリズム。

指定できるのは以下のダイジェスト アルゴリズムのみ。

http://www.w3.org/2000/09/xmldsig#sha1

必須

EncryptionAlgorithm

SOAP メッセージの指定部分を暗号化する際に使用する暗号化アルゴリズムを指定します。暗号化する SOAP メッセージの一部を指定するには、<MessageParts> 兄弟要素を使用します。

表 D-4 <EncryptionAlgorithm> の属性

属性

解説

必須/省略可能

URI

SOAP メッセージの指定部分を暗号化する際に使用する暗号化アルゴリズム。

有効な値は、次のとおり。

http://www.w3.org/2001/04/xmlenc#tripledes-cbc
http://www.w3.org/2001/04/xmlenc#kw-tripledes

必須

Identity

認証用にサポートされているセキュリティ トークンの種類 (ユーザ名、X.509、または SAML) を指定します。

この要素には属性はありません。

Integrity

SOAP メッセージのデジタル署名に使用するアルゴリズムやキーに加え、SOAP メッセージの一部または全部にデジタル署名するように指定します。

たとえば、Web サービスで、SOAP メッセージの本文全体にデジタル署名する必要があり、SHA1 と RSA キーを使用したアルゴリズムのみを受け付ける場合などです。

表 D-5 <Integrity> の属性

属性

解説

必須/省略可能

SignToken

SOAP メッセージの指定部分に加え、<Integrity><SecurityToken> 子要素で指定したセキュリティ トークンにもデジタル署名するかどうかを指定する。

この属性の有効な値は、true および false。デフォルト値は true

省略可能

KeyInfo

暗号化用のセキュリティ トークンを指定するために使用します。

この要素には属性はありません。

KeyWrappingAlgorithm

メッセージの暗号化キーを暗号化するために使用するアルゴリズムを指定します。

表 D-6 <KeyWrappingAlgorithm> の属性

属性

解説

必須/省略可能

URI

SOAP メッセージの暗号化キーを暗号化するために使用するアルゴリズム。

有効な値は、次のとおり。

  • http://www.w3.org/2001/04/xmlenc#rsa-1_5

(RSA-v1.5 アルゴリズムを指定する場合)

  • http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p

(RSA-OAEP アルゴリズムを指定する場合)

必須

MessageAge

SOAP メッセージが有効期限切れになり、破棄されるまでの期間を指定します。

.

表 D-7 <MessageAge> の属性

属性

解説

必須/省略可能

Age

SOAP メッセージの実際にタイムアウトになるまでの期間 (秒) を指定する。

省略可能

MessageParts

デジタル署名または暗号化の対象となるメッセージのノードを指定します。

表 D-8 <MessageParts> の属性

属性

解説

必須/省略可能

Dialect

URI 参照として使用されている式言語の URI を識別する。この属性を指定しない場合、XPath 1.0 が使用される。

有効な値は以下のいずれか。

  • http://www.w3.org/TR/1999/REC-xpath-19991116 : SOAP メッセージに対して XPath 1.0 式が評価されるように指定する。

  • http://schemas.xmlsoap.org/2002/12/wsse#part : WS-PolicyAssertions 仕様の「Appendix II」で定義されている関数のセットを使用してメッセージ パートのリストを指定する。

  • http://www.bea.com/wls90/security/policy/wsee#part : 標準の WebLogic Web サービス メッセージ パート言語の拡張機能で識別されたメッセージ パートを指定する。

必須

SecurityToken

親要素によって、認証、暗号化、またはデジタル署名のいずれかで使用できるセキュリティ トークンを指定します。

たとえば、この要素が <Identity> 親要素で定義されている場合、Web サービスを呼び出したクライアント アプリケーションは、SOAP 要求にセキュリティ トークンをアタッチする必要があります。Web サービスによっては、機密データにアクセスできるようにするために、クライアント アプリケーションが、信頼されている認証局によって発行された SAML 認証トークンを提示しなければならない場合もあります。この要素が <Confidentiality> の一部の場合、暗号用のトークンが指定されます。

特定の種類のセキュリティ トークンは、親要素に加え、TokenType 属性の値によって決まります。

表 D-9 <SecurityToken> の属性

属性

解説

必須/省略可能

IncludeInMessage

SOAP メッセージにトークンを格納するかどうかを指定する。

省略可能

TokenType

セキュリティ トークンの種類を指定する。有効な値は、次のとおり。

  • #X509Token : バイナリ X.509 トークンを指定する場合。

  • #UsernameToken : ユーザ名トークンを指定する場合。

  • http://www.docs.oasis-open.org/wss/2004/XX/oasis-2004XX-wss-saml-token-profile-1.0#SAMLAssertion-1.0 : SAML トークンを指定する場合。

省略可能

SignatureAlgorithm

デジタル署名の計算に使用する暗号アルゴリズムを指定します。

表 D-10 <SignatureAlgorithm> の属性

属性

解説

必須/省略可能

URI

署名の計算に使用する暗号アルゴリズムを指定する。

注意 : 必ず社内で使用している証明書と互換性のあるアルゴリズムを指定すること。

有効な値は、次のとおり。

http://www.w3.org/2000/09/xmldsig#rsa-sha1
http://www.w3.org/2000/09/xmldsig#dsa-sha1

必須

SupportedTokens

親要素によって、認証、暗号化、またはデジタル署名のいずれかで使用できるセキュリティ トークンのリストを指定します。

この要素には属性はありません。

Target

親要素によって、暗号化またはデジタル署名する SOAP メッセージの対象に関する情報をカプセル化します。子要素も、親要素によって異なります。たとえば、<Integrity> で使用する場合は、<DigestAlgorithm><Transform>、および <MessageParts> 子要素を指定できます。

1 つまたは複数の対象を指定できます。

この要素には属性はありません。

Transform

親要素によって、電子署名または暗号化される SOAP メッセージの一部に適用されるトランスフォーメーション アルゴリズムの URI を指定します。

0 個以上の任意の数のトランスフォーメーションを指定できます。指定したトランスフォーメーションは、<Target> 親要素で指定されている順序で実行されます。

表 D-11 <Transform> の属性

属性

解説

必須/省略可能

URI

トランスフォーメーション アルゴリズムの URI を指定する。

必須

UsePassword

プレーンテキストかパスワードのダイジェストかを SOAP メッセージに表示するように指定します。この要素は、ユーザ名トークンでのみ使用されます。

表 D-12 <UsePassword> の属性

属性

解説

必須/省略可能

種類

パスワードの種類を指定する。有効な値は、次のとおり。

  • http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText : SOAP メッセージでクリアテキスト パスワードを使用するように指定する。

  • http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest : SOAP メッセージでパスワード ダイジェストを使用するように指定する。

必須

 

フッタのナビゲーションのスキップ  ページの先頭 前 次