ヘッダーをスキップ
Oracle Application Server Web Servicesセキュリティ・ガイド
10gリリース3(10.1.3)
B31870-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

A OracleAS Web Servicesセキュリティ・スキーマ

この付録では、セキュリティ・スキーマoracle-webservices-security-10_0.xsdの定義するOracle Application Server Web Servicesセキュリティの構成要素について説明します。このファイルはoc4j-schemas.jarファイルの中にあります。

OC4J_HOME\j2ee\home\lib\oc4j-schemas.jar

OC4J_HOMEはOracle Containers for J2EE(OC4J)をインストールしたディレクトリを表します。

セキュリティは、通常、より大規模なWebサービス管理構成の一部として使用されます。セキュリティを有効化するには、サーバー側のWebサービスとクライアントに構成する必要があります。構成は、アセンブルされる際にWebサービスまたはクライアントに渡されるXML構成ファイルの一部です。

セキュリティ構成の階層

セキュリティ構成は<security>要素で区切られます。oracle-webservices.xmlサーバー側構成ファイルでは、ポート・コンポーネントおよび個別操作に対する構成は<runtime>句に表示されます。それぞれのポートおよび操作は、独自のセキュリティ構成を持つことができます。次の概念的なフラグメントは、セキュリティ構成要素がoracle-webservices.xmlファイルの階層のどこに表示されるかを示します。

<oracle-webservices>
 <webservice-description>
<port-component>
  <runtime enabled="security">
    <security>
      <key-store>
      <signature-key>
      <encryption-key>

  <operations>
    <operation>
      <runtime>
        <security>
          <inbound>
            <verify-username-token>
              <property>
            <verify-x509-token>
              <property>
            <verify-saml-token>
              <subject-confirmation-methods>
            <verify-signature>
              <signature-methods>
                <signature-method>
              <tbs-elements>
              <verify-timestamp>
              <property>
            <decrypt>
              <encryption-methods>
                <encryption-method>
              <keytransport-methods>
                <keytransport-method>
              <tbe-elements>
              <property>

          <outbound>
            <username-token>
              <property>
            <saml-token>
              <attribute>
              <subject-confirmation-method>
                <confirmation-method>
              <saml-authority>
              <property>
            <x509-token>
              <property>
            <signature>
              <signature-methods>
                <signature-method>
              <add-timestamp>
              <tbs-elements>
                <tbs-element>
            <encrypt>
              <encryption-method>
              <keytransport-method>
              <recipient-key>
              <use-cert-request>
              <tbe-elements>
                <tbe-element>

セキュリティ・スキーマの要素および属性

この項では、監査スキーマoracle-webservices-security-10_0.xsdの要素をアルファベット順に示します。

<add-timestamp>

親要素: <signature>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

アウトバウンドSOAPメッセージにタイムスタンプを追加します。このタイムスタンプは<verify-timestamp>要素を設定すると検証されます。「<verify-timestamp>」を参照してください。

表A-1 <add-timestamp>の属性

名前 説明

created

値: ブール

デフォルト: true

作成時間がタイムスタンプに挿入されるかどうかを示します。デフォルトはtrueです。

expiry

値: long

デフォルト: 28800秒

署名が期限切れになるまでの有効期限(秒)。デフォルトは28800秒(8時間)です。


<attribute>

親要素: <saml-toke>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<attribute>要素には、プロパティ・ファイルを示す必須のpath属性があります。属性文はこのファイルに列記されている属性から作成されます。

このプロパティ・ファイルには、ユーザーのIDのアサーションを行うための1つ以上の属性名/値のペアが含まれます。属性名の先頭にはオプションのネームスペースが付属する場合があります。次に例を示します。

[attribute-name-space/]attribute-name=value

<attribute>下位要素に表示される値の例を、次に示します。

email=abc@myCompany.com

表A-2 <attribute>の属性

名前 説明

path

値: 文字列

デフォルト: N/A(必須)

ユーザーのIDのアサーションを行うための1つ以上の属性名/値のペアを含むプロパティ・ファイルのパスを示します。


<confirmation-method>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <subject-confirmation-methods>

子要素: なし

必須/オプション: <subject-confirmation-methods>が指定されている場合は必須

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

これは、<subject-confirmation-methods>が使用される場合、必須の下位要素です。1つから3つの<confirmation-method>下位要素が表示される可能性があります。この要素について使用できる文字列値は次のとおりです。

  • Sender-Vouches(デフォルト): 受信SAMLトークンはsender-vouches確認メソッドを提供し、トークンへの参照が署名されている必要があります。

  • Sender-Vouches-Unsigned: 受信SAMLトークンはsender-vouches確認メソッドを提供し、トークンは署名されていない必要があります。

  • Holder-Of-Key: 受信SAMLトークンはholder-of-key確認メソッドを提供する必要があります。アサーションにはユーザーの公開鍵が必要です。

アウトバウンド要素の場合:

親要素: <subject-confirmation-method>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

サポートされている確認メソッドはSender-Vouches(デフォルト)、Sender-Vouches-UnsignedおよびHolder-Of-Keyです。最大で1つの<confirmation-method>要素をアウトバウンド構成内の<subject-confirmation-method>要素の下位要素として指定できます。

<decrypt>

親要素: <inbound>

子要素: <encryption-methods><keytransport-methods>、<property>、<tbe-elements>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<decrypt>要素は<inbound>要素のオプションの下位要素です。これは受信者の秘匿性要件を指定します。<decrypt>要素は<inbound>要素内で1回だけ使用できます。

前述の子要素に加えて、<decrypt>要素は<property>下位要素もサポートします。<property>下位要素の書式は次のとおりです。

<property name="property_name" value="property_value"/>

