A カスタム・アサーションのスキーマ・リファレンス
この付録の内容は次のとおりです。
A.2 カスタム・アサーションの要素
カスタム・アサーションには、次の要素が含まれています。
A.2.1 wsp:Policy
<wsp:Policy>要素とその属性については、次に示す表と例を参照してください。
<wsp:Policy>要素は、ネストされたポリシー・アサーションをグループ化します。
属性
次の表に、WS-Policy属性へのOracleの拡張機能をまとめます。
表A-1 WS-Policy属性へのOracle拡張機能
属性 | 説明 |
---|---|
attachTo |
ポリシーをアタッチできるポリシー・サブジェクト。有効な値は、binding.client、binding.server、binding.anyです。 |
category |
ポリシーのカテゴリ。有効な値は、securityおよびmanagementです。 |
description |
ポリシーの説明。 |
status |
ポリシー参照のステータス。有効な値は、enabledおよびdisabledです。 |
例
次の例は、<wsp:Policy>要素を示しています。
<wsp:Policy xmlns="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy" orawsp:status="enabled" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-util ity-1.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" orawsp:category="security" orawsp:attachTo="binding.server" wsu:Id="ip_assertion_policy" xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" wsp:Name="oracle/ip_assertion_policy">
A.2.2 orasp:Assertion
<orasp:Assertion>要素の属性については、次に示す表と例を参照してください。
<orasp:Assertion>要素は、カスタム・アサーションのメイン要素です。
属性
次の表には、<orasp:Assertion>要素の属性がまとめられています。
表A-2 <orasp:Assertion>要素の属性
属性 | 説明 |
---|---|
Optional |
アサーションがオプションなのか、必須なのかを指定するフラグ。 |
Silent |
アサーションを通知するかどうかを指定するフラグ。trueに設定すると、アサーションは通知されません。 |
Enforced |
現時点でアサーションを有効にするかどうかを指定するフラグ。 |
name |
アサーションの名前。 |
description |
アサーションの説明。 |
category |
アサーションを適用するカテゴリ。有効な値は、security/authentication、security/msg-protection、security/authorization、security/loggingおよびmanagementです。 |
provides |
このポリシーを添付できるWebサービス・エンドポイント・タイプ。 注意: この属性はRESTfulエンドポイントに必要です。 たとえば、RESTful Webサービスを指定するには、次のようにします。 orawsp:provides="{http://schemas.oracle.com/ws/2006/01/policy}REST_HTTP" |
例
次の例は、<orasp:Assertion>要素を示しています。
<orasp:ipAssertion orawsp:Silent="true" orawsp:Enforced="true" orawsp:name="WSSecurity IpAssertion Validator" orawsp:category="security/authentication" orawsp:provides="{http://schemas.oracle.com/ws/2006/01/policy}REST_HTTP"> ... </orasp:ipAssertion>
SOAP Webサービス・エンドポイントを保護するためのprovides属性の更新
SOAP Webサービス・エンドポイントを保護するには、カスタム・ポリシー・ファイルのprovides
属性にインテントを追加する必要があります。
表A-3 SOAP Webサービス・エンドポイントを保護するためのprovides属性のインテント
インテント | タイプ | 説明 |
---|---|---|
serverAuthentication |
セキュリティ・ポリシー |
指定すると、SCAランタイムはサーバーがクライアントによって認証されることを保証します。 |
clientAuthentication |
セキュリティ・ポリシー |
指定すると、SCAランタイムはクライアントがサーバーによって認証されることを保証します。 |
authentication |
セキュリティ・ポリシー |
これは、clientAuthenticationのみを要求するプロファイル・インテントです。下位互換性を確保するために必要です。 |
mutualAuthentication |
セキュリティ・ポリシー |
これは、serverAuthenticationインテントとclientAuthenticationインテントを含むプロファイル・インテントです。 |
confidentiality |
セキュリティ・ポリシー |
このインテントは、アクセスを許可されたユーザー(たとえば、サービス・クライアントとサービス・プロバイダ)のみがメッセージ・コンテンツにアクセスできることを示します。confidentialityインテントを指定すると、SCAランタイムは許可されたエンティティのみがメッセージのコンテンツを表示できることを保証します。 |
integrity |
セキュリティ・ポリシー |
このインテントは、メッセージが送信者と受信者の間で改ざんおよび変更されないことを保証するために使用します。これは、一般にメッセージにデジタルで署名するなどの方法で行われます。integrityインテントを指定すると、SCAランタイムはメッセージ・コンテンツが変更されないことを保証します。 このインテントには次の修飾子を付けることができます。
|
atLeastOnce |
信頼性ポリシーのインテント |
バインディング実装は、サービス・コンシューマまたはサービス実装によって正常に送信されたメッセージが宛先(サービス実装またはサービス・コンシューマ)に配信されることを保証します。メッセージは、サービス実装またはサービス・コンシューマに複数回配信できます。atLeastOnceインテントを指定すると、SCAランタイムは宛先のサービス実装またはサービス・コンシューマへのメッセージの配信を保証します。 |
atMostOnce |
信頼性ポリシーのインテント |
バインディング実装は、サービス・コンシューマまたはサービス実装によって正常に送信されたメッセージがサービス実装またはサービス・コンシューマに2回以上配信されないことを保証します。バインディング実装は、メッセージがサービス実装またはサービス・コンシューマに配信されることを保証しません。atMostOnceインテントを指定すると、SCAランタイムはメッセージの複製をサービス実装に配信しません。 |
ordered |
信頼性ポリシーのインテント |
バインディング実装は、サービス・クライアントが1つのサービス参照を使用して送信したメッセージが、サービス・クライアントが送信した順序でターゲットのサービス実装に配信されることを保証します。このインテントは、サービス・クライアントが送信したメッセージがサービス実装に配信されることを保証しません。また、1つのサービス・クライアントが複数の異なるサービス参照を使用して送信したメッセージの順序も保証しません(各サービス参照のターゲットが同じサービス実装である場合を含む)。 orderedインテントを指定すると、SCAランタイムは1つのソースによって送信されたメッセージをそのソースが送信した順序で1つの宛先サービス実装に配信します。 サービス実装からサービス・クライアントに返送されるメッセージが含まれるサービス・インタフェース(たとえば、コールバック・インタフェースを含むサービス)に対してorderedインテントを指定すると、バインディング実装は、サービス実装が特定のネットワーク経由で送信したメッセージが、サービス実装が送信した順序でサービス・クライアントに配信されることを保証します。このインテントは、サービス実装によって送信されたメッセージがサービス・コンシューマに配信されることを保証しません。 |
exactlyOnce |
信頼性ポリシーのインテント |
バインディング実装は、サービス・コンシューマによって送信されたメッセージがサービス実装に配信されることを保証し、さらにメッセージがサービス実装に2回以上配信されないことを保証します。exactlyOnceインテントを指定すると、SCAランタイムはメッセージを宛先のサービス実装に配信しますが、メッセージの複製をサービス実装に配信しません。 |
例
次の例は、SOAP Webサービス・エンドポイントを保護するためにprovides
属性に追加されたインテントを示しています。
<orasp:ipAssertion orawsp:Silent="true" orawsp:Enforced="true"
orawsp:name="WSSecurity IpAssertion Validator"
orawsp:category="security/authentication"
orawsp:provides="{http://schemas.oracle.com/ws/2006/01/policy}SOAP_HTTP,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}serverAuthentication,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}clientAuthentication,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}authentication,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}mutualAuthentication,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}confidentiality,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}integrity,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}atLeastOnce,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}atMostOnce,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}ordered,
{http://docs.oasis-open.org/ns/opencsa/sca/200912}exactlyOnce">
</orasp:ipAssertion>
A.2.3 orawsp:bindings
<oraswsp:bindings>要素については、次に示す例を参照してください。
<oraswsp:bindings>要素は、カスタム・アサーションのバインディングを定義します。
例
次の例は、<oraswsp:bindings>要素を示しています。
<orawsp:bindings> ... </orawsp:bindings>
A.2.4 orawsp:Implementation
<oraswsp:Implementation>要素については、次に示す例を参照してください。
<oraswsp:Implementation>要素は、カスタム・アサーション実装クラスを定義します。
例
次の例は、<oraswsp:Implementation>要素を示しています。
<orawsp:Implementation>sampleassertion.IpAssertionExecutor</orawsp :Implementation>
A.2.5 orawsp:Config
<oraswsp:Config>要素とその属性については、次に示す表と例を参照してください。
<oraswsp:Config>要素は、カスタム・アサーションの構成を定義します。
属性
次の表には、<orawsp:Config>要素の属性がまとめられています。
表A-4 <orawsp:Config>要素の属性
属性 | 説明 |
---|---|
name |
構成の名前。 |
type |
構成を適用するカテゴリ。 |
configType |
構成のタイプ。有効な値は、declarativeおよびprogrammaticです。
|
例
次の例は、<oraswsp:Config>要素を示しています。
<orawsp:Config orawsp:name="ipassertion" orawsp:configType="declarative">
A.2.6 orawsp:PropertySet
<oraswsp:PropertySet>要素とその属性については、次に示す表と例を参照してください。
<oraswsp:PropertySet>要素は、ネストされたプロパティをグループ化します。
属性
次の表には、<orawsp:PropertySet>要素の属性がまとめられています。
表A-5 <orawsp:PropertySet>要素の属性
属性 | 説明 |
---|---|
name |
プロパティ・セットの名前。 |
例
次の例は、<oraswsp:PropertySet>要素を示しています。
<orawsp:PropertySet orawsp:name="valid_ips">
A.2.7 orawsp:Property
<oraswsp:Property>要素とその属性については、次に示す表と例を参照してください。
<oraswsp:Property>要素は、1つのプロパティを定義します。
属性
次の表には、<orawsp:Property>要素の属性がまとめられています。
表A-6 <orawsp:Property>要素の属性
属性 | 説明 |
---|---|
name |
プロパティの名前を指定します。 |
type |
プロパティのタイプ。たとえば、Stringなど。 |
contentType |
プロパティが必須かどうかおよびオーバーライド可能かどうかを指定します。有効な値は次のとおりです。
ポリシーのオーバーライドの詳細は、『Webサービスの管理』のポリシー構成のオーバーライドに関する説明を参照してください。 |
例
次の例は、<orawsp:Property>要素を示しています。
<orawsp:Property orawsp:name="valid_ips" orawsp:type="string" orawsp:contentType="constant">
A.2.8 orawsp:Description
<oraswsp:Description>要素については、次に示す例を参照してください。
<oraswsp:Description>要素は、プロパティの説明を定義します。
例
次の例は、<oraswsp:Description>要素を示しています。
<orawsp:Description>Valid IP Values</orawsp:Description>