OracleAS Web Servicesセキュリティは<decrypt>で次のプロパティを定義します。

  • oracle.security.wss.decryptusingski

    trueに設定されている場合、暗号化された鍵タグ内のサブジェクト鍵識別子は、キーストアの秘密鍵に対して解決されます。デフォルトではこのプロパティはfalseに設定されます。次に例を示します。

    <property name="oracle.security.wss.decryptusingski" value="true"/>

    復号鍵の別名およびパスワードは、パスワード・インダイレクションを使用するsystem-jazn-data.xmlファイルに保存されます。


    注意:

    このプロパティは、oracle-webservices.xmlまたは<generated_name>_Stub.xmlデプロイメント・ディスクリプタのどちらかで設定できます。このプロパティを追加するためのツール・サポートはないため、ファイルは手動で編集する必要があります。

<encrypt>

親要素: <outbound>

子要素: <encryption-method><keytransport-method><recipient-key><tbe-elements><use-cert-request>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<encrypt>要素は<outbound>要素のオプションの下位要素です。これは送信者の秘匿性要件を指定します。<encrypt>要素は<outbound>要素内で1回だけ使用できます。

<encryption-key>

親要素: <security>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: 両方

メッセージの復号化に必要な鍵を示します。

<encryption-key>要素は、<encrypt>要素の<recipient-key>下位要素のalias属性として構成されます。<recipient-key>の詳細は、「<recipient-key>」を参照してください。

ポート・レベル・キーストアが指定されている場合、または鍵をグローバル・キーストアから選択する際は、<signature-key>および<encryption-key>要素が必要です。これらの鍵がポート・レベルで構成されていない場合は、グローバル・レベルの値が使用されます。

<signature-key>および<encryption-key>要素の値を変更した場合は、新しい値を有効にするためアプリケーションを再起動する必要があります。

表A-3 <encryption-key>の属性

名前 説明

alias

値: 文字列

デフォルト: N/A(必須)

鍵の別名

key-pass

値: 文字列

デフォルト: N/A

鍵にアクセスするためのパスワード


<encryption-method>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <encryption-methods>

子要素: なし

必須/オプション: <encryption-methods>が指定されている場合は必須

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<decrypt>要素の一部としての暗号化メソッドは、Webサービス・アプリケーションで受け入れられた暗号化メソッドを参照します。Webサービス・アプリケーションは複数の暗号化メソッドを受入れできます。1つ以上3つ以下の<encryption-method>要素が示されます。受信SOAPメッセージが暗号化されている場合、サービス・インターセプタは秘匿性ポリシーをチェックして、暗号化アルゴリズムが一致しない場合はリクエストを拒否します。<encryption-method>について有効な値は次のとおりです。

  • 3DES

  • AES-128(デフォルト)

  • AES-256

表2-9「暗号化アルゴリズムに対するURIと短縮名」には、Webサービス・セキュリティで認識される暗号化アルゴリズムURIおよび対応する短縮名が一覧表示されています。

アウトバウンド要素の場合:

親要素: <encrypt>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

アウトバウンドSOAPメッセージの要素の暗号化に使用される暗号化メソッドを指定します。<encrypt>要素の下には1つの暗号化メソッドのみが列記されます。有効なメソッドは次のとおりです。

  • 3DES

  • AES-128(デフォルト)

  • AES-256

表2-9「暗号化アルゴリズムに対するURIと短縮名」には、Webサービス・セキュリティで認識される暗号化アルゴリズムに対するURIおよび対応する短縮名が一覧表示されています。

<encryption-methods>

親要素: <decrypt>

子要素: <encryption-method>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<encryption-method>要素の集合。「<encryption-method>」を参照してください。

<inbound>

親要素: <security>

子要素: <decrypt><verify-saml-token><verify-signature><verify-username-token><verify-x509-token>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

oracle-webservices.xmlおよび<generated_name>_Stub.xmlデプロイメント・ディスクリプタ内のインバウンド・メッセージ・セクションは、<inbound>要素で区切られます。<inbound>要素は受信メッセージに関連するセキュリティ構成ポリシーをカプセル化します。<inbound>要素は、<security>の下位要素としてグローバル、ポートおよび操作レベルで使用できます。

インバウンド・セキュリティは、受信メッセージに対するコンテキスト固有のセキュリティ・ポリシーを定義します。クライアントの場合、これはレスポンスの受信に関連付けられたセキュリティ・ポリシーを表します。サービスの場合、これはリクエストの受信に関連付けられたセキュリティ・ポリシーを表します。

<key-store>

親要素: <security>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: 両方

<key-store>要素はサーバー側のグローバルおよびポート・レベルで、またクライアント側のポート・レベルで必須となり、使用されます。グローバル・キーストア設定はインスタンス内にデプロイされたすべてのアプリケーションに適用されます。これは特定のポート・レベル・キーストアで上書きされる可能性があります。<key-store>要素の値を変更した場合は、新しい値を有効にするためアプリケーションを再起動する必要があります。

表A-4 <key-store>の属性

名前 説明

name

値: 文字列

デフォルト: N/A

キーストアの名前。

path

値: 文字列

デフォルト: N/A(必須)

キーストアへのファイル・システム・パス。これは絶対パスまたは相対パスになります。サーバーでは、相対パスはアプリケーション・ルート・ディレクトリに対する相対パスになります。

J2EE_HOME/applications/application_name

クライアントでは、クライアント・アプリケーションがOracleAS Web Servicesにデプロイされているとき、パスは絶対パスかJ2EE_HOMEへの相対パスになります。

type

値: 文字列

デフォルト: N/A

キーストアのタイプ。デフォルト・タイプはJKSです。他にサポートされているタイプはPKCS12ORACLE_WALLETです。

store-pass

値: 文字列

デフォルト: N/A

キーストアにアクセスするためのパスワード。


<keytransport-method>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <keytransport-methods>

子要素: なし

必須/オプション: <keytransport-methods>が指定されている場合は必須

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

それぞれの<keytransport-method>は受入れ可能な鍵トランスポート・アルゴリズムを指定します。1つ以上2つ以下の<keytransport-method>要素がインバウンド・メッセージに対して指定されます。アルゴリズム名はURIではなく短縮名を使用して指定されます。受入れできる値は次のとおりです。

  • RSA-1_5(デフォルト)

  • RSA-OAEP-MGF1P

表2-10「鍵トランスポート・アルゴリズムに対するURIと短縮名」には、Webサービス・セキュリティで認識されるアルゴリズムURIおよび対応する短縮名が一覧表示されています。

アウトバウンド要素の場合:

親要素: <encrypt>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<keytransport-method>は鍵トランスポート・アルゴリズムを指定します。アウトバウンド・メッセージに対して鍵トランスポート・メソッドを1つだけ指定できます。アルゴリズム名はURIではなく短縮名を使用して指定されます。この要素について使用できる値は次のとおりです。

  • RSA-1_5(デフォルト)

  • RSA-OAEP-MGF1P

表2-10「鍵トランスポート・アルゴリズムに対するURIと短縮名」には、Webサービス・セキュリティで認識されるアルゴリズムのURIおよび対応する短縮名が一覧表示されています。

<keytransport-methods>

親要素: <decrypt>

子要素: <keytransport-method>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<keytransport-method>要素の集合。「<keytransport-method>」を参照してください。

<nonce-config>

親要素: <security>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: 両方

Nonceは、リプレイ攻撃を防止するためユーザー名トークンに含まれるランダム値です。Nonceはサーバーでキャッシュされます。OracleAS Web Servicesセキュリティでは、ユーザー名トークンに挿入可能なNonce値を構成できます。

表A-5 <nonce-config>の属性

名前 説明

clock-skew

値: 整数

デフォルト: N/A

作成時間がユーザー名トークンに含まれている場合に、クライアントとサーバー間で許容される時間誤差(秒)。

cache-ttl(有効な状態でいるキャッシュ時間)

値: 整数

デフォルト: 300秒

Nonceがキャッシュ内で有効な状態でいる時間を秒単位で示します。期限切れのNonceはキャッシュから削除されます。デフォルトは300秒です。


<outbound>

親要素: <security>

子要素: <encrypt><saml-token><signature><username-token><x509-token>

必須/オプション: 

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

oracle-webservices.xmlおよび<generated_name>_Stub.xmlデプロイメント・ディスクリプタ内のアウトバウンド・メッセージ・セクションは、<outbound>要素で区切られます。アウトバウンド・セキュリティは、送信メッセージに対するコンテキスト固有のセキュリティ・ポリシーを定義します。クライアントの場合、これはリクエストの送信に関連付けられたセキュリティ・ポリシーを表します。サービスの場合、これはレスポンスの送信に関連付けられたセキュリティ・ポリシーを表します。

<recipient-key>

親要素: <encrypt>

子要素: なし

必須/オプション: 必須

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

受信者の鍵別名で、データ暗号鍵の暗号化に使用されます。データ暗号鍵は、実際のデータの暗号化に使用される生成済の対称鍵です。データ暗号鍵自体も、受信者の公開鍵を使用して暗号化されます。

受信者の鍵には鍵用途拡張領域がある場合とない場合があります。受信者の鍵に鍵用途拡張領域がある場合、これはKEY_ENCIPHERMENTタイプである必要があります。拡張領域がない場合、暗号化リクエストは拒否されます。

表A-6 <recipient-key>の属性

名前 説明

alias

値: 文字列

デフォルト: N/A(必須)

鍵の別名

key-pass

値: 文字列

デフォルト: N/A

鍵にアクセスするためのオプションのパスワード属性


<saml-authority>

親要素: <saml-toke>

子要素: <property>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<saml-authority>要素は<saml-token>のオプションの下位要素です。<saml-authority>要素およびその属性の構成では、SAMLPリクエストを発行することで外部SAML認証局からSAMLトークンを取得することができます。

この要素は、現在使用されていない<property>下位要素をサポートします。

表A-7 <saml-authority>の属性

名前 説明

<auth-password>

値: 文字列

デフォルト: N/A

SAML認証局への認証の提供に使用されるパスワードを指定します。password-based-mechanismが認証に使用される場合は、auth-user-nameおよびauth-password要素が必須です。

<auth-user-name>

値: 文字列

デフォルト: N/A

SAML認証局への認証の提供に使用されるユーザー名を指定します。この属性はHolder-Of-Key確認メソッドには必須ですが、その他ではオプションです。Holder-Of-Keyのサブジェクト確認メソッドでは、auth-user-nameで識別されるユーザーに対してSAMLアサーション・トークンがリクエストされます。Sender-Vouchesのサブジェクト確認メソッドでは、<saml-token>要素のname属性で識別されるユーザーに対してSAMLアサーション・トークンがリクエストされます。

<endpoint-address>

値: 文字列

デフォルト: N/A(必須)

SAML応答者のURLを指定します。

<require-signature>

値: ブール

デフォルト: false

このブール属性がtrueの場合、SAMLPリクエストはクライアントの署名鍵で署名されます。また、クライアント側のキーストアおよび署名鍵も構成する必要があります。この要素のデフォルト値はfalseです。


<saml-token>

親要素: <outbound>

子要素: <attribute>、<property>、<saml-authority><subject-confirmation-method>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<saml-token>要素は<outbound>ポリシーのオプションの要素です。クライアント・インターセプタは、ユーザーIDに対する実際のSAMLアサーションの作成のため、アウトバウンド・ポリシーの<saml-token>要素を参照します。この要素には、現在使用されていない<property>下位要素があります。

表A-8 <saml-token>の属性

名前 説明

name

値: 文字列

デフォルト: N/A(必須)

アサーション・サブジェクトの名前を、<saml-token>要素のname属性の値を指定することで選択できます。name属性の書式は次のとおりです。

[realm-name/]name

nameはアサーションの名前を表します。アサーションの名前の先頭にはアサーションのrealm-nameを付加できます。レルム名がすでに存在する場合、これはname修飾子として設定されます。

name属性には伝播中のユーザーIDの実際の名前が含まれます。たとえば、name="jdoe"となります。name属性の値は、SAMLアサーションの<name-identifier>要素に挿入されます。名前識別子のデフォルト名の書式はUNSPECIFIEDです(name-formatを参照)。

name-format

値: name-identifier-format-enum

デフォルト: UNSPECIFIED

アサーション・サブジェクト名の書式を指定します。この要素は次のいずれかの値になります。

  • UNSPECIFIED(デフォルト): 任意の値。

  • EMAIL: abc@myCompany.comなどの電子メール・アドレス。

  • X509-SUBJECT-NAME: X.509サブジェクト名(X.509サブジェクト名は識別名のDNに変換されます)。たとえば、CN="abc", OU="Security", O="Oracle", C="US"となります。

  • WINDOWS-DOMAIN-NAME: Windowsドメインの名前。たとえば、abcとなります。

cbhandler-name

値: 文字列

デフォルト: N/A

SAMLTokenCallbackコールバック・ハンドラを取り扱うユーザー定義クラスの名前を指定します。このクラスはSAMLアサーションのインターセプタへの受渡しに使用されます。

issuer-name

値: 文字列

デフォルト: www.oracle.com

SAMLアサーションの発行者名の取得に使用されます。デフォルト値はwww.oracle.comです。この値は、ユーザーのアサーション発行者の名前に変更することをお薦めします。


<security>

親要素: セキュリティ構成のルート要素

子要素: <encryption-key><inbound><key-store><nonce-config><outbound><signature-key>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: 両方

セキュリティ構成をカプセル化します。構成は、グローバル、ポートまたは操作レベルで使用できます。

<signature>

親要素: <outbound>

子要素: <add-timestamp><signature-methods><tbs-elements>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

送信するメッセージまたは個別メッセージ要素の署名に対するアルゴリズムを指定します。

<signature-key>

親要素: <security>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: 両方

<signature><verify-signature>で必要な鍵を示します。

ポート・レベル・キーストアが指定されている場合、または鍵をグローバル・キーストアから選択する際は、<signature-key>および<encryption-key>要素が必要です。これらの鍵がポート・レベルで構成されていない場合は、グローバル・レベルの値が使用されます。

<signature-key>および<encryption-key>要素の値を変更した場合は、新しい値を有効にするためアプリケーションを再起動する必要があります。

表A-9 <signature-key>の属性

名前 説明

alias

値: 文字列

デフォルト: N/A(必須)

鍵の別名

key-pass

値: 文字列

デフォルト: N/A

鍵にアクセスするためのパスワード


<signature-methods>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <signature-methods>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<signature-method>要素は受入れ可能な署名アルゴリズムの指定に使用されます。アルゴリズム名はURIではなく短縮名を使用して指定されます。デフォルト値はRSA-SHA1です。表2-18「署名アルゴリズムと短縮名」に、OracleAS Web Servicesセキュリティで認識されるアルゴリズムURIおよび対応する短縮名を一覧表示します。

アウトバウンド要素の場合:

親要素: <signature-methods>

子要素: なし

必須/オプション: <signature-methods>が指定されている場合は必須

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<signature-method>要素は受入れ可能な署名アルゴリズムを指定します。アルゴリズム名はURIではなく短縮名を使用して指定されます。デフォルト値はRSA-SHA1です。

表2-18「署名アルゴリズムと短縮名」に、OracleAS Web Servicesセキュリティで認識されるアルゴリズムURIおよび対応する短縮名を一覧表示します。

<signature-methods>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <verify-signature>

子要素: <signature-method>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<signature-method>要素のリスト。「<signature-method>」を参照してください。

アウトバウンド要素の場合:

親要素: <signature>

子要素: <signature-method>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<signature-method>要素の集合。「<signature-method>」を参照してください。

<subject-confirmation-method>

親要素: <saml-toke>

子要素: <confirmation-method>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<confirmation-method>要素のリストを区切ります。「<confirmation-method>」を参照してください。

<subject-confirmation-methods>

親要素: <verify-saml-token>

子要素: <confirmation-method>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

これはインバウンド・ポリシーに対するオプション要素です。インバウンドの<verify-saml-token>ポリシーの一部として使用されるとき、これは受信SOAPメッセージにおけるIDの伝播に使用される確認メソッド(<confirmation-method>)の列挙を参照します。

<tbe-element>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <tbe-elements>

子要素: なし

必須/オプション: <tbe-elements>が存在する場合は必須

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

受信したSOAPメッセージで暗号化されている要素を示します。

表A-10 <tbe-element>の属性

名前 説明

local-part

値: 文字列

デフォルト: N/A(必須)

実際の要素名。

mode

値: encrypt-mode-enum

デフォルト: CONTENT

ELEMENTまたはCONTENTのどちらの暗号化を予測するか指定するために使用される追加的な属性。モードがELEMENTの場合は要素全体の暗号化が予測され、モードがCONTENTの場合は要素のコンテンツの暗号化が予測されます。デフォルトはCONTENTです。

name-space

値: anyURI

デフォルト: N/A(必須)

SOAPメッセージ内の要素の実際のネームスペース。この属性は、ネームスペースにこの名前の要素が1つしかない場合は省略できます。


アウトバウンド要素の場合:

親要素: <tbe-elements>

子要素: なし

必須/オプション: <tbe-elements>が指定されている場合は必須

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

それぞれの<tbe-element>は暗号化される要素を示します。

表A-11 <tbe-element>の属性

名前 説明

local-part

値: 文字列

デフォルト: N/A(必須)

要素の実際の名前。

mode

値: enum-mode-encrypt

デフォルト: CONTENT

ELEMENTまたはCONTENTのどちらを暗号化するか指定するために使用される追加的な属性。modeの値がELEMENTの場合は要素全体が暗号化され、modeの値がCONTENTの場合は要素のコンテンツが暗号化されます。デフォルトはCONTENTです。

name-space

値: anyURI

デフォルト: N/A(必須)

SOAPメッセージ内の要素の実際のネームスペース。この属性は、ネームスペースにこの名前の要素が1つしかない場合は省略できます。


<tbe-elements>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <decrypt>

子要素: <tbe-element>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<tbe-element>要素の集合。「<tbe-element>」を参照してください。

アウトバウンド要素の場合:

親要素: <encrypt>

子要素: <tbe-element>

必須/オプション: 必須

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<tbe-element>要素の集合。「<tbe-element>」を参照してください。

<tbs-element>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <tbs-elements>

子要素: なし

必須/オプション: <tbs-elements>が指定されている場合は必須

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<tbs-element>要素は署名される必要のあるSSOAPメッセージ内の要素を識別します。

表A-12 <tbs-element>の属性

名前 説明

local-part

値: 文字列

デフォルト: N/A(必須)

実際の要素名。

name-space

値: anyURI

デフォルト: N/A(必須)

SOAPメッセージ内の要素の実際のネームスペース。この属性は、ネームスペースにこの名前の要素が1つしかない場合は省略できます。


アウトバウンド要素の場合:

親要素: <tbs-elements>

子要素: なし

必須/オプション: <tbs-elements>が指定されている場合は必須

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

それぞれの<tbs-element>は署名される要素を示します。

表A-13 <tbs-element>の属性

名前 説明

local-part

値: 文字列

デフォルト: N/A(必須)

実際の要素名。

name-space

値: anyURI

デフォルト: N/A(必須)

SOAPメッセージ内の要素の実際のネームスペース。この属性は、ネームスペースにこの名前の要素が1つしかない場合は省略できます。この属性は、SOAPメッセージ内の要素すべてが同じネームスペースを共有する場合にも省略できます。


<tbs-elements>

この要素は、インバウンドまたはアウトバウンド要素にすることができます。

インバウンド要素の場合:

親要素: <verify-signature>

子要素: <tbs-element>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

受信リクエストで署名されていることが求められる<tbs-element>要素のリスト。「<tbs-element>」を参照してください。

アウトバウンド要素の場合:

親要素: <signature>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<tbs-element>要素の集合。「<tbs-element>」を参照してください。

<use-cert-request>

親要素: <encrypt>

子要素: なし

必須/オプション: 必須

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

Webサービス・クライアントが署名済SOAPメッセージを送信し、Webサービス・アプリケーションが署名を正常に検証しました。Webサービス・アプリケーションが同じクライアントに対してレスポンスを送り返すとき、クライアントが最初のメッセージ交換で送信した署名証明書を使用して、そのレスポンスを暗号化することを選択できます。

use-request-cert要素は、Webサービス・アプリケーションのアウトバウンド暗号化ポリシーの一部として構成されます。サーバー・インターセプタが署名証明書を見つけられない(つまり、クライアントが署名済SOAPメッセージを送信していないか、署名検証が失敗している)場合、Webサービス・アプリケーションは暗号化リクエストを拒否するので注意してください。

<username-token>

親要素: <outbound>

子要素: <property>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<username-token>要素はアウトバウンド・ポリシーのオプションの要素です。この要素は、ユーザー名トークンをセキュリティ・ヘッダー・ブロックに挿入することを指定します。要素の1つのインスタンスのみが許容されます。この要素には、現在使用されていない<property>下位要素があります。

表A-14 <username-token>の属性

名前 説明

name

値: 文字列

デフォルト: N/A

トークンに挿入されるユーザー名。

password

値: 文字列

デフォルト: N/A

ユーザーの実際のパスワード。

password-type

値: password-type-enum

デフォルト: plaintext

パスワード・タイプで、plaintextまたはdigestになります。デフォルトはplaintextです。password-typedigestに設定すると、add-nonceおよびadd-createdがデフォルトでtrueに設定されるので注意してください。

cbhandler-name

値: 文字列

デフォルト: N/A

ユーザー名トークンをSOAPメッセージに挿入するコールバック・ハンドラの名前。コールバック・ハンドラは、NameCallbackおよびPasswordCallbackを取り扱うユーザー定義コールバック・ハンドラ・クラスです。cbhandler-name属性の値は、ユーザー定義実装クラスの名前です。

add-nonce

値: ブール

デフォルト: false

Nonceをリクエストに追加するかどうか指定します。Digest認証では、この属性は必須でありtrueに設定する必要があります。この属性はプレーン・テキスト・パスワード認証ではオプションです。デフォルト値はfalseです。

add-created

値: ブール

デフォルト: false

作成時間をリクエストに追加するかどうか指定します。ダイジェスト・パスワード認証では、この属性は必須でありtrueに設定する必要があります。この属性はプレーン・テキスト・パスワード認証ではオプションです。デフォルト値はfalseです。


<verify-saml-token>

親要素: <inbound>

子要素: <subject-confirmation-methods>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<verify-saml-token>要素は<inbound>要素のオプションの下位要素です。SAMLアサーションを保持する受信SOAPメッセージを検証するかどうか指定します。

<verify-signature>

親要素: <inbound>

子要素: <property><signature-methods><tbs-elements><verify-timestamp>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<verify-signature>要素は<inbound>要素のオプションの下位要素です。これは受信者の整合性または署名要件を指定します。この要件には、署名検証アルゴリズムの名前と検証対象のメッセージ部分が含まれます。<verify-signature>要素は<inbound>要素内で1回だけ使用できます。

リストされた子要素に加えて、<verify-signature>要素には<property>下位要素が指定されます。<property>下位要素の書式は次のとおりです。

<property name="property_name" value="property_value"/>

OracleAS Web Servicesセキュリティは<verify-signature>で次のプロパティを定義します。

  • clock-skew: クライアントとサーバー間の時間誤差を構成します。SOAPメッセージを送信中のクライアント(署名とタイムスタンプの追加)とWebサービス・アプリケーション(SOAPメッセージの受信と署名およびタイムスタンプの検証)は、2つの別々のマシンで実行されている可能性があります。マシンの時計が同時刻ではない場合、その時間を合せるようにclock-skewを構成できます。

    clock-skewのデフォルト値は0で、単位はミリ秒です。次の例では時間誤差を3秒に設定します。

    <property name="clock-skew" value="3000"/>

    このプロパティは、oracle-webservices.xmlまたは<generated_name>_Stub.xmlデプロイメント・ディスクリプタのどちらかで設定できます。このプロパティを追加するためのツール・サポートはないため、ファイルは手動で編集する必要があります。

<verify-timestamp>

親要素: <verify-signature>

子要素: なし

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

受信したSOAPメッセージのタイムスタンプを検証します。(このタイムスタンプは<add-timestamp>要素で構成されています。)created属性は、タイムスタンプがメッセージのために作成されたかどうかを示すために使用されます。受信したSOAPメッセージに期限切れのタイムスタンプがある場合は、サーバーから拒否されます。

表A-15 <verify-timestamp>の属性

名前 説明

created

値: ブール

デフォルト: true

タイムスタンプに作成時間が含まれるかどうかを示します。デフォルトはtrueです。

expiry

値: long

デフォルト: 28800秒

署名における有効期限(秒)。デフォルトは28800秒(8時間)です。


<verify-username-token>

親要素: <inbound>

子要素: <property>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<verify-username-token>要素は、ユーザー名トークンに対するセキュリティ・ポリシーを指定します。これは<inbound>要素のオプションの下位要素で、要素内で1回だけ使用できます。

表A-16 <verify-username-token>の属性

名前 説明

password-type

パスワード認証のタイプで、plaintextまたはdigestになります。デフォルトはplaintextです。

require-nonce

Nonceをユーザー名トークンに含める必要があるかどうかを指定します。この属性はDigest認証に必須です。デフォルトはfalseです。

require-created

作成時間をユーザー名トークンに含める必要があるかどうかを指定します。この属性はプレーン・テキストまたはダイジェストのパスワード認証のどちらかで使用できます。ただし、Digest認証の場合はtrueに設定する必要があります。デフォルトはfalseです。


<verify-username-token>要素には<property>下位要素もあります。<property>下位要素の書式は次のとおりです。

<property name="property_name" value="property_value"/>

OracleAS Web Servicesセキュリティは<verify-username-token>で次のプロパティを定義します。

  • username.token.allow.nopassword: このブール型プロパティの値は、Webサービスがパスワードを要求せずにユーザー名トークンを認証するかどうかを決定します。このプロパティは、ユーザーがすでに認証および信頼されていて、IDストアに存在することのみを確認する必要がある場合に便利です。

    次の例では、パスワードがなくてもWebサービスでユーザー名トークンを受け入れることができます。

    <property name="username.token.allow.nopassword" value="true"/>

    このプロパティは、oracle-webservices.xmlデプロイメント・ディスクリプタで設定できます。このプロパティを追加するためのツール・サポートはないため、ファイルは手動で編集する必要があります。

<verify-x509-token>

親要素: <inbound>

子要素: <property>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: インバウンド

<verify-x509-token>要素は、X.509トークンに関連する認証ポリシーを指定します。これは<inbound>要素のオプションの下位要素です。これには、現在使用されていないオプションの<property>下位要素があります。

<x509-token>

親要素: <outbound>

子要素: <property>

必須/オプション: オプション

インバウンド・メッセージ/アウトバウンド・メッセージ: アウトバウンド

<x509-token>要素は<outbound>構成のオプションの要素です。この要素は、X.509署名証明書がリクエストに挿入されることを示します。X.509証明書(署名者の証明書)への直接参照が追加されます。ユーザーは、この構成が動作するように構成された署名鍵を保持する必要があります。

<x509-token>要素は<property>下位要素をサポートします。<property>下位要素の書式は次のとおりです。

<property name="property_name" value="property_value"/>

OracleAS Web Servicesセキュリティは<x509-token>で次のプロパティを定義します。

  • oracle.security.wss.signX509token: このプロパティは、<x509-token>が署名<signature>で使用されている場合のみ適用可能です。trueに設定されている場合(デフォルト)、X.509トークンを含むBinary Security Token(BST)は署名されます。falseに設定されている場合、Binary Security Tokenは署名されません。次に例を示します。

    <property name="oracle.security.wss.signX509token" value="false"/>

Oracle Web Services Securityスキーマの表示

例A-1oracle-webservices-security-10_0.xsdスキーマ・ファイルのコンテンツを示します。

例A-1 oracle-webservices-security-10_0.xsdセキュリティ・スキーマのコンテンツ

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:simpleType name="password-type-enum">
    <xsd:restriction base="xsd:string">
      <xsd:whiteSpace value="collapse"/>
      <xsd:enumeration value="PLAINTEXT"/>
      <xsd:enumeration value="DIGEST"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="signature-method-enum">
    <xsd:restriction base="xsd:string">
      <xsd:whiteSpace value="collapse"/>
      <xsd:enumeration value="RSA-SHA1"/>
      <xsd:enumeration value="RSA-MD5"/>
      <xsd:enumeration value="DSA-SHA1"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="encryption-method-enum">
    <xsd:restriction base="xsd:string">
      <xsd:whiteSpace value="collapse"/>
      <xsd:enumeration value="3DES"/>
      <xsd:enumeration value="AES-128"/>
      <xsd:enumeration value="AES-256"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="keytransport-method-enum">
    <xsd:restriction base="xsd:string">
      <xsd:whiteSpace value="collapse"/>
      <xsd:enumeration value="RSA-OAEP-MGF1P"/>
      <xsd:enumeration value="RSA-1_5"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="encrypt-mode-enum">
    <xsd:restriction base="xsd:string">
      <xsd:whiteSpace value="collapse"/>
      <xsd:enumeration value="CONTENT"/>
      <xsd:enumeration value="ELEMENT"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:complexType name="nonce-config-type">
    <xsd:attribute name="clock-skew" type="xsd:integer" default="0"/>
    <xsd:attribute name="cache-ttl" type="xsd:integer" default="300"/>
  </xsd:complexType>
  <xsd:complexType name="security-config-type">
    <xsd:sequence>
      <xsd:element name="key-store" type="key-store-config-type" minOccurs="0"/>
      <xsd:element name="signature-key" type="key-config-type" minOccurs="0"/>
      <xsd:element name="encryption-key" type="key-config-type" minOccurs="0"/>
      <xsd:element name="nonce-config" type="nonce-config-type" minOccurs="0"/>
      <xsd:element name="inbound" type="inbound-config-type" minOccurs="0"/>
      <xsd:element name="outbound" type="outbound-config-type" minOccurs="0"/>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="security-operation-config-type">
    <xsd:sequence>
      <xsd:element name="inbound" type="inbound-config-type" minOccurs="0"/>
      <xsd:element name="outbound" type="outbound-config-type" minOccurs="0"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:element name="security-global" type="security-config-type"/>
  <xsd:element name="security-port" type="security-config-type"/>
  <xsd:element name="security-operation" type="security-operation-config-type"/>
  <xsd:complexType name="inbound-config-type">
    <xsd:sequence>
      <xsd:element name="verify-username-token" type="verify-username-token-config-type" minOccurs="0"/>
      <xsd:element name="verify-x509-token" type="verify-x509-token-config-type" minOccurs="0"/>
      <xsd:element name="verify-saml-token" type="verify-saml-token-config-type" minOccurs="0"/>
      <xsd:element name="verify-signature" type="verify-signature-config-type" minOccurs="0"/>
      <xsd:element name="decrypt" type="decrypt-config-type" minOccurs="0"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="outbound-config-type">
    <xsd:sequence>
      <xsd:choice minOccurs="0">
        <xsd:element name="username-token" type="username-token-config-type"/>
        <xsd:element name="x509-token" type="x509-token-config-type"/>
        <xsd:element name="saml-token" type="saml-token-config-type"/>
      </xsd:choice>
      <xsd:element name="signature" type="signature-config-type" minOccurs="0"/>
      <xsd:element name="encrypt" type="encrypt-config-type" minOccurs="0"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="signature-config-type">
    <xsd:sequence>
      <xsd:element name="signature-method" default="RSA-SHA1" minOccurs="0">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:whiteSpace value="collapse"/>
            <xsd:enumeration value="RSA-SHA1"/>
            <xsd:enumeration value="RSA-MD5"/>
            <xsd:enumeration value="DSA-SHA1"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
      <xsd:element name="tbs-elements" type="sign-elements-config-type" minOccurs="0"/>
      <xsd:element name="add-timestamp" type="timestamp-config-type" minOccurs="0"/>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="encrypt-config-type">
    <xsd:sequence>
      <xsd:choice>
        <xsd:element name="recipient-key" type="key-config-type"/>
        <xsd:element name="use-request-cert" type="xsd:boolean"/>
      </xsd:choice>
      <xsd:element name="encryption-method" default="AES-128" minOccurs="0">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:whiteSpace value="collapse"/>
            <xsd:enumeration value="3DES"/>
            <xsd:enumeration value="AES-128"/>
            <xsd:enumeration value="AES-256"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
      <xsd:element name="keytransport-method" default="RSA-1_5" minOccurs="0">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:whiteSpace value="collapse"/>
            <xsd:enumeration value="RSA-OAEP-MGF1P"/>
            <xsd:enumeration value="RSA-1_5"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
      <xsd:element name="tbe-elements" type="encrypt-elements-config-type"/>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="verify-signature-config-type">
    <xsd:sequence>
      <xsd:element name="signature-methods" type="signature-methods-config-type" minOccurs="0"/>
      <xsd:element name="tbs-elements" type="sign-elements-config-type" minOccurs="0"/>
      <xsd:element name="verify-timestamp" type="timestamp-config-type" minOccurs="0"/>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="decrypt-config-type">
    <xsd:sequence>
      <xsd:element name="encryption-methods" type="encryption-methods-config-type" minOccurs="0"/>
      <xsd:element name="keytransport-methods" type="keytransport-methods-config-type" minOccurs="0"/>
      <xsd:element name="tbe-elements" type="encrypt-elements-config-type" minOccurs="0"/>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="property-config-type">
    <xsd:attribute name="name" type="xsd:string" use="required"/>
    <xsd:attribute name="value" type="xsd:string" use="required"/>
  </xsd:complexType>
  <xsd:complexType name="key-store-config-type">
    <xsd:attribute name="store-pass" type="xsd:string" use="optional"/>
    <xsd:attribute name="path" type="xsd:string" use="required"/>
    <xsd:attribute name="type" type="xsd:string" use="optional"/>
    <xsd:attribute name="name" type="xsd:string" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="key-config-type">
    <xsd:attribute name="alias" type="xsd:string" use="required"/>
    <xsd:attribute name="key-pass" type="xsd:string" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="signature-methods-config-type">
    <xsd:sequence>
      <xsd:element name="signature-method" default="RSA-SHA1" maxOccurs="3">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:whiteSpace value="collapse"/>
            <xsd:enumeration value="RSA-SHA1"/>
            <xsd:enumeration value="RSA-MD5"/>
            <xsd:enumeration value="DSA-SHA1"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="encryption-methods-config-type">
    <xsd:sequence>
      <xsd:element name="encryption-method" default="AES-128" maxOccurs="3">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:whiteSpace value="collapse"/>
            <xsd:enumeration value="3DES"/>
            <xsd:enumeration value="AES-128"/>
            <xsd:enumeration value="AES-256"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="keytransport-methods-config-type">
    <xsd:sequence>
      <xsd:element name="keytransport-method" default="RSA-1_5" maxOccurs="2">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:whiteSpace value="collapse"/>
            <xsd:enumeration value="RSA-OAEP-MGF1P"/>
            <xsd:enumeration value="RSA-1_5"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="username-token-config-type">
    <xsd:sequence>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
    <xsd:attribute name="name" type="xsd:string" use="optional"/>
    <xsd:attribute name="password" type="xsd:string" use="optional"/>
    <xsd:attribute name="password-type" type="password-type-enum" use="optional" default="PLAINTEXT"/>
    <xsd:attribute name="cbhandler-name" type="xsd:string" use="optional"/>
    <xsd:attribute name="add-nonce" type="xsd:boolean" use="optional" default="false"/>
    <xsd:attribute name="add-created" type="xsd:boolean" use="optional" default="false"/>
  </xsd:complexType>
  <xsd:complexType name="verify-username-token-config-type">
    <xsd:sequence>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
    <xsd:attribute name="password-type" type="password-type-enum" use="optional"/>
    <xsd:attribute name="require-nonce" type="xsd:boolean" use="optional" default="false"/>
    <xsd:attribute name="require-created" type="xsd:boolean" use="optional" default="false"/>
  </xsd:complexType>
  <xsd:complexType name="verify-x509-token-config-type">
    <xsd:sequence>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="x509-token-config-type">
    <xsd:sequence>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
    <xsd:attribute name="cbhandler-name" type="xsd:string" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="timestamp-config-type">
    <xsd:attribute name="expiry" type="xsd:long" default="28800"/>
    <xsd:attribute name="created" type="xsd:boolean" default="true"/>
  </xsd:complexType>
  <xsd:complexType name="encrypt-elements-config-type">
    <xsd:sequence>
      <xsd:element name="tbe-element" maxOccurs="unbounded">
        <xsd:complexType>
          <xsd:attribute name="name-space" type="xsd:anyURI" use="required"/>
          <xsd:attribute name="local-part" type="xsd:string" use="required"/>
          <xsd:attribute name="mode" type="encrypt-mode-enum" use="optional" default="CONTENT"/>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="sign-elements-config-type">
    <xsd:sequence>
      <xsd:element name="tbs-element" maxOccurs="unbounded">
        <xsd:complexType>
          <xsd:attribute name="name-space" type="xsd:anyURI" use="required"/>
          <xsd:attribute name="local-part" type="xsd:string" use="required"/>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="saml-token-config-type">
    <xsd:sequence>
      <xsd:element name="subject-confirmation-method" type="subject-confirmation-method-config-type" minOccurs="0"/>
      <xsd:element name="attribute" type="attribute-config-type" minOccurs="0"/>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
      <xsd:element name="saml-authority" type="saml-authority-config-type" minOccurs="0"/>
    </xsd:sequence>
    <xsd:attribute name="name-format" type="name-identifier-format-enum" default="UNSPECIFIED"/>
    <xsd:attribute name="name" type="xsd:string" use="optional"/>
    <xsd:attribute name="cbhandler-name" type="xsd:string" use="optional"/>
    <xsd:attribute name="issuer-name" type="xsd:string" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="verify-saml-token-config-type">
    <xsd:sequence>
      <xsd:element name="subject-confirmation-methods" type="subject-confirmation-methods-config-type" minOccurs="0"/>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="subject-confirmation-methods-config-type">
    <xsd:sequence>
      <xsd:element name="confirmation-method" default="SENDER-VOUCHES" maxOccurs="3">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:whiteSpace value="collapse"/>
            <xsd:enumeration value="SENDER-VOUCHES"/>
            <xsd:enumeration value="SENDER-VOUCHES-UNSIGNED"/>
            <xsd:enumeration value="HOLDER-OF-KEY"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="subject-confirmation-method-config-type">
    <xsd:sequence>
      <xsd:element name="confirmation-method" default="SENDER-VOUCHES" minOccurs="0">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:whiteSpace value="collapse"/>
            <xsd:enumeration value="SENDER-VOUCHES"/>
            <xsd:enumeration value="SENDER-VOUCHES-UNSIGNED"/>
            <xsd:enumeration value="HOLDER-OF-KEY"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="attribute-config-type">
    <xsd:attribute name="path" type="xsd:string" use="required"/>
  </xsd:complexType>
  <xsd:simpleType name="name-identifier-format-enum">
    <xsd:restriction base="xsd:string">
      <xsd:whiteSpace value="collapse"/>
      <xsd:enumeration value="UNSPECIFIED"/>
      <xsd:enumeration value="EMAIL"/>
      <xsd:enumeration value="X509-SUBJECT-NAME"/>
      <xsd:enumeration value="WINDOWS-DOMAIN-NAME"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:complexType name="saml-authority-config-type">
    <xsd:sequence>
      <xsd:element name="property" type="property-config-type" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
    <xsd:attribute name="endpoint-address" type="xsd:string" use="required"/>
    <xsd:attribute name="auth-user-name" type="xsd:string" use="optional"/>
    <xsd:attribute name="auth-password" type="xsd:string" use="optional"/>
    <xsd:attribute name="require-signature" type="xsd:boolean" use="optional"/>
  </xsd:complexType>
</xsd:schema>

セキュリティ構成リスト

セキュリティ構成を移入したoracle-webservices.xmlデプロイメント・ディスクリプタの例は、「セキュリティ構成要素」にあります。