Oracle® Fusion Middleware

Webサービスのためのセキュリティおよび管理者ガイド

11gリリース1(11.1.1.9)

B56247-10(原本部品番号:E78149-02)

2018年3月

このドキュメントでは、Webサービスの管理および保護の方法について説明します。

Oracle Fusion Middleware Webサービスのためのセキュリティおよび管理者ガイド, 11gリリース1 (11.1.1.9)

B56247-10

Copyright © 2007, 2018, Oracle and/or its affiliates. All rights reserved.

原本著者: Oracle Corporation

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

目次

タイトルおよび著作権情報

はじめに

- このガイドについて

- 対象読者

- このマニュアルの使用方法

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

新機能

- 11gリリース1 (11.1.1.9)

- 11gリリース1 (11.1.1.7)

- 11gリリース1 (11.1.1.6)

- 11gリリース1 (11.1.1.5)

- 11gリリース1 (11.1.1.4)

- 11gリリース1 (11.1.1.3)

- 11g リリース1 (11.1.1.2)

- 11g リリース1 (11.1.1)

第I部 概要

1 Webサービス・セキュリティと管理の概要

- Oracle Fusion Middleware 11gにおけるWebサービスのセキュリティと管理

- Webサービスのセキュリティと管理のタスク

- Oracle Infrastructure Webサービスの保護と管理

- WebLogic Webサービスの保護と管理

- セキュリティと管理のツールへのアクセス

- Oracle Enterprise Manager Fusion Middleware Controlへのアクセス

- Oracle WebLogic管理コンソールへのアクセス

- WebサービスのカスタムWLSTコマンドへのアクセス

- WebLogic Server上でのOracle WSMのインストール

2 Webサービス・セキュリティの概念について

- Webサービスの保護

- トランスポート・レベルのセキュリティ

- アプリケーション・レベルのセキュリティ

- Webサービス・セキュリティ要件

- Oracle Fusion MiddlewareにおけるWebサービスとクライアントの保護の仕組み

3 Oracle WSMポリシー・フレームワークについて

- Oracle WSMのポリシー・フレームワークの概要

- ポリシーについて

- ポリシー・アサーションを使用したポリシーの作成

- サブジェクトへのポリシーの添付

- ポリシー・セットを使用したポリシーのグローバルなアタッチ

- ポリシー実行の仕組み

- Oracle WSMの事前定義済ポリシーとアサーション・テンプレート

- 複数のポリシー選択肢の定義(ORグループ)

- セキュリティ・ポリシー構成のオーバーライド

- ポリシーの推奨ネーミング規則

4 Oracle Fusion MiddlewareにおけるOracle WSMの再設計の詳細

- Oracle Fusion Middleware 11gリリース1 (11.1.1.9)におけるOracle WSM 10gの再設計の詳細

- Oracle WSM 10gおよびOracle WSM 11gのポリシーの比較

- Oracle Application Server 10g WS-SecurityとOracle WSM 11gの比較

- 相互運用性およびアップグレード

第II部 基本管理

5 Webサービス・アプリケーションのデプロイ

- 概要

- Webサービス・アプリケーションのデプロイ

- Webサービス・アプリケーションのアンデプロイ

- Webサービス・アプリケーションの再デプロイ

6 Webサービスの管理

- サーバーのすべての現行Webサービスの表示

- WLSTを使用したドメイン内でのWebサービスの表示

- アプリケーションの「Webサービスのサマリー」ページへの移動

- アプリケーションのWebサービスの表示

- Fusion Middleware Controlの使用

- WLSTの使用

- SOAコンポジットのWebサービスと参照の表示

- Webサービス・エンドポイントの詳細の表示

- Fusion Middleware Controlの使用

- WLSTの使用

- Webサービス・クライアントの表示

- Fusion Middleware Controlの使用

- SOA参照の表示

- 接続ベースのWebサービス・クライアントの表示

- WebCenterポートレットの表示

- Java EE Webサービス・クライアントの表示

- 非同期のWebサービス・コールバック・クライアントの表示

- WLSTの使用

- WebサービスWSDLドキュメントの表示

- Webサービス・エンドポイントの構成

- Fusion Middleware Controlの使用

- WLSTの使用

- Webサービスの有効化または無効化

- Fusion Middleware Controlの使用

- WLSTの使用

- RESTful Webサービスの有効化または無効化

- Fusion Middleware Controlの使用

- WLSTの使用

- WebサービスWSDLドキュメントの表示の有効化または無効化

- Fusion Middleware Controlの使用

- WLSTの使用

- メタデータの交換の有効化または無効化

- Webサービスのテスト・エンドポイントの有効化または無効化

- Fusion Middleware Controlの使用

- WLSTの使用

- リクエスト・メッセージの検証

- Webサービスの原子性トランザクションの構成

- Fusion Middleware Controlの使用

- WLSTの使用

- リクエスト・メッセージのサイズの設定

- Fusion Middleware Controlの使用

- WLSTの使用

- 非同期Webサービスの構成

- MTOMの有効化および無効化

- Webサービス・クライアントの構成

- Fusion Middleware Controlの使用

- SOA参照の構成

- ADF DCのWebサービス・クライアントの構成

- 非同期Webサービスのコールバック・クライアントの構成

- WLSTの使用

7 Webサービス・ポリシーの管理

- Webサービス・ポリシー管理の概要

- 使用可能なWebサービス・ポリシーの表示

- Fusion Middleware Controlでの「Webサービス・ポリシー」ページへの移動

- WLSTを使用した使用可能なポリシーのリストの表示

- Webサービス・ポリシーの表示

- Webサービス・ポリシーの検索

- Webサービス・ポリシーの作成

- 新しいWebサービス・ポリシーの作成

- 既存のポリシーからのWebサービス・ポリシーの作成

- Webサービス・ポリシーのインポート

- カスタム・ポリシーの作成

- ポリシー・アサーション・テンプレートの管理

- 「Webサービス・アサーション・テンプレート」ページへの移動

- アサーション・テンプレートのネーミング規則

- アサーション・テンプレートの表示

- アサーション・テンプレートの検索

- アサーション・テンプレートの作成

- アサーション・テンプレートの編集

- 構成プロパティの編集

- ポリシーへのアサーションの追加

- ポリシーへのORグループの追加

- アサーションの構成

- アサーション・テンプレートのエクスポート

- アサーション・テンプレートのインポート

- アサーション・テンプレートの削除

- Webサービス・ポリシーの検証

- Webサービス・ポリシーの編集

- Webサービス・ポリシーのバージョニング

- Webサービス・ポリシーのバージョン履歴の表示

- 「リストア」および「ポリシーのアクティブ化」オプションについて

- 新しいバージョンのWebサービス・ポリシーの作成

- Webサービス・ポリシーの以前のバージョンのリストア

- Webサービス・ポリシーのバージョンの削除

- Webサービス・ポリシーのエクスポート

- Webサービス・ポリシーの削除

- クライアント・ポリシーの生成

- 単一のポリシー・サブジェクトに対するポリシーの有効化

- Fusion Middleware Controlの使用

- WLSTの使用

- 全サブジェクトのポリシーの有効化または無効化

- ポリシー内のアサーションの有効化または無効化

- ポリシーの使用状況分析

- ポリシー通知

8 Webサービスへのポリシーの添付

- Webサービスに添付されたポリシーの表示

- Fusion Middleware Controlの使用

- WLSTの使用

- Webサービスへのポリシーのアタッチ

- 単一のサブジェクトへのポリシーの添付

- Fusion Middleware Controlを使用したWebサービスへのポリシーの添付

- WLSTを使用したWebサービスへのポリシーの添付

- 複数のサブジェクトへのポリシーの添付(一括添付)

- ポリシー・サブジェクトの検証

- Webサービス・クライアントへのポリシーの添付

- Fusion Middleware Controlを使用したWebサービス・クライアントへのポリシーの添付

- SOA参照へのポリシーの添付

- 接続ベースのWebサービス・クライアントへのポリシーの添付

- 非同期のWebサービス・コールバック・クライアントへのポリシーの添付

- Java EE Webサービス・クライアントへのポリシーのアタッチ

- WLSTを使用したWebサービス・クライアントへのポリシーの添付

- WLSTを使用したOracle InfrastructureおよびJava EE Webサービス・クライアントへのポリシーの添付

- WLSTを使用したRESTful Webサービス・クライアントへのポリシーの添付

- WLSTを使用したWebサービス・クライアント・ポリシーの有効化と無効化

- サーブレット・アプリケーションへのポリシーの添付

- サーブレット・アプリケーションへのポリシーの直接添付

- サーブレット・アプリケーションへのポリシーのグローバル添付

- オーバーライド可能なWebサービス・ポリシーの添付

- メッセージ保護ポリシーのサーバー側オーバーライド・プロパティの構成

- キーストア構成プロパティのデフォルト値の設定

- 認可ポリシーのサーバー側オーバーライド・プロパティの構成

- 構成プロパティのデフォルト値の設定

- Fusion Middleware Controlを使用したサービス・ポリシーの添付時の構成プロパティのオーバーライド

- WLSTを使用したポリシーの添付時の構成プロパティのオーバーライド

- オーバーライド可能なクライアント・ポリシーの添付

- Fusion Middleware Controlを使用したクライアント・ポリシーの添付時の構成プロパティのオーバーライド

- WLSTを使用してオーバーライド可能なクライアント・ポリシーの添付

- ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成

- ユーザー定義の構成プロパティのスコープ

- ユーザー定義の構成プロパティの追加

- ユーザー定義の構成プロパティの編集

- ユーザー定義の構成プロパティの削除

- ユーザー定義ポリシーの添付時の構成プロパティのオーバーライド

9 ポリシー・セットの作成および管理

- ポリシー・セットを使用したグローバル・ポリシー・アタッチメントについて

- サブジェクト・タイプおよびリソース・スコープ

- グローバル・ポリシー・アタッチメントの一般的な用途

- 「ポリシー・セット・サマリー」ページへの移動

- WLSTを使用したポリシー・セットのリストの表示

- ポリシー・セットの構成の表示

- Fusion Middleware Controlの使用

- WLSTの使用

- WLSTを使用したリポジトリ変更セッションの管理

- ポリシー・セットの作成

- Fusion Middleware Controlの使用

- WLSTの使用

- 既存のポリシー・セットからのポリシー・セットの作成

- Fusion Middleware Controlの使用

- WLSTの使用

- ポリシー・セットの編集

- Fusion Middleware Controlの使用

- WLSTの使用

- リソースのタイプおよびスコープの定義

- リソース・タイプ

- リソース・スコープ

- Webサービスのネームスペースの決定

- 例

- ポリシー・セットの検証

- グローバルにアタッチされたポリシーの構成プロパティのオーバーライド

- Fusion Middleware Controlの使用

- WLSTの使用

- ポリシー・セットの実行時制約の指定

- Fusion Middleware Controlの使用

- WLSTの使用

- グローバルにアタッチされたポリシーの無効化

- ポリシー・セットの有効化および無効化

- Fusion Middleware Controlの使用

- WLSTの使用

- ポリシー・セットの削除

- Fusion Middleware Controlの使用

- WLSTの使用

- グローバル・ポリシー・アタッチメントへのダイレクト・ポリシー・アタッチメントの移行

- ポリシー・アタッチメントの優先度の指定

- エンドポイントのセキュア・ステータスの決定

- ポリシーの有効セットの計算方法

10 ポリシーの環境設定

- 鍵と証明書について

- 秘密鍵と証明書の概要

- 様々なセキュリティ・ポリシーでの秘密鍵および証明書の使用方法

- メッセージ保護ポリシー・タイプ

- 認証トークン・ポリシー・タイプ

- SSLポリシー用の秘密鍵および証明書の設定

- メッセージ保護ポリシー用の秘密鍵および証明書の設定

- メッセージ保護に関するキーストアの構成

- 秘密鍵の生成およびJavaキーストアの作成

- Oracle WSMキーストアの構成

- Fusion Middleware Controlの使用

- WLSTの使用

- 信頼できる証明書の入手と、キーストアへのインポート

- Webサービス・クライアント・キーストアの設定

- Javaキーストアの証明書の管理

- WLSTの使用

- 資格証明ストアの構成

- 資格証明ストアへの鍵およびユーザー資格証明の追加

- Fusion Middleware Controlの使用

- WLSTの使用

- Oracle WSMでキーストアおよび鍵のパスワードが特定される方法

- アプリケーション・レベルの資格証明マップの作成

- アプリケーション・レベルの資格証明マップからCSFキーを取得する方法

- アプリケーション・レベルの資格証明マップにアクセスする権限の付与

- csf.mapプロパティのオーバーライドの構成

- wsm-agent-core.jarへのCredentialAccessPermissionの付与

- wsm-agent-core.jarへのWSIdentityPermissionの付与

- アプリケーション・レベルのCSFマップへのアクセスに使用できるポリシー

- メッセージ保護に関するOPSSキーストア・サービスの構成

- SSLに関するキーストアの構成

- SSLの構成が必要なポリシー

- 双方向SSLの構成が必要なポリシー

- WebLogic Serverへのキーストアの構成方法

- WebLogic ServerへのSSLの構成(一方向)

- WebLogic ServerへのSSLの構成(双方向)

- Webサービス・クライアントに関するSSLの構成

- Webサービス・クライアントに関する双方向SSLの構成

- クラスタ上のJKSキーストア・ファイルの同期の構成

- Oracle HTTP ServerでのSSLの構成

- 一方向SSL

- 双方向SSL

- ハードウェア統合

- Oracle WSMでのハードウェア・セキュリティ・モジュールの使用

- 鍵保存のためのSafeNet Luna SAおよびOracle WSMの使用

- Luna SA HSMクライアントのインストールおよび構成について

- Oracle WSMによって使用されるJREの構成

- Luna SAへのログオン

- JKSからLuna SAへの鍵および証明書のコピー

- Luna SAを使用するためのOracle WSMの構成

- Oracle SPARC T4暗号化アクセラレーションのためのOracle WSMの構成

- 理解しておく必要がある用語

- Oracle SPARC T4 ハードウェア支援暗号化アクセラレーションの概要

- 暗号化アクセラレーションのためのトランスポート・レベル・セキュリティの構成

- 暗号化アクセラレーションのためのメッセージ・レベル・セキュリティの構成

- 追加資料

- サービス・アイデンティティ証明拡張の使用

- WSDLに含まれる証明書のホスト名検証

- サービス・アイデンティティ証明拡張およびホスト名検証の有効化または無効化

- クライアントからサービス・アイデンティティ証明拡張を無視

- クライアントからホスト名検証を無視

- WebLogic Serverへの認証プロバイダの構成

- 作成が必要なWebLogicセキュリティ認証プロバイダのタイプ

- SAMLおよびKerberosログイン・モジュールの構成

- SAMLの構成

- SAMLトークンの検証方法

- 使用される認証プロバイダ

- 設計時のSAML Webサービス・クライアントの設定

- SAMLアサーションのユーザー名の構成

- アサーションへのユーザー属性の組込み

- アサーションへのユーザー・ロールの組込み

- SAMLポリシーに関するOracle Platform Security Services(OPSS)の構成方法

- 別のSAMLアサーション発行者名の追加

- SAML署名証明書の信頼できる識別名(DN)リストの定義

- SAMLポリシーによる匿名ユーザーの使用

- Oracle WSMでのJSON Web Token (JWT)の使用

- JWTユースケースの例(手順の概要)

- JWTトークンを伝播するためのクライアントおよびサービスの構成

- JWTトークン伝播のためのクライアント側構成

- JWTトークン伝播のためのサーバー側構成

- Oracle WSMでのOAuth2の使用

- Oracle WSMでのOAuth2の理解

- 2-Legged認可

- Oracle WSM OAuth2ポリシーを使用するための前提条件

- アイデンティティ切替えのためのWebサービス・クライアントの構成

- クライアント側でのアイデンティティ切替えポリシーによるユーザー名の選択方法

- メッセージ・コンテキストから直接

- メッセージ・コンテキストのcsf-keyから

- クライアント・ポリシーのcsf-keyのオーバーライド

- WSIdentityPermission権限の設定

- Fusion Middleware Controlの使用

- WLSTの使用

- Oracle WSMによるアイデンティティ・コンテキストの伝播

- SAMLおよびJWTポリシーを使用したアイデンティティ・コンテキストの伝播

- アイデンティティ・コンテキストの伝播の構成: メイン手順

- SAMLポリシーに対するアイデンティティ・コンテキスト伝播の構成

- JWTトークン・ポリシーに対するアイデンティティ・コンテキスト伝播の構成

- Kerberosトークンの使用

- MIT Kerberos KDCの初期化および起動

- プリンシパルの作成

- 正しいKDCを使用するためのWebサービス・クライアントの構成

- Webサービス・クライアントでのサービス・プリンシパル名の設定

- 設計時のWebサービス・クライアントでのサービス・プリンシパル名の設定

- 正しいKDCを使用するためのWebサービスの構成

- Enterprise Managerでの正しいkeytabファイルの使用方法

- keytabファイルの抽出とエクスポート

- keytabファイルを使用するためのkrb5ログイン・モジュールの変更

- サービス・プリンシパルに対応するユーザーの認証

- Webサービス・クライアントのチケット・キャッシュの作成

- SPNEGOネゴシエーションによるKerberosの構成

- Kerberosおよびメッセージ保護とともにActive Directoryの使用

- Webサービス・クライアントの設定

- ユーザー・アカウントの作成

- Keytabファイルの作成

- サービス・プリンシパル名の設定

- Webサービスの設定

- SAMLメッセージ保護のユースケース

- 必要知識

- wss11_saml_token_with_message_protection_service_policyの要件

- 対称鍵によるメッセージ保護の方法

- キーストアに必要なキー

- マルチドメインのユースケース(キーストアの強化)

- SAML発行者をオーバーライドするタイミング

- メイン手順

- WebLogic Serverユーザーの作成

- Javaキーストアの作成

- Web Services Managerキーストアの構成

- 復号化キーのパスワードを資格証明ストアに格納

- ポリシーをWebサービスに添付

- ポリシーをWebサービス・クライアントに添付

- WS-Trustポリシーと構成手順

- WebサービスWS-Trustの概要

- STS構成を取得する方法

- 一般的なトークン・リクエストおよびレスポンス

- WS-Trustのユースケースの例

- On Behalf Ofユースケース

- トークンの存続期間

- 交換されるトークン・タイプ

- WS-Trustでの送信者保証の概要

- STSの自動ポリシー構成の設定

- 自動ポリシー構成の要件

- 自動ポリシー構成の設定: メイン手順

- Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順

- WS TrustでのSAML送信者保証の使用

- 使用可能なWS-Trustポリシー

- WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド

- サポートされるSTSサーバー

- OpenSSO STSでのWS-Trustの使用例

- OpenSSO STSの構成

- メッセージ保護のシナリオでのSAML鍵所有者

- メッセージ保護のシナリオでのSAML送信者保証

- メッセージ保護のシナリオでのSAMLベアラー

- Oracle Entitlements Serverを使用したファイングレイン認可の理解

- 事前に読む必要があるOESドキュメント

- OES統合: 全体像

- データ・マスキング

- 責任

- OESのファイングレイン認可および大まかな認可

- Oracle WSM OESポリシー

- リソースのマッピングおよび命名

- OESポリシーの例

- 属性の処理方法

- ガード要素の使用

11 ポリシーの構成

- 使用するセキュリティ・ポリシーの決定

- メッセージの保護

- メッセージ保護の基本

- 部分的な暗号化の例

- セキュリティSwA添付ファイル

- メッセージ保護を行うポリシー

- 認証のみのポリシーと構成手順

- oracle/http_jwt_token_client_policy

- 設定

- 構成プロパティ

- oracle/http_jwt_token_identity_switch_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- oracle/http_jwt_token_service_policy

- 設定

- 構成プロパティ

- oracle/http_oam_token_service_policy

- 設定

- 構成プロパティ

- OAMの設定方法

- oracle/http_oauth2_token_client_policy

- 設定

- 構成プロパティ

- oracle/http_oauth2_token_opc_oauth2_client_policy

- 設定

- 構成プロパティ

- oracle/oauth2_config_client_policy

- 設定

- 構成プロパティ

- oracle/http_saml20_token_bearer_client_policy

- 設定

- 構成プロパティ

- oracle/http_saml20_bearer_token_service_policy

- 設定

- 構成プロパティ

- oracle/wss_http_token_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- サーブレット・アプリケーションのポリシーを添付および構成する方法

- oracle/wss_http_token_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- サーブレット・アプリケーションのポリシーを添付および構成する方法

- oracle/wss_username_token_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_username_token_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/wss10_saml_token_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_saml_token_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss10_saml20_token_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_saml20_token_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss11_kerberos_token_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_kerberos_token_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの構成方法

- oracle/wss_saml_token_bearer_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- メッセージ保護のみのポリシーと構成手順

- oracle/wss10_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_message_protection_service_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss11_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの構成方法

- 設計時のWebサービス・クライアントの構成方法

- oracle/wss11_message_protection_service_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- メッセージ保護および認証ポリシーと構成手順

- ORグループを含むポリシーの構成

- oracle/http_basic_auth_over_ssl_client_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- サーブレット・アプリケーションのポリシーを添付および構成する方法

- oracle/http_basic_auth_over_ssl_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- サーブレット・アプリケーションのポリシーを添付および構成する方法

- oracle/http_jwt_token_over_ssl_client_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/http_jwt_token_over_ssl_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/http_oauth2_token_over_ssl_client_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/http_oauth2_token_identity_switch_over_ssl_client_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/http_oauth2_token_opc_oauth2_over_ssl_client_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/http_oauth2_token_identity_switch_opc_oauth2_over_ssl_client_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/http_saml20_bearer_token_over_ssl_client_policy

- 設定

- 構成プロパティ

- oracle/http_saml20_bearer_token_over_ssl_service_policy

- 設定

- 構成プロパティ

- oracle/wss_http_token_over_ssl_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_http_token_over_ssl_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/wss_saml_token_bearer_identity_switch_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_saml_token_bearer_over_ssl_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_saml_token_bearer_over_ssl_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss_saml20_token_bearer_over_ssl_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_saml20_token_bearer_over_ssl_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss_saml_token_over_ssl_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_saml_token_over_ssl_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss_saml20_token_over_ssl_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_saml20_token_over_ssl_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss_username_token_over_ssl_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_username_token_over_ssl_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/wss10_saml_hok_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_saml_hok_token_with_message_protection_service_policy

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss10_saml_token_with_message_integrity_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_saml_token_with_message_integrity_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss10_saml_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_saml_token_with_message_protection_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss10_saml20_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_saml20_token_with_message_protection_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- WebLogic Serverの設定方法

- oracle/wss10_username_id_propagation_with_msg_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_username_id_propagation_with_msg_protection_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/wss10_username_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_username_token_with_message_protection_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy

- 設定

- 構成プロパティ

- WebLogic Serverの設定方法

- oracle/wss10_x509_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss10_x509_token_with_message_protection_service_policy

- 設定

- 構成可能な属性

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss11_kerberos_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_kerberos_token_with_message_protection_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss11_kerberos_token_with_message_protection_basic128_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_kerberos_token_with_message_protection_basic128_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss11_saml_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_saml_token_identity_switch_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_saml_token_with_message_protection_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss11_saml20_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_saml20_token_with_message_protection_service_policy

- 設定

- 構成プロパティ

- ログイン・モジュールの構成

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss11_username_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_username_token_with_message_protection_service_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wss11_x509_token_with_message_protection_client_policy

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_x509_token_with_message_protection_service_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- 認可ポリシーと構成手順

- 保護するリソースの決定

- 認証権限の決定方法

- OPSSリソース名にオペレーション名を組込み可能

- oracle/binding_authorization_denyall_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/binding_authorization_permitall_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/binding_permission_authorization_policy

- 設定

- 構成可能な属性

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/component_authorization_denyall_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/component_authorization_permitall_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/component_permission_authorization_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/whitelist_authorization_policy

- 設定

- 構成プロパティ

- Oracle Platform Security Services(OPSS)の設定方法

- このポリシーを使用してサービスを正常に起動する方法

- リクエスト元を指定するためのOracle HTTP Serverの構成

- WS-Addressingポリシーと構成手順

- oracle/wsaddr_policy

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- Oracle Platform Security Services(OPSS)の設定方法

- WS-Trustポリシー

- oracle/sts_trust_config_service_policy

- ポリシー・アサーション

- 設定

- 構成プロパティ

- Webサービスの設定方法

- oracle/sts_trust_config_client_policy

- ポリシー・アサーション

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- Webサービスの設定方法

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

- ポリシー・アサーション

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss_saml_bearer_or_username_token_service_policy

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

- ポリシー・アサーション

- 設定

- 構成プロパティ

- Webサービスの設定方法

- oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

- ポリシー・アサーション

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy

- ポリシー・アサーション

- 設定

- 構成プロパティ

- Webサービスの設定方法

- oracle/wss11_sts_issued_saml_with_message_protection_client_policy

- ポリシー・アサーション

- 設定

- 構成プロパティ

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- MTOMアタッチメント・ポリシーと構成手順

- oracle/wsmtom_policy

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- Oracle Platform Security Services(OPSS)の設定方法

- 信頼できるメッセージング・ポリシーと構成手順

- WS-RMポリシーのプロパティ

- oracle/wsrm10_policy

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- Oracle Platform Security Services(OPSS)の設定方法

- oracle/wsrm11_policy

- Webサービス・クライアントの設定方法

- 設計時のWebサービス・クライアントの設定方法

- Oracle Platform Security Services(OPSS)の設定方法

- 管理ポリシーと構成手順

- oracle/log_policy

- 設定

- 構成プロパティ

- Webサービスまたはクライアントの設定方法

- Oracle Platform Security Services(OPSS)の設定方法

- Webサービスおよびクライアントへのポリシー・ファイルの添付

- クライアントのプログラムによる構成オーバーライドの使用

- 構成のオーバーライドの例

- ポリシーに対するローカルの最適化の構成

- ローカルの最適化を使用する場合のコントロール

- ポリシー・レベルの最適化コントロールの構成

- Oracle Entitlements Serverを使用したファイングレイン認可の構成

- OES統合構成の前提条件

- 責任の属性の決定

- ファイングレイン認可のためのOESポリシーの構成

- OESリソースの構成

- 責任を返す認可ポリシーの作成

- 実際のOES認可ポリシーの作成

- 大まかな認可のためのOESポリシーの構成

- OESリソースの構成

- 実際のOES認可ポリシーの作成

- マスキングのためのOESポリシーの構成

- OESリソースの構成

- 責任を返すマスキング・ポリシーの作成

- 実際のOESマスキング・ポリシーの作成

- Oracle WSM OESポリシーの添付

- 構成のプロパティおよびオーバーライド

12 Webサービスのテスト

- Webサービスのテスト

- 入力引数のXMLソースとしての編集

- セキュリティ・テストの有効化

- サポートされるクライアント・セキュリティ・ポリシー

- サービスのクオリティ・テストの有効化

- HTTPトランスポート・オプションの有効化

- Webサービス操作のストレス・テスト

- Webサービスのテスト・ページの無効化

13 Webサービスのパフォーマンスの監視

- パフォーマンス監視の概要

- Webサービス統計の開始またはリセットのタイミング

- アプリケーションのWebサービス統計の表示

- サーバー・インスタンスのWebサービス統計の表示

- 個々のWebサービスのWebサービス統計の表示

- Webサービス・エンドポイントの操作統計の表示

- Java EE Webサービス・クライアントのWebサービス統計の表示

- Webサービスのセキュリティ違反の表示

第III部 高度な管理

14 高度な管理

- Webサービスとソースの登録

- UDDIの基本

- WSILの基本

- 登録済ソースとWebサービスの表示

- ソースの登録

- UDDIソースからのWebサービスの登録

- WSILソースからのWebサービスの登録

- WebサービスまたはWebサービス・ソースの削除

- WebサービスのUDDIへのパブリッシュ

- 登録済ソースからUDDIへのWebサービスのパブリッシュ

- アプリケーションからUDDIへのWebサービスのパブリッシュ

- UDDIのプロキシ・サーバーの構成

- Webサービスの監査

- 監査ポリシーの構成

- 監査データの収集および格納の管理

- 監査レポートの表示

- WSDLの管理

- 実行中のクライアントへのセキュリティの追加

- プラットフォーム・ポリシー・プロパティの構成

- ポリシー・マネージャの接続の構成およびポリシー・キャッシュのチューニング

- Webサービス・ポリシー取得の構成

- WSMリポジトリ接続のチューニング

- Webサービス・セキュリティ・ポリシー強制のチューニング

- アイデンティティ拡張プロパティの定義

- 署名証明書の信頼できる発行者および信頼できるDNリストの定義

- Fusion Middleware Controlを使用した発行者およびそのDNリストの構成

- WLSTを使用した信頼できる発行者の定義およびDNリストの管理

- WLSTを使用した発行者およびそのDNリストの構成

- WLSTを使用した発行者およびDNリストの表示

- WLSTを使用した発行者およびそのDNリストの削除

- WLSTを使用した信頼メタデータのインポート

- WLSTを使用した信頼メタデータのエクスポート

- WLSTを使用した信頼できる発行者からの信頼の取消し

- 信頼できる発行者のトークン属性ルールの構成

- Fusion Middleware Controlを使用した信頼できる発行者のトークン属性ルールの構成

- WLSTを使用した信頼できる発行者のトークン属性ルールの構成

- WLSTを使用したトークン属性ルールの削除

- クライアント・アイデンティティ・マッピングのトークン属性ルールの使用

- マッピング・ルール

- ドメイン全体の管理ポートでのOracle WSMの構成

- Javaオブジェクト・キャッシュの設定

- configure-joc.pyスクリプトの実行

- デフォルト・ユーザーの変更

- 非同期WebサービスのJMSシステム・ユーザーの変更

15 環境間のアプリケーション移行の管理

- Webサービス・アプリケーション移行の概要

- ポリシーの水平移行の概要

- デプロイメント・ディスクリプタ移行のユースケース例

- クラスタにデプロイされたADFビジネス・コントロールまたはWebCenter Webサービス・アプリケーションのスケーリング

- ADFビジネス・コントロールまたはWebCenter Webサービス環境でのランタイム・ポリシー変更の伝播

- ポリシーの移行

- ポリシー構成の移行

- キーストアの移行

- ユーザーおよびグループの移行

- 資格証明の移行

- ユーザー名およびパスワードの移行

- キーストアおよび暗号化キー・パスワードの移行

- Oracle Platform Security Servicesアプリケーションおよびシステム・ポリシーの移行

- Oracle Platform Security Services構成の移行

- SSLの移行

- Kerberos構成の移行

- アサーション・テンプレートの移行

- デプロイメント・ディスクリプタの移行

16 問題の診断

- Oracle WSM Policy Managerでの問題の診断

- Oracle WSMでの一般的な問題の診断

- ポリシー・マネージャに接続できない

- アプリケーションがWebサービスを呼び出した後のキーまたは資格証明ストア・エラー

- アプリケーションがWebサービスを呼び出した後の信頼証明書エラー

- アイデンティティ伝搬時に発生するSAMLアサーション・エラー

- アプリケーションがWebサービスを呼び出した後のポリシー・アクセス・エラー

- 資格証明ストア内のユーザーにアクセスできない

- アプリケーションがWebサービスを呼び出した後の認証エラー

- アプリケーションがWebサービスを呼び出した後のタイムスタンプ・エラー

- アプリケーションがWebサービスを呼び出した後の複数の認証セキュリティ・ポリシー・エラー

- 通知されたWSDLからSTSの構成の詳細を取得できない

- WLSTを使用したポリシー添付に関する問題の診断

- WLSTを使用したドメイン構成に関する問題の診断

- WS-Trustユースケースでの一般的なOracle WSM例外の診断

- Oracle WSM RESTfulクライアント・フィルタでの問題の診断

- ログを使用した問題の診断

- Webサービス診断ログの使用

- 診断ログのログ・レベルの設定

- 診断ログの表示

- 診断ログのフィルタ処理

- Oracle WSMデバッグ・メッセージのロギング

- Webサービス・メッセージ・ログの使用

- メッセージ・ログの構成

- メッセージ・ログの表示

- メッセージ・ログのフィルタ処理

- サンプル・ログの確認

- サンプル・ログ: Oracle WSM Policy Manager使用不可

- サンプル・ログ: セキュリティ・キーストア未構成

- サンプル・ログ: 証明書使用不可

- Webサービスのログ・ファイルの構成

17 Oracle WSMリポジトリの管理

- Oracle WSMリポジトリについて

- Oracle WSMリポジトリの登録

- ポリシーのインポートとエクスポートの異なるメカニズムの理解

- リポジトリへのドキュメントのインポートおよびエクスポート

- リポジトリからのドキュメントのエクスポート

- リポジトリへのドキュメントのインポート

- アプリケーション環境間のポリシーの移行

- JDeveloperで使用するためにポリシーをOracle WSMリポジトリからエクスポート

- リポジトリ内のポリシーのパッチ

- Oracle WSMリポジトリのバックアップとリストア

- リポジトリ内のOracle WSMポリシーのアップグレード

- Oracle WSMリポジトリの再構築

第IV部 WebLogic Webサービスの管理

18 WebLogic Webサービスの保護と管理

- WebLogic Webサービスの保護および管理の手順

- WebLogic Webサービスおよびクライアントへのポリシーの添付

- WebLogic WebサービスへのOracle WSMポリシーの添付

- WebLogic Webサービス・クライアントへのOracle WSMポリシーの添付

- WebLogic WebサービスへのWebLogic Webサービス・ポリシーの添付

- WebLogic Webサービス・クライアントへのWebLogic Webサービス・ポリシーの添付

第V部 リファレンス

A Webサービス・セキュリティ標準

- Webサービスの相互運用性組織: Basic Security Profile

- Transport Layer Security - SSL

- XML暗号化(機密保護)

- XML署名(整合性、認証性)

- WS-Security

- WS-Securityトークン

- ユーザー名

- X.509証明書

- Kerberosトークン

- SAMLトークン

- WS-Policy

- WS-SecurityPolicy

- Webサービス・アドレス(WS-Addressing)

- WS-Trust

- WS-ReliableMessaging

B 事前定義済ポリシー

- セキュリティ・ポリシー

- 認証のみのポリシー

- oracle/http_jwt_token_client_policy

- oracle/http_jwt_token_identity_switch_client_policy

- oracle/http_jwt_token_service_policy

- oracle/http_oam_token_service_policy

- oracle/http_oauth2_token_client_policy

- http_oauth2_token_opc_oauth2_client_policy

- oracle/oauth2_config_client_policy

- oracle/http_saml20_token_bearer_client_policy

- oracle/http_saml20_token_bearer_service_policy

- oracle/multi_token_rest_service_policy

- oracle/wss_http_token_client_policy

- oracle/wss_http_token_service_policy

- oracle/wss_username_token_client_policy

- oracle/wss_username_token_service_policy

- oracle/wss10_saml_token_client_policy

- oracle/wss10_saml_token_service_policy

- oracle/wss10_saml20_token_client_policy

- oracle/wss10_saml20_token_service_policy

- oracle/wss11_kerberos_token_client_policy

- oracle/wss11_kerberos_token_service_policy

- oracle/wss_saml_token_bearer_client_policy

- oracle/wss_saml_or_username_token_service_policy

- oracle/wss_saml_bearer_or_username_token_service_policy

- メッセージ保護のみのポリシー

- oracle/wss10_message_protection_client_policy

- oracle/wss10_message_protection_service_policy

- oracle/wss11_message_protection_client_policy

- oracle/wss11_message_protection_service_policy

- メッセージ保護および認証ポリシー

- oracle/http_basic_auth_over_ssl_client_policy

- oracle/http_basic_auth_over_ssl_service_policy

- oracle/http_jwt_token_over_ssl_client_policy

- oracle/http_jwt_token_over_ssl_service_policy

- oracle/http_oauth2_token_over_ssl_client_policy

- oracle/http_oauth2_token_opc_oauth2_over_ssl_client_policy

- oracle/http_oauth2_token_identity_switch_over_ssl_client_policy

- oracle/http_oauth2_token_identity_switch_opc_oauth2_over_ssl_client_policy

- oracle/http_saml20_token_bearer_over_ssl_client_policy

- oracle/http_saml20_token_bearer_over_ssl_service_policy

- oracle/multi_token_over_ssl_rest_service_policy

- oracle/wss_http_token_over_ssl_client_policy

- oracle/wss_http_token_over_ssl_service_policy

- oracle/wss_saml_or_username_token_over_ssl_service_policy

- oracle/wss_saml_token_bearer_identity_switch_client_policy

- oracle/wss_saml_token_bearer_over_ssl_client_policy

- oracle/wss_saml_token_bearer_over_ssl_service_policy

- oracle/wss_saml20_token_bearer_over_ssl_client_policy

- oracle/wss_saml20_token_bearer_over_ssl_service_policy

- oracle/wss_saml_token_over_ssl_client_policy

- oracle/wss_saml_token_over_ssl_service_policy

- oracle/wss_saml20_token_over_ssl_client_policy

- oracle/wss_saml20_token_over_ssl_service_policy

- oracle/wss_username_token_over_ssl_client_policy

- oracle/wss_username_token_over_ssl_service_policy

- oracle/wss10_saml_hok_with_message_protection_client_policy

- oracle/wss10_saml_hok_token_with_message_protection_service_policy

- oracle/wss10_saml_token_with_message_integrity_client_policy

- oracle/wss10_saml_token_with_message_integrity_service_policy

- oracle/wss10_saml_token_with_message_protection_client_policy

- oracle/wss10_saml_token_with_message_protection_service_policy

- oracle/wss10_saml20_token_with_message_protection_client_policy

- oracle/wss10_saml20_token_with_message_protection_service_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

- oracle/wss10_username_id_propagation_with_msg_protection_client_policy

- oracle/wss10_username_id_propagation_with_msg_protection_service_policy

- oracle/wss10_username_token_with_message_protection_client_policy

- oracle/wss10_username_token_with_message_protection_service_policy

- oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

- oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy

- oracle/wss10_x509_token_with_message_protection_client_policy

- oracle/wss10_x509_token_with_message_protection_service_policy

- oracle/wss11_kerberos_token_with_message_protection_client_policy

- oracle/wss11_kerberos_token_with_message_protection_service_policy

- oracle/wss11_kerberos_token_with_message_protection_basic128_client_policy

- oracle/wss11_kerberos_token_with_message_protection_basic128__service_policy

- oracle/wss11_saml_token_with_message_protection_client_policy

- oracle/wss11_saml20_token_with_message_protection_client_policy

- oracle/wss11_saml_token_with_identity_switch_message_protection_client_policy

- oracle/wss11_saml_token_with_message_protection_service_policy

- oracle/wss11_saml20_token_with_message_protection_service_policy

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy

- oracle/wss11_username_token_with_message_protection_client_policy

- oracle/wss11_username_token_with_message_protection_service_policy

- oracle/wss11_x509_token_with_message_protection_client_policy

- oracle/wss11_x509_token_with_message_protection_service_policy

- WS-Trustポリシー

- oracle/sts_trust_config_service_policy

- oracle/sts_trust_config_client_policy

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

- oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

- oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy

- oracle/wss11_sts_issued_saml_with_message_protection_client_policy

- 認可のみのポリシー

- oracle/binding_authorization_denyall_policy

- oracle/binding_authorization_permitall_policy

- oracle/binding_permission_authorization_policy

- oracle/component_authorization_denyall_policy

- oracle/component_authorization_permitall_policy

- oracle/component_permission_authorization_policy

- oracle/whitelist_authorization_policy

- 認可ポリシー: Oracle Entitlements Server

- oracle/binding_oes_authorization_policy

- oracle/binding_oes_masking_policy

- oracle/component_oes_authorization_policy

- WS-Addressingポリシー

- oracle/wsaddr_policy

- MTOMアタッチメント・ポリシー

- oracle/wsmtom_policy

- 信頼できるメッセージング・ポリシー

- oracle/wsrm10_policy

- oracle/wsrm11_policy

- 管理ポリシー

- oracle/log_policy

- 動作無効ポリシー

- oracle/no_authentication_service_policy

- oracle/no_authentication_client_policy

- oracle/no_messageprotection_service_policy

- oracle/no_messageprotection_client_policy

- oracle/no_authorization_service_policy

- oracle/no_authorization_component_policy

- oracle/no_addressing_policy

- oracle/no_mtom_policy

- oracle/no_wsrm_policy

C 事前定義済アサーション・テンプレート

- セキュリティ・アサーション・テンプレート

- 認証のみのアサーション・テンプレート

- oracle/http_jwt_token_client_template

- oracle/http_jwt_token_service_template

- oracle/http_oam_token_service_template

- oracle/http_oauth2_token_client_template

- oracle/oauth2_config_client_template

- oracle/http_saml20_token_bearer_client_template

- oracle/http_saml20_token_bearer_service_template

- oracle/http_spnego_token_client_template

- oracle/http_spnego_token_service_template

- oracle/wss_http_token_client_template

- oracle/wss_http_token_service_template

- oracle/wss_username_token_client_template

- oracle/wss_username_token_service_template

- oracle/wss10_saml_token_client_template

- oracle/wss10_saml_token_service_template

- oracle/wss10_saml20_token_client_template

- oracle/wss10_saml20_token_service_template

- oracle/wss11_kerberos_token_client_template

- oracle/wss11_kerberos_token_service_template

- oracle/wss_saml_token_bearer_client_template

- メッセージ保護のみのアサーション・テンプレート

- oracle/wss10_message_protection_client_template

- oracle/wss10_message_protection_service_template

- oracle/wss11_message_protection_client_template

- oracle/wss11_message_protection_service_template

- メッセージ保護および認証のアサーション・テンプレート

- oracle/http_jwt_token_over_ssl_client_template

- oracle/http_jwt_token_over_ssl_service_template

- oracle/http_oauth2_token_over_ssl_client_template

- oracle/wss_http_token_over_ssl_client_template

- oracle/wss_http_token_over_ssl_service_template

- oracle/wss_saml_token_bearer_service_template

- oracle/wss_saml_token_bearer_over_ssl_client_template

- oracle/wss_saml_token_bearer_over_ssl_service_template

- oracle/wss_saml20_token_bearer_over_ssl_client_template

- oracle/wss_saml20_token_bearer_over_ssl_service_template

- oracle/wss_saml_token_over_ssl_client_template

- oracle/wss_saml_token_over_ssl_service_template

- oracle/wss_saml20_token_over_ssl_client_template

- oracle/wss_saml20_token_over_ssl_service_template

- oracle/wss_username_token_over_ssl_client_template

- oracle/wss_username_token_over_ssl_service_template

- oracle/wss10_saml_hok_token_with_message_protection_client_template

- oracle/wss10_saml_hok_token_with_message_protection_service_template

- oracle/wss10_saml_token_with_message_protection_client_template

- oracle/wss10_saml_token_with_message_protection_service_template

- oracle/wss10_saml20_token_with_message_protection_client_template

- oracle/wss10_saml20_token_with_message_protection_service_template

- oracle/wss10_username_token_with_message_protection_client_template

- oracle/wss10_username_token_with_message_protection_service_template

- oracle/wss10_x509_token_with_message_protection_client_template

- oracle/wss10_x509_token_with_message_protection_service_template

- oracle/wss11_kerberos_token_with_message_protection_client_template

- oracle/wss11_kerberos_token_with_message_protection_service_template

- oracle/wss11_saml_token_with_message_protection_client_template

- oracle/wss11_saml_token_with_message_protection_service_template

- oracle/wss11_saml20_token_with_message_protection_client_template

- oracle/wss11_saml20_token_with_message_protection_service_template

- oracle/wss11_username_token_with_message_protection_client_template

- oracle/wss11_username_token_with_message_protection_service_template

- oracle/wss11_x509_token_with_message_protection_client_template

- oracle/wss11_x509_token_with_message_protection_service_template

- WS-Trustアサーション・テンプレート

- oracle/sts_trust_config_client_template

- oracle/sts_trust_config_service_template

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_template

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_template

- oracle/wss11_sts_issued_saml_hok_with_message_protection_client_template

- oracle/wss11_sts_issued_saml_hok_with_message_protection_service_template

- oracle/wss11_sts_issued_saml_with_message_protection_client_template

- 認可アサーション・テンプレート

- oracle/binding_authorization_template

- oracle/binding_permission_authorization_template

- oracle/component_authorization_template

- oracle/component_permission_authorization_template

- Oracle Entitlements Server (OES)統合用のテンプレート

- oracle/binding_oes_authorization_template

- oracle/binding_oes_masking_template

- oracle/component_oes_authorization_template

- サポートされているアルゴリズム・スイート

- リクエスト、レスポンスおよびフォルト・メッセージへの署名と暗号化の設定

- 管理アサーション・テンプレート

- oracle/security_log_template

- 動作無効アサーション・テンプレート

D 事前定義済アサーションのスキーマ参照

- 図解

- 要素の説明

- wsp:Policy

- 属性

- 例

- wsp:ExactlyOne

- 属性

- 例

- orasp:Assertion

- 属性

- 例

- orawsp:bindings

- 例

- orawsp:Config

- 属性

- 例

- orawsp:PropertySet

- 属性

- 例

- orawsp:Property

- 属性

- 例

- orawsp:Description

- 例

- orawsp:Value

- 例

- orawsp:guard

- 例

- orawsp:resource-match

- 例

- orawsp:action-match

- 例

- orawsp:constraint-match

- 例

- oralgp:Logging

- 例

- orasp:binding-authorization

- 例

- orasp:binding-permission-authorization

- 例

- orasp:coreid-security

- 例

- orasp:http-jwt-security

- 例

- orasp:http-oam-security

- 例

- orasp:http-saml20-bearer-security

- 例

- orasp:http-security

- 例

- orasp:kerberos-security

- 例

- orasp:sca-component-authorization

- 例

- orasp:sca-component-permission-authorization

- 例

- orasp:sts-trust-config

- 属性

- 例

- orasp:wss10-anonymous-with-certificates

- 例

- orasp:wss10-mutual-auth-with-certificates

- 例

- orasp:wss10-saml-hok-with-certificates

- 例

- orasp:wss10-saml-token

- 例

- orasp:wss10-saml-with-certificates

- 例

- orasp:wss10-username-with-certificates

- 例

- orasp:wss11-anonymous-with-certificates

- 例

- orasp:wss11-mutual-auth-with-certificates

- 例

- orasp:wss11-saml-with-certificates

- 例

- orasp:wss11-sts-issued-token-with-certificates

- 属性

- 例

- orasp:wss11-username-with-certificates

- 例

- orasp:wss-saml-token-bearer-over-ssl

- 例

- orasp:wss-saml-token-over-ssl

- 例

- orasp:wss-sts-issued-token-over-ssl

- 属性

- 例

- orasp:wss-username-token

- 例

- orasp:wss-username-token-over-ssl

- 例

- rm:RMAssertion

- 例

- wsaw:UsingAddressing

- 例

- wsoma:OptimizedMimeSerialization

- 例

- oralgp:fault

- 例

- oralgp:request

- 例

- oralgp:response

- 例

- oralgp:msg-log

- 例

- orasp:attachment

- 属性

- 例

- orasp:auth-header

- 属性

- 例

- orasp:body

- 例

- orasp:check-permission

- 例

- orasp:coreid-token

- 属性

- 例

- orasp:denyAll

- 例

- orasp:element

- 属性

- 例

- orasp:encrypted-elements

- 例

- orasp:encrypted-parts

- 例

- orasp:fault

- 例

- orasp:header

- 属性

- 例

- orasp:issued-token

- 属性

- 例

- orasp:kerberos-token

- 属性

- 例

- orasp:msg-security

- 属性

- 例

- orasp:permitAll

- 例

- orasp:request

- 例

- orasp:require-tls

- 属性

- 例

- orasp:response

- 例

- orasp:role

- 属性

- 例

- orasp:saml-token

- 属性

- 例

- orasp:signed-elements

- 例

- orasp:signed-parts

- 例

- orasp:username-token

- 属性

- 例

- orasp:x509-token

- 属性

- 例

- orawsp:Description

- 例

E ポリシー・セットのスキーマ参照

- 図解

- 要素の説明

- policySet

- 属性

- wsp:policyReference

- 属性

- 例

- orawsp:OverrideProperty

- 例

はじめに

この項では、対象読者、このガイドの使用方法を説明し、ドキュメントのアクセシビリティについての情報を提供します。

このガイドについて

このガイドでは、Webサービスを保護および管理するために必要なタスクを説明します。詳細は次のとおりです。

- Webサービスをデプロイ、構成、テストおよび監視します。

- Webサービスを有効化、公開および登録します。

- ポリシーを添付して、Webサービスのセキュリティ、メッセージング、アドレッシングおよび管理を行い、ポリシーの使用状況を分析します。

- 新しいポリシーとアサーション・テンプレートを作成し、既存のポリシーを管理および構成します。

- ポリシーのライフサイクルを管理して、テスト環境から本番環境へ移行します。

- 開発環境および本番環境のファイルベース・ストアとデータベース・ストアをそれぞれで管理します。

- 問題を診断します。

対象読者

このガイドの対象読者は次のとおりです。

- Webサービスおよびセキュリティを管理するシステムおよびセキュリティ管理者

- Webサービスを開発し、Webサービスをデプロイする前にセキュリティのテストを行うアプリケーション開発者

- セキュリティ・ポリシーを作成するセキュリティ・アーキテクト

このマニュアルの使用方法

『Oracle Fusion Middleware Webサービスの紹介』ドキュメントを参照して、Oracle Fusion Middleware 11gでサポートされている2つのWebサービス・スタックを適切に理解することをお薦めします。

このドキュメントは次のように編成されています。

- 第I部「概要」では、Webサービスを保護および管理するために必要な概念およびタスクを紹介し、一連の一般的なユース・ケースについて説明します。
第4章「Oracle Fusion MiddlewareにおけるOracle WSMの再設計の詳細」では、Oracle Fusion Middleware 11gリリース1 (11.1.1.9)でOracle WSMの機能がどのように再設計されたかについて説明します。Oracle Web Services Manager 10g(Oracle WSM)を使用している場合は、この章を確認することをお薦めします。

- 第II部「基本管理」では、ユーザーが実行できる基本的な管理タスク(Webサービスのデプロイと構成、ポリシーの管理、添付および構成、Webサービスのテストと監視など)を説明します。

- 第III部「高度な管理」では、高度な管理タスク(Webサービスの公開と監査、ファイルを基準とするストアからの移行、ポリシーのライフサイクル管理、問題の診断など)を説明します。

- 第IV部「WebLogic Webサービスの管理」では、WebLogic(Java EE)Webサービスを保護および管理する方法を説明します。

- 第V部「参照」では、Webサービス・セキュリティ標準、事前定義済ポリシーとアサーション・テンプレート、およびアサーション・スキーマについて説明している参照情報を提供します。

ドキュメントのアクセシビリティについて

Oracleのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWeb サイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)を参照してください。

Oracleサポートへのアクセス

サポートをご購入のOracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細情報は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info) か、聴覚に障害のあるお客様は (http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs)を参照してください。

関連ドキュメント

詳細は、Oracle Fusion Middleware 11g リリース1 (11.1.1.9)のドキュメント・セットに含まれる次のドキュメントを参照してください。

- Webサービスの紹介

- Oracle Infrastructure Webサービス開発者ガイド

- Oracle WebLogic Server WebLogic Webサービスの紹介

- 『Oracle Web Services Manager Extensibility Guide』

- Oracle Web Services Manager相互運用ガイド

- Oracle WebLogic Server JAX-WS Webサービスのスタート・ガイド

- Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング

- Oracle WebLogic Server JAX-RPC Webサービスのスタート・ガイド

- Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミング

- 『Oracle WebLogic Server WebLogic Webサービスの保護』

- 『Oracle WebLogic Server WebLogic Webサービス・リファレンス』

- 『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』

- 『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』

- Oracle Fusion Middleware Oracle WebCenter Portal開発者ガイド

- Oracle JDeveloperのオンライン・ヘルプにあるWebサービスでの開発に関する項

Oracle Web Services Managerテクノロジのサイトhttp://www.oracle.com/technology/products/webservices_manager/index.htmlも参照してください。

表記規則

このマニュアルでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダ変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

新機能

11gリリース1では、Oracle Web Services Manager 10gおよびWebサービス・セキュリティ管理が完全に再設計されています。リリース11gでの変更内容の詳細は、第4章「Oracle Fusion MiddlewareにおけるOracle WSMの再設計の詳細」を参照してください。

次のトピックは、 11gリリース1の各リリースでの機能と拡張機能の概要を提供します。

- 11gリリース1 (11.1.1.9)

- 11gリリース1 (11.1.1.7)

- 11gリリース1 (11.1.1.6)

- 11gリリース1 (11.1.1.5)

- 11gリリース1 (11.1.1.4)

- 11gリリース1 (11.1.1.3)

- 11g リリース1 (11.1.1.2)

- 11g リリース1 (11.1.1)

11g リリース1(11.1.1.9)

11gリリース1(11.1.1.9)には、次の新機能および拡張機能が含まれています。

- 新機能

- 新しいWLSTコマンド

- 新しい事前定義済ポリシー

新機能

次の新機能と拡張機能が、Oracle Web Services Managerの現行リリースに追加されました。

- リリース11.1.1.9へのOracle WSM構成のアップグレード

- アプリケーション・レベルの資格証明マップの構成

- RESTおよびSOAPのサービスおよびクライアントのOAuth 2.0サポート

- RESTfulクライアントのサポートおよびセキュリティ

- 資格証明およびキーストアの管理のためのREST API

- トークン属性ルール

- 識別名(DN)リストを管理するためのWLSTコマンド

- Javaキーストア(JKS)の管理のためのWLSTコマンド

- Webサービス・クライアントのアイデンティティ切替えを可能にするクライアント・ポリシー

リリース11.1.1.9へのOracle WSM構成のアップグレード

upgradeWSM WLSTコマンドは、WebLogic Server 11gドメイン内のOWSM構成を、前のリリース(11.1.1.1.0–11.1.1.6.0)からリリース11.1.1.9.0にアップグレードします。このコマンドの詳細は、次の場所に記載されています。

- 『Oracle Fusion Middlewareパッチ適用ガイド』のOracle WSM構成のアップグレードに関する項

- 『WebLogic Scripting Toolコマンド・リファレンス』のOWSM構成のアップグレード・コマンドに関する項

アプリケーション・レベルの資格証明マップの構成

csf.map構成プロパティにより、特定の事前定義されたポリシーにアプリケーション・レベルの資格証明マップ名を設定できます(このプロパティを使用してドメイン・レベルの資格証明マップをアタッチメントごとにオーバーライドできます)。csf.map構成オーバーライドは、csf-keyまたはキーストア関連のcsfキーのいずれかを持つすべてのポリシーおよびアサーション・テンプレートで使用できます。

詳細は、「アプリケーション・レベルの資格証明マップの作成」を参照してください。

RESTおよびSOAPのサービスおよびクライアントのOAuth 2.0サポート

Oracle WSMでは、Webサービス・クライアントがMobile and Social OAuth 2.0サーバーが実装するSOAPおよびRESTのWebサービスと対話し、2-legged認可を行うことができます。

詳細は、「Oracle WSMでのOAuth2の使用」を参照してください。

RESTfulクライアントのサポートおよびセキュリティ

RESTful Webサービス・クライアントを保護するには、WLSTを使用してOracle WSMポリシーをグローバルに割り当てます。

詳細は、「WLSTを使用したRESTful Webサービス・クライアントへのポリシーの添付」を参照してください。

資格証明およびキーストアの管理のためのREST API

資格証明およびキーストアを管理するREST APIは、ドメインまたはWebサービスの資格証明ストア、キーストアおよびトラスト・ストアを作成、構成するためのエンドポイントを提供します。詳細は、『Oracle Web Services Managerでの資格証明およびキーストアの管理のためのREST API』を参照してください。

トークン属性ルール

リリース11.1.1.6.0で導入されたトークン属性ルールによる信頼できるSTS (Secure Token Service)サーバーおよび信頼できるSAMLクライアントへの追加のセキュリティ制約の適用に加えて、Oracle WSMでは、信頼できるJWTクライアントのトークン属性ルールも定義できます。また、新しいトークン属性マッピング・ルールにより、信頼できるユーザーを認証するために、名前ID属性がサブジェクト名IDのローカル・ユーザー属性をローカル・ユーザーの属性にマップできます。

トークン属性ルールは、Fusion Middleware Controlにより、またはWLSTコマンドを使用して適用できます。詳細は、「信頼できる発行者のトークン属性ルールの構成」を参照してください。

識別名(DN)リストを管理するためのWLSTコマンド

Oracle WSMでは、WLSTコマンドでDNリストを管理する機能が追加されました。3つの新しいWLSTコマンドにより、信頼できる発行者構成(DNおよびトークン属性ルール)の削除による信頼の取消し、XMLへの信頼構成のエクスポート、およびXMLファイルからの信頼構成のインポートができます。これらのコマンドには、revokeWSMTokenIssuerTrust、exportWSMTokenIssuerTrustMetadataおよびimportWSMTokenIssuerTrustMetadataが含まれます。

詳細は、「WLSTを使用した信頼される発行者の定義とDNリストの管理」を参照してください。

Javaキーストア(JKS)の管理のためのWLSTコマンド

JKSの資格証明および証明書を管理および参照するためのWLSTコマンドが追加されました:

- deleteWSMKeyStoreEntry

- deleteWSMKeyStoreEntries

- exportWSMCertificate

- importWSMCertificate

- listWSMKeystoreAliases

- displayWSMCertificate

詳細は、「Javaキーストアの証明書の管理」を参照してください。

Webサービス・クライアントのアイデンティティ切替えを可能にするクライアント・ポリシー

現行リリースには、次の新しい事前定義済ポリシーが含まれています。詳細は、付録B「事前定義済ポリシー」を参照してください。

Webサービス・クライアントのアイデンティティ切替えをサポートするために、次の事前定義されたSAMLおよびJWTクライアント・ポリシーが提供されています:

- oracle/wss_saml_token_bearer_identity_switch_client_policy: このポリシーは、任意のSOAPクライアント・エンドポイントに割り当てることができます。

- oracle/http_jwt_token_identity_switch_client_policy: このポリシーは、任意のHTTPベースの、SOAPまたはRESTクライアント・エンドポイントで実行できます。

詳細は、「アイデンティティ切替えのためのWebサービス・クライアントの構成」を参照してください。

新しいWLSTコマンド

現在のリリースでは、これらのWeb Services WLSTコマンドが追加されています。これらのコマンドの詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

次のコマンドは、DNリストの管理に関連付けられています。詳細は、「WLSTを使用した信頼される発行者の定義とDNリストの管理」を参照してください。

- revokeWSMTokenIssuerTrust: すべての信頼できる発行者と関連構成(DNおよびトークン属性ルール)を削除して信頼を取り消します。「WLSTを使用した信頼できる発行者からの信頼の取消し」を参照してください。

- exportWSMTokenIssuerTrustMetadata: すべての信頼できる発行者のすべての信頼の構成(発行者、DNおよびトークン属性ルール)をXMLファイルにエクスポートします。「WLSTを使用した信頼メタデータのエクスポート」を参照してください。

- importWSMTokenIssuerTrustMetadata: すべての信頼できる発行者の信頼の構成(発行者、DNおよびトークン属性ルール)をXMLファイルからインポートします。「WLSTを使用した信頼メタデータのインポート」を参照してください。

- setWSMTokenIssuerTrustAttributeMapping: 信頼できるユーザーの認証のために、サブジェクト名IDのためのローカル・ユーザー属性の名前ID属性をローカル・ユーザー属性にマップします。「Fusion Middleware Controlを使用した信頼できる発行者のトークン属性ルールの構成」を参照してください。

JKSの資格証明および証明書を管理および参照するためのコマンドが追加されました:詳細は、「Javaキーストアの証明書の管理」を参照してください。

- deleteWSMKeyStoreEntry: キーストアから1つの証明書を削除します。

- deleteWSMKeyStoreEntries: キーストアからすべての証明書を削除します。

- exportWSMCertificate: 指定された場所に、別名によって示された、信頼できる証明書または秘密鍵に関連付けられた証明書チェーンをエクスポートします。

- importWSMCertificate: 別名によって示された、信頼できる証明書または秘密鍵に関連付けられた証明書チェーンをインポートします。

- listWSMKeystoreAliases: キーストア内のすべての別名を一覧表示します。

- displayWSMCertificate: 別名がKeyStore.TrustedCertificateEntryを指定している場合、ユーザーの証明書のコンテンツを表す文字列を表示します。別名がKeyStore.PrivateKeyEntryで指定された証明書チェーンを指している場合は、チェーン内の証明書を表示します。

WebLogic Server 11gドメイン内のOWSM構成を、前のリリース(11.1.1.1.0–11.1.1.6.0)からリリース11.1.1.9.0にアップグレードするコマンドが追加されました。詳細は、『Oracle Fusion Middlewareパッチ適用ガイド』のOracle WSM構成のアップグレードに関する項を参照してください。

- upgradeWSM: キーストアから1つの証明書を削除します。

新しい事前定義済ポリシー

現行リリースには、次の新しい事前定義済ポリシーが含まれています。詳細は、付録B「事前定義済ポリシー」を参照してください。

Webサービス・クライアントのアイデンティティ切替えをサポートするために、次の事前定義されたSAMLおよびJWTクライアント・ポリシーが提供されています:

- oracle/wss_saml_token_bearer_identity_switch_client_policy: このポリシーは、任意のSOAPクライアント・エンドポイントに割り当てることができます。

- oracle/http_jwt_token_identity_switch_client_policy: このポリシーは、任意のHTTPベースの、SOAPまたはRESTクライアント・エンドポイントで実行できます。

詳細は、「アイデンティティ切替えのためのWebサービス・クライアントの構成」を参照してください。

11gリリース1(11.1.1.7)

11gリリース1(11.1.1.7)には、次の新機能および拡張機能が含まれています。

- 新機能

- 新しいWLSTコマンド

- 新しい事前定義済ポリシー

- 新しい事前定義済アサーション・テンプレート

新機能

次の新機能と拡張機能が、Oracle Web Services Managerの現行リリースに追加されました。

- アイデンティティ伝播のためのJSON Web Token (JWT)のサポート

- WS-Trust構成のトラブルシューティングに対応する新しいセクション

- Oracle WSMコンポーネントのステータスのチェック

- トークン属性ルール

- 識別名(DN)リストを管理するためのWLSTコマンド

- リポジトリ接続を調整するためのポリシー・アクセッサ・プロパティ

- アイデンティティ・コンテキストの伝播

- パッチ・セットインストール後のOracle WSMリポジトリの自動アップグレード

- Java EE Webサービスへポリシーを添付するためのWLSTコマンド

- キーストア・サービス(KSS)の拡張機能

- サーブレット・アプリケーションのセキュリティ

- NET AND ADFS 2.0 STSとのOracle WSMの相互運用性

- フォルト・メッセージでのSOAPパーツと要素を署名および暗号化する機能

アイデンティティ伝播のためのJSON Web Token (JWT)のサポート

Oracle WSMでは、二者間でやりとりされるクレームの表現方法としてのJSON Web Token (JWT)がサポートされるようになりました。JWTは、HTTP認可ヘッダーなど、領域が制限された環境向けのコンパクトなトークン・フォーマットです。

ドキュメント全体で、JWTトークンへの参照が追加されました。次の各項で、追加情報が記載されています。

- Oracle WSMでのJSON Web Token (JWT)の使用

- サーブレット・アプリケーションへのポリシーの添付

- Oracle WSMによるアイデンティティ・コンテキストの伝播

- 「ORグループを含むポリシーの構成」

- 「署名証明書の信頼できる発行者および信頼できるDNリストの定義」、特に「WLSTを使用した信頼できる発行者の定義およびDNリストの管理」

JWTをサポートするために、次の新しいポリシーが追加されました。

- "oracle/http_jwt_token_client_policy" - HTTPヘッダーにJWTトークンを含めます。

- "oracle/http_jwt_token_service_policy" - HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証します。

- "oracle/http_jwt_token_over_ssl_client_policy" - HTTPヘッダーにJWTトークンを含め、トランスポート・プロトコルがHTTPSであることを確認します。

- "oracle/http_jwt_token_over_ssl_client_policy" - HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証し、トランスポート・プロトコルがHTTPSであることを確認します。

JWTをサポートするために、次の新しいアサーション・テンプレートが追加されました。

- "oracle/http_jwt_token_client_template" - HTTPヘッダーにJWTトークンを含めます。

- "oracle/http_jwt_token_service_template" - HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証します。

- "oracle/http_jwt_token_over_ssl_client_template" - HTTPヘッダーにJWTトークンを含め、トランスポート・プロトコルがHTTPSであることを確認します。

- "oracle/http_jwt_token_over_ssl_service_template" - HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証し、トランスポート・プロトコルがHTTPSであることを確認します。

JWTトークンのサポートを組み込むために、次のWLSTコマンドが更新されました。

- displayWSMTokenIssuerTrust

- setWSMTokenIssuerTrust

- deleteWSMTokenIssuerTrust

これらのコマンドの使用の詳細は、「WLSTを使用した信頼できる発行者の定義およびDNリストの管理」を参照してください。

WS-Trust構成のトラブルシューティングに対応する新しいセクション

WS-Trust構成のトラブルシューティングに対応するための新しいセクションが追加されました。詳細は、「WS-Trustユースケースでの一般的なOracle WSM例外の診断」を参照してください。

Oracle WSMコンポーネントのステータスのチェック

Oracle WSMには、ドメインの構成をチェックできるcheckWSMStatus WLSTコマンドが追加されました。checkWSMStatusコマンドは、ポリシー・マネージャ(wsm-pm)、エージェント(agent)および資格証明ストアとキーストア構成(credstore)のステータスを戻します。コンポーネントのステータスは、まとめて確認することも、個別に確認することもできます。

詳細は、「WLSTを使用したドメイン構成の問題の診断」を参照してください。

トークン属性ルール

特定の信頼できるユーザーで、どのユーザーおよびユーザー属性を許容したり処理するかを制御したいという要求が増え続けています。Oracle WSMでは、信頼できるSTS (Secure Token Service)サーバーおよび信頼できるSAMLクライアントの追加のセキュリティ制約を適用して、トークン属性ルールを定義できます。トークン属性ルールは、Fusion Middleware Controlにより、またはWLSTコマンドを使用して適用できます。

詳細は、「信頼できる発行者のトークン属性ルールの構成」を参照してください。

識別名(DN)リストを管理するためのWLSTコマンド

Oracle WSMでは、WLSTコマンドでDNリストを管理する機能が追加されました。発行者とそのDNリストを構成する、発行者とDNリストを表示する、および発行者とそのDNリストを削除するための新しいWLSTコマンドがあります。これらのコマンドには、deleteWSMTokenIssuerTrust、deleteWSMTokenIssuerTrustAttributeRule、setWSMTokenIssuerTrust、setWSMTokenIssuerTrustおよびsetWSMTokenIssuerTrustが含まれます。

詳細は、「WLSTを使用した信頼される発行者の定義とDNリストの管理」を参照してください。

リポジトリ接続を調整するためのポリシー・アクセッサ・プロパティ

エージェントとポリシー・マネージャの間の接続を構成するための新しいプロパティがポリシー・アクセッサに追加されました。これらのプロパティを使用して構成できるのは、実行時のポリシー・マネージャへの再接続試行の頻度、エージェントがポリシー・マネージャとの通信を試行する(リポジトリにアクセスする)回数と再試行の間隔、すでにキャッシュされたドキュメントをリフレッシュするためにエージェントがポリシー・マネージャへの接続を試行する頻度などです。

詳細は、「WSMリポジトリの接続の調整」を参照してください。

アイデンティティ・コンテキストの伝播

アイデンティティ・コンテキストにより、システム内のアプリケーションは、セキュリティ・ポリシー内にあるアイデンティティ関連のリスクを管理するために、共有アイデンティティ・コンテキストを把握できます。Oracle WSMは、Webサービス・クライアントからWebサービスへアイデンティティ・コンテキストを伝播してから、それを認証および認可の目的で他のコンポーネントで利用できるようにします(公開します)。

詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

パッチ・セットインストール後のOracle WSMリポジトリの自動アップグレード

Fusion Middlewareパッチ・セットをインストールした後、サーバーの起動プロセスの一環として、最新の事前定義済ポリシーおよびアサーション・テンプレートでリポジトリが自動的に更新されます。upgradeWSMPolicyRepositoryコマンドを実行する必要はなくなりました。

詳細は、「リポジトリ内のOracle WSMポリシーのアップグレード」を参照してください。

Java EE Webサービスへポリシーを添付するためのWLSTコマンド

Oracle WSMで、WLSTコマンドを使用してJava EE Webサービスに対するポリシーの添付および解除操作を実行できるようになりました。次の各項を参照してください。

- attachWebServicePolicy、attachWebServicePolicies、detachWebServicePolicyおよびdetachWebServicePoliciesコマンドの詳細は、「WLSTを使用したWebサービスへのポリシーの添付」を参照してください。

- attachWebServiceClientPolicy、attachWebServiceClientPolicies、detachWebServiceClientPolicyおよびdetachWebServiceClientPoliciesコマンドの詳細は、「WLSTを使用したWebサービスへのポリシーの添付」を参照してください。

キーストア・サービス(KSS)の拡張機能

Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのキーストローク・サービスを使用したキーと証明書の管理に関する項で説明するように、Oracle Platform Security Services(OPSS)キーストア・サービスでは、セキュリティの管理のためにキーと証明書を管理するための代替のメカニズムが提供されています。

メッセージ保護のためにOPSSキーストローク・サービスを構成する方法の詳細は、Webサービスのためのセキュリティおよび管理者ガイドの第10章「ポリシーの環境設定」を参照してください。

サーブレット・アプリケーションのセキュリティ

RESTfulサーブレットとして公開されているADFビジネス・コンポーネントなどのサーブレット・アプリケーションを保護するために、Oracle WSMの事前定義済セキュリティ・ポリシーのサブセットを添付できます。

詳細は、「サーブレット・アプリケーションへのポリシーの添付」を参照してください。

NET AND ADFS 2.0 STSとのOracle WSMの相互運用性

Oracle Web Services Manager相互運用性ガイドの「Microsoft WCF/.NET 3.5のセキュリティ環境との相互運用性」に、Microsoft Active Directory Federation Services (ADFS) 2.0でWCF/.NET 3.5を保護するための方法が提供されるようになりました。

フォルト・メッセージでのSOAPパーツと要素を署名および暗号化する機能

Oracle WSMは、メッセージ保護ポリシーのフォルト・メッセージ内で、本文パーツやヘッダー要素に対する署名および暗号化をサポートするようになりました。デフォルトで、フォルト保護は無効になっています。メッセージ保護ポリシーの「メッセージ・セキュリティ」セクションで、この設定を構成できます。詳細は、「リクエスト、レスポンスおよびフォルト・メッセージへの署名と暗号化の設定」を参照してください。

新しいWLSTコマンド

現在のリリースでは、これらのWeb Services WLSTコマンドが追加されています。これらのコマンドの詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

次のコマンドは、DNリストの管理に関連付けられています。詳細は、「WLSTを使用した信頼される発行者の定義とDNリストの管理」を参照してください。

- deleteWSMTokenIssuerTrust: 信頼される発行者(DNリストを含む)を削除します。「WLSTを使用した発行者およびそのDNリストの削除」を参照してください。

- deleteWSMTokenIssuerTrustAttributeRule: DNリストに関連付けられているトークン属性ルールを削除します。「WLSTを使用したトークン属性ルールの削除」を参照してください。

- displayWSMTokenIssuerTrust: 指定された発行者に関連付けられているDNリストの名前を表示します。「WLSTを使用した発行者およびDNリストの表示」を参照してください。

- setWSMTokenIssuerTrust: 信頼されるDNリストを持つSAML発行者を指定します。「WLSTを使用した発行者およびそのDNリストの構成」を参照してください。

- setWSMTokenIssuerTrustAttributeFilter: トークン署名証明書のDNと信頼されるユーザーのリストを指定します。「Fusion Middleware Controlを使用した信頼できる発行者のトークン属性ルールの構成」を参照してください。

次のコマンドは、Oracle WSMコンポーネントのステータスをチェックします。詳細は、「WLSTを使用したドメイン構成の問題の診断」を参照してください。

- checkWSMStatus: 製品が適切に機能するために必要なWSMコンポーネントのステータスをチェックします。詳細は、「WLSTを使用したドメイン構成に関する問題の診断」を参照してください。

新しい事前定義済ポリシー

現行リリースには、次の新しい事前定義済ポリシーが含まれています。詳細は、付録B「事前定義済ポリシー」を参照してください。

サーブレット・アプリケーションのセキュリティをサポートするために、次の事前定義済ポリシーが提供されます。

- oracle/http_oam_token_service_policy: OAMエージェントがユーザーを認証し、アイデンティティを確立したことを検証します。

- oracle/http_basic_auth_over_ssl_client_policy: アウトバウンド・クライアント・リクエストのHTTPヘッダーに資格証明を含めます。

- oracle/http_basic_auth_over_ssl_service_policy: HTTPヘッダーの資格証明を使用して、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。

- oracle/http_saml20_token_bearer_client_policy: HTTPヘッダーにSAML 2.0トークンを含めます。

- oracle/http_saml20_token_bearer_service_policy: HTTPヘッダーに、確認方法BearerとともにSAML 2.0トークンを含めます。

- oracle/http_saml20_token_bearer_over_ssl_client_policy: HTTPヘッダーにSAML 2.0トークンが含まれます。

- oracle/http_saml20_token_bearer_over_ssl_service_policy: HTTPヘッダーに、確認方法BearerとともにSAML 2.0トークンが含まれます。

- oracle/multi_token_rest_service_policy: クライアントにより送信されたトークンに基づいて認証ポリシーを強制します。

- oracle/multi_token_over_ssl_rest_service_policy: クライアントにより送信されたトークンに基づいて認証ポリシーを強制します。

SAML token bearer認証をサポートするために、次の事前定義済ポリシーが提供されます。

- oracle/wss_saml_token_bearer_client_policy: アウトバウンドSOAPリクエスト・メッセージにSAMLトークンを含めます。

- oracle/wss_saml_bearer_or_username_token_service_policy: クライアントがSAMLまたはユーザー名トークンのいずれを使用するかに基づいて、認証ポリシーを強制します。

新しい事前定義済アサーション・テンプレート

現行リリースには、次の新しい事前定義済アサーション・テンプレートが含まれています。詳細は、付録C「事前定義済アサーション・テンプレート」を参照してください。

サーブレット・アプリケーションのセキュリティをサポートするために、次の事前定義済アサーション・テンプレートが提供されます。

- oracle/http_oam_token_service_template: OAMエージェントがユーザーを認証し、アイデンティティを確立したことを検証します。

- oracle/http_saml20_token_bearer_client_template: アウトバウンドSOAPリクエスト・メッセージにSAMLトークンを含めます。

- oracle/http_saml20_token_bearer_service_template: WS-Security SOAPヘッダー内の確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

- oracle/http_spnego_token_client_template: KerberosトークンおよびSimple and Protected GSSAPI Negotiation Mechanism (SPNEGO)プロトコルを使用して認証を提供します。

- oracle/http_spnego_token_service_template: KerberosトークンSPNEGOプロトコルを使用して認証を提供します。

SAML token bearer認証をサポートするために、次の事前定義済アサーション・テンプレートが提供されます。

- oracle/wss_saml_token_bearer_client_template: アウトバウンドSOAPリクエスト・メッセージにSAMLトークンを含めます。

- oracle/wss_saml_token_bearer_service_template: WS-Security SOAPヘッダー内の確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

11gリリース1(11.1.1.6)

11gリリース1(11.1.1.6)には、次の新機能および拡張機能が含まれています。

グローバル・ポリシー添付の拡張機能

グローバル・ポリシー添付機能は、次のように拡張されました。

- クライアントおよびサービスに対する、パーティション、サービスまたは参照で、およびポート・レベルとコンポーネント・レベルでのグローバルなポリシーの添付のサポート。詳細は、「サブジェクト・タイプおよびリソース・スコープ」を参照してください。

- リポジトリ内でユーザーがすべてのポリシー・セット・ドキュメントを削除できるようにする、新しいWLSTコマンド(deleteAllPolicySets)のサポート。詳細は、「ポリシー・セットの削除」を参照してください。

- グローバルなポリシー添付の構成オーバーライドのサポート詳細は、「グローバルにアタッチされたポリシーの構成プロパティのオーバーライド」を参照してください。

- 管理者が使用するポリシー添付に関するプリファレンスを示すことができる、ポリシー添付の優先順位を指定するための機能。詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

- Fusion Middleware Controlを使用した、エンドポイント構成に対する可視性の向上。これには、エンドポイントのセキュアなステータス、構成のオーバーライド、およびエンドポイントに有効な構成があるかどうかを確認できる機能が含まれます。詳細は、「エンドポイントのセキュア・ステータスの決定」を参照してください。

実行時制約

Oracle WSMは、ポリシー・セットが関連しているコンテキスト(たとえば、ファイアウォールの外にある外部クライアントと内部クライアント)を決定する実行時制約を指定する機能を提供します。詳細は、「ポリシー・セットの実行時制約の指定」を参照してください。

Oracle SPARC Server T-シリーズ暗号化アクセラレーションのサポート

Oracle SPARC Server暗号化アクセラレーションを利用するためにOracle WSMを構成する機能。詳細は、「Oracle SPARC T4暗号化アクセラレーションのためのOracle WSMの構成」を参照してください。

Fusion Middleware Control内のWebLogic Java EEクライアントの拡張されたサポート

Fusion Middleware Controlを使用して、Java EEクライアントを表示および監視し、Oracle WSMポリシーを添付する機能。

- 新しいタブ「Java EE Webサービス・クライアント」が、Java EEクライアントに関する情報を表示するためにWebサービス・ホームページに追加されました。詳細は、「Java EE Webサービス・クライアントの表示」を参照してください。

- Java EEクライアントへOracle WSMポリシーを添付する機能。詳細は、「Java EE Webサービス・クライアントへのポリシーのアタッチ」を参照してください。

- Java EEアプリケーション内で、実行時クライアント・インスタンスのWebサービス統計を表示する機能。詳細は、「Java EE Webサービス・クライアントのWebサービス統計の表示」を参照してください。

Webサービスのテストの拡張機能

Oracle WSMポリシーを使用した、Webサービスのセキュリティをテストするための拡張された機能。詳細は、第12章「Webサービスのテスト」を参照してください。

Fusion Middleware Controlで有効された導出される鍵と暗号化署名コントロール

Oracle WSMは、wss11メッセージ保護ポリシーで導出されたキー設定、およびwss10とwss11メッセージ保護ポリシーで署名の暗号化設定をサポートしています。メッセージ保護ポリシーの「メッセージ・セキュリティ」設定で、Fusion Middleware Controlを使用してこれらの機能を有効化できるようになりました。これらの設定の詳細は、付録C「事前定義済アサーション・テンプレート」で説明している、メッセージ保護アサーション・テンプレートを参照してください。

JKSキーストアの変更時にサーバーの再起動が必要ありません

JKSキーストアに変更を加えた場合に、サーバーを再起動する必要がなくなりました。JKSキーストアの詳細は、「秘密鍵の生成およびJavaキーストアの作成」を参照してください。

SAMLポリシーを使用した匿名ユーザーのサポート

Oracle WSMは、SAMLポリシーを使用して匿名ユーザーの伝播をサポートしています。詳細は、「SAMLポリシーによる匿名ユーザーの使用」を参照してください。

データベースのサポート

Oracle WSMは、MySQLとOracle Edition Based Redefinitions (EBR)で認定されています。

Webサービスのバージョニング

Oracle WSMは、Webサービスの複数のバージョン(ネームスペース)をサポートしています。WLST入力と出力およびFusion Middleware Controlでは、サービス名を含むネームスペースが必要となりました。たとえば、{http://mynamespace/}myServiceのようになります。詳細は、次の各項を参照してください。

- WebLogic Scripting Toolコマンド・リファレンスの「WebサービスのカスタムWLSTコマンド」のサービス名の指定に関する項

- WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項のlistWebServices

- 「Webサービスのネームスペースの決定」

SAML発行者の変更

SAMLログイン・モジュールでSAML発行者を定義する必要がなくなりました。このリリースでは、「プラットフォーム・ポリシー構成」ページを使用してSAML発行者を定義する場合、SAMLログイン・モジュールで追加されたすべての発行者は無視されます。また、プラットフォーム・ポリシー構成を使用してSAML発行者が追加される場合、サーバーを再起動する必要はありません。詳細は、「署名証明書の信頼できる発行者および信頼できるDNリストの定義」を参照してください。

追加のORグループがwss11_saml_or_username_token_with_message_protection_service_policyに追加されました

oracle/wss11_saml_or_username_token_with_message_protection_service_policyポリシーには次の5つのアサーションが含まれます。

- wss11_saml_token_with_message_protection

- wss11_username_token_with_message_protection

- wss_saml_token_bearer_over_ssl

- wss_username_token_over_ssl

- wss_http_token_over_ssl

詳細は、「ORグループを含むポリシーの構成」を参照してください。

11gリリース1(11.1.1.5)

11gリリース1(11.1.1.5)には、次の更新および拡張機能が含まれています。

- 非同期Webサービス・キュー注釈に、2つの新しい属性である@AsyncWebServiceQueueと@AsyncWebServiceResponseQueueが追加されました。次にリストする新しい属性を使用すると、メッセージドリブンBean(MDB)の最初のサイズと最大サイズをそれぞれ構成できます。

- messageProcessorInitialPoolSize

- messageProcessorMaxPoolSize

詳細は、Oracle Infrastructure Webサービス開発者ガイドの注釈リファレンスに関する項にある次のトピックを参照してください。

- @AsyncWebServiceQueue注釈

- @AsyncWebServiceResponseQueue注釈

- WLSTを使用したOracle WSMおよびポリシー添付問題に関する一般的な問題の診断に関する追加情報を含めるための強化された診断およびトラブルシューティングのドキュメント。詳細は、「問題の診断」を参照してください。

- 強化されたメッセージ保護キーストア構成ドキュメント。詳細は、次の各項を参照してください。

- 「鍵と証明書について」

- 「メッセージ保護に関するキーストアの構成」

- 資格証明ストアの構成

- 構成オーバーライドを説明する再編成されたドキュメント。詳細は、次の各項を参照してください。

- オーバーライド可能なWebサービス・ポリシーの添付

- 「オーバーライド可能なクライアント・ポリシーの添付」、特に新しい項である「WLSTを使用したオーバーライド可能なクライアント・ポリシーの添付」。

- Policy Managerにアクセスするための適切な権限があることを確認するために、デフォルトユーザー・グループまたはロールを変更する方法を説明する追加のドキュメント。詳細は、「ユーザーのグループまたはロールの変更」を参照してください。

11gリリース1(11.1.1.4)

11gリリース1(11.1.1.4)の新機能は次のとおりです。

グローバル・ポリシー添付

Oracle Infrastructure Webサービスでは、ポリシー・セットを作成してグローバル・スコープのサブジェクトに添付する機能を提供します。

- ポリシー・セットの詳細は、「ポリシー・セットを使用したポリシーのグローバルなアタッチ」を参照してください。

- Oracle Enterprise Manager Fusion Middleware Controlを使用したポリシー・セットの構成と管理の詳細は、「ポリシー・セットの作成および管理」を参照してください。

- WLSTを使用したポリシー・セットの構成と管理の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

- WLSTを使用したポリシー・セットのインポートとエクスポートの詳細は、「リポジトリへのドキュメントのインポートおよびエクスポート」を参照してください。

IBM WebSphereでサポートされているOracle Web Services ManagerとOracle Infrastructure Web Services

動作の違いや制限事項については、Oracle Fusion Middlewareサード・パーティ・アプリケーション・サーバー・ガイドのIBM WebSphere上でのWebサービスの管理に関する項を参照してください。

SAML 2.0のサポート

ポリシーの添付と新しい事前定義済SAML 2.0ポリシーをオーバーライドするための新しい構成コントロールがあります。

- 新しいSAML 2.0ログイン・モジュールが追加されました。「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

- 新しい事前定義済SAML 2.0ポリシーが追加されました。「事前定義済アサーション・テンプレート」を参照してください。

クライアント側のWS-Trustサポート

WS-Trust 1.3ポリシーのサポートが追加されました。WS-Trust拡張機能は、セキュリティ・トークンの発行、更新および検証を行う方法を提供しています。「WS-Trustポリシーと構成手順」を参照してください。

- 新しい自動ポリシー構成機能は、STS WSDLドキュメントを解析することで、STS構成ポリシーに関する情報を動的に生成します。「STSの自動ポリシー構成の設定」を参照してください。

- 新しい事前定義済WS-Trustアサーションが追加されました。「事前定義済アサーション・テンプレート」を参照してください。

ハードウェア・トークンのサポート

Oracle WSMは、鍵の格納にLunaSA Hardware Security Manager(HSM)を使用する機能を提供します。「Oracle WSMでのハードウェア・セキュリティ・モジュールの使用」を参照してください。

Oracle WebLogic Webサービス監視機能の強化

Oracle Enterprise Manager Fusion Middleware Controlの「Webサービス・エンドポイント」ページでは、WebLogic JAX-WS Webサービスのポリシー違反を監視するための機能を提供します。さらに、Oracle WSMポリシー情報を表示するタブは、「OWSMポリシー」に変更されました。WebLogic JAX-RPC Webサービスでは、エンドポイント・タブは「WebLogicポリシー違反」とラベル付けされています。

Webサービスの監視の詳細は、「Webサービスのパフォーマンスの監視」を参照してください。

使用状況分析の機能強化

Oracle Enterprise Manager Fusion Middleware Controlの「使用状況分析」ページには、次が提供されています。

- サブジェクト・タイプ別にポリシー・サブジェクト・リストをフィルタリングするためのオプション。

- エンタープライズ全体またはローカル・ドメイン/セル内でのみ、利用可能なポリシー・サブジェクトを表示するためのオプション。

- 「アタッチメント数」フィールドにポリシーが添付される、ポリシー・サブジェクトの合計数。

ポリシー使用状況分析の詳細は、「ポリシーの使用状況分析」を参照してください。

Webサービスのテストの拡張機能

Oracle Enterprise Manager Fusion Middleware Controlの「Webサービスのテスト」ページで「リクエスト」と「レスポンス」のタブには、次のようにユーザビリティが強化されています。

- 「リクエスト」タブのセクションは、デフォルトで折りたたんだ表示となりました。

- 「レスポンス」タブで、テストのステータスの結果が読みやすくなり、コンポジット・テストの結果が強調表示されるようになりました。

Webサービスのテストの詳細は、「Webサービスのテスト」を参照してください。

スタンドアロンWebLogic Server上でのOracle WSMのインストール

JAX-WS WebサービスとクライアントがデプロイされているスタンドアロンのWebLogic Server環境がある場合、Oracle WSMをインストールしてWebサービスとクライアントを保護するために使用できます。詳細は、「WebLogic Server上でのOracle WSMのインストール」を参照してください。

強化されたWS-Policy 1.5およびWS-SecurityPolicy 1.2/1.3でサポートされる仕様

サポートされているバージョンは、仕様へのリンクとともに、Oracle Infrastructure Webサービス開発者ガイドのサポートされる標準に関する項に記載されています。

有効なバージョンの組合せの詳細は、「ポリシー通知」を参照してください。

カスタム・アサーションを作成するための新しい拡張性ガイド

カスタム・アサーションの開発に関連するすべての情報は、このガイドから新しいOracle Web Services Manager拡張性ガイドへと移行されました。

11gリリース1(11.1.1.3)

11gリリース1(11.1.1.3)の新機能は次のとおりです。

- Oracle Enterprise Manager Fusion Middleware Controlを使用したOracle WSMポリシーのWebLogic Java EEエンドポイントへの添付

- WebLogic Scripting Tool(WLST)を使用したADF Business ConnectおよびWebCenterアプリケーションのデプロイメント・ディスクリプタの移行

- Oracle WSMポリシーのクロスドメイン・ポリシー管理

- Oracle WSMセキュリティ・ポリシーにより保護されているWebLogic JAX-WS Webサービスのポリシーを通知

- SOA Webサービスと参照およびWebLogic JAX-WS WebサービスのWebサービス原子性トランザクション・サポート

- JDeveloperで設計時にリモート・ポリシー・ストアを構成する機能。詳細は、JDeveloperのオンライン・ヘルプのWebサービスでの開発に関する項にある異なるOracle WSMポリシー・ストアの使用に関する項目を参照してください。

- Oracle Infrastructure WebサービスおよびWebLogic Webサービスの共有ポリシー・ストア。共有ポリシー・ストアでのポリシー管理の詳細は、JDeveloperのオンライン・ヘルプのWebサービスでの開発に関する項にあるカスタムWebサービス・ポリシーの使用に関する項目を参照してください。

- Webサービス・ソースの登録および登録済WebサービスのUDDIへのパブリッシュ機能

- MDSリポジトリでのDB2データベースのサポート

- Oracle Infrastructure Webサービス・プロバイダへのポリシーの添付機能

- エンドポイントへの添付時のポリシーのアサーション詳細の表示機能

- トランスポート・セキュリティ(SSL)を定義するアサーション・テンプレートのタイムスタンプ・プロパティを含める機能

- Oracle Enterprise Manager Fusion Middleware ControlでのWebLogic Webサービス・リポジトリ取得プロパティの手動構成機能

11gリリース1(11.1.1.2)

11gリリース1(11.1.1.2)の新機能は次のとおりです。

- 非同期Webサービスの拡張管理とポリシー管理

- ポリシー選択肢(ORグループ)の定義機能

- サービス側のポリシー構成のオーバーライド

- WebLogic Scripting Tool(WLST)を使用したOracle WSMポリシーの添付

- WLSTコマンドを使用したOracle WSMリポジトリでのOracle WSMポリシーのアップグレード機能

- メッセージ保護ポリシーを実装したWebサービスのサービス・アイデンティティ証明拡張Webサービスの公開証明書は、WSDLでパブリッシュされます。そのため、Webサービス・クライアントがWebサービスの公開証明書をそのドメイン・レベルのキーストアに格納する必要はなくなりました。

- oracle.wsm.security.WSFunctionPermission権限チェック・クラスを使用した権限ベースの許可のサポート強化。このリリースでは、WSFunctionPermissionのリソース・ターゲットは、実際のWebサービス・オペレーションの名前を含めるように機能強化されました。

- WSILドキュメントを参照して、Fusion Middleware Controlを使用してUDDI v3レジストリをインポートし、適宜サービスを登録する機能

- WSI-Basic Security Profileとの互換性

- Fusion Middleware Controlの「Webサービスのテスト」ページでのRESTful Webサービスのテストのサポート

- MDSリポジトリでのMicrosoft SQL Serverのサポート

- 同じOracle WSMリポジトリを使用して複数のドメイン間でポリシーを管理する機能。前のリリースでは、リポジトリは単一ドメインでのみ使用できました。

- 新規ドキュメントOracle Fusion Middleware相互運用ガイド for Oracle Web Services Manager。これには、以前このマニュアルに記載されていた相互運用性の内容が含まれます。

- 相互運用性はOracle Web Services ManagerとAxis 1.4およびWSS4J 1.58セキュリティ環境の間で保証されています。

11g リリース1 (11.1.1)

11gリリース1 (11.1.1.9)の新機能は次のとおりです。

- Oracle Fusion Middlewareフレームワークとの統合

- Oracle Platform Security Servicesを使用したWebアプリケーションおよびWebサービスの共有認可および認証インフラストラクチャ

- 自動アイデンティティ伝播

- 統合構成、管理およびOracle Enterprise Manager Fusion Middleware Controlを使用したWebサービスの監視

- Oracle Enterprise Manager Fusion Middleware ControlによるOracleメタデータ・リポジトリの使用

- 統合されたセキュリティ管理およびWebLogic Webサービスの監視

- 統合されたポリシー添付およびWebLogic Webサービスの監視サポート

- Webサービス・セキュリティ標準の拡張サポート

- 標準(WS-Policy、WS-SecurityPolicyおよびWS-PolicyAttachment)が完全にサポートされたエンタープライズ・ポリシー・フレームワーク

- 再利用可能な実行時ポリシーおよびポリシーの一括添付を使用したサービス指向アーキテクチャ(SOA)の実行時管理のサポート

- ポリシーの使用状況および影響分析

第I部

概要

第I部の内容は次のとおりです。

- 第1章「Webサービス・セキュリティと管理の概要」

- 第2章「Webサービス・セキュリティの概念について」

- 第3章「Oracle WSMのポリシー・フレームワークについて」

- 第4章「Oracle Fusion MiddlewareにおけるOracle WSMの再設計の詳細」

1 Webサービス・セキュリティと管理の概要

世界中の企業がイントラネット環境およびインターネット環境の両方において、Webサービスを使用してサービス指向アーキテクチャ(SOA)を積極的にデプロイしています。Webサービスには従来の方法(オブジェクトの配布やカスタム・ソフトウェアなど)に比べて多くの利点がありますが、相互接続されたWebサービスのネットワークをデプロイするには、特にセキュリティと管理の面で依然として重大な課題があります。

この章では、Oracle Fusion Middleware 11gにおけるWebサービス・セキュリティと管理の概要を説明します。

- Oracle Fusion Middleware 11gにおけるWebサービスのセキュリティと管理

- Webサービスのセキュリティと管理のタスク

- Oracle Infrastructure Webサービスの保護と管理

- WebLogic Webサービスの保護と管理

- セキュリティと管理のツールへのアクセス

- WebLogic Server上でのOracle WSMのインストール

注意:
Oracle Web Services ManagerとOracle Infrastructure Webサービスは、IBM WebSphere上でもサポートされています。動作の違いや制限事項については、Oracle Fusion Middlewareサード・パーティ・アプリケーション・サーバー・ガイドのIBM WebSphere上でのWebサービスの管理に関する項を参照してください。

Oracle Fusion Middleware 11gにおけるWebサービスのセキュリティと管理

Oracle Fusion Middleware 11gリリース1(11.1.1)の主な機能を次に説明します。

- Oracle Web Services Manager(WSM)のセキュリティと管理が完全に再設計および再構築されました。旧リリースでは、Oracle WSM 10gは、スタンドアロン製品またはOracle SOA Suiteのコンポーネントとして提供されていました。11gリリースでは、Oracle WSMがOracle WebLogic Serverに統合されました。詳細は、「Oracle Fusion MiddlewareにおけるOracle WSMの再設計の詳細」を参照してください。

- Oracle Webサービスは、次のカテゴリに分類できます。

- WebLogic(Java EE)Webサービス(「WebLogic Webサービスの保護と管理」を参照)

- Oracle Infrastructure Webサービス: SOA、ADFおよびWebCenterサービス(「Oracle Infrastructure Webサービスの保護と管理」を参照)

Oracle Fusion Middleware 11gにおける2つのWebサービスのカテゴリおよびWebサービスとクライアントのタイプの詳細は、Webサービスの紹介を参照してください。

- 2つのカテゴリをサポートするため、次の表で定義されるように、Webサービスに添付できるポリシーには2つのタイプがあります。

表1-1 Webサービス・ポリシーのタイプ

ポリシーのタイプ

説明

Oracle Web Services Manager(WSM)ポリシー

Oracle WSMによって提供されるポリシー。

Oracle WSMポリシーは、SOA、ADFおよびWebCenter Webサービスに添付できます。Oracle WSMセキュリティ・ポリシーは、SOA、ADF、WebCenter Webサービスなどとインタフェース接続するために、WebLogic JAX-WS Webサービスのみに添付できます。(Oracle WSMポリシーは、JAX-RPC Webサービスに添付できません。)

Oracle WSMポリシーは、Oracle Enterprise Manager Fusion Middleware Controlから、またはカスタムのWebLogic Scripting Tool(WLST)コマンドを使用してコマンドラインから管理します。

WebLogic Webサービス・ポリシー

WebLogic Serverによって提供されるポリシー。WebLogic Webサービス・ポリシーの詳細は、Oracle WebLogic Server WebLogic Webサービスの保護を参照してください。

WebLogic Webサービス・ポリシーのサブセットはOracle WSMポリシーと相互運用します。詳細は、Oracle Web Services Managerの相互運用性ガイドの「Oracle WebLogic Server 11gのWebサービス・セキュリティ環境との相互運用性」を参照してください。

WebLogic Webサービス・ポリシーは、WebLogic管理コンソールから管理します。

- アプリケーション開発者は、Oracle JDeveloperを使用して、Oracle WSMポリシー・フレームワークのセキュリティと管理機能を活用できます。Oracle JDeveloperを使用したポリシー添付の詳細は、次の項を参照してください。

- 『Oracle SOA SuiteのOracle Fusion Middleware開発者ガイド』のバインディング・コンポーネントとサービス・コンポーネントへのポリシーの添付"に関する項。

- 『Oracle Application Development FrameworkのOracle Fusion Middleware Fusion開発者ガイド』のWebサービス・データ・コントロールの保護に関する項。

- Oracle WebLogic Server WebLogic Webサービスの保護のOracle Web Services Managerのセキュリティ・ポリシーの使用に関する項

- Oracle JDeveloperのオンライン・ヘルプのWebサービスでの開発の項にあるWebサービスでのポリシーの使用に関する項目。

- システム管理者は、次のツールを使用してWebサービスを保護および管理できます。

- Oracle Infrastructure Webサービスを保護および管理し、WebLogic(Java EE)Webサービスを保護およびテストするための、Oracle Enterprise Manager Fusion Middleware Control。

- WebLogic(Java EE)Webサービスを保護および管理するための、Oracle WebLogic管理コンソール。

- SOA、ADFおよびWebCenter Webサービスを表示、構成および保護するためのOracle WebLogic Scripting Tool(WLST)。

Webサービスのセキュリティと管理のタスク

次に、Webサービスを保護および管理するために必要なタスクの例を示します。

- Webサービスをデプロイ、構成、テストおよび監視します。

- Webサービスを有効化、公開および登録します。

- ポリシー・サブジェクトにポリシーを直接添付して、Webサービスを保護および管理し、ポリシーの使用状況を分析します。

- 同じタイプの多様なサブジェクトにグローバル・スコープでポリシーを添付して、Webサービスを保護および管理します。サポートされているスコープには、ドメイン、アプリケーション、パーティション、モジュール、SOAコンポジット、サービス、SOA参照、ポートおよびコンポーネントが含まれます。

- 新しいポリシーとアサーション・テンプレートを作成し、既存のポリシーを管理および構成します。

- アプリケーション要件を満たすようにカスタム・アサーションを作成します。

- ポリシーのライフサイクルを管理して、テスト環境から本番環境へ移行します。

- 開発環境および本番環境のファイルベース・ストアとデータベース・ストアをそれぞれで管理します。

- 他のWebサービスとの相互運用性をテストします。

- 問題を診断します。

Webサービスを開発、保護および管理する手順は、使用するWebサービスのカテゴリによって異なります。次の項では、必要な手順を説明します。

- Oracle Infrastructure Webサービスの保護と管理

- WebLogic Webサービスの保護と管理

Oracle Infrastructure Webサービスの保護と管理

Oracle Infrastructure Webサービスを保護および管理する方法:

- アプリケーション開発者は、開発時にOracle JDeveloperまたはその他のIDEを使用してポリシーを添付し、Oracle WSMポリシー・フレームワークのセキュリティと管理の機能を活用できます。Oracle JDeveloperを使用したポリシー添付の詳細は、次の項を参照してください。

- 『Oracle SOA SuiteのOracle Fusion Middleware開発者ガイド』のバインディング・コンポーネントとサービス・コンポーネントへのポリシーの添付"に関する項。

- 『Oracle Application Development FrameworkのOracle Fusion Middleware Fusion開発者ガイド』のWebサービス・データ・コントロールの保護に関する項。

- Oracle JDeveloperのオンライン・ヘルプのWebサービスでの開発の項にあるWebサービスでのポリシーの使用に関する項目。

- システム管理者は、表1-2で定義されているツールを使用してOracle Infrastructure Webサービスを保護および管理できます。

表1-2 Oracle Infrastructure Webサービスの保護および管理に使用されるツール

使用するツール

用途

Oracle Enterprise Manager Fusion Middleware Control

SOA、ADFおよびWebCenterサービスを保護および管理し、「Webサービスのセキュリティと管理のタスク」で説明されているタスクを実行します。

Oracle Enterprise Manager Fusion Middleware Controlにアクセスするには、「Oracle Enterprise Manager Fusion Middleware Controlへのアクセス」を参照してください。

Oracle Enterprise Manager Fusion Middleware Controlは、Oracle Web Services Manager (WSM)を利用して一元的にセキュリティと管理ポリシーを定義し、それらを実行時にローカルに強制します。Oracle WSMの詳細は、「Oracle WSMのポリシー・フレームワークについて」を参照してください。

Oracle Enterprise Manager Fusion Middleware Controlの詳細は、『Oracle Fusion Middleware管理者ガイド』のOracle Enterprise Manager Fusion Middleware Controlの使用に関する項を参照してください。

WebLogic Scripting Tool(WLST)

Webサービスの構成とポリシー管理タスクを行います。

WLSTにアクセスするには、「WebサービスのカスタムWLSTコマンドへのアクセス」を参照してください。

WLSTの使用に関する詳細は、『Oracle Fusion Middleware管理者ガイド』のOracle WebLogic Scripting Tool(WLST)の使用に関する項を参照してください。

SOA、ADFおよびWebCenterサービスを保護および管理する方法の詳細は、第II部「基本管理」および第III部「高度な管理」を参照してください。

WebLogic Webサービスの保護と管理

WebLogic Webサービスを保護および管理する手順は次のとおりです。

- 開発時に、アプリケーション開発者はOracle JDeveloperまたはその他のIDEを使用してセキュリティ・ポリシーを添付できます。詳細は、次の項目を参照してください。

- Oracle JDeveloperのオンライン・ヘルプのWebサービスでの開発の項にあるWebサービスでのポリシーの使用に関する項目。

- Oracle WebLogic Server WebLogic Webサービスの保護のOracle Web Services Managerのセキュリティ・ポリシーの使用に関する項

- システム管理者は、表1-3で定義されているツールを使用してWebLogic Webサービスを保護および管理できます。

表1-3 WebLogic Webサービスの保護および管理に使用されるツール

使用するツール

実行するタスク

Oracle Enterprise Manager Fusion Middleware Control

Oracle WSMを活用して次のタスクを実行します。

- 実行時のポリシーの強制。

- Oracle WSMセキュリティ・ポリシーを管理し、WebLogic Java EE Webサービス(クライアントではない)に添付します。

- Oracle WSMセキュリティ・ポリシーにより保護されているJAX-WS WebLogic Webサービスのポリシーを通知します。

- WebLogic Webサービスをテストします。

- WebLogic Webサービスの実行時のパフォーマンスを監視します。

Oracle WSMの詳細は、「Oracle WSMのポリシー・フレームワークについて」を参照してください。

Oracle Enterprise Manager Fusion Middleware Controlにアクセスするには、「Oracle Enterprise Manager Fusion Middleware Controlへのアクセス」を参照してください。

Oracle Enterprise Manager Fusion Middleware Controlの詳細は、『Oracle Fusion Middleware管理者ガイド』のOracle Enterprise Manager Fusion Middleware Controlの使用に関する項を参照してください。

注意: 11gリリースのWebLogic Webサービスでは、次の機能はサポートされていません。

- WS-SecureConversation、WS-Trust、MTOM、WS-Addressing、WS-ReliableMessagingまたはOracle WSMポリシーを使用したWS-AtomicTransactionポリシー。

- JAX-RPC WebLogic Webサービスのセキュリティおよび管理。

Oracle WebLogic Server管理コンソール

WebLogic Webサービスを保護および管理します。

Oracle WebLogic Server管理コンソールにアクセスするには、「Oracle WebLogic管理コンソールへのアクセス」を参照してください。

Oracle WebLogic Server管理コンソールを使用してWebLogic Webサービスを保護および管理する方法の詳細は、Oracle WebLogic Server管理コンソールのヘルプのWebサービスに関する項を参照してください。

第IV部「WebLogic Webサービスの管理」に、WebLogic Webサービスの保護および管理のロードマップを示します。

セキュリティと管理のツールへのアクセス

次の項では、前述の項で説明されたセキュリティと管理のツールにアクセスする方法を説明します。

Oracle Enterprise Manager Fusion Middleware Controlへのアクセス

Oracle Enterprise Manager Fusion Middleware Controlへアクセスする手順は次のとおりです。

1. Oracle WebLogic Serverインスタンスを起動します。
詳細は、Oracle WebLogic Server管理コンソールのヘルプのサーバーの起動と停止に関する項を参照してください。

2. サポートされているWebブラウザを開き、次のURLに移動します。

http://hostname:port/em

「ログイン」ページが表示されます。

3. ユーザー名およびパスワードを入力します。
管理者ユーザーのデフォルトのユーザー名はweblogicです。これは、初めてFusion Middleware Controlにログインするときに使用できるアカウントです。パスワードは、Oracle Fusion Middlewareのインストール時に入力したものです。

4. 「ログイン」をクリックします。

詳細は、『Oracle Fusion Middleware管理者ガイド』のOracle Enterprise Manager Fusion Middleware Controlの使用開始に関する項を参照してください。

Oracle WebLogic管理コンソールへのアクセス

Oracle WebLogic管理コンソールへアクセスする手順は次のとおりです。

1. Oracle WebLogic Serverを起動します。
詳細は、Oracle WebLogic Server管理コンソールのヘルプのサーバーの起動と停止に関する項を参照してください。

2. サポートされているWebブラウザを開き、次のいずれかのURLに移動します。

http://hostname:port/console
https://hostname:port/console

hostnameにはOracle WebLogic管理サーバーのDNS名またはIPアドレスを指定し、portにはOracle WebLogic管理サーバーがリクエストをリスニングしているポートのアドレスを指定します(デフォルトでは7001)。

Secure Sockets Layer(SSL)を使用してOracle WebLogic Serverを起動した場合には、httpsを使用します。

サポートされているブラウザのリストは、http://www.oracle.com/technology/software/products/ias/files/fusion_certification.htmlのOracle WebLogic Serverのシステム要件とサポートされているプラットフォームに関する項を参照してください。

「ログイン」ページが表示されます。

3. ユーザー名およびパスワードを入力します。
インストール処理中にユーザー名とパスワードを指定する場合があります。これがOracle管理サーバーの起動に使用したものと同じユーザー名とパスワードの場合もあります。または、デフォルトのグローバル・セキュリティ・ロールのいずれかが付与されているユーザー名の可能性もあります。

4. 「ログイン」をクリックします。

詳細は、Oracle WebLogic Server管理コンソールのヘルプのコンソールの起動に関する項を参照してください。

WebサービスのカスタムWLSTコマンドへのアクセス

WebサービスのWLSTコマンドにアクセスする手順

1. インストールのために、Oracleの共通ホーム・ディレクトリ、たとえば/home/Oracle/Middleware/oracle_commonに移動します。
Oracleの共通ホーム・ディレクトリとOracle Fusion Middlewareのインストールの詳細は、『Oracle Fusion Middlewareインストレーション・プランニング・ガイド』を参照してください。

2. oracle_common/common/binディレクトリにあるWLST.sh/cmdコマンドを使用して、WLSTを起動します。たとえば、次のようにします。

- /home/Oracle/Middleware/oracle_common/common/bin/wlst.sh(UNIX)

- C:\Oracle\Middleware\oracle_common\common\bin\wlst.cmd(Windows)

これらのコマンドを実行すると、WLSTがオフライン・モードで起動されます。WebサービスのWLSTコマンドを使用するには、WLSTをオンライン・モードで使用する必要があります。

3. Oracle WebLogic Serverを起動します。
詳細は、Oracle WebLogic Server管理コンソールのヘルプのサーバーの起動と停止に関する項を参照してください。

4. connect()コマンドを使用して、実行中のWebLogic Serverインスタンスに接続します。たとえば、次のコマンドは、ユーザー名/パスワードの資格証明weblogic/passwordを使用して、URL myAdminServer.example.com:7001でWLSTを管理サーバーに接続します。

connect("weblogic","password","t3://myAdminServer.example.com:7001")

WLSTの使用に関する詳細は、Oracle WebLogic Scripting ToolのWebLogic Scripting Toolの使用に関する項を参照してください。

WebサービスのWLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

WebLogic Server上でのOracle WSMのインストール

Oracle WSMは、Oracle Fusion Middleware SOA SuiteまたはOracle Application Development Runtimeのインストール時に、デフォルトでインストールされます。ただし、JAX-WS WebサービスとクライアントがデプロイされているスタンドアロンのWebLogic Server環境がある場合、Oracle WSMをインストールしてWebサービスとクライアントを保護するために使用できます。

注意:
Oracle WSMは、SOA Suiteを通じてのみライセンス付与できます。スタンドアロン・ライセンスは利用できません。ベースのWeblogic ServerでOracle WSMを使用してWebサービス・クライアントとサービスを保護するには、Weblogic Serverライセンスに追加してSOA Suiteライセンスを取得する必要があります。

WebLogic ServerとともにOracle WSMを使用するには、Java Required Files (JRF)とOracle Enterprise Manager Fusion Middleware Controlが必要です。JRFは、Oracleビジネス・アプリケーションやアプリケーション・フレームワークに一般的な機能を提供する、Oracle WSMなどのコンポーネントで構成されています。Oracle Enterprise Manager Fusion Middleware Controlは、WebLogic Webサービスを保護および管理するために使用されます。

JRFとFusion Middleware Controlは両方とも、WebLogic Serverインストールに含まれていません。次の手順では、WebLogic ServerとともにOracle WSMをインストールおよび構成するために必要な手順について説明します。

1. 『Oracle Fusion Middlewareインストレーション・プランニング・ガイド』で説明されるように、概念と要件を確認してインストールの準備を行います。

2. 次のOracle Fusion Middlewareソフトウェア・コンポーネントをダウンロードします。

- Oracle WebLogic Server

- Oracle Application Development Runtime

- Oracle Fusion Middlewareリポジトリ作成ユーティリティ

ダウンロード・サイトは、『Oracle Fusion Middlewareインストレーション・プランニング・ガイド』のOracle Fusion Middlewareソフトウェアの取得に関する項を参照してください。

3. データベース内にMDSスキーマを作成します。
Oracle Application Developerには、Oracle WSM Policy ManagerとOracle WSM-PM Extensionが含まれています。これらのコンポーネントでは、インストールの前に、データベースにMDSスキーマが存在している必要があります。データベースにMDSスキーマを作成するには、リポジトリ作成ユーティリティ(RCU)を実行する必要があります。手順については、『Oracle Fusion Middleware Repository Creation Utilityユーザーズ・ガイド』のスキーマの作成に関する説明を参照してください。

注意:
「コンポーネントの選択」画面で、「AS共通スキーマ」の下の「Metadata Services」を必ず選択します。

4. WebLogic Serverをインストールします。詳細な手順は、Oracle WebLogic Serverインストレーション・ガイドを参照してください。
Application Developerのインストール中に提供する必要があるため、Middlewareホームのディレクトリを指定する場所を必ず書き留めてください。

5. Application Developerをインストールします。詳細な手順は、『Oracle Fusion Middleware Application Developerインストレーション・ガイド』のインストール手順に関する項を参照してください。

注意:
「インストール場所の指定」画面で、WebLogic Serverのインストール中に提供したミドルウェア・ホームの場所を指定します。

6. 構成ウィザードを使用して、Oracle Enterprise Manager、Oracle WSMおよびJRFを含むドメインを作成します。詳細は、『Oracle Fusion Middleware Application Developerインストレーション・ガイド』のApplication Developerの構成に関する項を参照してください。

注意:
構成ウィザードのドメイン・ソースの選択で、「Oracle Enterprise Manager」とOracle WSM Policy Managerを選択します。Oracle JRFは、依存先として自動的に選択されます。

「WebLogic Webサービスの保護と管理」で説明されるように、WebLogic Webサービスを保護および管理できるようになりました。

2 Webサービス・セキュリティの概念について

この章では、Webサービス・セキュリティの概念を紹介します。この章の内容は次のとおりです。

- Webサービスの保護

- Oracle Fusion MiddlewareにおけるWebサービスとクライアントの保護の仕組み

一般的なWebサービス概念の概要は、Webサービスの紹介のWebサービス概要に関する項を参照してください。

Webサービスの保護

Webサービスには疎結合の接続という特性があり、オープン・アクセス(主にHTTP)が使用されるため、Webサービスによって実装されるSOAには、セキュリティに関する一連の新しい要件が追加されます。Webサービス・セキュリティには次の側面があります。

- 認証: ユーザーが表明しているとおりのユーザーであるかを検証します。ユーザーのアイデンティティは、ユーザー自身が提供する資格証明に基づいて検証されます。資格証明には次のものがあります。

1. ユーザーが所有しているもの。たとえばパスポート(実世界)やスマート・カード(ITの世界)など、信頼できる機関が発行した資格証明。

2. ユーザーが知っているもの。たとえばパスワードなどの共有の秘密鍵。

3. ユーザーの特性。たとえばバイオメトリック情報。

複数のタイプの資格情報を組み合せて使用することは、強い認証と呼ばれます。たとえば、ATMカード(ユーザーが持っているもの)とPINやパスワード(ユーザーが知っていること)を使用する場合などです。

- 認可(またはアクセス制御): 認証されたユーザーの権限に基づいて、特定のリソースへのアクセスを許可します。権限は1つ以上の属性によって定義されます。属性とはユーザーのプロパティまたは特性のことです。たとえば、「Marc」はユーザーで、「会議の発言者」は属性です。

- 機密保護、プライバシ: 情報の機密性を保ちます。Webサービス・リクエストや電子メールなどのメッセージと、送信ユーザーおよび受信ユーザーのアイデンティティに、機密を保つ方法でアクセスします。メッセージのコンテンツを暗号化し、送信ユーザーおよび受信ユーザーのアイデンティティを不明瞭化することで機密保護とプライバシが実現されます。

- 整合性、否認防止: 送信ユーザーがメッセージにデジタルで署名することによって、メッセージが転送中に変更されないようにします。デジタル署名を使用することによって、署名が検証され、否認防止が実現されます。署名内のタイムスタンプにより、このメッセージが有効期限後にリプレイされることを防ぎます。

Webサービス・セキュリティの要件には、資格証明の仲介(信頼できる環境間でのセキュリティ・トークンの交換)およびサービスの機能と制約(Webサービスがどの環境で何を実行できるかを定義する)も含まれます。

多くの場合、Oracle WSMのようなWebサービス・セキュリティ・ツールは、公開鍵インフラストラクチャ(PKI)環境に依存します。PKIでは、暗号鍵(データの暗号化または復号化に使用される数学関数)を使用します。鍵は秘密鍵、公開鍵のいずれかになります。非対称暗号モデルでは、受信ユーザーの公開鍵を使用してプレーン・テキストが暗号化され、受信ユーザーの対応する秘密鍵を使用して暗号文が復号化されます。また、メッセージに署名することによって秘密鍵がデジタル署名の作成に使用され、公開鍵が署名の検証に使用されます。公開鍵証明書(または略して証明書)は、公開鍵の整合性を保証するために使用されます。

Webサービス・セキュリティ要件は、トランスポート・レベル(Secure Socket Layer)およびXMLフレームワークに依存するアプリケーション・レベルの両方で、業界標準によってサポートされています。

Webサービスでサポートされている仕様、標準およびセキュリティ・トークンの詳細は、付録A「Webサービス・セキュリティ標準」を参照してください。

注意:
オラクル社は新しい標準、特にOASIS Web Services Secure Exchange技術委員会が主導する仕様の普及に貢献しています。

トランスポート・レベルのセキュリティ

Secure Sockets Layer(SSL)は、Transport Layer Security(TLS)とも呼ばれ、最も広く使用されているトランスポート・レイヤー・データ通信プロトコルです。TLSはInternet Engineering Task Force(IETF)で公式に標準化されたバージョンのSSLです。

- 認証(通信は信頼できる2つのパーティ間に確立されます)。

- 機密保護(交換されるデータは暗号化されます)。

- メッセージ整合性(データが破損しているかどうか確認されます)。

- クライアントおよびサーバー間での安全な鍵の交換。

SSLでは、通信チャネルは保護されますが、転送中でないデータは保護されません。このため、マルチステップ・トランザクション中の攻撃に対して環境が脆弱になります。(SSLでは、エンドツーエンドではなくポイントツーポイントのセキュリティが提供されます。)

アプリケーション・レベルのセキュリティ

アプリケーション・レベルのセキュリティはトランスポート・レベルのセキュリティを補完します。アプリケーション・レベルのセキュリティでは、XMLフレームワークに基づいて機密保護、整合性、認証性、メッセージ構造、信頼管理およびフェデレーションを定義します。

データの機密保護は、XML暗号化によって実装されます。XML暗号化では、デジタル・コンテンツが暗号化および復号化される方法、暗号化キーの情報を受信者に渡す方法、および暗号化されたデータを識別することによって復号化を容易にする方法が定義されます。

データの整合性および認証性は、XML署名によって実装されます。XML署名は、送信者のアイデンティティ(または署名エンティティ)をXMLドキュメントにバインドします。署名の検証は、非対称鍵または対称鍵を使用して行われます。

署名は、署名エンティティの否認防止も保証し、署名後にメッセージが変更されていないことを証明します。メッセージ構造およびメッセージ・セキュリティは、SOAPおよびSOAPのセキュリティ拡張機能であるWS-Securityによって実装されます。WS-Securityでは、SOAPメッセージにXML署名およびXML暗号化ヘッダーを添付する方法が定義されます。さらに、WS-Securityには、5つのセキュリティ・トークンのためのプロファイルが用意されています。5つのセキュリティ・トークンとは、ユーザー名(パスワード・ダイジェスト付き)、X.509証明書、Kerberosチケット、Security Assertion Markup Language(SAML)アサーションおよびREL(権限マークアップ)ドキュメントです。

SOAPエンベロープのボディにはビジネス・ペイロードが含まれます。ビジネス・ペイロードには、購入注文、会計文書、または単に別のWebサービスへのコールなどがあります。SAMLは非常に興味深いセキュリティ・トークンであり、認証と認可の両方がサポートされています。SAMLは、XMLドキュメントを使用してインターネット上でセキュリティ情報を共有するオープン・フレームワークです。SAMLは3つの部分に分かれています。

- SAMLアサーション: 認証および認可情報を定義する方法。

- SAMLプロトコル: 必要なアサーションを要求(SAMLリクエスト)し、取得(SAMLレスポンス)する方法。

- SAMLバインディングおよびSAMLプロファイル: SAMLアサーションを業界標準のトランスポートおよびメッセージングのフレームワークに組み込む方法。

SAMLの完全仕様は、ブラウザベースのフェデレーションにおいて使用されます。ただし、Oracle WSMのようなWebサービス・セキュリティ・システムでは、SAMLアサーションのみが使用されます。プロトコルおよびバインディングは、WS-Securityおよびトランスポート・プロトコル(HTTPなど)により提供されます。

SAMLアサーションおよびアサーション識別子への参照はWS-Securityヘッダー要素に含まれ、SOAPエンベロープのヘッダー要素に含まれることになります(WS-Security SAMLのトークン・プロファイルに記述されます)。SAMLセキュリティ・トークンは、特にアイデンティティ伝播が必須である場合に関連します。

Webサービス・セキュリティ要件

Webサービス・セキュリティ要件を次にまとめます。

1. ユーザー名、SAMLトークンまたはJWTトークンを要求してトランスポート・レベル認証を行うことによる、Webサービス・コンシューマとWebサービス・プロバイダの間の通信チャネルを保護するためのトランスポート・レベルのセキュリティ。

2. ユーザー名またはSAMLトークンを要求してメッセージ・レベル認証を行うことによるトランスポート・レベルのセキュリティ。

3. メッセージ部分をデジタルに暗号化することにより機密保護を確保するメッセージ・レベルのセキュリティ、デジタル署名を使用した整合性、およびユーザー名、X.509、またはSAMLトークンを必要とする認証。

Oracle Web Services Manager(WSM)は、異機種間環境でWebサービス・セキュリティを定義、実装するために設計され、単一トランザクションを完了するために使用される複数のWebサービスにわたる認証、認可、メッセージの暗号化および復号化、署名の生成および検証、およびアイデンティティ伝播が含まれます。

Oracle Fusion MiddlewareにおけるWebサービスとクライアントの保護の仕組み

図2-1に、Webサービスとそのクライアント間の一般的なやり取りをいくつか説明するOracle Fusion Middlewareアプリケーションを示します。プロセスの各ステップでセキュリティがどのように管理されるかが、次の図で説明されています。

Oracle WSM Policy Manager(図2-1ではOWSMと表示)は、Oracle Fusion Middleware WebサービスおよびSOAアプリケーションのセキュリティの根幹です。Oracle WSM Policy Managerによるポリシー・フレームワークの管理方法の詳細は、第3章「Oracle WSMのポリシー・フレームワークについて」を参照してください。

注意:
Webサービスのセキュリティを確認するために、Policy ManagerはWebサービスを開始する前に実行されている必要があります。Policy Managerが別個のサーバー(Webサービスを実行しているサーバー以外)にデプロイされている場合、他のサーバーを起動する前にそのサーバーが稼働していることを確認します。

図2-1 Oracle Fusion Middlewareアプリケーションの例

前述の図で示すように、Webサービスに添付できるポリシーには、Oracle WSMポリシーとWebLogic Serverポリシーの2種類があります。詳細は、表1-1「Webサービス・ポリシーのタイプ」を参照してください。

次に、前述の図に出現したWebサービスとクライアントのやり取り、およびプロセスの各ステップでセキュリティがどのように管理されるかをより詳細に説明します。図中での説明のとおり、セキュリティはOracle WSMポリシーとWebLogic Webサービス・ポリシーの両方を使用して管理されます。

1. 設計時に、Oracle JDeveloperなど好みのIDEを使用して、プログラムによってアプリケーションにOracle WSMポリシーおよびWebLogic Webサービス・ポリシーを添付します。
また、デプロイ時に、SOAコンポジット、ADFおよびWebCenterアプリケーションにはOracle Enterprise Manager Fusion Middleware Controlを使用し、WebLogic Webサービス(Java EE)にはWebLogic Server管理コンソール(図には示されていません)を使用して、ポリシーを添付します。

注意: 設計時にWebLogic Webサービスに添付されたポリシーは、デプロイ時に解除できません。新しいポリシーの添付のみ実行できます。

2. ユーザーがADF Webアプリケーションにログインします。
ユーザーは企業Aの内部または外部に存在します。

3. ADF Webアプリケーションは、Webサービス・データ・コントロールを使用して、WebLogic Webサービス、SOAコンポジット・アプリケーションまたはADF Business Componentsなどのサービスにアクセスします。
Webサービスのクライアント側では、Oracle WSMが、サービスへのSOAPメッセージ・リクエストをインターセプトし、添付されたポリシーの必要に応じて関連するトークンを挿入し、署名し、メッセージを暗号化します。

Webサービス側では、Oracle WSMが、サービスへのSOAPメッセージ・リクエストをインターセプトし、添付されたポリシーの必要に応じてトークンを抽出し、クライアントの資格証明をアイデンティティ管理インフラストラクチャ(ファイル、LDAP準拠のディレクトリまたはOracle Access Managerなど)に対して検証します。

4. SOAサービス・コンポーネントとのやり取り(図に示されています)には次のものが含まれます。

1. SOAサービス・コンポーネントが、データベース内の表への問合せまたは更新を行うためにADFビジネス・コンポーネントにアクセスします。

2. WebCenterクライアントが、顧客リクエストを処理するためにSOAサービス・コンポーネントにアクセスします。

3. SOAサービス・コンポーネントが、特定のタスクを実行するために、企業Aの内部にあるWebサービスにアクセスします。

4. SOAサービス・コンポーネントが、特定のタスクを実行するために、外部プロバイダ(企業B)経由でWebサービスにアクセスします。WSDLドキュメントを識別するURLを把握しているかぎり、Webサービスにアクセスできます。

Webサービスのクライアント側では再度、Oracle WSMが、サービスへのSOAPメッセージ・リクエストをインターセプトし、添付されたポリシーの必要に応じて関連するトークンを挿入し、署名し、メッセージを暗号化します。

Webサービス側では、Oracle WSMが、サービスへのSOAPメッセージ・リクエストをインターセプトし、添付されたポリシーの必要に応じてトークンを抽出し、クライアントの資格証明をアイデンティティ管理インフラストラクチャ(ファイル、LDAP準拠のディレクトリまたはOracle Access Managerなど)に対して検証します。

5. クライアントは、WebLogic Java EE Webサービスにアクセスします。
この場合は、より大きなコンポジット・アプリケーションのコンポーネントがWebLogic Webサービスとやり取りを行います。WebLogic JAX-WS Webサービス・クライアントを保護するには、Oracle WSMポリシーが使用されます。WebLogic JAX-RPCサービス・クライアントを保護するには、WebLogic Webサービスポリシーが使用されます。

3 Oracle WSMのポリシー・フレームワークについて

この章の内容は次のとおりです。

- Oracle WSMのポリシー・フレームワークの概要

- ポリシーについて

- ポリシー・アサーションを使用したポリシーの作成

- サブジェクトへのポリシーの添付

- ポリシー・セットを使用したポリシーのグローバルなアタッチ

- ポリシー実行の仕組み

- Oracle WSMの事前定義済ポリシーとアサーション・テンプレート

- 複数のポリシー選択肢の定義(ORグループ)

- セキュリティ・ポリシー構成のオーバーライド

- ポリシーの推奨ネーミング規則

Oracle WSMのポリシー・フレームワークの概要

Oracle Web Services Manager(WSM)には、組織全体で一貫してWebサービスを管理および保護するためのポリシー・フレームワークが備わっています。Oracle WSMは、開発者が設計時に使用することも、システム管理者が本番環境で使用することも可能です。

ポリシー・フレームワークは、WS-Policy標準を使用して作成されています。Oracle WSMのポリシー強制ポイント(PEP)は、次の図のように、認証および権限ベースの認可にOracle Platform Security Service(OPSS)とOracle WebLogic Server認証プロバイダを活用します。

図3-1 OPSSおよびOracle WebLogic Serverセキュリティを活用するOracle WSMのポリシー・フレームワーク

開発者は、Oracle JDeveloperからOracle WSMのポリシー・フレームワークを使用できます。詳細は、Oracle JDeveloperのオンライン・ヘルプにあるWebサービスでの開発に関する項を参照してください。

システム管理者は、Oracle Enterprise Manager Fusion Middleware Controlを使用して、Oracle WSMで次のことを実行できます。

- Oracle WSM Policy Managerを使用して、ポリシーを一元的に定義。

- Oracle WSMのセキュリティおよび管理ポリシーを実行時にローカルで実行。

管理者は、Oracle Enterprise Manager Fusion Middleware ControlからOracle WSMのすべての機能にアクセスできます。セキュリティ・タスクと管理タスクの詳細は、第II部「基本管理」および第III部「高度な管理」を参照してください。

次に、Oracle WSMを使用して実行できる特定タスクの例を示します。

- WS-Securityの処理(暗号化、復号化、署名、署名検証など)

- LDAPディレクトリに対する認証および認可ポリシーの定義。

- 単一のトランザクションで使用される複数のWebサービス間でIDを伝播するための標準セキュリティ・トークン(SAMLトークンやJWTトークンなど)の生成。

- 様々なフォルダにポリシーを作成することによる、異なるネームスペースへのポリシーのセグメント化。

- ログ・ファイルの調査。

図3-2に、Oracle WSMアーキテクチャの主なコンポーネントを示します。

図3-2 Oracle WSMアーキテクチャのコンポーネント

表3-1に、前述の図に示されているOracle WSMのコンポーネントを説明します。

表3-1 Oracle WSMアーキテクチャのコンポーネント

Oracle WSMのコンポーネント

説明

Oracle Enterprise Manager Fusion Middleware Control

管理者がOracle WSMの機能にアクセスして、Webサービスを管理、保護および監視できるようにします。

Oracle JDeveloper

Webサービスのエンドツーエンド開発に使用できるフル機能のSOA用Java IDEを提供します。開発者は、ビジュアルな宣言型ツールを使用してOracle SOA、ADF、WebCenterおよびWebLogic Java EE Webサービスを構築し、それらをOracle WebLogic Serveのインスタンスに自動的にデプロイして、ただちにWebサービスの動作をテストできます。また、JDeveloperを使用して、WSDL記述からWebサービスの作成を行うこともできます。JDeveloperはAntに対応しています。このツールを使用して、クライアントのアセンブルおよびサービスのアセンブルとデプロイを行うAntスクリプトを作成し、実行できます。詳細は、Oracle JDeveloperのオンライン・ヘルプを参照してください。JDeveloperのインストールの詳細は、『Oracle Fusion Middleware Oracle JDeveloperインストレーション・ガイド』を参照してください。

WebLogic Scripting Tool(WSLT)

管理者がWebサービスを表示、構成し、コマンドラインからWebサービス・ポリシーを管理できるようにします。詳細は、WebLogic Scripting Toolコマンド・リファレンスを参照してください。

Oracle WSM Policy Manager

Oracle WSMリポジトリの事前定義済ポリシーやカスタム・ポリシーなど、ポリシーの読取り/書込みを行います。

Oracle WSMエージェント

ポリシー・インターセプタ・パイプラインによるポリシーの強制を管理します。

ポリシー・インターセプタ

信頼できるメッセージング、管理、アドレッシング、セキュリティおよびMessage Transmission Optimization Mechanism(MTOM)を含むポリシーを実行します。詳細は、「ポリシー実行の仕組み」を参照してください。

Oracle WSMリポジトリ

ポリシー、ポリシー・セット、アサーション・テンプレートおよびポリシーの使用状況データなどのOracle WSMメタデータを格納します。Oracle WSMリポジトリは、データベースとして(本番用)またはファイル・システム内のファイルとして(JDeveloperでの開発用)利用できます。

Oracle Fusion Middlewareデータベース

Oracle WSMリポジトリのデータベース・サポートを提供します。

ポリシーについて

ポリシーでは、メッセージを保護する必要性と保護する方法、メッセージを確実に送信する必要性と確実に送信する方法など、Webサービスの機能および要件を記述します。

Oracle Fusion Middleware 11gリリース1 (11.1.1.9)では、表3-2で定義されているポリシー・タイプがサポートされています。ポリシーは、ポリシーの一元的な作成と管理を可能にする、Oracle WSMエンタープライズ・ポリシー・フレームワークの一部です。

表3-2 ポリシーのタイプ

ポリシー・タイプ

説明

WS信頼できるメッセージング

SOAPメッセージの配信を保証し、一連のメッセージの配信順序を維持できるワイヤレベル・プロトコルを記述するWS-ReliableMessaging標準を実装する、信頼できるメッセージング・ポリシー。

このテクノロジは、メッセージが正しい順序で送信されることを保証するために使用できます。メッセージが順序どおりに送信されなかった場合には、メッセージが正しい順序で処理されるように受信システムを構成できます。また、メッセージが最低1回、または1回のみ送信されるようにシステムを構成することも可能です。メッセージが消失した場合は、受信システムが受信を確認するまで、送信システムがメッセージを再送信します。

管理

メッセージ・ログにリクエスト、レスポンスおよびフォルト・メッセージを記録する管理ポリシー。管理ポリシーにはカスタム・ポリシーが含まれます。

WSアドレス

SOAPメッセージに、WS-Addressing仕様に準拠したWS-Addressingヘッダーが含まれることを検証するWS-Addressingポリシー。情報の伝達はネットワーク・レベルの転送に依存しておらず、トランスポート・レベルのデータはXMLメッセージに含まれます。

セキュリティ

WS-Security 1.0および1.1標準が実装されたセキュリティ・ポリシー。メッセージの保護(メッセージ整合性とメッセージ機密保護)と、Webサービスのリクエスタおよびプロバイダの認証と認可が実行されます。ユーザー名トークン、X.509証明書、Kerberosチケット、Security Assertion Markup Language (SAML)、JWTなどのトークン・プロファイルがサポートされています。Webサービス・セキュリティの概念および標準の詳細は、「Webサービス・セキュリティの概念について」および「Webサービス・セキュリティ標準」を参照してください。

Message Transmission Optimization Mechanism(MTOM)

クライアントとWebサービス間で、JPEG形式のイメージなどのバイナリ・コンテンツを受渡しできます。受渡しを可能にするために、バイナリ・コンテンツは通常、xsd:base64Binary文字列としてXMLドキュメントに挿入されます。この形式でバイナリ・コンテンツを送信すると、ネットワーク経由で送信されるメッセージのサイズが大幅に増加し、必要な処理領域と時間も増加します。

Message Transmission Optimization Mechanism(MTOM)を使用すると、バイナリ・コンテンツをMIME添付ファイルとして送信でき、ネットワークでの送信サイズが小さくなります。バイナリ・コンテンツは意味的にXMLドキュメントの一部です。MTOMポリシーを添付すると、Webサービスやクライアントに送信される前に、メッセージがMIME添付ファイルに変換されます。

ポリシー・アサーションを使用したポリシーの作成

ポリシーは、1つ以上のポリシー・アサーションで構成されています。ポリシー・アサーションは、リクエスト操作とレスポンス操作のための特定のアクションを実行するポリシーの最小単位です。ポリシーなどのアサーションは、信頼できるメッセージング、管理、WS-Addressing、セキュリティ、およびMTOMのいずれかのカテゴリに属します。

ポリシー・アサーションは、パイプライン内で連鎖しています。ポリシー内のアサーションは、リクエスト・メッセージおよびレスポンス・メッセージで実行され、どちらのタイプのメッセージでも同じアサーションのセットが実行されます。アサーションは、パイプライン内での順序で実行されます。

図3-3に、一般的な実行フローを示します。リクエスト・メッセージの場合、アサーション1が最初に実行され、アサーション2およびアサーションnがそれに続きます。レスポンス・メッセージで同じアサーションが実行されることもありますが(レスポンスが戻される場合)、レスポンス・メッセージで実行されるアクションはリクエスト・メッセージとは異なっており、アサーションが逆の順序で実行されます。図3-3のレスポンス・メッセージの場合、アサーションnが最初に実行され、アサーション2、アサーション1がそれに続きます。

図3-3 アサーションを含むポリシー

たとえば、図3-4では、ポリシーに2つのアサーションが含まれています。

1. wss11-username-with-certificates: wss11_username_token_with_message_protection_service_templateを使用して作成されており、WS-Security UsernameToken SOAPヘッダーの資格証明に基づき、ユーザーを認証します。

2. binding-authorization: binding_authorization_templateを使用して作成されており、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を行います。

図3-4 アサーションが2つ含まれるサンプルのポリシー

リクエスト・メッセージがWebサービスに送信されると、表示されている順序でアサーションが実行されます。レスポンス・メッセージがクライアントに返されると、同じアサーションが実行されますが、順序は逆です。リクエスト・メッセージに対するアサーションの動作は、レスポンス・メッセージの動作とは異なります。インスタンスによっては、レスポンスで何も発生しない場合があります。たとえば前述の例では、認可アサーションはリクエストの一部としてのみ実行されます。

サブジェクトへのポリシーの添付

ポリシー・サブジェクトは、ポリシーを添付するターゲット・リソースです。ポリシー・サブジェクトには、Webサービス・エンドポイント、Webサービス・クライアント、SOAサービス・エンドポイント、SOAクライアントおよびSOAコンポーネントが含まれます。異なるリソースのタイプ(WebサービスまたはSOAコンポーネントなど)には異なるポリシーがあります。

個々のポリシーをサブジェクトに個別に添付するか、一括添付を使用することにより、ポリシー・サブジェクトに1つ以上のポリシーを添付できます。ポリシー・セットを使用すると、サブジェクトのセットにポリシーをグローバルに添付することもできます。詳細は、「ポリシー・セットを使用したポリシーのグローバルなアタッチ」を参照してください。ポリシーをポリシー・サブジェクトに添付すると、ポリシーがすぐに有効化されます。

クライアント側のポリシーによってメッセージが変更される場合(たとえばメッセージの暗号化)、Webサービス側にも対応するポリシー(たとえばポリシーの復号化)が存在する必要があります。存在しない場合、メッセージ・リクエストが失敗します。

ポリシー・セットを使用したポリシーのグローバルなアタッチ

注意:
ポリシー・セットは、Oracle Infrastructure Webサービスでのみサポートされます。

ポリシー・セットとは、内部に複数のポリシー参照を格納し、同じタイプの一連のエンドポイントに対してグローバルにポリシーを添付する手段を提供する抽象表現の1つです。ポリシー・セットを使用してグローバルにポリシーを添付することで、開発者、アセンブラまたはデプロイヤがポリシーのアタッチを明示的に指定しなかった状況でも、管理者はすべてのサブジェクトのセキュリティを確実に確保できます。ポリシー・セットを使用してアタッチされるポリシーは、外部的にアタッチされたと見なされます。ポリシー・セットを使用してポリシーをグローバルに添付する方法の詳細は、第9章「ポリシー・セットの作成および管理」を参照してください。

ポリシー実行の仕組み

サービス・コンシューマ(クライアントとも呼ばれる)からサービス・プロバイダ(Webサービスとも呼ばれる)にリクエストが行われると、リクエストは1つ以上のポリシー・インターセプタによりインターセプトされます。これらのインターセプタにより、クライアントおよびWebサービスに添付されたポリシーが実行されます。インターセプタには、連携してポリシー・インターセプタ・チェーンを形成する5つのタイプ(信頼できるメッセージング、管理、WS-Addressing、セキュリティおよびMTOM)があります。各インターセプタは、同じタイプのポリシーを実行します。セキュリティ・インターセプタはセキュリティ・ポリシーを、MTOMインターセプタはMTOMポリシーをインターセプトして実行します。

クライアントまたはWebサービスに添付されたポリシーは、図3-5に示されるように、ポリシー・インターセプタ・パイプラインによって特定の順序で実行されます。

図3-5 クライアントおよびWebサービス間のメッセージで動作するポリシー・インターセプタ

前述の図に示されているように、クライアントまたはWebサービスによりメッセージが開始されると、クライアントの場合のリクエスト・メッセージであってもWebサービスの場合のレスポンス・メッセージであっても、ポリシーは、信頼できるメッセージング、管理、アドレッシング、セキュリティ、MTOMの順序でインターセプトされます。クライアントまたはWebサービスがメッセージを受信する、つまり、Webサービスの場合はリクエスト・メッセージ、クライアントの場合はレスポンス・メッセージを受信すると、ポリシーは、MTOM、セキュリティ、アドレッシング、管理、および信頼できるメッセージングという逆の順序で実行されます。

メッセージには、1つ以上のポリシーが添付されている場合があります。すべてのメッセージに各タイプのポリシーが含まれるわけではありません。メッセージに含まれるのが、セキュリティ・ポリシーとMTOMポリシーの場合もあります。この場合、セキュリティ・インターセプタはセキュリティ・ポリシーを実行し、MTOMインターセプタはMTOMポリシーを実行します。この例では、その他のインターセプタはメッセージの処理に関わりません。

次に、クライアントとWebサービス間のメッセージで、ポリシー・インターセプタがどのように動作するかを説明します。(図3-5を参照。)

1. クライアントがWebサービスにリクエスト・メッセージを送信します。

2. ポリシー・インターセプタが、クライアントに添付されたポリシーをインターセプトおよび実行します。クライアント・ポリシーが正常に実行されると、リクエスト・メッセージがWebサービスに送信されます。

3. リクエスト・メッセージがポリシー・インターセプタによりインターセプトされ、Webサービスに添付されたサービス・ポリシーが実行されます。

4. サービス・ポリシーが正常に実行されたら、リクエスト・メッセージがWebサービスに渡されます。Webサービスによりリクエスト・メッセージが実行され、レスポンス・メッセージが戻されます。

5. レスポンス・メッセージがポリシー・インターセプタによりインターセプトされ、Webサービスに添付されたサービス・ポリシーが実行されます。サービス・ポリシーが正常に実行されたら、レスポンス・メッセージがクライアントに送信されます。

6. レスポンス・メッセージがポリシー・インターセプタによりインターセプトされ、クライアントに添付されたクライアント・ポリシーが実行されます。

7. クライアント・ポリシーが正常に実行されたら、レスポンス・メッセージがクライアントに渡されます。

Oracle WSMの事前定義済ポリシーとアサーション・テンプレート

Oracle Fusion Middlewareをインストールすると自動的に使用可能になる、一連の事前定義済ポリシーとアサーション・テンプレートがあります。事前定義済ポリシーは、顧客のデプロイで使用される一般的なベスト・プラクティス・ポリシーのパターンに基づいています。

これらの事前定義済ポリシーは、Webサービスやクライアントにすぐに添付できます。事前定義済ポリシーを構成することも、事前定義済ポリシーのいずれかをコピーして新しいポリシーを作成することもできます。

事前定義済ポリシーは、事前定義済アサーション・テンプレートに基づくアサーションを使用して作成されています。必要に応じて、新しいアサーション・テンプレートを作成できます。

事前定義済ポリシーおよびアサーション・テンプレートの詳細は、次の項を参照してください。

- 「事前定義済ポリシー」。

- 「事前定義済アサーション・テンプレート」。

注意:
WS-SecurityPolicyは、WS-Security仕様(WS-Security1.0と1.1の両方をサポート)で説明される、複数のセキュリティ・トークンのタイプに対してWS-SecurityPolicyポリシーを設定する方法の例を説明する、シナリオを定義します。Oracle WSMの事前定義済ポリシーでは、最も一般的な顧客のユース・ケースを表すWS-SecurityPolicyシナリオのサブセットがサポートされています。

複数のポリシー選択肢の定義(ORグループ)

ポリシー強制に複数の選択肢を定義するには、サービス・ポリシー内にORグループと呼ばれるアサーションのセットを定義します。実行時には、サービス側でORグループに定義したアサーションに基づいて、強制するアサーションをクライアントが柔軟に選択できます。

たとえば、サービス側ポリシーで次のアサーションで構成されるORグループを定義するとします。

- wss11-saml-with-certificates

- wss11-username-with-certificates

クライアントは実行時に、wss11-saml-with-certificatesアサーションまたは(OR)wss11-username-with-certificatesアサーションのどちらを強制するかを選択できます。

ORグループに含めることのできるアサーションの数に制限はありません。ORグループ内のアサーションのセットで、リクエスト・メッセージが最初のアサーションに一致した場合、最初のアサーションが実行され、対応するレスポンスが送信されます。

各アサーションがそのポリシーに有効であり、ポリシーの要件を満たしている必要があります。たとえば、他にセキュリティ・アサーションを含み、セキュリティを強制するように設計されているORグループに、ログ・アサーションを含めてはいけません。この場合、セキュリティ・アサーションに不具合が生じた場合にログ・アサーションが渡され、結果としてセキュリティがなくなります。

ORグループを定義するとき、アサーションが追加される順序と構成される設定について慎重に検討します。たとえば、次の状況を想定します。

- クライアントの側でInclude Timestampを有効化した状態で、wss11_username_token_with_message_protection_client_policyポリシーを添付しました。

- サーバーの側で、2つのwss11_username_token_with_message_protection_service_templateアサーションを定義した状態でカスタムORグループ・ポリシーを添付しました。1つ目ではInclude Timestampが無効になっており、2つ目ではInclude Timestampが有効になっています。

このシナリオでは、1つ目のアサーションが実行されると、レスポンスはタイムスタンプなしで送信されます。その結果として、タイムスタンプが予期されているために、クライアントの側での処理は失敗します。このような状況は、クライアント・ポリシー・アサーションで、実行されたクライアント・ポリシー・アサーションよりも多くのセキュリティ要件が予期されるたびに発生します。

次の事前定義済サービス・ポリシーは、ORグループを含みます。

- oracle/wss_saml_or_username_token_over_ssl_service_policy: 詳細は、「oracle/wss_saml_or_username_token_over_ssl_service_policy」を参照してください。

- oracle/wss_saml_or_username_token_service_policy: 詳細は、「oracle/wss_saml_or_username_token_service_policy」を参照してください。

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy: 詳細は、「oracle/wss11_saml_or_username_token_with_message_protection_service_policy」を参照してください。

- oracle/multi_token_rest_service_policy: 詳細は、「oracle/multi_token_rest_service_policy」を参照してください。

- oracle/multi_token_over_ssl_rest_service_policy: 詳細は、「oracle/multi_token_over_ssl_rest_service_policy」を参照してください。

セキュリティ・ポリシー構成のオーバーライド

複数のWebサービスおよびWebクライアントで同じポリシーを使用することもできます。それぞれのポリシー構成要件(ユーザー名やパスワードなど)は異なる場合があります。

Oracle WSMポリシー構成のオーバーライド機能により、ユーザーは各サービスまたはクライアントに新しいポリシーを作成しなくても、サービスまたはクライアントごとに構成を更新できます。この方法により、デフォルトの構成値を定義するポリシーを作成しておき、その値を実行時の要件に基づいてカスタマイズできます。

たとえば、クライアントごとに情報が異なる場合があることから、クライアント・ポリシーを構成するときにユーザー名とパスワードを指定することもできます。

セキュリティ・ポリシー構成のオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」および「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

Oracle Web Services Manager拡張性ガイドのカスタム・アサーションの作成に関する項で説明されているように、カスタム・アサーションの作成時に構成プロパティをオーバーライド可能にするかどうかを定義できます。

ポリシーの推奨ネーミング規則

ディレクトリ、ポリシーおよびアサーション・テンプレートの名前に使用できる文字は次のとおりです。

- 大文字および小文字

- 数字

- 通貨記号($)

- アンダースコア(_)

- ハイフン(-)

- 空白

注意:
名前の先頭に、ハイフンまたは空白を使用することはできません。

一目で何をするポリシーかがわかるように、ポリシー名には可能なかぎり情報を含めることをお薦めします。たとえば、Oracle Fusion Middleware 11gリリース1 (11.1.1.9)に提供されている事前定義済セキュリティ・ポリシーの1つは、oracle/wss10_username_token_with_message_protection_service_policyという名前です。図3-6で、この事前定義済ポリシー名の各部分を確認します。

図3-6 ポリシー名の各部分の確認

事前定義済ポリシーに名前を付ける際には、次の表記規則が使用されます。ポリシー名の各部分は、アンダースコア文字(_)で区切られます。

- パスの場所 - すべてのポリシーは、ポリシーが存在するディレクトリによって識別されます。製品に提供されているすべての事前定義済ポリシーは、oracleディレクトリにあります。

- Webサービス標準 - ポリシーでWS-Security標準が使用されている場合は、wss10(WS-Security 1.0)またはwss11(WS-Security 1.1)で識別されます。ポリシーがwssに設定されている場合、ポリシーはWS-Security 1.0にも1.1にも依存していないということです。

- 認証トークン - ポリシーでユーザーを認証する場合は、トークンのタイプを指定します。事前定義済オプションは次のとおりです。

- http_token - HTTPトークン

- jwt_token – JWTトークン

- kerberos_token - Kerberosトークン

- saml_token - SAMLトークン

- saml_hok_token –キー・トークンのSAMLホルダー

- saml20_token – SAML 2.0トークン

- saml20_token_bearer –SAML Bearer 2.0トークン

- username_token - ユーザー名およびパスワードのトークン

- x509_token - X.509証明書トークン

カスタムの認証トークンを定義することもできます。

- トランスポート・セキュリティ - ポリシーで、安全なトランスポート・レイヤーでのメッセージ送信が要求されている場合は、wss_http_token_over_ssl_client_templateなどのように、トークン名にover_sslが付けられます。

- メッセージ保護 - ポリシーでメッセージの機密保護およびメッセージ整合性も提供されている場合は、図3-6にあるように、with_message_protectionというフレーズを使用してこのことが示されます。

- ポリシー・タイプ - clientまたはserviceによって、ポリシーやアサーション・テンプレートのタイプを示します。ポリシーであることを示す場合はpolicyを、アサーション・テンプレートであることを示す場合はtemplateを使用します。次に、事前定義済ポリシーとテンプレート・アサーションの区別の例を示します。
wss10_message_protection_service_policy

wss10_message_protection_service_template

どのような表記規則を適用する場合でも、ポリシー名の付け方を十分に検討することをお薦めします。これにより、エンタープライズが成長して新しいポリシーを作成する場合に、ポリシーの追跡が簡単になります。

作成するポリシーは、事前定義済ポリシーが存在するoracleディレクトリとは別のディレクトリに保存することをお薦めします。ポリシーは、ルート・レベル、oracle以外のディレクトリ、またはサブディレクトリで管理できます。たとえば、次のいずれも有効です。

- wss10_message_protection_service_policy

- oracle/hq/wss10_message_protection_service_policy

- hq/wss10_message_protection_service_policy

注意:
ポリシー名に接頭辞「oracle_」を使用することは、ベスト・プラクティスとしてお薦めしません。

4 Oracle Fusion MiddlewareにおけるOracle WSMの再設計の詳細

Oracle Fusion Middleware 11gリリース1 (11.1.1.9)では、Oracle Web Services Manager (WSM)のセキュリティと管理が完全に再設計および再構築されました。旧リリースでは、Oracle WSM 10gは、スタンドアロン製品またはOracle SOA Suiteのコンポーネントとして提供されていました。11gリリースでは、Oracle WSMは、Oracle Fusion Middleware SOA Suiteの一部としてOracle WebLogic Serverと統合されています。

この章の内容は次のとおりです。

- Oracle Fusion Middleware 11gリリース1 (11.1.1.9)におけるOracle WSM 10gの再設計の詳細

- Oracle WSM 10gおよびOracle WSM 11gのポリシーの比較

- Oracle Application Server 10g WS-SecurityとOracle WSM 11gの比較

- 相互運用性およびアップグレード

Oracle Fusion Middleware 11gリリース1 (11.1.1.9)におけるOracle WSM 10gの再設計の詳細

Oracle Fusion Middleware 11gリリース1 (11.1.1.9)では、次のようにOracle WSM 10gが再設計されています。

- Oracle WSMエージェントの機能は、Oracle WebLogic Serverに統合されました。Oracle Fusion Middleware 11gでは、Oracle WSM 10gエージェントは、セキュリティおよび管理ポリシー・インターセプタによって管理されます。

- ポリシー管理および監視は、Oracle Enterprise Manager Fusion Middleware Controlに統合されました。Oracle WSM MonitorおよびWeb Services Manager Controlの機能は、Fusion Middleware Controlに統合されました。これにより、エンタープライズを中央の1つの場所から管理できるようになりました。

- Oracle WSM Policy Managerにより、Webサービスの追加のQoS要件が強制されます。Oracle WSM Policy Managerは、セキュリティ・ポリシーだけでなく、Message Transmission Optimization Mechanism(MTOM)、信頼できるメッセージング、アドレッシングおよび管理など、その他のタイプのポリシーも管理できます。

- Oracle WSMデータベースは、ポリシー、ポリシー・セット、アサーション・テンプレートおよびポリシーの使用状況データなどのOracle WSMメタデータを格納する、Oracle WSMリポジトリにより置き換えられます。Oracle WSMリポジトリは、データベースとして(本番用)またはファイル・システム内のファイルとして(JDeveloperでの開発用)利用できます。

- Oracle WSM 10gのポリシーは、Oracle WSM 11gのポリシーに置き換えられました。10gと11gのポリシーの違いの詳細は、「Oracle WSM 10gおよびOracle WSM 11gのポリシーの比較」を参照してください。

Oracle WSM 10gの一部の機能は、Oracle Fusion Middlewareの最初のリリースではサポートされません。

- Oracle WSM 10gのコンポーネントのサブセットは、Oracle Fusion Middleware 11gのこの最初のリリースではサポートされません。
Oracle WSM 10gのポリシーとともに、アプリケーションのOracle WSM 10g Gatewayのコンポーネントを引き続き使用できます。Oracle WSM 10gの相互運用性の詳細は、Oracle Web Services Managerの相互運用性ガイドの「Oracle WSM 10gのセキュリティ環境との相互運用性」を参照してください。

- Oracle WSM 10gでは、IBM WebSphereなどのサード・パーティのアプリケーション・サーバーのポリシー強制エージェントがサポートされていました。Oracle Fusion Middleware 11gリリース1 (11.1.1.9)でサポートされるのは、Oracle WebLogic Serverのみです。サード・パーティのアプリケーション・サーバーも、このリリースより後にサポートされます。

表4-1に、10gおよび11gのコンポーネントの比較をまとめます。また、コンポーネントは図4-1および図4-2に示されています。

表4-1 Oracle WSM 10gおよびOracle Fusion Middleware 11gリリース1 (11.1.1.9)の比較

機能の説明

Oracle WSM 10gのコンポーネント

Oracle Fusion Middleware 11gリリース1 (11.1.1.9)のコンポーネント

1

ポリシー強制ポイント

Oracle WSM Server AgentおよびOracle WSM Client Agent、Oracle WSM Gateway

Oracle WSM Agentはポリシー・インターセプタを管理します。Oracle Fusion Middleware 11gリリース1 (11.1.1.9)には、Oracle WSM Gatewayに相当するコンポーネントはありません。

2

ポリシーを作成してWebサービスに添付するためのGUIコンポーネント

Web Services Manager Control

Oracle Enterprise Manager Fusion Middleware Control

3

ポリシーを管理するためのコンポーネント

Oracle WSM Policy Manager

Oracle WSM Policy Manager

4

Webサービス・データの監視に使用されるコンポーネント

Oracle WSM Monitor

Oracle Enterprise Manager Fusion Middleware ControlおよびOracle Enterprise Manager Grid Control

5

ポリシー・ストア

Oracle WSMデータベース

Oracle WSMリポジトリ

図4-1では、Oracle WSM 10gのコンポーネントを説明します。また、表4-1の番号は、この図のコンポーネントを指します。

図4-1 Oracle WSM 10gのコンポーネント

図4-2に、Oracle Fusion Middleware 11gリリース1 (11.1.1.9)のコンポーネントを示し、表4-1の番号は、この図のコンポーネントに対応します。

図4-2 Oracle Fusion Middleware 11g Webサービスのセキュリティのコンポーネント

Oracle WSM 10gおよびOracle WSM 11gのポリシーの比較

Oracle WSM 10gおよびOracle WSM 11gのどちらでも、ポリシーはセキュリティの実行に使用されます。ただし、ポリシーの構造は多少異なります。Oracle WSM 10gでは、ポリシーはリクエスト・パイプラインおよびレスポンス・パイプラインで構成されており、それぞれが1つ以上のポリシー・ステップで構成されています。

たとえば、図4-3では、リクエスト・パイプラインは、資格証明の抽出、LDAP認証およびLDAP認可というポリシー・ステップで構成されています。レスポンス・パイプラインには異なるポリシー・ステップであるXML暗号化が含まれています。リクエスト・パイプラインおよびレスポンス・パイプラインを異なるポリシー・ステップで構成できるため、リクエスト・メッセージとレスポンス・メッセージで異なる処理を実行できます。

図4-3 Oracle WSM 10gのポリシー・パイプライン

Oracle WSM 11gでは、ポリシーは1つ以上のアサーションで構成されており、リクエスト・メッセージとレスポンス・メッセージで使用されるアサーションを制御できます。たとえば、図4-4では、11gのサンプル・ポリシーには2つのアサーションが含まれています。

1. wss11-username-with-certificates

2. binding-authorization

図4-4 Oracle WSM 11gのポリシー・パイプライン

リクエスト・メッセージがWebサービスに送信されると、表示されている順序でアサーションが実行されます。レスポンス・メッセージがクライアントに返されると、同じアサーションが実行されますが、順序は逆です。リクエスト・メッセージに対するアサーションの動作は、レスポンス・メッセージの動作とは異なります。インスタンスによっては、レスポンスで何も発生しない場合があります。たとえば前述の例では、認可アサーションはリクエストの一部としてのみ実行されます。

Oracle WSM 10.1.3ポリシー・ステップをOracle WSM 11gの事前定義済ポリシーにマッピングする方法の詳細は、Oracle Fusion Middleware Oracle SOA Suite、WebCenter PortalおよびADFアップグレード・ガイド(リリース11g)のOracle Web Services Managerのポリシーの更新に関する項を参照してください。

Oracle Application Server 10g WS-SecurityとOracle WSM 11gの比較

次に、Oracle Application Server 10g WS-Securityに関するOracle WSM 11gの主な拡張内容を示します。

- 一元的なポリシー管理。Oracle WSM Policy Managerを使用して、セキュリティおよび管理ポリシーを一元的に定義できます。

- カスタム・ポリシーのサポート。事前定義済ポリシーがニーズに一致しない場合に、セキュリティおよび管理ポリシーの要件をサポートするカスタム・ポリシーを作成できます。

- ポリシーの管理および添付に使用されるツールセット。セキュリティ管理者は、Oracle Enterprise Manager Fusion Middleware Controlを使用して、Webサービスを管理および添付できます。開発者は、開発時にOracle JDeveloperまたはその他のIDEを使用してセキュリティ・ポリシーを添付できます。

- エンタープライズ・レベルで管理されるポリシー。ポリシーはアプリケーション・レベルではなく、エンタープライズ・レベルで定義されます。

相互運用性およびアップグレード

Oracle WSM 11gは、10.1.3の次のコンポーネントと相互運用できます。

- Oracle WSM: Oracle Web Services Managerの相互運用性ガイドの「Oracle WSM 10gのセキュリティ環境との相互運用性」を参照してください。

- Oracle WSM Gateway: Oracle Web Services Managerの相互運用性ガイドの「Oracle WSM 10gのセキュリティ環境との相互運用性」を参照してください。

- Application Server: 『Oracle Web Services Manager相互運用ガイド』のOracle Containers for Java EE (OC4J) 10gのセキュリティ環境との相互運用性に関する項を参照してください。

また、次のコンポーネントとも相互運用できます。

- WebLogic Webサービス: Oracle Web Services Managerの相互運用性ガイドの「Oracle WebLogic Server 11gのWebサービス・セキュリティ環境との相互運用性」を参照してください。

- Microsoft .NET: Oracle Web Services Managerの相互運用性ガイドの「Microsoft WCF/.NET 3.5のセキュリティ環境との相互運用性」を参照してください。

- Oracle Service Bus: Oracle Web Services Managerの相互運用性ガイドの「Oracle Service Bus 10gのセキュリティ環境との相互運用性」を参照してください。

- Axis 1.4およびWSS4J 1.58: Oracle Web Services Managerの相互運用性ガイドの「Axis 1.4およびWSS4J 1.58のセキュリティ環境との相互運用性」を参照してください。

次に示す10.1.3機能を、Oracle Fusion Middleware 11gリリース1 (11.1.1.9)にアップグレードできます。

- OC4J Webサービス10.1.3からWebLogic Webサービス。Oracle Fusion Middleware Java EEアップグレード・ガイド(リリース11g)のJava EEアプリケーションの更新に関する項を参照してください。

- Oracle WSM 10.1.3のポリシーからOracle WSM 11g。Oracle Fusion Middleware Oracle SOA Suite、WebCenter PortalおよびADFアップグレード・ガイド(リリース11g)のOracle Web Services Manager(WSM)のポリシーの更新に関する項を参照してください。

- Oracle Containers for Java(OC4J)10.1.3のセキュリティ環境からOWSM 11g。Oracle Fusion Middleware Oracle SOA Suite、WebCenter PortalおよびADFアップグレード・ガイド(リリース11g)のOracle Containers for Java EE (OC4J)セキュリティ環境の更新に関する項を参照してください。

第II部

基本管理

第II部の内容は次のとおりです。

- 第5章「Webサービス・アプリケーションのデプロイ」

- 第6章「Webサービスの管理」

- 第7章「Webサービス・ポリシーの管理」

- 第8章「Webサービスへのポリシーの添付」

- 第9章「ポリシー・セットの作成および管理」

- 第10章「ポリシーの環境設定」

- 第11章「ポリシーの構成」

- 第12章「Webサービスのテスト」

- 第13章「Webサービスのパフォーマンスの監視」

5 Webサービス・アプリケーションのデプロイ

この章の内容は次のとおりです。

- 概要

- Webサービス・アプリケーションのデプロイ

- Webサービス・アプリケーションのアンデプロイ

- Webサービス・アプリケーションの再デプロイ

概要

Webサービスを使用すると、異なる方法で関連付けられたアプリケーションをデプロイおよびアンデプロイできます。Webサービスに関連付けられたアプリケーションをデプロイする際には、次のガイドラインに従ってください。

- Oracle Enterprise Manager Fusion Middleware Controlを使用して、Oracle Metadata Services(MDS)を必要とする、またはOracle Application Development Framework(Oracle ADF)を利用するJava EEアプリケーションをデプロイします。

- アプリケーションがSOAコンポジットの場合は、SOAコンポジット・デプロイ・ウィザードを使用します。

- アプリケーションがWebCenterアプリケーションの場合は、Oracle Enterprise Manager Fusion Middleware Controlを使用します。

- アプリケーションがSOAコンポジットでない場合、またはMDSリポジトリやADF接続を必要としない場合は、Fusion Middleware ControlまたはOracle WebLogic Server管理コンソールを使用してアプリケーションをデプロイできます。

注意:
WebLogic Webサービスのデプロイに使用できるのは、Oracle WebLogic管理コンソールのみです。

この章では、Webサービス・アプリケーションをデプロイする基本的な手順の概要を説明します。アプリケーションのデプロイの詳細は、『Oracle Fusion Middleware管理者ガイド』のアプリケーションのデプロイに関する項を参照してください。特に、次の項に注意してください。

- Java EEアプリケーションのデプロイ、アンデプロイおよび再デプロイ

- Oracle ADFアプリケーションのデプロイ、アンデプロイおよび再デプロイ

- SOAコンポジット・アプリケーションのデプロイ、アンデプロイおよび再デプロイ

- WebCenterアプリケーションのデプロイ、アンデプロイおよび再デプロイ

Webサービス・アプリケーションのデプロイ

次に、Oracle Enterprise Manager Fusion Middleware Controlを使用してWebサービス・アプリケーションをデプロイする基本的な手順の概要を示します。

Webサービス・アプリケーションをデプロイする手順

1. ナビゲーション・ペインから、「WebLogicドメイン」を開きます。

2. Webサービスをデプロイするドメインを開き、デプロイ先のサーバーのインスタンスを選択します。

3. Fusion Middleware Controlを使用して、「WebLogicサーバー」をクリックします。

4. 「アプリケーションのデプロイ」を選択し、「デプロイ」を選択します。
図5-1に示すように、デプロイ・プロセスの最初の画面が表示されます。

図5-1 「アーカイブの選択」ページ

5. 次に示す「アーカイブまたは展開済ディレクトリ」オプションのいずれか1つをクリックします。

- アーカイブはこのWebブラウザが稼働しているマシンに存在します。

- アーカイブまたは展開済ディレクトリはEnterprise Managerが稼働しているサーバーに存在します。

6. デプロイ・プランは、特定の環境にデプロイするアプリケーションの構成に使用するXMLファイルです。デプロイするWebサービス・アプリケーションのデプロイ・プランがない場合、アプリケーションをデプロイすると作成されます。
次に示す「デプロイ・プラン」オプションのいずれか1つをクリックします。

- 新規デプロイ・プランを自動的に作成します。

- デプロイ・プランはローカル・ホストに存在します。

- デプロイ・プランはEnterprise Managerが稼働しているサーバーに存在します。

7. 「次へ」をクリックします。

8. 「ターゲットの選択」ページで、このアプリケーションをデプロイするターゲット(WebLogicサーバーまたはクラスタ)を選択し、「次へ」をクリックします。

図5-2 「ターゲットの選択」ページ

9. 「アプリケーション属性」ページで、このWebサービス・アプリケーションの属性を入力し、「次へ」をクリックします。必須属性は「アプリケーション名」のみです。
ただし、後から、アンデプロイせずにこのWebサービス・アプリケーションを再デプロイできるようにする場合は、バージョン番号も割り当てる必要があります。

コンテキスト・ルートはWebモジュールのURIです。Webサービスを含む各WebモジュールまたはEJBモジュールには、コンテキスト・ルートがあります。

図5-3 「アプリケーション属性」ページ

10. 図5-4に示すように、「デプロイ設定」ページで、このWebサービス・アプリケーションのデプロイ設定を編集します。

図5-4 「デプロイ設定」ページ

11. ローカル・システムにデプロイ・プランのコピーを保存するには、「デプロイ・プランの保存」をクリックします。

12. デプロイ・プランを編集し、可能な場合に拡張デプロイ・オプションを追加するには、「デプロイ・プランの編集」をクリックします。その場合には、図5-5に示すように、「デプロイ・プランの編集」画面が表示されます。デプロイ・プランへの変更を行ったら、「適用」をクリックして変更を有効にします。

図5-5 デプロイ・プランの編集

13. 「デプロイ設定」ページで、「デプロイ」をクリックします。成功すると、「正常にデプロイされました」画面が表示されます。

Webサービス・アプリケーションのアンデプロイ

Webサービスのアンデプロイまたは再デプロイの手順は、他のアプリケーションの場合の手順と同じです。

Webサービス・アプリケーションをアンデプロイする手順

1. ナビゲーション・ペインで、「アプリケーションのデプロイ」を開き、アンデプロイするアプリケーションを選択します。
「アプリケーションのデプロイ」が表示されます。

2. Fusion Middleware Controlを使用して、「アプリケーションのデプロイ」をクリックします。

3. 「アプリケーションのデプロイ」メニューから、「アプリケーションのデプロイ」→「アンデプロイ」を選択します。
アンデプロイの確認ページが表示されます。

4. 「アンデプロイ」をクリックします。
処理メッセージが表示されます。

5. 操作が完了したら、「閉じる」をクリックします。

Webサービス・アプリケーションの再デプロイ

Webサービス・アプリケーションを再デプロイすると、実行中のアプリケーションが自動的に停止されて再起動されます。

次のような場合にアプリケーションを再デプロイします。

- アプリケーションを変更し、その変更内容を有効にする場合。

- デプロイ・プランを変更した場合。

- 新しい場所に完全に新しいアーカイブ・ファイルを再デプロイする必要がある場合。

アプリケーションを再デプロイしたら、元のアーカイブ・ファイルまたは展開済ディレクトリを再デプロイすることも、元のアーカイブ・ファイルのかわりに新しいアーカイブ・ファイルを指定することもできます。また、アプリケーションに関連付けられているデプロイ・プランを変更することも可能です。

注意:
バージョンなしでデプロイされたアプリケーションは、再デプロイできません。バージョニングされていないアプリケーションを再デプロイするには、アプリケーションをアンデプロイしてからデプロイする必要があります。

Webサービス・アプリケーションを再デプロイする手順

新しいバージョンを使用してアプリケーションを再デプロイする必要があるということと、現在のバージョンにオプションでリタイア・ポリシーを設定できるという2点を除き、Webサービス・アプリケーションを再デプロイする手順は、最初にアプリケーションをデプロイする際に必要な手順(「Webサービス・アプリケーションのデプロイ」を参照)と同じです。図5-6に示すように、このどちらのアクションも、再デプロイ・プロセスの手順3で実行します。

図5-6 再デプロイ中におけるアプリケーション属性の設定

6 Webサービスの管理

Oracle Enterprise Manager Fusion Middleware Controlは、Oracle Fusion Middleware Webサービスの管理に使用できる主要インタフェースです。また、WebLogic Scripting Tool(WLST)コマンドを使用して、SOA、ADFおよびWebCenterサービスの一部の構成タスクを実行することもできます。この章では、Webサービスを管理するための多くのタスクを実行するFusion Middleware Controlのページへの移動方法と、基本的な管理タスクの実行方法について説明します。必要に応じて、WLSTを使用したタスクの実行方法についても説明します。この章では次の項について説明します。

- サーバーのすべての現行Webサービスの表示

- WLSTを使用したドメイン内でのWebサービスの表示

- アプリケーションの「Webサービスのサマリー」ページへの移動

- アプリケーションのWebサービスの表示

- SOAコンポジットのWebサービスと参照の表示

- Webサービス・エンドポイントの詳細の表示

- Webサービス・クライアントの表示

- WebサービスWSDLドキュメントの表示

- Webサービス・エンドポイントの構成

- Webサービスの有効化または無効化

- RESTful Webサービスの有効化または無効化

- WebサービスWSDLドキュメントの表示の有効化または無効化

- メタデータの交換の有効化または無効化

- Webサービスのテスト・エンドポイントの有効化または無効化

- リクエスト・メッセージの検証

- Webサービスの原子性トランザクションの構成

- リクエスト・メッセージのサイズの設定

- 非同期Webサービスの構成

- MTOMの有効化および無効化

- Webサービス・クライアントの構成

サーバーのすべての現行Webサービスの表示

指定されたサーバーに現在デプロイされているすべてのWebサービスを表示するには、次の手順に従います。

特定サーバーのすべての現行の現在デプロイされているWebサービスを表示するには:

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスを表示するドメインを表示します。

2. ドメインを開きます。

3. すべての現行Webサービスを表示するサーバーを選択します。

4. Fusion Middleware Controlを使用して、「WebLogicサーバー」→「Webサービス」をクリックします。図6-1に示すように、サーバー固有の「Webサービスのサマリー」ページが表示されます。
Java EE Webサービス、ADFやWebCenterなどのSOA以外のOracle Webサービス、およびSOA Webサービスのタブを表示できます。

表示されるタブは、サーバーにデプロイされるWebサービスに応じて異なります。

このページから、ポリシーの添付をクリックして1つ以上のWebサービスに1つ以上のポリシーを添付できます。このページからポリシーを添付する場合(一括添付)、添付するポリシーの検証は行われないことに注意してください。

図6-1 サーバー固有の「Webサービスのサマリー」ページ

WLSTを使用したドメイン内でのWebサービスの表示

ドメイン内のすべての現行Webサービスを表示するには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、Webサービスを表示するWebLogic Serverの実行中のインスタンスに接続します。

2. WLSTコマンドlistWebServices()を使用して、Webサービスのリストを表示します。Webサービス・アプリケーションまたはSOAコンポジットを指定しない場合、コマンドはドメイン内のサーバー・インスタンスごとに、すべてのアプリケーション内のすべてのサービスとコンポジットをリストします。

listWebServices (application,composite,[detail])

たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> listWebServices()

/jrfServer_domain/jrfServer/jaxws-sut-no-policy :
moduleName=jaxws-service, moduleType=web, serviceName={http://namespace/}TestService

/jrfServer_domain/jrfServer/jaxws-sut :
moduleName=jaxws-sut-service, moduleType=web, serviceName={http://namespace/}TestService

3. listWebServicesコマンドのdetail引数をtrueに設定して、ドメイン内のすべてのアプリケーションとコンポジットのエンドポイント(ポート)およびポリシーの詳細、エンドポイントのセキュア・ステータス、すべての構成オーバーライドと制約、およびエンドポイントに有効な構成があるかどうかを表示します。グローバル添付ポリシーまたは直接添付ポリシーの優先度を指定できるため(reference.priority構成オーバーライドを使用)、effectiveフィールドには、直接添付ポリシーがエンドポイントで有効かどうかが示されます。

注意:
エンドポイント管理を簡単にするために、エンドポイントで有効かどうかにかかわらず、すべての直接添付ポリシーが出力に表示されます。対照的に、グローバルにアタッチされたポリシーは、エンドポイントに対して有効であるもののみが表示されます。

エンドポイントは、(直接または外部に)添付されたポリシーで認証、認可またはメッセージ保護操作が強制される場合にセキュアであると判断されます。

注意:
listWebServicesコマンドの出力には、ポリシーの添付を含むSOAコンポーネントの詳細が含まれません。

たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> listWebServices(detail='true')

/jrfServer_domain/jrfServer_admin/jaxws-sut-no-policy :
moduleName=jaxws-service, moduleType=web, serviceName={http://namespace/}TestService
enableTestPage: true
enableWSDL: true

TestPort        http://host.example.com:9315/jaxws-service/TestService
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
wsat.flowOption: NEVER
wsat.version: DEFAULT
Constraint: No Constraint
(global) security : oracle/wss_saml_or_username_token_service_policy, enabled=true
/policysets/global/all-domains-default-web-service-policies : Domain("*")
reference.priority=1
Constraint: HTTPHeader('VIRTUAL_HOST_TYPE','external')
(global) security : oracle/wss10_message_protection_service_policy, enabled=true
/policysets/global/domainExternal : Domain("*")
Attached policy or policies are valid; endpoint is secure.

/jrfServer_domain/jrfServer_admin/jaxws-sut :
moduleName=jaxws-sut-service, moduleType=web, serviceName={http://namespace/}TestService
enableTestPage: true
enableWSDL: true

TestPort        http://host.example.com:9315/jaxws-sut-service/TestService
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
wsat.flowOption: NEVER
wsat.version: DEFAULT
management : oracle/log_policy, enabled=true
security : oracle/wss_username_token_service_policy , enabled=true , effective=false
Constraint: No Constraint
(global) security : oracle/wss_saml_or_username_token_service_policy, enabled=true
/policysets/global/all-domains-default-web-service-policies : Domain("*")
reference.priority=1
Constraint: HTTPHeader('VIRTUAL_HOST_TYPE','external')
(global) security : oracle/wss10_message_protection_service_policy, enabled=true
/policysets/global/domainExternal : Domain("*")
Attached policy or policies are valid; endpoint is secure.

listWebServicesコマンドの詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

アプリケーションの「Webサービスのサマリー」ページへの移動

アプリケーションのWebサービスのリストを表示できるページに移動するには、次の手順に従ってください。

アプリケーションの「Webサービスのサマリー」ページに移動する手順

1. ナビゲータ・ペインで、「アプリケーションのデプロイ」フォルダのプラス記号(+)をクリックしてドメイン内のアプリケーションを表示し、アプリケーションを選択します。
「アプリケーションのデプロイ」ホームページが表示されます。

2. Fusion Middleware Controlを使用して、「アプリケーションのデプロイ」→「Webサービス」をクリックします。
これにより、アプリケーションの「Webサービスのサマリー」ページが表示されます。図6-2は、ADFまたはWebCenterアプリケーションのWebサービスのサマリー・ページを示しています。

注意:
ページの「Webサービスの詳細」セクションで、Oracle Infrastructure Webサービス・プロバイダのエンドポイントには「エンドポイント有効」列にn/aと表示されます。

図6-3は、WebLogic Java EEアプリケーションのWebサービスのサマリー・ページを示しています。

注意:
「Java EE Webサービス・クライアント」タブは、アプリケーション内にクライアント・インスタンスがある場合にのみ表示されます。

図6-2 ADFおよびWebCenterアプリケーションのWebサービスのホームページ

図6-3 WebLogic Java EEアプリケーションのWebサービスのホームページ

アプリケーションのWebサービスの表示

アプリケーションのWebサービスを表示するには、次のセクションで説明する手順を使用します。

Fusion Middleware Controlの使用

「アプリケーションの「Webサービスのサマリー」ページへの移動」の説明に従って、Webサービスのホームページに移動します。「Webサービスのサマリー」ページから、次の内容を実行できます。

- アプリケーションのWebサービスを表示できます。

- Webサービスの構成、エンドポイント・ステータス、ポリシー障害などを表示できます。(ADFおよびWebCenterアプリケーションのみ)

- セキュリティ、信頼できるメッセージング、MTOM、管理およびサービス・フォルトなどの、Webサービス・フォルトを表示および監視できます。(ADFおよびWebCenterアプリケーションのみ)

- 認証、認可、メッセージ整合性およびメッセージ機密保護違反など、セキュリティ違反を表示および監視できます。(ADFおよびWebCenterアプリケーションのみ)

- エンドポイントの有効化や無効化、Webサービスへのポリシーの添付など、Webサービス・エンドポイントの構成が可能なページに移動できます。

WLSTの使用

アプリケーションのWebサービスを表示する手順

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、アプリケーションがデプロイされるWebLogic Serverの実行中のインスタンスに接続します。

2. WLSTコマンドlistWebServices()を使用して、アプリケーションのWebサービスのリストを表示します。アプリケーションとアプリケーションがデプロイされるサーバー・インスタンスを特定するには、完全なアプリケーション・パスを指定する必要があります。

listWebServices (application,composite,[detail]

たとえば、次のようにします。

wls:/wls-domain/serverConfig>listWebServices("wls-domain/AdminServer/jaxwsejb30ws")
/wls-domain/AdminServer/jaxwsejb30ws:
moduleName=jaxwsejb,moduleType=web,serviceName={http://namespace/}JaxwsWithHandlerChainBeanService
moduleName=jaxwsejb, moduleType=web, serviceName={http://namespace/}WsdlConcreteService
moduleName=jaxwsejb, moduleType=web, serviceName={http://namespace/}EchoEJBService
moduleName=jaxwsejb, moduleType=web, serviceName={http://namespace/}CalculatorService
moduleName=jaxwsejb, moduleType=web, serviceName={http://namespace/}DoclitWrapperWTJService

listWebServicesコマンドの詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

SOAコンポジットのWebサービスと参照の表示

SOAコンポジット・アプリケーションのWebサービス、参照およびコンポーネントを表示するには、次の手順を使用します。

1. ナビゲータで、SOAデプロイのプラス記号(+)をクリックします。

2. soa-infraを選択し、SOAパーティション(たとえば、defaultパーティション)を開き、目的のSOAコンポジット・アプリケーションを選択します。
SOAコンポジットのホームページが表示されます。

3. 選択されていない場合は、「ダッシュボード」タブを選択します。
このタブの「コンポーネント・メトリック」セクションには、コンポジット・アプリケーションで使用されているSOAコンポーネントが表示され、「サービスと参照」セクションには、図6-4に示すように、Webサービスと参照バインディングが表示されます。

図6-4 SOAコンポジット・アプリケーションの「ダッシュボード」ページ

Webサービス・エンドポイントの詳細の表示

Oracle Enterprise Manager Fusion Middleware ControlおよびWLSTを使用してWebサービス・エンドポイント(ポート)の詳細を表示するには、次の項で説明する手順を使用します。

Fusion Middleware Controlの使用

次のセクションで説明されているように、Fusion Middleware Controlでは、Webサービス・エンドポイントの詳細を表示する手順は、アプリケーション・タイプによって異なります。

SOA以外のOracle InfrastructureまたはWebLogic Webサービス・エンドポイントの詳細を表示する手順

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、「Webサービスのサマリー」ページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

3. エンドポイント名をクリックして「Webサービス・エンドポイント」ページに移動します。

4. 「Webサービス・エンドポイント」ページから、次の内容を実行できます。

- 「操作」タブをクリックすると、そのエンドポイントの操作リストを表示できます。

- エンドポイントに有効な構成があり、セキュアな場合に、「OWSMポリシー」タブをクリックして、このエンドポイントに添付されているポリシーを表示します。

- 「グラフ」タブをクリックすると、そのエンドポイントのフォルトをグラフ表示できます。(Oracle Infrastructure Webサービスのみ)

- 「構成」タブをクリックすると、そのエンドポイントの構成を表示できます。(Oracle Infrastructure Webサービスのみ)

注意:
エンドポイントのセキュリティ違反に関する詳細も表示できます。詳細は、「Webサービスのセキュリティ違反の表示」を参照してください。

Webサービス・エンドポイントの詳細を表示する別の方法として、「サーバーのすべての現行Webサービスの表示」の説明に従って、すべてのWebサービスが表示されているサーバー全体の「Webサービスのサマリー」ページに移動し、エンドポイント名をクリックして特定の「Webサービス・エンドポイント」ページに移動することもできます。

SOAコンポジット・アプリケーションのWebサービス・エンドポイント構成を表示する手順

1. 「SOAコンポジットのWebサービスと参照の表示」の説明に従って、SOAコンポジットのホームページに移動します。

2. ページのサービスと参照セクションで、必要に応じてサービスまたは参照の名前をクリックして、サービス・ホームまたは参照ホームページを表示します。

3. サービス・ホームまたは参照ホームページから、次の内容を実行できます。

- まだ選択されていない場合は「ダッシュボード」タブをクリックし、サーバーを起動してから現在までの受信メッセージとフォルトの合計数、およびメッセージ名、フォルトの時間、フォルトのタイプ(ビジネスまたはシステム)を含む最近拒否されたメッセージのグラフ表示を確認します。

- 「ポリシー」タブをクリックして、そのエンドポイントに添付されているポリシーを表示または変更します。

- フォルトと拒否されたメッセージタブをクリックして、エラー・メッセージ、フォルトの時間、関連するコンポジット・インスタンスIDなどの詳細を含む、フォルトと拒否されたメッセージのリストを表示します。

- 「プロパティ」タブをクリックして、そのエンドポイントの構成を表示および変更します。

SOAコンポジット・エンドポイントの詳細については、Oracle Fusion Middleware管理者ガイド for Oracle SOA SuiteおよびOracle Business Process Management Suiteのバインディング・コンポーネントの管理に関する項を参照してください。

WLSTの使用

Webサービス・エンドポイント(ポート)の詳細を表示する手順

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、アプリケーションがデプロイされるWebLogic Serverの実行中のインスタンスに接続します。

2. 「アプリケーションのWebサービスの表示」の説明に従って、WLSTコマンドlistWebServicesを使用して、アプリケーションのWebサービスのリストを表示します。

3. listWebServicePortsコマンドを使用して、Webサービスのエンドポイント名とエンドポイントURLを表示します。

listWebServicePorts(application,moduleOrCompName,moduleType,serviceName)

たとえば、WsdlConcreteServiceのエンドポイントを表示するには、次のようにします。

wls:/wls-domain/serverConfig> listWebServicePorts("/wls-domain/AdminServer/jaxwsejb30ws","jaxwsejb",
"web","{http://namespace/}WsdlConcreteService")

WsdlConcretePort   http://host.example.com:7001/jaxwsejb/WsdlAbstract

4. listWebServiceConfigurationコマンドを使用して、Webサービス・エンドポイントの構成の詳細を表示します。

listWebServiceConfiguration(application,moduleOrCompName,moduleType,serviceName,[subjectName])

たとえば、WsdlConcretePortの構成の詳細を表示するには、次のようにします。

wls:/wls-domain/serverConfig> listWebServiceConfiguration("/wls-domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","{http://namespace/}WsdlConcreteService","WsdlConcretePort")
enable: true
enableREST: false
maxRequestSize: -1
loggingLevel: NULL

5. listWebServicePoliciesコマンドを使用して、Webサービス・エンドポイントに添付されたポリシーを表示します。

listWebServicePolicies(application,moduleOrCompName,moduleType,serviceName,subjectName)

たとえば、WsdlConcretePortエンドポイントに添付されたポリシーとポリシーのオーバーライド設定を表示するには、次のようにします。

wls:/wls_domain/serverConfig> listWebServicePolicies("/wls_domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","{http://namespace/}WsdlConcreteService","WsdlConcretePort")

WsdlConcretePort :
addressing : oracle/wsaddr_policy , enabled=true
management : oracle/log_policy , enabled=true
security : oracle/wss_username_token_service_policy, enabled=true
Attached policy or policies are valid; endpoint is secure.

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

Webサービス・クライアントの表示

次の項では、アプリケーションのWebサービス・クライアントの表示方法について説明します。

Fusion Middleware Controlの使用

次のセクションで説明されているように、Webサービスの表示手順は、アプリケーション・タイプ(SOA参照、ADF DC、WebCenter、または非同期コールバック・クライアント)によって異なります。

SOA参照の表示

SOA参照クライアントを表示するには、次の手順を使用します。

1. ナビゲータ・ペインで、SOAデプロイのプラス記号(+)をクリックします。

2. soa-infraを選択し、SOAパーティション(たとえば、defaultパーティション)を開き、目的のSOAコンポジット・アプリケーションを選択します。
SOAコンポジットのホームページが表示されます。

3. 選択されていない場合は、「ダッシュボード」タブをクリックします。

4. ページのサービスと参照部分で、表示するSOA参照を選択します。

5. 参照ホームページで、タブをクリックしてクライアント・データを表示します。

接続ベースのWebサービス・クライアントの表示

次の手順を使用して、ADF DC Webサービス・クライアント、ADF JAX-WS Indirection ProxyまたはWebCenterクライアントなどの接続ベースのWebサービス・クライアントを表示します。

1. ナビゲータ・ペインで、「アプリケーションのデプロイ」フォルダのプラス記号(+)をクリックしてファーム内のアプリケーションを表示し、アプリケーションを選択します。
「アプリケーションのデプロイ」ホームページが表示されます。

2. 「アプリケーションのデプロイ」メニューから、「ADF」→ADF接続の構成を選択します。

3. ADF接続の構成ページで、ページの「Webサービス接続」セクションから接続を選択し、次に「Webサービスの構成」リストからエンドポイントを選択します。

4. 「Webサービスの構成」ページで、タブをクリックしてクライアント・データを表示します。

WebCenterポートレットの表示

WebCenterポートレットを表示するには、次の手順を使用します。

1. ナビゲータ・ペインで、WebCenterフォルダおよびWebCenter Spacesフォルダのプラス記号(+)をクリックし、WebCenterスペースを表示します。

2. 表示するWebCenterスペースの名前をクリックします。

3. WebCenterメニューから、設定→「サービス構成」を選択します。
WebCenterサービス構成ページが表示されます。

4. 「ポートレット・プロデューサ」を選択して、WebCenterポートレットを表示します。

Java EE Webサービス・クライアントの表示

Java EE Webサービス・クライアントを表示するには、次の手順を使用します。

1. ナビゲータ・ペインで、「アプリケーションのデプロイ」フォルダのプラス記号(+)をクリックしてファーム内のアプリケーションを表示し、Java EEアプリケーションを選択します。
「アプリケーションのデプロイ」ホームページが表示されます。

2. 「アプリケーション・デプロイメント」メニューから、「Webサービス」を選択します。
「Webサービス(Java EE)」ホームページが表示されます。

3. 「Java EE Webサービス・クライアント」タブを選択して、アプリケーション内でクライアントを表示します。

- 「監視」タブを使用して、アプリケーション内のランタイム・クライアント・インスタンスを表示します。

- 「構成」タブを使用して、クライアント・ポートを表示し、ポリシーを添付または解除します。

非同期のWebサービス・コールバック・クライアントの表示

非同期のWebサービス・コールバック・クライアントを表示するには、次の手順を使用します。コールバック・クライアントは、非同期Webサービスが呼出し元にレスポンスを返すためにのみ使用されます。詳細は、Oracle Infrastructure Webサービス開発者ガイドの非同期Webサービスの開発に関する項を参照してください。

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、非同期Webサービスのエンドポイントに移動します。

2. エンドポイント・ページの右上角のコールバック・クライアントをクリックします。

WLSTの使用

WLSTコマンドを使用してWebサービス・クライアントを表示するには、次の手順を使用します。

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、アプリケーションがデプロイされるWebLogic Serverの実行中のインスタンスに接続します。

2. WLSTコマンドlistWebServiceClientsを使用して、Webサービス・クライアントのリストを表示します。

listWebServiceClients(application,composite,[detail])

このコマンドにより、アプリケーション、SOAコンポジット、またはドメインのクライアントのリストを表示できます。アプリケーションまたはSOAコンポジットのクライアント情報をリストするには、該当する引数を指定します。アプリケーションまたはSOAコンポジットを指定しない場合は、このコマンドにより、ドメインの各サーバー・インスタンスのすべてのアプリケーションとコンポジットのすべてのWebサービス・クライアントに対して、モジュール名、モジュール・タイプ、およびSOA参照名などの情報が出力されます。エンドポイントおよびポリシーを含む、各クライアントに関する詳細を表示するには、detail引数をtrueに設定します。

たとえば、次のようにします。

wls:/soainfra/serverConfig> listWebServiceClients(detail=true)

/soainfra/soa_server1/soa-infra :
compositeName=default/SampleSOAFirstPrj[1.0], moduleType=soa, serviceRefName=ReferenceToSecondSOA
BPELProcess1_pt   serviceWSDLURI=
http://localhost:8001/soa-infra/services/default/
SampleSOASecondPrj/BPELProcess1.wsdl
oracle.webservices.contentTransferEncoding=base64
oracle.webservices.charsetEncoding=UTF-8
oracle.webservices.operationStyleProperty=document
oracle.webservices.soapVersion=soap1.1
oracle.webservices.chunkSize=4096
oracle.webservices.preemptiveBasicAuth=false
oracle.webservices.session.maintain=false
oracle.webservices.encodingStyleProperty=
http://schemas.xmlsoap.org/soap/encoding/
oracle.webservices.donotChunk=true
No attached policies found; endpoint is not secure.

/soainfra/AdminServer/ADFDCApp :
moduleName=adfdc, moduleType=wsconn, serviceRefName=AppModuleService
AppModuleServiceSoapHttpPort    serviceWSDLURI=
http://localhost:8001/ADF-App-context-root/
AppModuleService?wsdl
security : oracle/wss_username_token_client_policy, enabled=true
Attached policy or policies are valid; endpoint is secure.

出力にはSOAコンポジットdefault/SampleSOAFirstPrj[1.0]のSOA参照が表示されることに注意してください(serviceRefName引数を使用した場合)。SOAコンポジットのSOA参照をリストするには、コマンドでコンポジット名を指定します(例: listWebServiceClients(None,'default/SampleSOAFirstPrj[1.0]'))。

ADFおよびWebCenterクライアントは、出力ではmoduleType=wsconn引数によって指定されます。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

WebサービスWSDLドキュメントの表示

WebサービスのWSDLドキュメントを表示するには、次の手順に従ってください。

WebサービスのWSDLドキュメントを表示する手順

1. 「Webサービスのサマリー」ページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

3. エンドポイント名をクリックして「Webサービス・エンドポイント」ページに移動します。

4. 「WSDLドキュメント」フィールドで、エンドポイント名をクリックしてWebサービスのWSDLを表示します(図6-5)。

図6-5 WebサービスのWSDLが表示された「Webサービス・エンドポイント」ページ

Webサービス・エンドポイントの構成

Webサービス・エンドポイント(またはポート)を構成するには、次の手順に従ってください。

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスおよびプロパイダにのみ適用されます。
Oracle Infrastructure Webサービス・プロバイダは、java.xml.ws.Providerインタフェースを実装しています。「Webサービス・エンドポイント」ページに「実装クラス」を表示し、構成プロパティのサブセットを提供します。

Fusion Middleware Controlの使用

Fusion Middleware Controlを使用してWebサービス・エンドポイントを構成するには、次の手順を使用します。

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページまたはSOAコンポジットの「サービス・ホーム」ページに移動します。

2. 「構成」タブをクリックします。SOAコンポジットの場合は、「プロパティ」タブをクリックします。

3. 構成属性を設定して「適用」をクリックします。
構成属性の設定に関する詳細は、次の項を参照してください。

- Webサービスの有効化または無効化

- RESTful Webサービスの有効化または無効化

- WebサービスWSDLドキュメントの表示の有効化または無効化

- メタデータの交換の有効化または無効化

- Webサービスのテスト・エンドポイントの有効化または無効化

- 診断ログのログ・レベルの設定

- リクエスト・メッセージの検証

- Webサービスの原子性トランザクションの構成

- リクエスト・メッセージのサイズの設定

- 非同期Webサービスの構成

4. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTの使用

WLSTを使用してWebサービス・エンドポイント(ポート)を構成するには、次の手順を使用します。

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、アプリケーションがデプロイされるWebLogic Serverの実行中のインスタンスに接続します。

2. 「アプリケーションのWebサービスの表示」の説明に従って、WLSTコマンドlistWebServicesを使用して、アプリケーションのWebサービスのリストを表示します。

3. listWebServicePortsコマンドを使用して、Webサービスのエンドポイント名とエンドポイントURLを表示します。

listWebServicePorts(application,moduleOrCompName,moduleType,serviceName)

たとえば、WsdlConcreteServiceのエンドポイントを表示するには、次のようにします。

wls:/wls-domain/serverConfig> listWebServicePorts("/wls-domain/AdminServer/jaxwsejb30ws",None,"web",
"{http://namespace/}WsdlConcreteService")

WsdlConcretePort   http://host.example.com:7001/jaxwsejb/WsdlAbstract

4. listWebServiceConfigurationコマンドを使用して、Webサービス・エンドポイントの構成の詳細を表示します。

listWebServiceConfiguration(application,moduleOrCompName,moduleType,serviceName,[subjectName])

たとえば、WsdlConcretePortの構成の詳細を表示するには、次のようにします。

wls:/wls-domain/serverConfig> listWebServiceConfiguration("/wls-domain/AdminServer/jaxwsejb30ws","jaxwsejb",
"web","{http://namespace/}WsdlConcreteService","WsdlConcretePort")
enable: true
enableREST: false
maxRequestSize: -1
loggingLevel: NULL

別の方法として、「サーバーのすべての現行Webサービスの表示」の「WLSTを使用したドメインのWebサービスの表示」に示すように、listWebServicesコマンドでdetail引数にtrueを設定して、エンドポイントの構成の詳細を表示することもできます。

5. setWebServiceConfigurationコマンドを使用して、エンドポイント構成を設定または変更します。itemProperties引数を使用して、設定または変更するプロパティを指定します。

setWebServiceConfiguration(application,moduleOrCompName,moduleType,
serviceName,subjectName,itemProperties)

たとえば、WsdlConcretePortのロギング・レベルをSEVEREに変更するには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> setWebServiceConfiguration("/wls-domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","{http://namespace/}WsdlConcreteService","WsdlConcretePort",
[("loggingLevel","SEVERE")])

Please restart application to uptake the policy changes.

構成プロパティの詳細は、次の項を参照してください。

- Webサービスの有効化または無効化

- RESTful Webサービスの有効化または無効化

- WebサービスWSDLドキュメントの表示の有効化または無効化

- Webサービスのテスト・エンドポイントの有効化または無効化

- Webサービスの原子性トランザクションの構成

- リクエスト・メッセージのサイズの設定

- 診断ログのログ・レベルの設定

注意:
構成項目に認識できないプロパティ名または不正な値が含まれる場合は、その設定コマンドは拒否され、エラー・メッセージが表示されます。

6. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

Webサービスの有効化または無効化

Webサービス・アプリケーションがデプロイされると、エラーが発生しない場合、Webサービス・エンドポイントがデフォルトで有効化されます。エラーが発生した場合、Webサービス・アプリケーションはデプロイされますが、Webサービス・エンドポイントは有効化されません。

Webサービスを無効化して、一時的にWebサービスを使用不可にすることが必要な場合があります。たとえば、無効なポリシー参照を修正する必要がある場合です。Webサービスを無効化すると、Webサービスへのリクエストが失敗します。Webサービスを無効化するには、Webサービスがリクエストを受信するエンドポイントを使用不可にする必要があります。

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

Fusion Middleware Controlの使用

ADFまたはWebCenterのWebサービス・エンドポイントを無効にする手順

1. 「Webサービスのサマリー」ページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

3. エンドポイント名をクリックして「Webサービス・エンドポイント」ページに移動します。

4. 「Webサービス・エンドポイント」ページで、「構成」タブをクリックします。

5. 「エンドポイント有効」フィールドで、メニューから「無効」を選択して、「適用」をクリックします。

6. そのWebサービスを使用するアプリケーションを再起動します。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTの使用

WLSTを使用してWebサービス・エンドポイント(ポート)を無効化するには、setWebServiceConfigurationコマンドを使用します。エンドポイントを無効化するには、itemProperties引数のenableプロパティをfalseに設定し、有効化するにはtrueに設定します。

このコマンドを使用する手順は、「Webサービス・エンドポイントの構成」の「WLSTの使用」で説明されています。

たとえば、エンドポイントWsdlConcretePortを無効化するには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> setWebServiceConfiguration
("/wls-domain/AdminServer/jaxwsejb30ws","jaxwsejb","web","{http://namespace/}WsdlConcreteService",
"WsdlConcretePort",[("enable","false")])

Please restart application to uptake the policy changes.

このWLSTコマンドについての詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

RESTful Webサービスの有効化または無効化

Webサービス・エンドポイントを有効化または無効化すると、Representational State Transfer(REST)形式のメッセージを受信できます。

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

Fusion Middleware Controlの使用

Webサービス・スタイルを有効化または無効化する手順

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページまたはSOAコンポジットの「サービス・ホーム」ページに移動します。

2. 「構成」タブをクリックします。SOAコンポジットの場合は、「プロパティ」タブをクリックします。

3. 「RESTの有効化」フィールドで、メニューから「TRUE」を選択してRESTを有効化するか、「FALSE」を選択してRESTを無効化して、「適用」をクリックします。
図6-8は、ADFまたはWebCenterエンドポイントの「RESTの有効化」フィールドの位置を示しています。

図6-6 RESTful Webサービスの有効化および無効化

4. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTの使用

WLSTを使用してWebサービス・エンドポイント(ポート)でのREST形式のメッセージの受信を有効化または無効化するには、setWebServiceConfigurationコマンドを使用します。REST形式を有効化するには、itemProperties引数のenableRESTプロパティをtrueに設定し、無効化するにはfalseに設定します。

このコマンドを使用する手順は、「Webサービス・エンドポイントの構成」の「WLSTの使用」で説明されています。

たとえば、WsdlConcretePortに対してREST形式を有効化するには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> setWebServiceConfiguration
("/wls-domain/AdminServer/jaxwsejb30ws","jaxwsejb","web","{http://namespace/}WsdlConcreteService",
"WsdlConcretePort",[("enableREST","true")])

Please restart application to uptake the policy changes.

このWLSTコマンドについての詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

WebサービスWSDLドキュメントの表示の有効化または無効化

次の手順では、WebサービスWSDLドキュメントの表示を有効化または無効化する方法について説明します。

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスおよびプロパイダにのみ適用されます。

Fusion Middleware Controlの使用

WebサービスWSDLドキュメントの表示を有効化または無効化する手順

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページまたはSOAコンポジットの「サービス・ホーム」ページに移動します。

2. 「構成」タブをクリックします。SOAコンポジットの場合は、「プロパティ」タブをクリックします。

3. 「WSDL対応」フィールドで、メニューから「TRUE」を選択してWSDLの表示を有効化するか、「FALSE」を選択してWSDLの表示を無効化して、「適用」をクリックします。

4. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTの使用

Webサービス・エンドポイント(ポート)に対してWSDLドキュメントの表示を有効化または無効化するには、setWebServiceConfigurationコマンドを使用します。WSDL表示を有効化するには、itemProperties引数のenableWSDLプロパティをtrueに設定し、無効化するにはfalseに設定します。

このコマンドを使用する手順は、「Webサービス・エンドポイントの構成」の「WLSTの使用」で説明されています。

たとえば、WsdlConcretePortに対してWSDL表示を有効化するには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> setWebServiceConfiguration ("/wls-domain/AdminServer/jaxwsejb30ws","jaxwsejb","web",
"{http://namespace/}WsdlConcreteService","WsdlConcretePort",[("enableWSDL","true")])

Please restart application to uptake the policy changes.

このWLSTコマンドについての詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

メタデータの交換の有効化または無効化

次の手順では、Webサービス・メタデータの交換を有効化または無効化する方法について説明します。

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

メタデータの交換を有効化または無効化する手順

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページまたはSOAコンポジットの「サービス・ホーム」ページに移動します。

2. 「構成」タブをクリックします。SOAコンポジットの場合は、「プロパティ」タブをクリックします。

3. メタデータ交換の有効化フィールドで、メニューから「TRUE」を選択してメタデータの交換を有効化するか、「FALSE」を選択してメタデータの交換を無効化して、「適用」をクリックします。

4. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

Webサービスのテスト・エンドポイントの有効化または無効化

次の手順では、Fusion Middleware ControlおよびWLSTを使用してWebサービスのテスト・エンドポイントを有効化または無効化する方法について説明します。

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスおよびプロパイダにのみ適用されます。

Fusion Middleware Controlの使用

Webサービス・テスト・エンドポイントを有効化または無効化するには:

注意:
このフラグは、「Webサービスのテスト」リンクの可用性は制御しません。

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページまたはSOAコンポジットの「サービス・ホーム」ページに移動します。

2. 「構成」タブをクリックします。SOAコンポジットの場合は、「プロパティ」タブをクリックします。

3. エンドポイント・テストの有効化フィールドで、メニューから「TRUE」を選択してテスト・エンドポイントを有効化するか、「FALSE」を選択してテスト・エンドポイントを無効化して、「適用」をクリックします。

4. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTの使用

Webサービスのテスト・エンドポイントを有効化または無効化するには、setWebServiceConfigurationコマンドを使用します。テスト・エンドポイントを有効化するには、itemProperties引数のenableTestPageプロパティをtrueに設定し、無効化するにはfalseに設定します。

このコマンドを使用する手順は、「Webサービス・エンドポイントの構成」の「WLSTの使用」で説明されています。

たとえば、WsdlConcretePortに対してテスト・エンドポイントを有効化するには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> setWebServiceConfiguration
("/wls-domain/AdminServer/jaxwsejb30ws","jaxwsejb","web","{http://namespace/}WsdlConcreteService",
"WsdlConcretePort",[("enableTestPage","true")])

Please restart application to uptake the policy changes.

このWLSTコマンドについての詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

リクエスト・メッセージの検証

次の手順では、スキーマに対してリクエスト・メッセージの検証を有効化または無効化する方法について説明します。

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

スキーマ検証を有効化または無効化する手順

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページまたはSOAコンポジットの「サービス・ホーム」ページに移動します。

2. 「構成」タブをクリックします。SOAコンポジットの場合は、「プロパティ」タブをクリックします。

3. スキーマ検証フィールドで、メニューから「TRUE」を選択してスキーマ検証を有効化するか、「FALSE」を選択してスキーマ検証を無効化して、「適用」をクリックします。

4. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

Webサービスの原子性トランザクションの構成

WebLogic Webサービスは、WS-CoordinationおよびWS-AtomicTransaction(WS-AT)仕様をサポートしています。そのため、Webサービスの原子性トランザクションを構成して、Oracle WebLogic Serverと、WebSphere、Microsoft .NETなどの他のベンダーのトランザクション処理システムとの相互運用性を有効にできます。

Webサービスの原子性トランザクションは、WebLogic JAX-WSのWebサービスと、SOAのWebサービスおよび参照でサポートされています。次の項目で説明されているように、Webサービスの原子性トランザクションは、設計時に有効にして構成できます。

- Programming Advanced Features of JAX-WS Web Services for Oracle WebLogic ServerのWebサービスの原子性トランザクションの使用に関する項

- 『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』のWS原子性トランザクションのサポートに関する項

WebLogic JAX-WS Webサービスの場合は、WebLogic Server管理コンソールを使用して、デプロイ時にWebサービスの原子性トランザクションを構成できます。詳細は、Oracle WebLogic Server管理コンソールのヘルプのWebサービスの原子性トランザクションの構成に関する項を参照してください。

SOAのWebサービスおよび参照の場合は、Oracle Enterprise Manager Fusion Middleware ControlまたはWLSTを使用して、サービスまたは参照のエンドポイントで、デプロイ時にWebサービスの原子性トランザクションを構成できます。この2つのインタフェースを使用した詳細手順については、次の項を参照してください。

SOA参照でのWebサービスの原子性トランザクションの構成に関する詳細は、「Webサービス・クライアントの構成」を参照してください。

Fusion Middleware Controlの使用

SOA Webサービスの原子性トランザクションを構成する手順

1. 「SOAコンポジットのWebサービスと参照の表示」の説明に従って、SOAコンポジットのホームページに移動します。

2. ページのサービスと参照セクションで、構成するサービスを選択します。

3. サービス・ホームページで、「プロパティ」タブをクリックします。

4. 原子性トランザクションのバージョンフィールドで、SOAサービスでサポートされる、Webサービス・原子性トランザクションのコーディネーション・コンテキストのバージョンを選択します。トランザクション全体で同じ値を指定する必要があります。有効な値は次のとおりです。

- WSAT10

- WSAT11

- WSAT12

- デフォルト

Defaultを選択すると、3つのバージョンすべてがサポートされます。

注意:
このプロパティは、同期操作のみを伴うSOA Webサービス、ならびに同期操作および非同期操作の両方を伴うWebサービスと連動します。非同期操作のみを伴うSOA Webサービスとは連動しません。

5. 原子性トランザクション・フロー・オプションフィールドで、トランザクション・コーディネーション・コンテキストをトランザクション・フローを使用してSOA Webサービスに渡すかどうかを選択します。
SOA Webサービスで有効な値は、次のとおりです。

- Never - トランザクション・コーディネーション・コンテキストをエクスポートしません。これがデフォルトです。

- Supports - トランザクションが有効な場合、トランザクション・コーディネーション・コンテキストをエクスポートします。

- Mandatory - トランザクション・コーディネーション・コンテキストをエクスポートします。有効なトランザクションがない場合は、例外がスローされます。

注意:
このプロパティは、同期操作のみを伴うWebサービス、ならびに同期操作および非同期操作が組み合せられたWebサービスと連動します。非同期操作のみを伴うWebサービスでは機能しません。

図6-7 SOA Webサービスの原子性トランザクションの構成

6. 「適用」をクリックします。

WLSTの使用

WLSTを使用してSOA Webサービス・エンドポイントの原子性トランザクションを構成するには、setWebServiceConfigurationコマンドを使用します。このコマンドを使用する手順は、「Webサービス・エンドポイントの構成」の「WLSTの使用」で説明されています。

注意:
SOA参照のWebサービス原子性トランザクションを構成するには、setWebServiceClientStubPropertyコマンドを使用します。詳細は、「Webサービス・クライアントの構成」を参照してください。

次の表に示すように、itemProperties引数の値を指定します。

表6-1 SOA Webサービス・原子性トランザクションのWLST構成プロパティ

プロパティ

説明

有効な値

wsat.flowOption

原子性トランザクションのフロー・オプション

- "NEVER" –トランザクション・コーディネーション・コンテキストをエクスポートしません。これがデフォルトです。

- "SUPPORTS" –トランザクションが有効な場合、トランザクション・コーディネーション・コンテキストをエクスポートします。

- "MANDATORY" –コーディネーション・コンテキストをエクスポートします。有効なトランザクションがない場合は、例外がスローされます。

wsat.version

原子性トランザクションのバージョン

- "WSAT10"

- "WSAT11"

- "WSAT12"

- "DEFAULT"—DEFAULTを指定すると、3つのバージョンすべてがサポートされます。

たとえば、default/SimpleApproval[1.0] SOAコンポジット・アプリケーションのWebサービス・エンドポイントTaskService_ptに対して原子性トランザクションを構成するには、次のコマンドを使用します。

wls:/soa-infra/serverConfig>setWebServiceConfiguration
("soa-infra","default/SimpleApproval[1.0]","soa","client",
"TaskService_pt",[("wsat.flowOption","MANDATORY"),("wsat.version", "DEFAULT")])

設定を検証するには、list(None,None,true)コマンドを使用します。

wls:/soainfra/serverConfig>listWebServices(None,None,true)   /soainfra/soa_server1/soa-infra:
compositeName=default/SimpleApproval[1.0], moduleType=soa,
serviceName=client
enableTestPage: true
enableWSDL: true
TaskService_pt http://myhost:8001/soa-infra/services/default/SimpleApproval!1.0/client
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
wsat.flowOption: MANDATORY
wsat.version: DEFAULT
No policies attached; endpoint is not secure.

注意:
listWebServicesコマンドの出力には、ポリシーの添付を含むSOAコンポーネントの詳細が含まれません。

このWLSTコマンドについての詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

リクエスト・メッセージのサイズの設定

次の項に示す手順を使用して、Webサービスへのリクエスト・メッセージの最大サイズを構成できます。

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスおよびプロパイダにのみ適用されます。

Fusion Middleware Controlの使用

リクエスト・メッセージのサイズを設定する手順

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページまたはSOAコンポジットの「サービス・ホーム」ページに移動します。

2. 「構成」タブをクリックします。SOAコンポジットの場合は、「プロパティ」タブをクリックします。

3. 「最大リクエスト・サイズ」および「最大リクエスト・サイズの単位」を設定して、「適用」をクリックします。

注意:
「最大リクエスト・サイズ」を、最大リクエスト・サイズがないことを示す-1に設定すると、「最大リクエスト・サイズの単位」設定は無効になり、デフォルトのbytesになります。

図6-8 リクエスト・メッセージの設定サイズ

-1に設定すると、メッセージのサイズは制限されません。または、テキスト・ボックスに数値を入力して測定単位を選択することで、メッセージに最大制限を設定できます。

4. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTの使用

Webサービス・エンドポイント(ポート)に対してリクエスト・メッセージのサイズを設定するには、setWebServiceConfigurationコマンドを使用します。itemProperties引数のmaxRequestSizeプロパティに目的の値を設定します。長い整数値を入力して最大値を設定するか、-1を入力してメッセージのサイズを無制限にします。デフォルトは-1です。

このコマンドを使用する手順は、「Webサービス・エンドポイントの構成」の「WLSTの使用」で説明されています。

たとえば、WsdlConcretePortに対してメッセージを制限しないように設定するには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> setWebServiceConfiguration
("/wls-domain/AdminServer/jaxwsejb30ws","jaxwsejb","web","{http://namespace/}WsdlConcreteService",
"WsdlConcretePort",[("maxRequestSize","-1")])

このWLSTコマンドについての詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

非同期Webサービスの構成

Webサービスを同期的に起動する場合、起動するクライアント・アプリケーションは、レスポンスが返されるまで作業を続行できません。レスポンスがすぐに返される場合は、このWebサービスの起動方法は適切と言えます。ただし、リクエストの処理は遅延することがあるため、クライアント・アプリケーションが作業を続行し、後でレスポンスを処理する方が便利な場合もよくあります。Webサービスを非同期で呼び出すことで、クライアントは中断されずに処理を続行でき、非同期レスポンスが返されたときに通知されます。

非同期Webサービスの開発に関する詳細は、Oracle Infrastructure Webサービス開発者ガイドの非同期Webサービスの開発に関する項を参照してください。

次の手順では、デプロイされる非同期Webサービスの構成方法について説明します。「非同期のWebサービス・コールバック・クライアントの構成」の説明に従って、非同期のコールバック・クライアントを構成することもできます。

非同期Webサービスを構成する手順

1. 「Webサービスのサマリー」ページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

3. 非同期Webサービスのエンドポイント名をクリックして、「Webサービス・エンドポイント」ページに移動します。
非同期Webサービスの場合は、上部の非同期フラグが「True」に設定されます。非同期Webサービスの詳細を示す次のフラグを確認します。

- リクエスト・キューに対するトランザクションの有効化: トランザクションがリクエスト・キューで有効かどうかを指定するフラグ。

- レスポンス・キューの使用: レスポンス・キューを使用するかどうかを指定するフラグ。「False」に設定すると、レスポンスは格納されずにWebサービス・クライアントに直接送信されます。

- レスポンス・キュー用に有効化されたトランザクション: トランザクションがレスポンス・キューで有効かどうかを指定するフラグ。

これらのフラグは、設計時に構成されます。詳細は、Oracle Infrastructure Webサービス開発者ガイドの非同期Webサービスの開発に関する項を参照してください。

4. 「Webサービス・エンドポイント」ページで、「構成」タブをクリックします。

5. ページの「非同期Webサービス」セクションで、表6-2に定義されている構成プロパティを設定できます。

注意:
表6-2に定義されている構成プロパティは、非同期Webサービスでのみ表示され、これに対してのみ有効です。

表6-2 非同期Webサービスの構成プロパティ

構成プロパティ

説明

JMSリクエスト・キューのコネクション・ファクトリ名

JMSリクエスト・キューのコネクション・ファクトリの名前。デフォルトでは、ベース・ドメインで提供されるデフォルトのJMSコネクション・ファクトリ、weblogic.jms.XAConnectionFactoryが使用されます。

JMSリクエスト・キュー名

リクエスト・キューの名前。デフォルトでは、oracle.j2ee.ws.server.async.DefaultRequestQueueキューが使用されます。

JMSレスポンス・キューのコネクション・ファクトリ名

JMSレスポンス・キューのコネクション・ファクトリの名前。デフォルトでは、ベース・ドメインで提供されるデフォルトのJMSコネクション・ファクトリ、weblogic.jms.XAConnectionFactoryが使用されます。

JMSレスポンス・キュー名

リクエスト・キューの名前。デフォルトでは、キューoracle.j2ee.ws.server.async.DefaultResponseQueueが使用されます。

JMSシステム・ユーザー

JMSキューの使用を許可されているユーザー。デフォルトでは、このプロパティはOracleSystemUserに設定されます。

注意: 大多数のユーザーでは、OracleSystemUserで十分です。ただし、このユーザーをセキュリティ・レルムの別のユーザーに変更する必要がある場合は、「非同期WebサービスのJMSシステム・ユーザーの変更」に示す手順に従って変更できます。

6. 「適用」をクリックします。

7. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

MTOMの有効化および無効化

Webサービスにoracle/wsmtom_policyポリシーを添付すると、MTOMがサポートされます。このポリシーを有効化または無効化することで、WebサービスのMTOMを有効化または無効化できます。詳細は、「単一のポリシー・サブジェクトに対するポリシーの有効化または無効化」を参照してください。

MTOMを有効化または無効化した後は、アプリケーションを再起動する必要があります。

Webサービス・クライアントの構成

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

SOA参照、ADFデータ・コントロール、および非同期Webサービスのコールバック・クライアントを含む、アプリケーションのWebサービス・クライアントには、表6-3で定義されている構成プロパティを設定できます。

表6-3 Webサービス・クライアントの構成プロパティ

構成プロパティ

プロパティ名

説明

一般

UDDI ServiceKey

(SOA参照クライアントのみ)

oracle.soa.uddi.serviceKey

UDDIをエンドポイントのランタイム解決に使用する場合は、Oracle Service Registry(OSR)のサービス・キーを指定します。

詳細は、Oracle Fusion Middleware管理者ガイド for Oracle SOA Suite and Oracle Business Process Management SuiteのOracle Service Registry Integrationのエンドポイント参照とサービス・キーの変更に関する項を参照してください。

エンドポイント・アドレス

javax.xml.ws.service.endpoint.address

クライアントのリクエスト送信先のエンドポイントURL。

注意: このプロパティは、非同期Webサービスのコールバック・クライアントには使用できません。

セッションの維持

javax.xml.ws.session.maintain

セッションを維持するかどうかを指定するフラグ。

注意: このプロパティは、非同期Webサービスのコールバック・クライアントには使用できません。

原子性トランザクションのバージョン

(SOA参照クライアントのみ)

wsat.version

アウトバウンド・メッセージのみに使用されるSOA Webサービス原子性トランザクションのコーディネーション・コンテキストのバージョンを指定します。

トランザクション全体で同じ値を指定する必要があります。

有効な値は、WSAT10、WSAT11、WSAT12、Defaultです。

フロー・オプションをWSDL Drivenに設定すると、バージョンを指定できないことに注意してください。WSDLで通知されるバージョンが使用されます。

フロー・オプションをSupportsまたはMandatoryに設定して、Defaultオプションを指定した場合は、WSAT10が使用されます。

注意: WLSTでは、有効な値、「WSAT10」、「WSAT11」、「WSAT12」、および「DEFAULT」を指定する必要があります。無効な値を使用すると、エラー・メッセージが出力されます。

原子性トランザクション・フロー・オプション

(SOA参照クライアントのみ)

wsat.flowOption

トランザクション・コーディネーション・コンテキストがトランザクション・フローにより渡されるかどうかを指定します。

SOA参照クライアントに有効な値は、次のとおりです。

- Never(デフォルト) - トランザクション・コーディネーション・コンテキストをエクスポートしません。

- Supports - トランザクションが有効な場合、トランザクション・コーディネーション・コンテキストをエクスポートします。

- Mandatory - トランザクション・コーディネーション・コンテキストをエクスポートします。有効なトランザクションがない場合は、例外がスローされます。

- WSDL Driven - WSDLに設定された値を使用します。

注意: WLSTでは、有効な値、「NEVER」、「SUPPORTS」、「MANDATORY」、または「WSDLDriven」を指定する必要があります。無効な値を使用すると、エラー・メッセージが出力されます。

HTTPチャンク

チャンクの中止

oracle.webservices.donotChunk

クライアント・リクエストに対してチャンクを有効にするかどうかを指定するフラグ。

チャンク・サイズ(バイト)

oracle.webservices.chunkSize

リクエスト・チャンクのサイズ(バイト)。

HTTPタイムアウト

HTTP読取りタイムアウト(ミリ秒)

oracle.webservices.httpReadTimeout

リクエスト読取りのタイムアウトの長さ(ミリ秒)。

HTTP接続タイムアウト(ミリ秒)

oracle.webservices.httpConnTimeout

リクエスト接続のタイムアウトの長さ(ミリ秒)。

HTTP Basic認証

HTTPユーザー名

(javax.xml.ws.security.auth.username)

oracle.webservices.auth.username

認証されたHTTPユーザー名。

HTTPユーザー・パスワード

(javax.xml.ws.security.auth.password)

oracle.webservices.auth.password

認証されたHTTPユーザーのパスワード。

割込み

oracle.webservices.preemptiveBasicAuth

要求されなくてもリクエストと一緒にセキュリティを送信するかどうかを指定するフラグ。

HTTPプロキシ

プロキシ・ホスト

oracle.webservices.proxyHost

クライアントのリクエスト送信先となるプロキシのURL。

プロキシ・ポート

oracle.webservices.proxyPort

プロキシのポート番号。

プロキシ・ユーザー名

oracle.webservices.proxyUsername

プロキシにアクセスするための有効なユーザー名。

プロキシ・ユーザー・パスワード

oracle.webservices.proxyPassword

プロキシにアクセスするための有効なパスワード。

プロキシ・レルム

oracle.webservices.proxyAuthRealm

プロキシによって使用されるレルム。

プロキシ認証タイプ

oracle.webservices.proxyAuthType

プロキシによって使用される認証タイプ。

次の項では、Fusion Middleware ControlおよびWLSTを使用してWebサービス・クライアントを構成する方法について説明します。

Fusion Middleware Controlの使用

次の手順では、SOA参照、ADF DC WebCenter、および非同期Webサービス・コールバック・クライアントの構成方法について説明します。

SOA参照の構成

次の手順では、SOA参照の構成方法について説明します。

1. 「SOA参照の表示」の説明に従って、SOA参照を表示します。

2. 「プロパティ」タブをクリックします。

3. 必要に応じてプロパティ値を設定します。表6-3を参照してください。

4. 「適用」をクリックします。

ADF DCのWebサービス・クライアントの構成

次の手順では、ADF DC Webサービス・クライアントの構成方法について説明します。

1. 「接続ベースのWebサービス・クライアントの表示」で説明するように、ADF DC Webサービス・クライアントを表示します。

2. 「構成」タブをクリックします。

3. 必要に応じて構成値を設定します。表6-3を参照してください。

4. 「適用」をクリックします。

非同期Webサービスのコールバック・クライアントの構成

次の手順では、非同期Webサービスのコールバック・クライアントの構成方法について説明します。コールバック・クライアントは、非同期Webサービスが呼出し元にレスポンスを返すためにのみ使用されます。詳細は、Oracle Infrastructure Webサービス開発者ガイドの非同期Webサービスの開発に関する項を参照してください。

非同期Webサービスのコールバック・クライアントを構成する手順

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、非同期Webサービスのエンドポイントに移動します。

2. エンドポイント・ページの右上角のコールバック・クライアントをクリックします。

3. 「構成」タブをクリックします。

4. 必要に応じて構成値を設定します。表6-3を参照してください。

5. 「適用」をクリックします。

WLSTの使用

WLSTを使用してWebサービスのクライアント・エンドポイント(ポート)を構成するには、次の手順を使用します。

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、アプリケーションがデプロイされるWebLogic Serverの実行中のインスタンスに接続します。

2. 「Webサービス・クライアントの表示」の説明に従って、WLSTコマンドlistWebServiceClientsを使用して、アプリケーションでWebサービス・クライアントのリストを表示します。

3. listWebServiceClientPortsコマンドを使用して、Webサービス・クライアントのエンドポイント名とエンドポイントURLを表示します。

listWebServiceClientPorts(application,moduleOrCompName,moduleType,serviceRefName)

たとえば、サービス参照clientのエンドポイントを表示するには、次のようにします。

wls:/wls-domain/serverConfig> listWebServiceClientPorts('/base_domain/AdminServer/application1#V2.0',
'test1','wsconn','client')

HelloWorld_pt

4. listWebServiceClientStubPropertiesコマンドを使用して、Webサービス・クライアント・エンドポイントの構成の詳細を表示します。

listWebServiceClientStubProperties(application, moduleOrCompName, moduleType, serviceRefName,portInfoName)

たとえば、HelloWorld_ptの構成の詳細を表示するには、次のようにします。

wls:/wls-domain/serverConfig> listWebServiceClientStubProperties('/base_domain/AdminServer/application1#V2.0',
'test1','wsconn','client','HelloWorld_pt')

keystore.recipient.alias=A1
saml.issuer.name=B1
user.roles.include=C1

別の方法として、「Webサービス・クライアントの表示」の「WLSTの使用」に示すように、listWebServiceClientsコマンドでdetail引数にtrueを設定して、エンドポイントの構成の詳細を表示することもできます。

5. 次のいずれかを実行します。

- setWebServiceClientStubPropertyコマンドを使用して、Webサービスのクライアント・エンドポイントの単一スタブ・プロパティを設定または変更します。propName引数およびpropValue引数を使用して、設定または変更するプロパティを指定します。プロパティを削除するには、propValue引数に空白を指定します。

setWebServiceClientStubProperty(application,moduleOrCompName,moduleType,
serviceRefName,portInfoName,propName,[propValue])

たとえば、HelloWorld_ptに対してkeystore.recipient.aliasをoracleに変更するには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> setWebServiceClientStubProperty('/base_domain/AdminServer/application1#V2.0',
'test1','wsconn','client','HelloWorld_pt','keystore.recipient.alias','oracle')

- setWebServiceClientStubPropertiesコマンドを使用して、Webサービスのクライアント・エンドポイントのプロパティのセットを構成します。properties引数を使用して、設定または変更するプロパティを指定します。

setWebServiceClientStubProperties(application, moduleOrCompName,
moduleType, serviceRefName, portInfoName, properties)

このコマンドは、クライアントに添付されたOracle WSMクライアント・セキュリティのすべてのスタブ・プロパティを構成またはリセットします。コマンドにリストする各プロパティは、指定した値に設定されます。以前に設定したプロパティがこのコマンドで明示的に指定されていない場合は、そのプロパティのデフォルトにリセットされます。デフォルトが存在しない場合、プロパティは削除されます。

たとえば、SOAコンポジット・アプリケーションdefault/SimpleRef[1.0]のSOA参照エンドポイントTaskReference_ptに対して原子性トランザクションを構成するには、次のコマンドを使用します。

wls:soainfra/serverConfig>
setWebServiceClientStubProperties('soa-infra','default/SimpleRef[1.0]',
'soa','client', 'TaskReference_pt',
[("wsat.flowOption","SUPPORTS"),("wsat.Version","DEFAULT")])

参照が正しく構成されていることを検証するには、次のコマンドを入力します。

wls:soainfra/serverConfig>listWebServiceClients(None, None, true)

/soainfra/soa_server1/soa-infra:
compositeName=default/SimpleRef[1.0], moduleType=soa, serviceRefName=client
TaskReference_pt
wsat.version=DEFAULT
wsat.flowOption=SUPPORTS

設定できるクライアント・プロパティに関する詳細は、表6-3 「Webサービス・クライアントの構成プロパティ」を参照してください。これらのプロパティを指定するには、「プロパティ名」の列に示す形式を使用します。

また、「オーバーライド可能なクライアント・ポリシーの添付」で説明されているプロパティを設定することもできます。

6. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

7 Webサービス・ポリシーの管理

この章では次の項について説明します。

- Webサービス・ポリシー管理の概要

- 使用可能なWebサービス・ポリシーの表示

- Webサービス・ポリシーの表示

- Webサービス・ポリシーの検索

- Webサービス・ポリシーの作成

- ポリシー・アサーション・テンプレートの管理

- Webサービス・ポリシーの検証

- Webサービス・ポリシーの編集

- Webサービス・ポリシーのバージョニング

- Webサービス・ポリシーのエクスポート

- Webサービス・ポリシーの削除

- クライアント・ポリシーの生成

- 単一のポリシー・サブジェクトに対するポリシーの有効化

- 全サブジェクトのポリシーの有効化または無効化

- ポリシー内のアサーションの有効化または無効化

- ポリシーの使用状況分析

- ポリシー通知

Webサービス・ポリシー管理の概要

Webサービス・ポリシー、およびWebサービスのサービスのクオリティ(QoS)を管理するためにOracle Fusion Middlewareでポリシーがどのように使用されるかの詳細は、「Oracle WSMポリシー・フレームワークについて」を参照してください。

使用可能なWebサービス・ポリシーの表示

ドメインにWebサービス・ポリシーを表示するには、Fusion Middleware ControlとWebLogic Scripting Tool(WLST)のどちらでも使用できます。Fusion Middleware Controlでは、「Webサービス・ポリシー」ページを使用してポリシーを表示します。

ポリシーのリストを表示するには、次の項の手順を使用します。

Fusion Middleware Controlでの「Webサービス・ポリシー」ページへの移動

ファーム内のWebサービス・ポリシーは、「Webサービス・ポリシー」ページから管理します。このページでは、Webサービス・ポリシーを表示、作成、編集および削除できます。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、ポリシーを表示するドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「ポリシー」をクリックします。
「Webサービス・ポリシー」ページが表示されます(図7-1)。

図7-1 「Webサービス・ポリシー」ページ

WLSTを使用した使用可能なポリシーのリストの表示

WLSTを使用して使用可能なポリシーのリストを表示する手順

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、Webサービスを表示するWebLogic Serverの実行中のインスタンスに接続します。

2. WLSTコマンドlistAvailableWebServicePolicies()を使用して、Webサービスのリストを表示します。

listAvailableWebServicePolicies([category],[subject])

たとえば、次のようにします。

wls:/base_domain/domainRuntime> listAvailableWebServicePolicies()

List of available OWSM policy - total : 58
security : oracle/binding_authorization_denyall_policy
security : oracle/binding_authorization_permitall_policy
security : oracle/binding_permission_authorization_policy
security : oracle/component_authorization_denyall_policy
security : oracle/component_authorization_permitall_policy
security : oracle/component_permission_authorization_policy
management : oracle/log_policy
addressing : oracle/wsaddr_policy
mtom : oracle/wsmtom_policy
wsrm : oracle/wsrm10_policy
wsrm : oracle/wsrm11_policy

3. オプションの引数categoryおよびsubjectを使用して、セキュリティや管理などのポリシー・カテゴリおよびサーバーやクライアントなどのポリシー・サブジェクト・タイプを指定します。
たとえば、次のようにします。

wls:/base_domain/domainRuntime> listAvailableWebServicePolicies("security","server")
List of available OWSM policy - total : 39
security : oracle/wss_saml_or_username_token_service_policy
security : oracle/wss10_username_token_with_message_protection_service_policy
security : oracle/wss10_x509_token_with_message_protection_service_policy
security : oracle/no_messageprotection_service_policy
security : oracle/wss_saml_or_username_token_over_ssl_service_policy
security : oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy
security : oracle/wss11_saml20_token_with_message_protection_service_policy
security : oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy
security : oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy
security : oracle/wss11_kerberos_token_service_policy

Webサービス・ポリシーの表示

読取り専用モードでポリシーの詳細を表示するには、次の手順に従ってください。

Webサービス・ポリシーを表示する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表からポリシーを選択して「表示」をクリックします。

3. ポリシーを参照し終わったら、「Webサービス・ポリシーに戻る」をクリックします。

Webサービス・ポリシーの検索

「Webサービス・ポリシー」 ページで、検索フィルタ(図7-2)に基準を指定して、返されるポリシーの数を絞り込むことができます。

「名前」フィールドに入力されたワイルドカード文字のアスタリスク(*)は、任意の文字と一致します。

図7-2 検索フィルタの基準

返されるポリシーは、「カテゴリ」、「適用先」および「名前」フィールド(表7-1)に指定された基準に一致するものです。

表7-1 検索フィルタの基準

フィールド

説明

カテゴリ

Webサービス・ポリシーが属するカテゴリ。オプションは次のとおりです。

- すべて

- セキュリティ

- MTOMアタッチメント

- 信頼できるメッセージング

- WSアドレス

- 管理

適用先

ポリシーを添付できるポリシー・サブジェクト。オプションは次のとおりです。

- すべて - ポリシーがあらゆるタイプのエンドポイントのターゲットに指定されることを意味します。「すべて」は、サービス・エンドポイント、サービス・クライアントまたはSOAコンポーネントに適用できるポリシーを指します。

- サービス・エンドポイント - Webサービスに添付できるポリシー。『Oracle Fusion Middleware Webサービスの紹介』のWebサービスとクライアントのタイプに関する項を参照してください。

- サービス・クライアント - Webサービス・クライアントに添付できるポリシー。『Oracle Fusion Middleware Webサービスの紹介』のWebサービスとクライアントのタイプに関する項を参照してください。

- SOAコンポーネント - SOAコンポーネントに添付できるポリシー。

SOA Webサービスはサービス・エンドポイントとして、SOA参照はサービス・クライアントとしてカテゴリ化されます。

名前

ポリシーの名前。完全な名前、またはポリシー名の一部を入力できます。たとえば、httpと入力すると、名前の一部にhttpが含まれるポリシーが返されます。

たとえば、「カテゴリ」フィールドで「セキュリティ」が選択され、「適用先」フィールドで「サービス・エンドポイント」が選択され、「名前」フィールドが空白のままになっている場合、返されるポリシーは、Webサービス・エンドポイントに添付できるセキュリティ・ポリシーです。

Webサービス・ポリシーの作成

Webサービス・ポリシーは、次のいずれかの方法で作成できます。

- アサーション・テンプレートを使用して新しいポリシーを作成

- 既存のポリシーからポリシーを作成

- ファイルからポリシーをインポート

- カスタム・ポリシーを作成

後続の項では、これらの方法のそれぞれを使用してポリシーを作成する方法を説明します。

新しいWebサービス・ポリシーの作成

1つ以上のアサーション・テンプレートを使用して新しいポリシーを作成するには、次の手順に従ってください。

新しいWebサービス・ポリシーを作成する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「カテゴリ」メニューから、このポリシーが属するカテゴリを選択し、「作成」をクリックします

注意:
「作成」ボタンは「セキュリティ」カテゴリと「管理」カテゴリにのみ使用できます。

3. 「ポリシーの作成」ページ(図7-3)で、ポリシーのパス、名前および簡単な説明を入力します。すべてのポリシーは、ポリシーが存在するディレクトリによって識別されます。
「ポリシーの推奨ネーミング規則」に記載されているポリシーのネーミング規則に従うことをお薦めします。

図7-3 「ポリシーの作成」ページ

注意:
ポリシーの作成後は、ポリシーの名前を編集できません。ポリシー名を変更するには、ポリシーをコピーして別の名前を割り当てます。

4. 「ローカルの最適化」 コントロールを設定します。「ローカルの最適化」コントロールについては、「ポリシーに対するローカルの最適化の構成」を参照してください。

5. デフォルトで、ポリシーが有効化されています。ポリシーを無効化する場合は、「有効」ボックスの選択を解除します。有効化されていないポリシーは、実行時に施行されません。

6. 「適用先」メニューから選択して、ポリシーを添付できるポリシー・サブジェクトのタイプを指定します。「サービス・バインディング」を選択する場合は、Webサービス・エンドポイントまたはWebサービス・クライアントのいずれか、あるいはその両方にポリシーを添付できるかどうかを指定します。
事前定義済アサーションのうち、「サービス・カテゴリ」の「両方」に追加できるのは、タイプがsecurity/loggingの(次に追加する)アサーションのみです。その他のタイプのアサーションを追加する予定の場合、「サービス・エンドポイント」または「サービス・クライアント」を選択します。

7. 1つのアサーションを追加する手順

1. 「アサーション」セクションで、「追加」をクリックします。

2. 「アサーションの追加」ボックスで、アサーションの意味のある名前を入力し、「アサーション・テンプレート」リストからアサーション・テンプレートを選択します。
Oracle Fusion Middleware Webサービスのポリシー・アサーション・テンプレートの詳細は、付録C「事前定義済アサーション・テンプレート」を参照してください。

3. 「OK」をクリックします。

8. ORグループを追加するには、ORグループの追加をクリックします。詳細は、「ポリシーへのORグループの追加」を参照してください。

9. 「アサーション」セクションで、追加したアサーションを選択します。

10. 「アサーション詳細」セクションで、アサーションの説明を入力します。

11. アサーション・カテゴリに対してアクティブな場合、「設定」タブで、アサーションのプロパティを指定します。プロパティ設定の詳細は「ヘルプ」アイコンをクリックしてください。

12. アサーション・カテゴリに対してアクティブな場合、「構成」タブをクリックし、構成オプションを設定します。プロパティ設定の詳細は「ヘルプ」アイコンをクリックしてください。

13. 必要に応じてその他のアサーションを追加します。

14. アサーションの追加が終わったら、アサーションを選択して、上および下コントロールを使用し、必要に応じて並べ替えます。アサーションは、リストに表示される順序で起動されます。

15. 「検証」をクリックして、ポリシーにエラーがないことを確認します。ポリシーの検証の詳細は、「Webサービス・ポリシーの検証」を参照してください。
ポリシーが無効な場合、予防措置としてそのポリシーは無効化されます。検証の問題を解決したら、ポリシーを有効化する必要があります。

16. 「保存」をクリックします。

既存のポリシーからのWebサービス・ポリシーの作成

Webサービス・ポリシーを選択し、このポリシーをベースにして別のポリシーを作成できます。デフォルトで、Oracle WSMは事前定義のポリシーのセットを提供します。事前定義済ポリシーのいずれかのコピーを作成することも、作成したポリシーのコピーを作成することも可能です。ポリシーを作成すると、アサーションの追加や削除、既存のアサーションの変更など、その他のポリシーと同じように扱うことができます。

Webサービス・ポリシーのコピーを作成する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」リストからポリシーを選択して「類似作成」をクリックします。

3. 「ポリシーの作成」ページで、ポリシーの名前を入力します。
コピーしたポリシーの名前にCopyという語が追加されます。これは、新しいポリシーに割り当てられるデフォルトの名前です。たとえば、コピーするポリシーの名前がoracle/wss10_username_token_serviceの場合、コピーのデフォルトの名前はoracle/wss10_username_token_service_Copyです。

この新しいポリシーの名前を、環境でよりわかりやすい名前に変更することをお薦めします。

4. アサーションを含め、必要に応じてポリシーを変更します。

5. 「検証」をクリックして、ポリシーにエラーがないことを確認します。ポリシーの検証の詳細は、「Webサービス・ポリシーの検証」を参照してください。

6. 「保存」をクリックします。

Webサービス・ポリシーのインポート

Oracle WSMリポジトリにポリシーをインポートするには、この項の手順に従ってください。ポリシーをインポートすると、Webサービスへの添付や変更を行うことができます。

注意:
インポートするポリシー名は、リポジトリに存在しないものであることが必要です。
ポリシー名とファイル名は異なることに注意してください。ポリシー名はポリシー・コンテンツの名前属性によって指定されますが、ファイル名はポリシー・ファイルの名前です。2つの名前を一致させると便利ですが、必須ではありません。

ポリシーの名前に接頭辞「oracle_」を付けることはできません。そうしないと、そのポリシーを使用しようとしたときに例外が返されます。

Webサービス・ポリシーをインポートする手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで「ファイルからインポート」をクリックします。

3. 「ファイルからのポリシーの作成」ボックスで、「ポリシー・ファイルの選択」ボックスにファイルのパスを入力します。または、「参照」ボタンをクリックし、ポリシー・ファイルを選択します。

4. 「OK」をクリックします。

カスタム・ポリシーの作成

カスタム・アサーションを使用したカスタムWebサービス・ポリシーの作成の詳細は、Oracle Web Services Manager拡張ガイドのカスタム・アサーションの作成に関する項を参照してください。

ポリシー・アサーション・テンプレートの管理

Fusion Middlewareのインストールには、ポリシーの作成、または新しいポリシーを作成するためのコピーに使用できる、事前定義済アサーション・テンプレートが含まれます。詳細は、「ポリシー・アサーションを使用したポリシーの作成」を参照してください。

ポリシーには、1つ以上のアサーションを追加できます。事前定義済アサーションは、付録C「事前定義済アサーション・テンプレート」で説明されています。アサーションは、リストに表示される順序で実行されます。リストのアサーションの順序は、アサーションを選択し、上または下矢印をクリックすることで変更できます。

次の項では、アサーションの使用の詳細について説明します。

- 「Webサービス・アサーション・テンプレート」ページへの移動

- 「アサーション・テンプレートのネーミング規則」

- 「アサーション・テンプレートの表示」

- アサーション・テンプレートの検索

- アサーション・テンプレートの作成

- アサーション・テンプレートの編集

- 構成プロパティの編集

- 「ポリシーへのアサーションの追加」

- 「ポリシーへのORグループの追加」

- 「アサーションの構成」

- 「アサーション・テンプレートのエクスポート」

- 「アサーション・テンプレートのインポート」

- アサーション・テンプレートの削除

「Webサービス・アサーション・テンプレート」ページへの移動

アサーション・テンプレートは、「Webサービス・アサーション・テンプレート」ページからドメイン・レベルで管理できます。このページから、アサーション・テンプレートをコピー、編集および削除できます。

「Webサービス・アサーション・テンプレート」ページに移動する手順

1. ナビゲータ・ペインで「WebLogicドメイン」を開きます。

2. アサーション・テンプレートを管理するドメインをクリックします。

3. 「WebLogicドメイン」メニューから「Webサービス」→「ポリシー」を選択します。
「Webサービス・ポリシー」ページが表示されます。

4. ページの右上角の「Webサービス・アサーション・テンプレート」をクリックします。
次の図に示すように、「Webサービス・アサーション・テンプレート」ページが表示されます。

図7-4 「Webサービス・アサーション・テンプレート」ページ

アサーション・テンプレートのネーミング規則

アサーション・テンプレートに名前を付ける際には、事前定義済ポリシーに名前を付ける時に使用するのと同じネーミング規則が使用されます。アサーション・テンプレートは、oracle/wss10_message_protection_service_templateなど、oracle/というディレクトリ名で始まり、最後の接尾辞_templateで識別されます。事前定義済ポリシーのネーミング規則の詳細は、「ポリシーの推奨ネーミング規則」を参照してください。

アサーション・テンプレートの表示

この項の手順に従ってアサーション・テンプレートを表示します。

1. 「「Webサービス・アサーション・テンプレート」ページへの移動」で説明されているように、「Webサービス・アサーション・テンプレート」ページに移動します。

2. 表から、表示するアサーション・テンプレートを選択します。

3. 「表示」をクリックします。

4. 「テンプレートの表示」ページで、アサーションを確認します。

5. 完了したら、「Webサービス・アサーション・テンプレートに戻る」をクリックします。

アサーション・テンプレートの検索

Webサービス・アサーション・テンプレートは、カテゴリ、名前、またはその両方で検索できます。これを行うには、次の手順を実行します。

1. 「「Webサービス・アサーション・テンプレート」ページへの移動」で説明されているように、「Webサービス・アサーション・テンプレート」ページに移動します。

2. 次の手順を1つ以上実行します。

- 特定のカテゴリ(またはすべてのカテゴリ)でアサーション・テンプレートを検索するには、「カテゴリ」リストからカテゴリを選択します。
有効なカテゴリに含まれるのは、「すべて」、「セキュリティ」、「MTOMアタッチメント」、「信頼できるメッセージング」、「WSアドレス」および「管理」です。

- 特定の文字列を含むアサーション・テンプレートを検索するには、「名前」フィールドに文字列を入力します。
アサーション・テンプレートの名前の一部を指定すると、指定されたカテゴリでその文字列を含むすべてのアサーション・テンプレートが表示されます。

3. 「名前」フィールドの隣の「アサーション・テンプレート」アイコンをクリックします。
指定した検索条件に一致するアサーション・テンプレートのみが含まれるように、アサーション・テンプレート・リストが更新されます。

アサーション・テンプレートの作成

新しいアサーション・テンプレートは、既存のアサーションに基づいて作成されます。必要な動作に最も一致するアサーション・テンプレートを選択し、変更を行って新しい動作を作成します。

アサーション・テンプレートを作成する手順

1. 「「Webサービス・アサーション・テンプレート」ページへの移動」で説明されているように、「Webサービス・アサーション・テンプレート」ページに移動します。

2. 「アサーション・テンプレート」表から、コピーするアサーション・テンプレートを選択します。

3. 「類似作成」をクリックします。
次の図は、「テンプレートの作成」ページを示しています。

図7-5 「テンプレートの作成」ページ

4. 「テンプレート情報」セクションで、アサーションの名前を編集し、オプションで短い説明を入力します。
コピーしたアサーション・テンプレートの名前にCopyという語が追加されます。これは、新しいアサーション・テンプレートに割り当てられるデフォルトの名前です。たとえば、コピーするアサーション・テンプレートの名前がoracle/wss10_username_token_service_templateの場合、コピーのデフォルトの名前はoracle/wss10_username_token_service_template_Copyです。

この新しいアサーション・テンプレートの名前は、使用している環境で意味のある名前に変更することをお薦めします。

5. 「保存」をクリックします。
「アサーション・テンプレート」表にアサーションが追加されます。これで、新しいアサーションを選択し、「編集」をクリックしてアサーションを構成できます。

アサーション・テンプレートの編集

注意:
有効な既知のテンプレート・セットをいつでも使用できるように、事前定義済アサーション・テンプレートは編集しないことをお薦めします。

この項の手順に従ってアサーション・テンプレートを編集します。

1. 「「Webサービス・アサーション・テンプレート」ページへの移動」で説明されているように、「Webサービス・アサーション・テンプレート」ページに移動します。

2. 表から、編集するアサーション・テンプレートを選択します。

3. 「編集」をクリックします。

4. 「設定」または「構成」タブをクリックして、必要に応じてアサーション・テンプレートを編集します。
各テンプレートで編集できる設定は、付録C「事前定義済アサーション・テンプレート」で説明されています。「構成」タブから編集できるプロパティの詳細は、 「構成プロパティの編集」を参照してください。

5. テンプレートの編集を終えたら、「保存」をクリックします。

構成プロパティの編集

事前定義済アサーション・テンプレートには、環境に一致させるために構成できる構成プロパティが含まれます。たとえば、アサーション・テンプレート内で構成できるプロパティには、csf-key、saml.issuer.name、keystore.recipient.alias、roleなどが含まれます。既存の事前定義済アサーション・テンプレートを編集する、またはFusion Middleware Controlの「類似作成」オプションを使用してアサーション・テンプレートを作成するとき、各プロパティに次の設定を構成できます。

注意:
有効な既知のテンプレート・セットをいつでも使用できるように、事前定義済アサーション・テンプレートは編集しないことをお薦めします。

- 説明: プロパティの説明。

- 値: 現在の値。

- デフォルト: デフォルト値。この値は、「値」フィールドが設定されていない場合に使用されます。

- コンテンツ・タイプ: 次のいずれかに設定できます。

- 定数: プロパティはオーバーライドできません。

- 必須: プロパティは必須であり、オーバーライドできます。

- オプション: プロパティはオプションであり、オーバーライドできます。

プロパティを構成するには:

1. 「アサーション・テンプレートの編集」で説明するように、編集するアサーション・テンプレートを選択します。

2. 「構成」タブをクリックします。
テンプレートのプロパティのリストが表示されます。

3. リストからプロパティを選択してから、「編集」をクリックします。
図7-6に示す「構成プロパティの編集」ボックスが表示されます。

図7-6 アサーションの作成時に表示される「構成プロパティの編集」ウィンドウ

4. 構成の値を入力し、「OK」をクリックします。

注意:
「ポリシーへのアサーションの追加」で説明するように、ポリシーにアサーションを追加するとき、アサーション構成プロパティを設定できます。特に、Value、DefaultおよびDescriptionプロパティを環境に一致するように設定できます。アサーション・テンプレートで定義されている「コンテンツ・タイプ」プロパティ設定は変更できず、「構成プロパティの編集」ウィンドウに表示されません。

ポリシーへのアサーションの追加

「ポリシーの作成」ページ、「ポリシーのコピー」ページまたは「ポリシーの詳細の編集」ページからアサーションを追加できます。

各ポリシーに含めることができるアサーションは、MTOMアタッチメントおよび信頼できるメッセージングの各カテゴリから1つのみです。ポリシーには、セキュリティ・カテゴリに属するアサーションをいくつでも含めることができますが、アサーションの組合せが有効であることが必要です。有効なアサーションの詳細は、「Webサービス・ポリシーの検証」を参照してください。

ポリシーにアサーションを追加する手順

1. 「ポリシーの作成」ページ、「類似作成」ページ、または「ポリシーの詳細の編集」ページに移動します。

2. 「アサーション」セクションで、「追加」をクリックします。

3. 「アサーションの追加」ボックスで、アサーションの名前を入力し、「アサーション・テンプレート」リストからアサーションを選択します。

4. 「OK」をクリックします。

5. アサーションを構成するには、「設定」タブをクリックし、必要に応じて設定を編集します。

6. 構成プロパティを編集するには、「構成」タブをクリックします。
アサーションに定義された構成プロパティのリストが表示されます。

7. 編集するプロパティを選択してから、「編集」をクリックします。
図7-7に示すように、「構成プロパティの編集」ウィンドウが表示されます。

図7-7 ポリシー内に表示されるときに表示される「構成プロパティの編集」ウィンドウ

8. 構成プロパティを編集し、「OK」をクリックします。
Description、ValueおよびDefaultプロパティのみを編集できることに注意してください。アサーション・テンプレートで定義されている「コンテンツ・タイプ」プロパティ設定は変更できず、表示されません。これらのプロパティの詳細は、「構成プロパティの編集」を参照してください。

9. 確認した後、「保存」をクリックしてポリシーを保存します。

ポリシーへのORグループの追加

1つ以上のアサーションを含むORグループを作成して、1つのポリシーで複数のタイプのセキュリティ・トークンを使用するようにできます。クライアントは、ORグループに定義されている任意のポリシーを実行できます。詳細は、「複数のポリシー選択肢の定義(ORグループ)」を参照してください。

ポリシーに追加できるORグループは1つのみです。ORグループを生成すると、ORグループの追加ボタンはグレー表示になります。

「ポリシーの作成」ページ、「ポリシーのコピー」ページまたは「ポリシーの詳細の編集」ページからORグループを追加できます。

ポリシーにORグループを追加する手順

1. 「ポリシーの作成」ページ、「類似作成」ページ、または「ポリシーの詳細の編集」ページに移動します。

2. 「アサーション・リスト」セクションで「ORグループの追加」をクリックします。

3. 「ORグループの追加」ダイアログで、1番目のアサーションの名前を入力し、「アサーション・テンプレート」リストからアサーション・テンプレートを選択します。

4. 「OK」をクリックします。
ORグループにアサーションが追加されます。

5. ORグループに他のアサーションを追加する手順

1. ORグループ内のアサーションが現在選択されていることを確認します。

2. 「追加」をクリックします。

3. 「アサーションの追加」ダイアログで、グループ内のアサーションの名前を入力し、「アサーション・テンプレート」リストからアサーション・テンプレートを選択します。

4. 「OK」をクリックします。

6. アサーションを構成するには、「アサーションの構成」を参照してください。
attachToとカテゴリのポリシー属性値により、現在のポリシー内で有効なアサーションが制限されます。ORグループ内のすべてのアサーションが考慮されるようにするには、attachToとカテゴリの属性値と互換性があることが必要です。

7. ORグループにアサーションを追加し終わったら、アサーションを選択して、上および下コントロールを使用し、必要に応じて並べ替えます。アサーションは、リストに表示される順序で起動するよう考慮されます。

8. ORグループからアサーションを削除するには、アサーションを選択して「削除」をクリックします。ORグループ全体を削除するには、ORグループを選択して「削除」をクリックします。

アサーションの構成

ポリシーにアサーションを追加すると、アサーション属性を構成できます。「ポリシーの作成」ページ、「類似作成」ページまたは「ポリシーの詳細の編集」ページからアサーションを構成できます。

アサーションを構成する手順

1. 「ポリシーの作成」ページ、「類似作成」ページ、または「ポリシーの詳細の編集」ページに移動します。

2. ページの 「アサーション」セクションで、「アサーション」表で構成するアサーションを選択します。

3. 「設定」または「構成」タブをクリックします。

4. SettingsおよびConfigurationプロパティを編集し、「保存」をクリックします。

SettingsおよびConfigurationアサーション・プロパティの詳細は、付録C「事前定義済アサーション・テンプレート」を参照してください。「構成」タブに表示される構成プロパティの詳細は、「構成プロパティの編集」を参照してください。

アサーション・テンプレートのエクスポート

Oracle Enterprise Manager Fusion Middleware Controlからアサーション・テンプレートを個別にエクスポートできます。アサーション・テンプレートをディレクトリにコピーすることも、アサーション・テンプレートをインポートして別のリポジトリに移動することもできます。移動すると、「アサーション・テンプレートのインポート」で説明されているように、アサーション・テンプレートをインポートできます。

アサーション・テンプレートをエクスポートする手順

1. 「「Webサービス・アサーション・テンプレート」ページへの移動」で説明されているように、「Webサービス・アサーション・テンプレート」ページに移動します。

2. 「アサーション・テンプレート」表から、ファイルにエクスポートするアサーション・テンプレートを選択します。

3. 「ファイルにエクスポート」をクリックします。
ファイルを開くか保存するよう要求されます。

4. 「ファイルの保存」をクリックします。

5. 「OK」をクリックします。

6. ファイルの保存先のローカル・ディレクトリの場所に移動し、必要に応じてファイル名を更新します。

7. 「保存」をクリックします。

アサーション・テンプレートのインポート

この項の手順に従ってアサーション・テンプレートを表示します。

1. 「「Webサービス・アサーション・テンプレート」ページへの移動」で説明されているように、「Webサービス・アサーション・テンプレート」ページに移動します。

2. 「ファイルからインポート」をクリックします。
アサーション・テンプレート・ファイルを用意するよう要求されます。

3. 「参照」をクリックして、アサーション・テンプレート・ファイルが存在するディレクトリに移動し、インポートするアサーション・テンプレートを選択します。

4. 「OK」をクリックします。
「アサーション・テンプレート」表にアサーション・テンプレートが追加されます。

アサーション・テンプレートの削除

この項の手順に従ってアサーション・テンプレートを削除します。

1. 「「Webサービス・アサーション・テンプレート」ページへの移動」で説明されているように、「Webサービス・アサーション・テンプレート」ページに移動します。

2. 「アサーション・テンプレート」表から、削除するアサーション・テンプレートを選択します。

3. 「削除」をクリックします。
アサーション・テンプレートの削除を確認するよう要求されます。

4. 「OK」をクリックします。

Webサービス・ポリシーの検証

Webサービス・ポリシーで許可されているポリシー・アサーションのタイプと数には制限があります。ポリシーを検証すると、Enterprise Managerにより、ポリシーがこれらの制限に準拠しているかどうかが確認されます。ポリシーに含めることができるのは、単一のカテゴリに属するアサーションのみです。そのため、同じポリシー内で、セキュリティ・アサーションとMTOMアサーションを結合することはできません。ポリシー・タイプはアサーションのカテゴリで決定されます。したがって、セキュリティ・アサーションを含むポリシーはセキュリティ・ポリシーであり、管理アサーションを含むポリシーは管理ポリシーです。セキュリティ・アサーションは、さらにサブカテゴリ(認証、ロギング、メッセージ保護(msg-protection)および認可)に分類されます。

ポリシーに含めることのできるアサーションの数とタイプには制限があります。制限事項は次のとおりです。

- MTOMおよび信頼できるメッセージング・ポリシーに含めることができるのは1つのアサーションのみです。

- セキュリティ・ポリシーには複数のセキュリティ・アサーションを含めることができますが、ポリシー、暗号化、署名、および認証で許可されるのは次のサブカテゴリから1つのアサーションのみです。

- 認証とメッセージ保護の両方が含まれるアサーションもあります。たとえば、oracle/wss11_username_token_with_message_protection_service_policyを表示すると、2つ目のアサーションはsecurity/authenticationとsecurity/msg-protectionの2つのカテゴリに分類されています。図7-8を参照してください。

図7-8 2つのカテゴリに属するアサーション

- セキュリティ・ポリシーには、security_log_templateアサーションをいくつでも含めることができます。たとえば、事前定義済のセキュリティ・ポリシーを表示すると、2つのロギング・アサーションが含まれています。

認証およびメッセージ保護に1つ目のポリシーを、認可に2つ目のポリシーを作成することをお薦めします。認証と認可の両方のアサーションを含むポリシーを作成する場合は、認証アサーションを認可アサーションより先に指定する必要があります。

ポリシーを検証すると、検証プロセスにより、これらの要件にポリシーが一致することが確認されます。ポリシーの作成中に検証が失敗すると、ポリシーは作成されますが無効とマークされます。

ポリシーを検証する手順

1. 「ポリシーの作成」または「ポリシーの編集」ページから、ポリシーを変更します。

2. 「検証」をクリックします。
成功した場合、「検証成功。」メッセージが表示されます。

失敗すると、結果のエラー・メッセージにより問題が説明されます。

Webサービス・ポリシーの編集

作成するポリシー、または製品に付属している事前定義済のポリシーを変更できます。ただし、使用できることがわかっている有効なポリシー・セットが常にあるように、事前定義済ポリシーは変更しないことをお薦めします。

変更内容は、ポリシー変更の次の調査間隔で反映されます。データベースに基づくメタデータ・リポジトリを使用している場合は、ポリシーへの変更を保存するたびに新しいバージョンが作成され、古いバージョンが保持されます。

Webサービス・ポリシーを編集する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表からポリシーを選択して「編集」をクリックします。

3. 「ポリシーの編集」ページで、ポリシーに変更を行います。

4. 「保存」をクリックします。

Webサービス・ポリシーのバージョニング

ポリシーへの変更内容が保存されるたびに、新しいバージョンのポリシーが自動的に作成され、バージョン番号が増分されます。これらの変更履歴はポリシー・マネージャにより維持され、以前のバージョンに戻すことができます。

たとえば、ロギングを含むバージョンと含まないバージョンなど、2つの異なるバージョンのポリシーを作成し、交互に切り替えると便利です。別の例として、oracle/binding_authorization_denyall_policyポリシーなどのポリシーを、選択したロールと組み合せて使用して、Webサービスへのアクセスを一時的に禁止することが必要になる場合があります。

バージョニング機能を使用すると、複数のバージョンのポリシーを必要になるたびに再作成することなく再利用できます。

次の項では、バージョニングについてより詳細に説明します。

- 「Webサービス・ポリシーのバージョン履歴の表示」

- 「「リストア」および「アクティブ化」オプションについて」

- 「新しいバージョンのWebサービス・ポリシーの作成」

- 「Webサービス・ポリシーの以前のバージョンのリストア」

- 「Webサービス・ポリシーのバージョンの削除」

注意:
この項で説明されているバージョニング機能では、データベース・ベースのOracle WSMリポジトリを使用する必要があります。データベース・ベースのリポジトリを使用していない場合は、バージョニング情報は保持または表示されません。

Webサービス・ポリシーのバージョン履歴の表示

次の手順で説明するように、「Webサービス・ポリシー」ページからWebサービス・ポリシーのバージョン履歴を表示できます。

Webサービス・ポリシーのバージョン履歴を表示する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表からポリシーを選択して「表示」をクリックします。
「ポリシー情報」セクションで、アクティブなバージョンのバージョン番号や、ポリシーが最後に更新された日付などのバージョン情報を参照します。

3. 「ポリシーの表示」ページで、「バージョン履歴リンク」(図7-9)をクリックし、「ポリシーのバージョン履歴の表示」ページに移動します。

図7-9 「ポリシーの編集」ページの「バージョン履歴リンク」

4. ポリシーは、アクティブなポリシーが最初に表示された状態で、「ポリシー・バージョンの履歴」表の順番で表示されます(図7-10)。アクティブなポリシーのバージョン番号が一番大きく、これがサブジェクトに添付できる唯一のポリシーです。ただし、以前のバージョンのポリシーをアクティブなポリシーにすることもできます。

図7-10「ポリシーのバージョン履歴の表示」ページ

「リストア」および「ポリシーのアクティブ化」オプションについて

「ポリシー・バージョンの履歴」表(図7-10)からポリシーを選択し、「リストア」または「ポリシーのアクティブ化」ボタンのいずれかをクリックすることで、以前のバージョンをアクティブなバージョンにできます。どちらの場合も、選択したポリシーが現在のアクティブなポリシーになり、ポリシーのバージョン番号が大きくなります。「リストア」および「ポリシーのアクティブ化」オプションの違いを次に説明しています。

- 「リストア」をクリックすると、以前のバージョンのポリシーが保存されます。以前のバージョンを、削除せずにアクティブなバージョンにできます。ポリシーを変更し、ポリシーの以前のバージョンを保持する必要がある場合には、「リストア」を使用します。

- 「ポリシーのアクティブ化」をクリックすると、選択されたポリシーが現在のアクティブなポリシーになります。以前のバージョンのポリシーが削除され、現在のバージョンが1つ大きくなります。たとえば、バージョン1とバージョン3のポリシーがあるとします。バージョン1を選択し、「ポリシーのアクティブ化」をクリックします。ポリシーはバージョン4としてアクティブ化され、バージョン1は削除されます。
「ポリシーのアクティブ化」オプションは、異なるバージョン間で切り替える必要がある場合に使用できますが、ポリシー・バージョンを追加し続ける必要はありません。たとえば、営業時間内にはあるバージョンのポリシーを使用し、営業時間外には別のバージョンを使用するとします。バージョン間の切替えは行いますが、同じポリシーの複数のバージョンを蓄積する必要はありません。したがって、「ポリシーのアクティブ化」オプションを使用して以前のバージョンを削除します。

また、「ポリシー・バージョンの履歴」表からポリシーを選択し、「削除」をクリックすると、アクティブなポリシーを除く、任意のバージョンのポリシーを削除できます。「ポリシー・バージョンの履歴」ページから、ポリシーを編集することはできません。「Webサービス管理」ページからポリシーを編集する必要があります。

新しいバージョンのWebサービス・ポリシーの作成

既存のWebサービス・ポリシーの新しいバージョンを作成するには、必要な変更を行ってポリシーを保存します。

注意:
保存時には、暗黙的な検証が実行されます。検証が失敗した場合、ポリシーは維持されますが、ステータスが「無効」に設定されます。

Webサービス・ポリシーの新しいバージョンを作成する手順

1. 「ポリシーの編集」ページで、ポリシーに変更を行います。

2. 「保存」をクリックします。

ページの「ポリシー情報」セクションで、ポリシーのバージョン番号が1つ大きくなります。

Webサービス・ポリシーの以前のバージョンのリストア

以前のバージョンのポリシーに戻すには、次の手順に従ってください。

Webサービス・ポリシーの以前のバージョンをリストアする手順

1. 図7-11に示すように、「ポリシーの表示」ページで、「バージョン履歴リンク」をクリックします。

図7-11「ポリシーの編集」ページの「バージョン履歴リンク」

2. ポリシー履歴表でポリシーを選択し、「リストア」をクリックするか、「ポリシーのアクティブ化」をクリックします。

注意:
「リストア」をクリックすると、ポリシーの以前のバージョンが保存され、「ポリシーのアクティブ化」をクリックすると、以前のバージョンが削除されます。

「リストア」をクリックすると、選択されたポリシーが現在のアクティブなポリシーになります。以前のバージョンのポリシーが保存され、現在のバージョンが1つ大きくなります。

「ポリシーのアクティブ化」をクリックすると、選択されたポリシーが現在のアクティブなポリシーとなります。以前のバージョンのポリシーが削除され、現在のバージョンが1つ大きくなります。

Webサービス・ポリシーのバージョンの削除

以前のバージョンのポリシーを完全に削除するには、次の手順に従ってください。アクティブなポリシー・バージョンを除き、すべてのバージョンを削除できます。アクティブなバージョンを含むすべてのバージョンのポリシーを削除するには、「Webサービス・ポリシーの削除」を参照してください。

Webサービス・ポリシーのバージョンを削除する手順

1. 「ポリシーのコピー」ページまたは「ポリシーの詳細の編集」ページで、「バージョン履歴リンク」をクリックします。

2. ポリシー履歴表で削除するポリシーを選択し、「削除」をクリックします。

3. 削除の確認を要求するメッセージが記載されたダイアログ・ボックスが表示されます。「OK」をクリックします。

選択したポリシーが、Oracle WSMリポジトリおよびポリシー履歴表から削除されます。

Webサービス・ポリシーのエクスポート

ポリシーをエクスポートし、開発環境から本番環境にポリシーをコピーしたり、単にポリシーを別のツールやアプリケーションで表示したりできます。Oracle WSMリポジトリからポリシーをエクスポートするには、この項の手順に従ってください。ポリシーをエクスポートすると、別のポリシー・ストアへのインポート、Webサービスへの添付、変更などを行えます。

Webサービス・ポリシーをエクスポートする手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. エクスポートするポリシーをリストから選択します。

3. 「Webサービス・ポリシー」ページで「ファイルにエクスポート」をクリックします。

4. ポリシーを任意のファイル名で保存します(ファイル名にはASCII文字のみを使用します)。

注意:
ポリシーの名前に接頭辞「oracle_」を付けることはできません。事前定義済ポリシー・ファイルをエクスポートする際に、ファイル名はoracle/<policyname>からoracle_<policyname>に変更されます。この名前を変更する必要があります。そうしないと、そのポリシーを使用しようとしたときに例外が返されます。

Webサービス・ポリシーの削除

ポリシーを削除する前に、ポリシーがポリシー・サブジェクトに添付されていないことを確認することをお薦めします。ポリシーの依存性分析を実行することで、ポリシーが添付されたポリシー・サブジェクトを参照できます。詳細は、「ポリシーの使用状況分析」を参照してください。サブジェクトに添付されたポリシーの削除を試行すると、警告が表示されます。添付されたポリシーは削除できます。ただし、ポリシーが添付されているサブジェクトが次に起動されたときに、Webサービス・リクエストが失敗します。

ポリシーを削除すると、アクティブなポリシーおよび以前のバージョンのすべてのポリシーが削除されます。アクティブなポリシー・バージョンを保持し、以前のバージョンのポリシーのみを削除するには、「Webサービス・ポリシーのバージョニング」を参照してください。

Webサービス・ポリシーを削除する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表からポリシーを選択して「削除」をクリックします。

3. 削除の確認を要求するダイアログ・ボックスが表示されます。「OK」をクリックします。

クライアント・ポリシーの生成

サービス・ポリシーを作成すると、WebサービスWSDLを使用して、そのサービスのコールに必要なパラメータと等価のクライアント・ポリシーを生成できます。

クライアント・ポリシーの生成には、標準WSDLではなく、Oracle WSDLを使用する必要があります。WebサービスのURLは、?wsdlではなく?orawsdlで追加する必要があります。ポリシーを生成すると、クライアント・ポリシーがサービス・ポリシーと連携する可能性が高くなります。

ポリシーを生成すると、そのポリシーを編集できます。ポリシーには、サービス・アサーションに一致するペアであるクライアント・アサーションが移入されます。たとえば、サービス・ポリシーにアサーションwss_http_token_service_templateが含まれる場合、生成されるクライアント・ポリシーにはそれに対応するwss_http_token_client_templateが移入されます。

ただし、生成されるクライアント・セキュリティ・ポリシーには、構成情報は含まれません。そのため、ポリシーが生成されたら、クライアント・アサーション・テンプレートを使用して、クライアント・ポリシーに構成情報をインポートします。この例では、クライアント・アサーション・テンプレートwss_http_token_client_templateから構成情報をインポートします。ポリシーに必要な変更を行った後に、ポリシーを保存する必要があります。ポリシーを保存すると、「Webサービス管理」ページからアクセスできます。

また、生成された不要なポリシーは削除できます。たとえば、すでに存在するMTOMや信頼できるメッセージング・ポリシーの複製の削除が必要な場合があります。

Webサービス・クライアント・ポリシーを生成する手順

1. Webサービス・クライアント・ポリシーを生成するWebサービスのWSDLを特定します。

2. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

3. 図7-12に示すように、「Webサービス・ポリシー」ページで、「クライアント・ポリシーの生成」をクリックします。

図7-12 「Webサービス・ポリシー」ページの「クライアント・ポリシーの生成」

4. 図7-13に示すように、「生成されたクライアント・ポリシー」ページで、Web_service_endpoint?orawsdlという形式を使用してWebサービスWSDLへのURLを入力し、コントロールをクリックしてWebサービスおよびポートにアクセスします。

注意:
対応するクライアント・ポリシーの生成に使用するWSDLを取得するには、?wsdlではなく?orawsdlを使用する必要があります。これを実行するには、wsdlの前にoraを追加します。

Web_service_endpointは、WebサービスへのURLです。Webサービスに公開されたOracle WSDLのサービス・ポリシー情報は、初期クライアント・ポリシー生成の基礎として使用されます。

図7-13 Webサービスおよびポートの取得

5. 「生成されたクライアント・ポリシー」ページ(図7-14)で、図7-14に示すように、「生成」をクリックしてクライアント・ポリシーを生成します。

図7-14 「生成されたクライアント・ポリシー」ページ

6. 表から生成されたポリシーを選択して、「編集」をクリックします。

7. 「ポリシーの編集」ページで、必要に応じてポリシーを編集します。

8. 「検証」をクリックして、変更内容を検証します。

9. 「保存」をクリックして、ポリシーに対する変更を保存します。

10. 「生成されたクライアント・ポリシー」ページに戻ります。必要に応じてその他のポリシーも編集します。

ポリシーを保存すると、「Webサービス管理」ページに移動して、「ポリシー」表でポリシーを検索できます。

単一のポリシー・サブジェクトに対するポリシーの有効化

Webサービスにポリシーを添付すると、デフォルトで有効化されます。Webサービスからポリシーの関連付けを解除せずに、1つのエンドポイントに対してポリシーを一時的に無効化できます。ポリシーがエンドポイントに対して無効化されると、そのエンドポイントに対して施行されません。

Fusion Middleware Controlの使用

ポリシーはエンドポイントに対して個別に有効化または無効化する必要があり、複数のポリシーを同時に有効化または無効化することはできません。

ポリシー添付を有効化または無効化するには:

1. 「Webサービス・エンドポイント」ページで、「OWSMポリシー」タブをクリックします。

2. 無効化または有効化するポリシーを選択します。
Oracle Infrastructure Webサービスについて、「直接アタッチされたポリシー」表からポリシーを選択します。

3. 「有効化」または「無効化」を選択して、個々にポリシーを有効化または無効化し、選択を確認します。(図7-15を参照。)

図7-15 ポリシー添付の有効化または無効化

WLSTの使用

エンドポイント(ポート)に添付されている1つまたは複数のポリシーを有効化または無効化するには:

注意:
WLSTを使用してクライアント・ポリシーを有効化または無効化するには、「WLSTを使用したWebサービス・クライアント・ポリシーの有効化および無効化」を参照してください。

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、Webサービスを表示するWebLogic Serverの実行中のインスタンスに接続します。

2. WLSTコマンドlistWebServicePoliciesを使用して、目的のポートに添付されたWebサービス・ポリシーのリストを表示します。

listWebServicePolicies(application,moduleOrCompName,moduleType,serviceName,
subjectName)

たとえば、WsdlConcretePortに添付されたポリシーのリストを表示するには、次のコマンドを使用します。

wls:/base_domain/domainRuntime> listWebServicePolicies('/base_domain/soa_server1/jaxwsejb30ws',
'jaxwsejb','web','{http://namespace/}WsdlConcreteService','WsdlConcretePort')

WsdlConcretePort :
security : oracle/binding_authorization_denyall_policy , enabled=true
security : oracle/wss_username_token_service_policy , enabled=true

3. 1つのポリシーを有効化または無効化するには、enableWebServicePolicyコマンドを使用して、enable引数をtrueまたはfalseにそれぞれ設定します。

enableWebServicePolicy(application, moduleOrCompName, moduleType, serviceName, subjectName,
policyURI,[enable], [subjectType=None] ))

たとえば、oracle/binding_authorization_denyall_policyを無効化するには、次のコマンドを入力します。

wls:/base_domain/domainRuntime> enableWebServicePolicy('/base_domain/soa_server1/jaxwsejb30ws',
'jaxwsejb','web','{http://namespace/}WsdlConcreteService','WsdlConcretePort','oracle/binding_authorization_denyall_policy',false)

4. ポートに添付された複数のポリシーを有効化または無効化するには、enableWebServicePoliciesコマンドを使用して、enable引数をtrueまたはfalseにそれぞれ設定します。

enableWebServicePolicies(application, moduleOrCompName, moduleType, serviceName, subjectName,
policyURIs,[enable],[subjectType=None] ))

たとえば、次のようにします。

wls:/base_domain/domainRuntime> enableWebServicePolicies('/base_domain/soa_server1/jaxwsejb30ws',
'jaxwsejb','web','{http://namespace/}WsdlConcreteService','WsdlConcretePort',
['oracle/binding_authorization_denyall_policy',oracle/wss_username_token_service_policy],false)

5. ADFおよびWebCenterアプリケーションでは、Webサービス・アプリケーションを再起動します。SOAコンポジットを再起動する必要はありません。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

全サブジェクトのポリシーの有効化または無効化

ポリシーを作成すると、検証エラーが発生した場合を除き、デフォルトで有効化されます。ポリシーは、「ポリシーの編集」ページからグローバルに有効化または無効化できます。ポリシーは中央の1つの場所から有効化または無効化でき、添付されているすべてのポリシー・サブジェクトに対して有効化または無効化されます。

「ポリシーの編集」ページからポリシーを無効化すると、ポリシーはポリシー・サブジェクトに添付されたままになりますが、無効化されます。ポリシーに、Webサービスへのすべてのリクエストが失敗する原因となる問題があることが検出された場合は、一時的にポリシーを無効化する必要があります。問題を修正すると、ポリシーをグローバルに有効化できます。

ポリシーを無効化する前に、「使用状況分析リンク」(「ポリシーの使用状況分析」を参照)をクリックして、ポリシーが添付されているポリシー・サブジェクトを参照できます。ポリシーに対する変更内容は、ポリシー変更の次の調査間隔で反映されます。

また、すべてのポリシー・サブジェクトではなく、特定のポリシー・サブジェクトのポリシーを選択的に有効化または無効化することもできます。詳細は、「単一のポリシー・サブジェクトに対するポリシーの有効化または無効化」を参照してください。

すべてのポリシー・サブジェクトに対してWebサービス・ポリシーを有効化または無効化するには:

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「ポリシー」表からポリシーを選択して、「編集」をクリックします。

3. 「ポリシーの編集」ページの「ポリシー情報」セクションで、「有効」ボックスを選択または選択解除して、ポリシーをそれぞれ有効化または無効化します（図7-16を参照）。

図7-16 「ポリシーの編集」ページの「有効」ボックス

4. 「保存」をクリックします。

ポリシー内のアサーションの有効化または無効化

ポリシー全体を有効化または無効化するのではなく、ポリシー内に含まれる1つ以上のアサーションを有効化または無効化する必要のある場合があります。これにより、実行されるアサーションに対してより詳細のレベルの制御が提供されます。

たとえば、すべての事前定義済Webサービス・セキュリティ・ポリシーには、最初のセキュリティ・アサーションが実行される前後にSOAPメッセージ全体を取得するために、ロギング・アサーション・テンプレートのインスタンスである、oracle/security_log_templateが含まれています。デフォルトでは、ロギング・アサーションは実行されません。SOAPメッセージがメッセージ・ログに記録されるようにするには、有効にする必要があります。ロギング・アサーションは、デバッグおよび監査にのみ有効化することをお薦めします。ロギングの詳細は、「ログを使用した問題の診断」を参照してください。

ポリシー内の1つ以上のアサーションを有効化または無効化するには:

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「ポリシー」表からポリシーを選択して、「編集」をクリックします。

3. 「ポリシーの編集」ページの「アサーション」セクションで、「強制」ボックスを選択または選択解除して、ポリシー内でアサーションをそれぞれ有効化または無効化します(図7-17を参照)。

図7-17 ポリシー内のアサーションの有効化または無効化

4. 「保存」をクリックします。

ポリシーの使用状況分析

注意:
この項で説明されているポリシーの使用状況機能では、データベース・ベースのOracle WSMリポジトリを使用する必要があります。データベース・ベースのリポジトリを使用していない場合は、ポリシーの使用状況に関する情報は利用できません。

ポリシーはドメイン・レベルで作成および管理されます。ポリシーを一元管理することにより、ポリシーを再利用し、複数のポリシー・サブジェクトに添付できるようになります。ポリシーの変更(ポリシーの編集または削除など)は、ポリシーが添付されているすべてのポリシー・サブジェクトに影響します。そのため、ポリシーを変更する前に使用状況分析を行い、どのサブジェクトで特定のポリシーが使用されているかを確認することをお薦めします。

注意:
使用状況分析では、どのポリシー・サブジェクトに影響があるかが識別されるのみで、変更の影響は明確になりません。各ポリシー・サブジェクトで変更内容を評価し、続行するかどうかを決定する必要があります。

使用状況分析を実行する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。
「ポリシー」表の「アタッチメント数」列に、ポリシーが添付されているサブジェクトの数が表示されます。

2. 選択されたポリシーの「アタッチメント数」列内の数をクリックして、「使用状況分析」ページを表示します(図7-18を参照)。
あるいは、「ポリシー」表からポリシーを選択して「表示」をクリックできます。ページの「ポリシー情報」リージョンで、「使用状況分析」フィールドの「アタッチメント数」番号をクリックして、 「使用状況分析」ページを表示します。

図7-18 ポリシーの使用状況分析

「ポリシー・サブジェクト・リスト」は、サブジェクト・タイプ別にフィルタリングされます。表には、ポリシーが添付されている、選択されたタイプのポリシー・サブジェクトのリストが表示されます。有効なサブジェクト・タイプには、「Oracle WSMリポジトリ・ドキュメント」、「WLS Webサービス・クライアント」、「WLS Webサービス・エンドポイント」、および「リソース・タイプ」に示されているサブジェクト・タイプがあります。「ポリシー・サブジェクト・リスト」サマリー表には、選択したポリシー・サブジェクト・タイプのみに関連するフィールドが表示されることに注意してください。

ポリシーが添付されているポリシー・サブジェクトの合計数は、ページの下方にある「アタッチメント数」フィールドに表示されます。

3. ポリシーが添付されているポリシー・サブジェクトを表示するには、「サブジェクト・タイプ」メニューからサブジェクト・タイプを選択します。
「サブジェクト・タイプ」メニューは、ポリシーが添付されている各サブジェクト・タイプのアタッチメント数を提供します。

図7-19 「使用状況分析」ページの「サブジェクト・タイプ」メニュー

4. Oracle WSMメタデータを保存するために、複数のドメインが同じOracle WSMリポジトリを共有する場合、ローカル・ドメインまたは企業内のすべてのドメインでポリシー・サブジェクトを表示するかどうかを指定できます。企業内のすべてのドメインのポリシー・サブジェクトを表示するには、「オプションの表示」フィールドを選択します。

図7-20 「使用状況分析」ページの「表示オプション」フィールド

注意:

- ポリシーの使用状況数には、有効化されたポリシー参照と無効化されたポリシー参照の両方が含まれます。ポリシー参照の無効化の詳細は、「単一のポリシー・サブジェクトに対するポリシーの無効化」および「すべてのサブジェクトに対するポリシーの有効化または無効化」を参照してください。

- ポリシーをOracle Infrastructure Webサービス・エンドポイントに添付後、正確なポリシーの使用状況数を表示するには、Webサービス・アプリケーションを再起動する必要があります。SOAコンポジットまたはWebLogic Java EE Webサービス・アプリケーションでは再起動する必要はありません。

- 正確なポリシー使用状況数を表示するには、ADF DCクライアントを起動する必要があります。

ポリシー通知

標準WSDL(?wsdl)の場合、WS-PolicyおよびWS-SecurityPolicyで異なるバージョンの組合せをパブリッシュできます。たとえば、http://localhost:8080/abc?wsdl&wsp=1.5&wssp=1.2は、次のポリシー・バージョンがパブリッシュされたWSDLが返されます: WS-Policy 1.5およびWS-SecurityPolicy 1.2。

注意:
Oracle WSDL(?orawsdl)の場合、WS-PolicyおよびWS-SecurityPolicyで異なるバージョンの組合せを通知できません。?orawsdlの場合、ポリシーは次のバージョンのみでアドバタイズされます: WS-Policy 1.2およびWS-SecurityPolicy 1.1(Oracle拡張機能付き)。

表7-2は、有効なバージョンの組合せをリストしています。

表7-2 ポリシー通知

バージョンの組合せ

説明

?wsdl

WS-Policy 1.2およびWS-SecurityPolicy 1.1

?wsdl&wsp=1.5

WS-Policyバージョン1.5およびWS-SecurityPolicy 1.3

?wsdl&wssp=1.2

WS-Policyバージョン1.5およびWS-SecurityPolicy 1.2

?wsdl&wssp=1.3

WS-Policyバージョン1.5およびWS-SecurityPolicy 1.3

?wsdl&wsp=1.5&wssp=1.2

WS-Policy 1.5およびWS-SecurityPolicy 1.2

?wsdl&wsp=1.5&wssp=1.3

WS-Policy 1.5およびWS-SecurityPolicy 1.3

?wsdl&wsp=1.2&wssp=1.2

WS-Policy 1.2およびWS-SecurityPolicy 1.2

8 Webサービスへのポリシーの添付

この章では次の項について説明します。

- Webサービスに添付されたポリシーの表示

- Webサービスへのポリシーの添付

- ポリシー・サブジェクトの検証

- Webサービス・クライアントへのポリシーの添付

- サーブレット・アプリケーションへのポリシーの添付

- オーバーライド可能なWebサービス・ポリシーの添付

- オーバーライド可能なクライアント・ポリシーの添付

- ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成

Webサービスに添付されたポリシーの表示

次の項では、Fusion Middleware ControlおよびWebLogic Scripting Tool(WLST)を使用してWebサービスに添付されたポリシーを表示する方法について説明します。

Fusion Middleware Controlの使用

Webサービスに添付されたポリシーを表示する手順

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、Webサービスのホームページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

3. 特定のWebサービスについては、エンドポイントの名前をクリックして「Webサービス・エンドポイント」ページへ移動します。

4. 「OWSMポリシー」タブをクリックします。
図 8-1は、グローバルに、および直接ポリシーが添付されている、「Oracle Infrastructure Web Serviceエンドポイント」の画面を示しています。出力には、エンドポイントで有効であるグローバルに添付されたポリシー、すべての直接添付されたポリシー、およびエンドポイントに有効な構成があり、セキュアであるかどうかが示されます。ポリシー・セット名の上にマウスを重ねるか、ポリシー・セット名の前にある赤色のドットをクリックすると、実行時制約が表示されます(構成されている場合)。実行時制約の詳細は、「ポリシー・セットの実行時制約の指定」を参照してください。

「ポリシー・アタッチメントの優先度の指定」の説明に従って、グローバルにまたは直接アタッチされたポリシーの優先度を指定できるので、直接アタッチされたポリシーの「有効」フィールドはエンドポイントに対してそのポリシーが有効であるかどうかを示します。エンドポイントの管理を簡素化するために、有効であるかどうかに関係なく、すべての直接添付されたポリシーが出力に表示されます。対照的に、グローバルにアタッチされたポリシーは、エンドポイントに対して有効であるもののみが表示されます。エンドポイントで有効なポリシーの詳細は、「ポリシーの有効セットの計算方法」を参照してください。

図 8-1 Oracle Infrastructure Webサービス・エンドポイントに添付されたポリシー

図 8-2は、WebLogic Java EEエンドポイントの画面を示しています。エンドポイントに直接添付されたポリシーのみが表示されます。グローバルに添付されたポリシーは利用できません。

図 8-2 WebLogic Java EE Webサービス・エンドポイントに添付されたポリシー

の説明

WLSTの使用

Webサービスに添付されたポリシーを表示するには、次の手順に従ってください。

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、アプリケーションがデプロイされるWebLogic Serverの実行中のインスタンスに接続します。

2. 「アプリケーションのWebサービスの表示」の説明に従って、WLSTコマンドlistWebServicesを使用して、アプリケーションのWebサービスのリストを表示します。

3. listWebServicePortsコマンドを使用して、Webサービスのポート名とエンドポイントURLを表示します。

listWebServicePorts(application,moduleOrCompName,moduleType,serviceName)

たとえば、WsdlConcreteServiceのポートを表示するには、次のようにします。

wls:/wls-domain/serverConfig> listWebServicePorts("/wls-domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","WsdlConcreteService")

WsdlConcretePort   http://host.example.com:7001/jaxwsejb/WsdlAbstract

4. listWebServicePoliciesコマンドを使用して、Webサービス・ポートに添付されたポリシーを表示します。

listWebServicePolicies(application,moduleOrCompName,moduleType,serviceName,subjectName)

たとえば、WsdlConcretePortポートに添付されたポリシーとポリシーのオーバーライド設定を表示するには、次のようにします。

wls:/wls_domain/serverConfig> listWebServicePolicies("/wls_domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","WsdlConcreteService","WsdlConcretePort")

WsdlConcretePort :
addressing : oracle/wsaddr_policy , enabled=true
management : oracle/log_policy , enabled=true
security : oracle/wss_username_token_service_policy, enabled=true
Attached policy or policies are valid; endpoint is secure.

Webサービスへのポリシーの添付

次の項では、単一サブジェクトへのポリシーの添付方法、複数サブジェクトへの添付方法(一括添付)、およびポリシーが添付された後にサブジェクトを検証する方法について説明します。

- 単一サブジェクトへのポリシーのアタッチに関する項

- 複数のサブジェクトへのポリシーのアタッチ(一括アタッチ)に関する項

注意:
WebLogic Java EE Webサービス・ポリシー添付：

- Oracle WSMセキュリティ・ポリシーのみ添付できます。

- Oracle WSMポリシーとWebLogic Webサービス・ポリシーは、同じエンドポイントには添付できません。WebLogic Java EEエンドポイントにWebLogicポリシーが添付されていると、Oracle WSMセキュリティ・ポリシーを添付できません。WebLogicポリシーは、WebLogic Server管理コンソールを使用して添付できることに注意してください。

単一のサブジェクトへのポリシーの添付

サブジェクトは、ポリシーを関連付けられるエンティティです。サブジェクトには、1つ以上のポリシーを添付できます。

ポリシーが実行される順序は、サブジェクトにポリシーが添付される順序や、添付されたポリシーのリストの順序では決定されません。クライアントとWebサービス間でメッセージが受け渡される際に、ポリシー・インターセプタ・チェーン内のインターセプタの順序でポリシーが実行される順序が決定されます。

詳細は、「ポリシー実行の仕組み」を参照してください。

注意:
ポリシー添付は、クラスタ内のSOA、ADFおよびWebCenter Webサービスで自動的に同期がとられません。クラスタでSOA、ADFおよびWebCenterサービスを使用する場合、クラスタ内の各インスタンスにポリシーをアタッチあるいはデタッチする必要があります。この問題はWebLogic Java EE WebサービスおよびSOAコンポジット・サービスには適用されません。

Fusion Middleware Controlを使用したWebサービスへのポリシーの添付

単一のWebサービス・エンドポイントにポリシーを添付するには、次の手順に従ってください。複数のWebサービスに同時にポリシーを添付するには、「複数のサブジェクトへのポリシーの添付(一括添付)」を参照してください。

Webサービスにポリシーを添付する手順

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、Webサービスのホームページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

3. 特定のWebサービスについては、エンドポイントの名前をクリックして「Webサービス・エンドポイント」ページへ移動します。

4. 「OWSMポリシー」タブをクリックします。
エンドポイントにグローバルに添付されたポリシーおよび直接添付されたポリシーのみが、図 8-1に示すように表示されます。

5. 「アタッチ/デタッチ」をクリックします。

6. 「使用可能なポリシー」リストからポリシーを選択し、「添付」をクリックします。図8-3を参照してください。

図8-3 Webサービスへのポリシーの添付

7. ポリシーの詳細を表示するには、ポリシーを選択して、「詳細の表示」アイコンをクリックします。ポップアップ・ウィンドウに、ポリシーの読取り専用の詳細説明とそのポリシーに含まれるアサーションのリストが表示されます。詳細は、図8-4を参照してください。ポリシーの詳細を確認し終わったら、「OK」をクリックします。

図8-4 ポリシーの詳細の表示

8. ポリシーの選択と添付を続行します。完了したら、「検証」をクリックして、選択されたポリシーの組合せが有効であることを確認します。

9. 「OK」をクリックします。

10. 図8-1に示すように、「Webサービス・エンドポイント」ページの「OWSMポリシー」タブに、添付されたポリシーが表示されます。

注意:
出力には、エンドポイントで有効であるグローバルに添付されたポリシー、すべての直接添付されたポリシー、およびエンドポイントに有効な構成があり、セキュアであるかどうかが示されます。「ポリシー・アタッチメントの優先度の指定」の説明に従って、グローバルにまたは直接アタッチされたポリシーの優先度を指定できるので、直接アタッチされたポリシーの「有効」フィールドはエンドポイントに対してそのポリシーが有効であるかどうかを示します。エンドポイントの管理を簡素化するために、有効であるかどうかに関係なく、すべての直接添付されたポリシーが出力に表示されます。対照的に、グローバルにアタッチされたポリシーは、エンドポイントに対して有効であるもののみが表示されます。エンドポイントで有効なポリシーの詳細は、「ポリシーの有効セットの計算方法」を参照してください。

11. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットまたはWebLogic Java EE Webサービス・アプリケーションでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTを使用したWebサービスへのポリシーの添付

WLSTを使用して単一のWebサービスに単一のポリシーまたは複数のポリシーを添付(または解除)するには、次の手順に従ってください。

1. 「Webサービスに添付されたポリシーの表示」の「WLSTの使用」の説明に従って、現在ポートに添付されているポリシーのリストを表示します。

2. 「WLSTを使用した使用可能なポリシーのリストの表示」の説明に従って、使用可能なポリシーのリストを表示します。

3. ポリシーを添付するには、次のいずれかを実行します。

- attachWebServicePolicyコマンドを使用して、Webサービス・ポートに単一のポリシーを添付します。policyURI引数を使用して、添付するポリシーを指定します。指定したポリシーがすでに添付されているかすでに存在する場合は、このコマンドでそのポリシーが有効になります(無効な場合)。

attachWebServicePolicy(application, moduleOrCompName, moduleType, serviceName,
subjectName, policyURI, [subjectType=None]

たとえば、ポリシーoracle/wss_username_token_service_policyをWsdlConcreteServiceのWsdlConcretePortに添付するには、次のコマンドを使用します。

wls:/wls_domain/serverConfig> attachWebServicePolicy("/wls_domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","WsdlConcreteService","WsdlConcretePort",
"oracle/wss_username_token_service_policy")

- attachWebServicePoliciesコマンドを使用して、Webサービス・ポートに複数のポリシーを添付します。policyURIs引数を使用して、添付するポリシーを指定します。このコマンドで指定したポリシーのいずれかがすでに添付されている場合は、このコマンドでその添付済ポリシーが有効になり(無効な場合)、その他のポリシーは添付されます。

attachWebServicePolicies(application, moduleOrCompName, moduleType,
serviceName, subjectName, policyURIs, [subjectType=None]

たとえば、ポリシーoracle/wss_username_token_service_policyとoracle/wsrm10_policyをWsdlConcreteServiceのWsdlConcretePortに添付するには、次のコマンドを使用します。

wls:/wls_domain/serverConfig> attachWebServicePolicies("/wls_domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","WsdlConcreteService","WsdlConcretePort",
["oracle/wss_username_token_service_policy","oracle/wsrm10_policy"])

Please restart application to uptake the policy changes.

注意:
wsm-pmアプリケーションがWebLogic Serverにインストールされており、使用可能は場合は、policyURIsはOracle WSM Policy Manager APIにより検証されます。ポリシーの検証が失敗した場合、メッセージが表示されてコマンドは実行されません。
wsm-pmアプリケーションがインストールされていないか使用可能でない場合は、これらのコマンドは実行されません。

ポリシーの検証の詳細は、「ポリシー・サブジェクトの検証」を参照してください。

4. ポリシーを解除するには、次のいずれかを実行します。

- detachWebServicePolicyコマンドを使用して、Webサービス・ポートから単一のポリシーを解除します。policyURI引数を使用して、解除するポリシーを指定します。

detachWebServicePolicy(application, moduleOrCompName, moduleType,
serviceName, subjectName, policyURI, [subjectType=None]

たとえば、ポリシーoracle/wss_username_token_service_policyをWsdlConcreteServiceのWsdlConcretePortから解除するには、次のコマンドを使用します。

wls:/wls_domain/serverConfig> detachWebServicePolicy("/wls_domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","WsdlConcreteService","WsdlConcretePort",
"oracle/wss_username_token_service_policy")

- detachWebServicePoliciesコマンドを使用して、Webサービス・ポートから複数のポリシーを解除します。policyURIs引数を使用して、解除するポリシーを指定します。

detachWebServicePolicies(application, moduleOrCompName, moduleType,
serviceName, subjectName, policyURIs, [subjectType=None]

たとえば、ポリシーoracle/wss_username_token_service_policyとoracle/wsrm10_policyをWsdlConcreteServiceのWsdlConcretePortから解除するには、次のコマンドを使用します。

wls:/wls_domain/serverConfig> detachWebServicePolicies("/wls_domain/AdminServer/jaxwsejb30ws",
"jaxwsejb","web","WsdlConcreteService","WsdlConcretePort",
["oracle/wss_username_token_service_policy","oracle/wsrm10_policy"])

Please restart application to uptake the policy changes.

5. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

複数のサブジェクトへのポリシーの添付(一括添付)

「アプリケーション」ページから、1つ以上のWebサービスに1つ以上のポリシーを添付できます。

注意:
一括添付メカニズムでは、添付するポリシーの検証は実行されません。
一括添付メカニズムでは、サポートされていない構成(複数の認証ポリシー)を作成したり、同じポリシーを複数回添付したりできます。

ポリシー添付は、クラスタ内のSOA、ADFおよびWebCenter Webサービスで自動的に同期がとられません。クラスタでSOA、ADFおよびWebCenterサービスを使用する場合、クラスタ内の各インスタンスにポリシーをアタッチあるいはデタッチする必要があります。この問題はWebLogic Java EE WebサービスおよびSOAコンポジット・サービスには適用されません。

アプリケーション内の複数のWebサービスにポリシーを添付する手順

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、ポリシーの添付を行うドメインを表示します。

2. ドメインと、ポリシーを添付するサーバーのインスタンスを選択します。サーバーは、管理サーバーまたは管理対象サーバーのいずれかになります。

3. Fusion Middleware Controlを使用して、「WebLogicサーバー」→「Webサービス」をクリックします。

4. 「Webサービスのサマリー」ページで「ポリシーの添付」をクリックします。

5. 図8-5に示すように、「ポリシー・サブジェクトの選択」ページで、ポリシーを添付するアプリケーションを1つ以上選択します。
「検索」コントロールを使用して、特定のポリシー・サブジェクト・タイプ、アプリケーション名、またはポリシーを添付するWebサービスのタイプを検索します。有効なポリシー・サブジェクト・タイプとして、Webサービス・エンドポイント、Webサービス・クライアント、Webサービス接続、SOAコンポーネント、SOAサービス、SOA参照、非同期コールバック・クライアント、WLS Webサービス・エンドポイントがあります。非同期コールバック・クライアントの詳細は、Oracle Infrastructure Webサービス開発者ガイドの非同期Webサービスの開発に関する項を参照してください。

たとえば、Webサービス・クライアントのポリシー・サブジェクト・タイプを検索する場合、使用可能なWebサービス・クライアント(存在する場合)のみが表示されます。

複数のアプリケーションを選択するには、[Ctrl]キーを押しながらアプリケーションをクリックします。

図8-5「サブジェクトの選択」ページ

6. 「次へ」をクリックします。

7. 図8-6に示すように、「ポリシーの選択」ページで、選択したアプリケーションに添付するポリシーを1つ以上選択します。「ポリシーの選択」ページには、前の手順で選択したすべてのサブジェクトに適用できるポリシーのみが表示されます。

注意:
Fusion Middleware Controlを使用してWebLogic Java EE Webサービス・エンドポイントに添付できるのはセキュリティ・ポリシーのみです。非セキュリティ・ポリシーをWebLogic Webサービス・エンドポイントに添付しようとした場合、そのアクションは無視されます。

複数のポリシーを選択するには、[Ctrl]キーを押しながら添付するポリシーをクリックします。

図8-6「ポリシーの選択」ページ

8. 「次へ」をクリックします。
図8-7に示すように、「サマリー」ページに、選択したアプリケーションと、それらのアプリケーションに添付するポリシーが表示されます。

図8-7 添付サマリーページ

9. 変更を行うには「戻る」をクリックし、一括添付を完了するには「添付」をクリックします。

10. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットまたはWebLogic Java EE Webサービス・アプリケーションでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

ポリシー・サブジェクトの検証

ポリシー内のアサーションのタイプおよび数が有効であれば、ポリシーは内部的に一貫性があり有効です。ただし、ポリシー・サブジェクトに複数のポリシーが添付されている場合は、ポリシーの組合せも有効であることが必要です。具体的には、次の内容を満たしている必要があります。

注意:
ポリシーを表示するとき、セキュリティなどの主要なカテゴリのみが表示されます。サブタイプ(認可など)を表示するには、ポリシーが基づいているアサーション・テンプレートの「アサーション詳細」セクションを参照してください。

- 1つのポリシー・サブジェクトに添付されているMTOMポリシーが1つのみであること。

- 1つのポリシー・サブジェクトに添付されている信頼できるメッセージング・ポリシーが1つのみであること。

- 1つのポリシー・サブジェクトに添付されているWS-Addressingポリシーが1つのみであること。

- 1つのサブジェクトに添付されている、サブタイプが認証のセキュリティ・ポリシーが1つのみであること。

- サブタイプがsts-configである1つのセキュリティ・ポリシーのみをサブジェクトに添付できます。

- 認証ポリシーおよび認可ポリシーの両方がポリシー・サブジェクトに添付されている場合は、認証ポリシーが認可ポリシーより先行していること。

- ポリシー・サブジェクトに添付されるセキュリティ・ポリシーは1つ以上です。たとえば、セキュリティ・ポリシーに含めることができるのは、認証またはメッセージ保護のサブタイプ・カテゴリに属するアサーションか、両方のサブタイプ・カテゴリに属するアサーションです。2つ目のセキュリティ・ポリシーには、認可サブタイプに属するアサーションが含まれます。

- サブジェクトに添付されるポリシーが、構成のオーバーライドを含む互いの正確な複製である場合、ポリシーの添付は複製として見なされ、構成は有効です。

- ポリシーに特定のトランスポート・プロトコル(HTTPまたはHTTPSなど)が必要な場合は、Webサービスで指定のトランスポート・プロトコルが使用されていることを確認すること。(チェックは実行時に行われます。)

実行時には、自動的にSTS-Trust構成ポリシーがまず実行され、認可ポリシーが最後に実行されます。

一括添付機能を使用する場合は、ポリシー・サブジェクト検証を使用して、複数のポリシー・サブジェクトの妥当性を確認することはできません。この機能を使用してサブジェクトにポリシーを添付した後に、各サブジェクトを個別に検証する必要があります。

注意:
ポリシー・サブジェクト検証では、ポリシーのXMLスキーマは検証されません。そのため、ポリシー・ファイルを手動で編集する場合は、別のツールを使用してXMLが有効であることを確認する必要があります。

ポリシー・サブジェクト検証を確認する手順

1. ナビゲータ・ペインで、「アプリケーションのデプロイ」フォルダのプラス記号(+)をクリックしてファーム内のアプリケーションを表示し、アプリケーションを選択します。
「アプリケーションのデプロイ」ホームページが表示されます。

2. Fusion Middleware Controlを使用して、「アプリケーションのデプロイ」→「Webサービス」をクリックします。
これにより、アプリケーションの「Webサービスのサマリー」ページが表示されます。

3. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・ポートを表示するWebサービスのプラス記号(+)をクリックします。

4. ポート名をクリックして「Webサービス・エンドポイント」ページに移動します。

5. 「ポリシー」タブをクリックします。

6. 「アタッチ/デタッチ」をクリックします。

7. 「検証」をクリックします。
検証エラーがある場合は、エラーを説明するダイアログ・ボックスが表示されます。エラーを修正して、ポリシー・サブジェクト検証を再度実行します。

Webサービス・クライアントへのポリシーの添付

この項では、SOA参照、接続ベースのWebサービス・クライアント(ADF DC Webサービス・クライアント、ADF JAX-WS Indirection ProxyまたはWebCenterクライアントなど)、非同期Webサービス・コールバック・クライアントおよびJava EE Webサービス・クライアントにポリシーを添付する方法について説明します。

注意:
設計時にプログラムでRESTful Webサービス・クライアントにOracle WSMポリシーを割り当てる方法の詳細は、「Jersey JAX-RSリファレンス実装の使用」のRESTful Webサービス・クライアントの保護に関する項を参照してください。

WLSTポリシーを使用してWebサービス・クライアントにポリシーを添付する場合は、どのWebサービス・クライアント・タイプでも手順は同じです。引数の設定により、ポリシーを添付するクライアントのタイプを指定します。詳細は、「WLSTを使用したWebサービス・クライアントへのポリシーの添付」を参照してください。

Fusion Middleware Controlを使用したWebサービス・クライアントへのポリシーの添付

Fusion Middleware Controlでは、Webサービス・クライアントにポリシーを添付する手順は、どのWebサービス・クライアント・タイプでも同じです。ただし、次の項で説明するように、Webサービス・クライアントに移動する方法は、アプリケーション・タイプによって異なります。

SOA参照へのポリシーの添付

次の手順では、SOA参照にポリシーを添付する方法について説明します。SOA参照の開発に関する詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。

SOA参照にポリシーを添付する手順

1. 「SOA参照の表示」の説明に従って、SOA参照を表示します。

2. 「ポリシー」タブを選択します。

3. ページの「直接アタッチされたポリシー」セクションで、「アタッチ/デタッチ」をクリックします。

4. ページの「使用可能なポリシー」セクションで、添付するポリシーを1つ以上選択します。ポリシーを検証するには「検証」をクリックし、クライアント・ポリシーとサービス・ポリシーの互換性を確認するには「サービスの互換性をチェックします」をクリックします。

5. ポリシーを添付するには、「アタッチ」をクリックします。

6. 「OK」をクリックします。

接続ベースのWebサービス・クライアントへのポリシーの添付

次の手順は、ADF DC Webサービス・クライアント、ADF JAX-WS Indirection ProxyまたはWebCenterクライアントなどの接続ベースのWebサービス・クライアントにポリシーを添付する方法を示しています。

ADF DCのWebサービス・クライアントの開発の詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』のFusion Web ApplicationでのADFモデルの使用に関する項を参照してください。

接続ベースのWebサービス・クライアントへのポリシーを添付するには:

1. Fusion Middleware Controlを使用して、「アプリケーションのデプロイ」を開きます。

2. ターゲット・アプリケーションを選択します。

3. 「アプリケーションのデプロイ」メニューから、「ADF」→ADF接続の構成を選択します。

4. ADF接続の構成ページで、「Webサービス接続」リストから1行を選択し、「Webサービスの構成」リストを使用してWebサービス・クライアントを構成します。

5. 「Webサービス・クライアント」ページで、「OWSMポリシー」タブを選択します。

6. ページの「直接アタッチされたポリシー」セクションで、「アタッチ/デタッチ」をクリックします。

7. ページの「使用可能なポリシー」セクションで、添付するポリシーを1つ以上選択します。ポリシーを検証するには「検証」をクリックし、クライアント・ポリシーとサービス・ポリシーの互換性を確認するには「サービスの互換性をチェックします」をクリックします。

8. ポリシーを添付するには、「アタッチ」をクリックします。

9. 「OK」をクリックします。

非同期のWebサービス・コールバック・クライアントへのポリシーの添付

次の手順では、非同期のWebサービス・コールバック・クライアントにポリシーを添付する方法について説明します。非同期Webサービスおよび非同期コールバック・クライアントの開発の詳細は、Oracle Infrastructure Webサービス開発者ガイドの非同期Webサービスの開発に関する項を参照してください。

非同期コールバック・クライアントにポリシーを添付する手順

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、非同期Webサービスのエンドポイントに移動します。

2. エンドポイント・ページの右上角のコールバック・クライアントをクリックします。

3. 「ポリシー」タブをクリックします。

4. 「アタッチ/デタッチ」をクリックします。

5. ページの「使用可能なポリシー」の部分で、添付するポリシーを1つ以上選択します。ポリシーを検証するには「検証」をクリックし、クライアント・ポリシーとサービス・ポリシーの互換性を確認するには「サービスの互換性をチェックします」をクリックします。

6. ポリシーを添付するには、「アタッチ」をクリックします。

7. 「OK」をクリックします。

Java EE Webサービス・クライアントへのポリシーのアタッチ

この項では、WebLogic Java EE Webサービス・クライアントにポリシーを添付する方法について説明します。

注意:
WebLogic Java EE Webサービス・クライアント・ポリシー添付：

- Oracle WSMセキュリティ・ポリシーのみ添付できます。

- Oracle WSMポリシーとWebLogic Webサービス・ポリシーは、同じエンドポイントには添付できません。WebLogic Java EEエンドポイントにWebLogicポリシーが添付されていると、Oracle WSMセキュリティ・ポリシーを添付できません。WebLogicポリシーは、WebLogic Server管理コンソールを使用して、またはプログラムによって添付できることに注意してください。

- Oracle WSMポリシーをWebサービス・クライアント・デプロイ後に添付するには、Fusion Middleware ControlまたはWLSTを使用することをお薦めします。開発時にプログラムによってOracle WSMポリシーを添付する場合、クライアント・アプリケーションがデプロイされた後には、ポリシーを変更または削除できません。

Java EE Webサービス・クライアントへポリシーを添付するには:

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、Java EE Webサービスのホームページに移動します。

2. 「Java EE Webサービス・クライアント」タブを選択して、アプリケーション内でクライアントを表示します。

3. 図8-8に示すように、「構成」タブを選択して、ポリシーを添付できる利用可能なクライアント・ポートを表示します。

注意:
ポートがランタイム・クライアント・インスタンスに関連付けられている場合は、「+」ノードをクリックしてポート名を展開して、関連付けられているインスタンスを表示します。また、ポートがクライアント・アプリケーションで定義されているが、ランタイム・クライアント・インスタンスに正しく関連付けられていない場合に、そのポートにポリシーをアタッチできます。
最新のポリシーが常に強制されるように、WebLogic Java EE Webサービス・クライアントの開発時には、推奨ベスト・プラクティスに従うことが重要です。つまり、処理が完了したらクライアント・インスタンスを明示的に閉じる必要があります。クライアント・インスタンスが閉じられていないと、リポジトリ内のポリシーに対するすべての変更がクライアント上で強制されません。ベスト・プラクティスの詳細は、Oracle WebLogic Server JAX-WS Webサービスの高機能プログラミングのWebサービス・クライアントを開発するためのロードマップに関する項を参照してください。

図8-8 Java EE Webサービス・クライアント

4. クライアント・ポートの名前をクリックして、「Java EE Webサービス・クライアント・ポート」ページへ移動します。

5. 「アタッチ/デタッチ」をクリックします。

6. ページの「使用可能なポリシー」セクションで、添付するポリシーを1つ以上選択します。「検証」をクリックして、選択されたポリシーの組合せが有効であることを確認し、「OK」をクリックします。
次に示すように、添付されたポリシーは、「Java EE Webサービス・クライアント・ポート」ページに表示されます

図8-9 Java EE Webサービス・クライアント・ポートへのポリシーの添付

7. オプションで、添付されたポリシーの構成オーバーライドを指定します。これを行うには、次の手順を実行します。

1. ページの「OWSMポリシー」セクションでオーバーライドを構成する必要があるポリシーを選択します。
オーバーライドできるプロパティは、ページの「セキュリティ構成の詳細」セクションに表示されます。

2. 「現在値」フィールドにオーバーライド値を入力し、「適用」をクリックします。

オーバーライドの構成の詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

WLSTを使用したWebサービス・クライアントへのポリシーの添付

次の項では、WLSTを使用して、Java EEおよびRESTful Webサービス・クライアントにポリシーを割り当てる方法を説明します。

- WLSTを使用したOracle InfrastructureおよびJava EE Webサービス・クライアントへのポリシーの添付

- WLSTを使用したRESTful Webサービス・クライアントへのポリシーの添付

WLSTを使用したOracle InfrastructureおよびJava EE Webサービス・クライアントへのポリシーの添付

この項では、SOA参照、接続ベースのWebサービス・クライアント(ADF DC Webサービス・クライアント、ADF JAX-WS Indirection ProxyまたはWebCenterクライアントなど)、Java EE Webサービス・クライアントおよび非同期Webサービス・コールバック・クライアントにポリシーを添付する方法について説明します。どのクライアント・タイプでも手順は同じです。ただし、引数の設定は、ポリシーを添付または解除するクライアントのタイプによって異なります。

1. 「Webサービス・クライアントの表示」の「WLSTの使用」の説明に従って、Webサービス・クライアントを表示します。

2. listWebServiceClientPortsコマンドを使用して、Webサービス・クライアントのポート名とエンドポイントURLを表示します。

listWebServiceClientPorts(application,moduleOrCompName,moduleType,serviceRefName)

たとえば、サービス参照clientのポートを表示するには、次のようにします。

wls:/wls-domain/serverConfig> listWebServiceClientPorts('/base_domain/AdminServer/application1#V2.0',
'test1','wsconn','client')

HelloWorld_pt

3. 「WLSTを使用した使用可能なポリシーのリストの表示」の説明に従って、使用可能なポリシーのリストを表示します。
使用可能なクライアント・ポリシーのみを表示するには、subject引数にclientを設定します。たとえば、次のようにします。

listAvailableWebServicePolicies("","client")

4. ポリシーを添付するには、次のいずれかを実行します。

- attachWebServiceClientPolicyコマンドを使用して、Webサービス・クライアント・ポートに単一のポリシーを添付します。

attachWebServiceClientPolicy(application, moduleOrCompName, moduleType,
serviceRefName, portInfoName, policyURI, [subjectType=None]

次のように引数を設定します。

- SOA参照の場合は、SOAコンポジットの名前を指定するにはmoduleOrCompName引数を使用し、soaを指定するにはmoduleType引数を使用し、SOA参照の名前を指定するにはserviceRefName引数を使用します。

- ADF DC Webサービス・クライアント、ADF JAX-WS Indirection ProxyまたはWebCenterクライアントなどの接続ベースのWebサービス・クライアントの場合は、application引数を使用してクライアント・アプリケーションの名前を指定し、moduleType引数を使用してwsconnを指定し、serviceRefName引数を使用してサービス参照名を指定します。

- 非同期Webサービス・コールバック・クライアントの場合は、moduleType引数を使用してwebを指定します。クライアント・アプリケーションの名前またはSOAコンポジットの名前を指定するには、それぞれapplication引数とmoduleOrCompName引数を使用します。

- すべてのクライアント・タイプで、portInfoName引数を使用してポートの名前を指定します。

- policyURI引数を使用して、添付するポリシーを指定します。指定したポリシーがすでに添付されているかすでに存在する場合は、このコマンドでそのポリシーが有効になります(無効な場合)。

たとえば、クライアント・ポリシーoracle/wss_username_token_client_policyをclientサービスのHelloWorld_ptに添付するには、次のコマンドを使用します。

wls:/wls_domain/serverConfig> attachWebServiceClientPolicy("/wls_domain/AdminServer/application1#2.0",
"test1","wsconn","client","HelloWorld_pt","oracle/wss_username_token_client_policy")

- attachWebServiceClientPoliciesコマンドを使用して、Webサービス・クライアント・ポートに複数のポリシーを添付します。上記の単一クライアント・ポリシーの添付の手順に従って引数を設定しますが、添付する複数のポリシーを指定するには、policyURIs引数を使用します。このコマンドで指定したポリシーのいずれかがすでに添付されている場合は、このコマンドでその添付済ポリシーが有効になり(無効な場合)、その他のポリシーは添付されます。

attachWebServiceClientPolicies(application, moduleOrCompName,
moduleType, serviceRefName, portInfoName, policyURIs, [subjectType=None]

たとえば、ポリシーoracle/wss_username_token_client_policyとoracle/wsrm10_policyをclientサービスのHelloWorld_ptに添付するには、次のコマンドを使用します。

wls:/wls_domain/serverConfig> attachWebServiceClientPolicies("/wls_domain/AdminServer/application1#2.0",
"test1","wsconn","client","HelloWorld_pt",
["oracle/wss_username_token_client_policy","oracle/wsrm10_policy"])

Please restart application to uptake the policy changes.

注意:
wsm-pmアプリケーションがWebLogic Serverにインストールされており、使用可能は場合は、policyURIsはOracle WSM Policy Manager APIにより検証されます。ポリシーの検証が失敗した場合、メッセージが表示されてコマンドは実行されません。
wsm-pmアプリケーションがインストールされていないか使用可能でない場合は、これらのコマンドは実行されません。

ポリシーの検証の詳細は、「ポリシー・サブジェクトの検証」を参照してください。

5. ポリシーを解除するには、次のいずれかを実行します。

- detachWebServiceClientPolicyコマンドを使用して、Webサービス・ポートから単一のポリシーを解除します。

detachWebServiceClientPolicy(application, moduleOrCompName, moduleType,
serviceRefName, portInfoName, policyURI, [subjectType=None]

上記の手順4の説明に従って、引数を設定します。

たとえば、クライアント・ポリシーoracle/wss_username_token_client_policyをclientサービスのHelloWorld_ptから解除するには、次のコマンドを使用します。

wls:/wls_domain/serverConfig> detachWebServiceClientPolicy("/wls_domain/AdminServer/application1#2.0",
"test1","wsconn","client","HelloWorld_pt","oracle/wss_username_token_client_policy")

- detachWebServiceClientPoliciesコマンドを使用して、Webサービス・ポートから複数のポリシーを解除します。上記の単一クライアント・ポリシーの解除の手順に従って引数を設定しますが、解除する複数のポリシーを指定するには、policyURIs引数を使用します。

detachWebServiceClientPolicies(application, moduleOrCompName,
moduleType, serviceRefName, portInfoName, policyURIs, [subjectType=None]]

たとえば、ポリシーoracle/wss_username_token_client_policyとoracle/wsrm10_policyをclientサービスのHelloWorld_ptから解除するには、次のコマンドを使用します。

wls:/wls_domain/serverConfig> detachWebServiceClientPolicies("/wls_domain/AdminServer/application1#2.0",
"test1","wsconn","client","HelloWorld_pt",
["oracle/wss_username_token_client_policy","oracle/wsrm10_policy"])

Please restart application to uptake the policy changes.

注意:
クライアント側のセキュリティ・ポリシーを解除する場合、クライアント構成オーバーライドはポート・レベルで適用されるため、手動ですべての構成オーバーライドを削除する必要があります。そうしない場合オーバーライドは、このポートへのすべての将来のポリシー添付(グローバルと直接の両方)に対して有効であり続けます。

6. ADF DCおよびWebCenterクライアント・アプリケーションの場合は、Webサービス・クライアント・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

WLSTを使用したRESTful Webサービス・クライアントへのポリシーの添付

WLSTを使用してグローバルにRESTful Webサービス・クライアントにOracle WSMポリシーを割り当てる方法の詳細は、「Jersey JAX-RSリファレンス実装の使用」のRESTful Webサービス・クライアントの保護に関する項を参照してください。

WLSTを使用したWebサービス・クライアント・ポリシーの有効化と無効化

Webサービス・クライアントに対してポリシーを有効化または無効化するには、次の手順を実行します。

1. 「Webサービス・クライアントの表示」の「WLSTの使用」の説明に従って、Webサービス・クライアントを表示します。

2. 「WLSTを使用したWebサービスへのポリシーの添付」で説明するように、listWebServiceClientPortsを使用して、Webサービス・クライアントのポート名とエンドポイントURLを表示します。

3. enableWebServiceClientPolicyコマンドを使用して、Webサービス・クライアントにすでに添付されているポリシーを有効化または無効化します。コマンドをtrueに設定すると、ポリシーが有効になります。falseに設定すると、ポリシーが無効になります。

enableWebServiceClientPolicy(application,moduleOrCompName,moduleType,
serviceRefName,portInfoName,policyURI,[enable],[subjectType=None] )

次の例は、モジュールWssUsernameClientのポートJRFWssUsernamePortのクライアント・ポリシーoracle/wss_username_token_client_policyを有効化します。Webサービスは、ドメインsoainfra内のサーバーsoa1のアプリケーションjwsclient_1#1.1.0の一部です。

wls:/wls-domain/serverConfig>enableWebServiceClientPolicy
('/soainfra/soa1/jwsclient_1#1.1.0','WssUsernameClient','wsconn',
'WssUsernameClient','JRFWssUsernamePort', "oracle/wss_username_token_client_policy",true)

サーブレット・アプリケーションへのポリシーの添付

RESTfulサーブレットとして公開されているADFビジネス・コンポーネントなどのサーブレット・アプリケーションを保護するために、表8-1にリストされている事前定義済セキュリティ・ポリシーの1つ以上を添付できます。これらのポリシーの詳細と、それらを手動で構成する方法については、付録B「事前定義済ポリシー」を参照してください。

注意:
oracle/http_spnego_token_service_templateアサーション・テンプレートを使用して作成する、SPNEGOトークン・ポリシーを添付することもできます。詳細は、「SPNEGOネゴシエーションによるKerberosの構成」を参照してください。
このリリースでは、サーブレット・アプリケーション用のクライアント側のポリシー・サポートはありません。

表8-1 サーブレット・アプリケーションでサポートされている事前定義済ポリシー

事前定義済ポリシー

詳細

oracle/wss_http_token_service_policy

- ポリシーの説明: 「oracle/wss_http_token_service_policy」

- アサーション・テンプレートの説明: 「oracle/wss_http_token_service_template」

- ポリシーの構成: 「oracle/wss_http_token_service_policy」

oracle/http_basic_auth_over_ssl_service_policy

- ポリシーの説明: 「oracle/http_basic_auth_over_ssl_service_policy」

- アサーション・テンプレートの説明: 「oracle/wss_http_token_over_ssl_service_template」

- ポリシーの説明: 「oracle/http_basic_auth_over_ssl_service_policy」

oracle/http_jwt_token_service_policy

- ポリシーの説明: 「oracle/http_jwt_token_service_policy」

- アサーション・テンプレートの説明: 「oracle/http_jwt_token_service_template」

- ポリシーの構成: 「oracle/http_jwt_token_service_policy」

oracle/http_jwt_token_over_ssl_service_policy

- ポリシーの説明: 「oracle/http_jwt_token_over_ssl_service_policy」

- アサーション・テンプレートの説明: 「oracle/http_jwt_token_over_ssl_service_template」

- ポリシーの構成: 「oracle/http_jwt_token_over_ssl_service_policy」

oracle/http_oam_token_service_policy

- ポリシーの説明: 「oracle/http_oam_token_service_policy」

- アサーション・テンプレートの説明: 「oracle/http_oam_token_service_template」

- ポリシーの構成: 「oracle/http_oam_token_service_policy」

oracle/http_saml20_token_bearer_service_policy

- ポリシーの説明: 「oracle/http_saml20_token_bearer_service_policy」

- アサーション・テンプレートの説明: 「oracle/http_saml20_token_bearer_service_template」

- ポリシーの構成: 「oracle/http_saml20_bearer_token_service_policy」

oracle/http_saml20_token_bearer_over_ssl_service_policy

- ポリシーの説明: 「oracle/http_saml20_token_bearer_over_ssl_service_policy」

- アサーション・テンプレートの説明: 「oracle/http_saml20_token_bearer_service_template」

- ポリシーの構成: 「oracle/http_saml20_bearer_token_over_ssl_service_policy」

oracle/multi_token_rest_service_policy(ORグループ)

- ポリシーの説明: 「oracle/multi_token_rest_service_policy」

- ポリシーの構成: 「ORグループを含むポリシーの構成」

oracle/multi_token_over_ssl_rest_service_policy(ORグループ)

- ポリシーの説明: 「oracle/multi_token_over_ssl_rest_service_policy」

- ポリシーの構成: 「ORグループを含むポリシーの構成」

oracle/binding_authorization_denyall_policy

- ポリシーの説明: 「oracle/binding_authorization_denyall_policy」

- アサーション・テンプレートの説明: 「oracle/binding_authorization_template」

- ポリシーの構成: 「oracle/binding_authorization_denyall_policy」

oracle/binding_authorization_permitall_policy

- ポリシーの説明: 「oracle/binding_authorization_permitall_policy」

- アサーション・テンプレートの説明: 「oracle/binding_authorization_template」

- ポリシーの構成: 「oracle/binding_authorization_permitall_policy」

oracle/binding_permission_authorization_policy

- ポリシーの説明: 「oracle/binding_permission_authorization_policy」

- アサーション・テンプレートの説明: 「oracle/binding_permission_authorization_template」

- ポリシーの構成: 「oracle/binding_permission_authorization_policy」

サーブレット・アプリケーションの場合、着信リクエストをインターセプトおよび処理するためにOracle WSMサーブレット・フィルタが使用されます。

個々のポリシーを直接サブジェクトに添付する、または次の項で説明するように、ポリシー・セットを使用してタイプ別にサブジェクトのセットにポリシーをグローバルに添付することにより、ポリシー・サブジェクト(この場合、サーブレット)にポリシーを添付できます。

- 「サーブレット・アプリケーションへのポリシーの直接添付」

- 「サーブレット・アプリケーションへのポリシーのグローバル添付」

サーブレット・アプリケーションへのポリシーの直接添付

注意:
管理しやすくするために、「サーブレット・アプリケーションへのポリシーのグローバル添付」で説明されているように、ポリシー・セットを使用してグローバルにポリシーを添付することをお薦めします。

サーブレット・アプリケーションにポリシーを直接添付するには、web.xmlデプロイメント・ディスクリプタ・ファイルを変更して、Oracle WSMサーブレット・フィルタを定義し、保護するためにサーブレットに関連付け、さらにポリシー添付メタデータを定義する必要があります。Oracle WSMサーブレット・フィルタは、1つのサーブレットにのみマップできます。複数のサーブレットを保護する必要がある場合、1対1の対応を維持しながら、複数のサーブレット・フィルタを定義する必要があります。

web.xmlデプロイメント・ディスクリプタの詳細は、Oracle WebLogic Server用のWebアプリケーション、サーブレットおよびJSPの開発のweb.xmlデプロイメント・ディスクリプタの要素に関する項を参照してください。

サーブレット・アプリケーションへのポリシーを直接添付するには:

1. <filter>要素を追加することで、Oracle WSMセキュリティ・フィルタを定義し、次のサブ要素を定義します。

1. <filter-name>要素を使用して、Oracle WSMサーブレット・フィルタに意味ある名前を指定します。
たとえば、次のようにします。

<filter>
<filter-name>OWSM Security Filter</filter-name>

2. <filter-class>要素を使用して、Oracle WSMサーブレット・フィルタを定義します。
この要素は、次のように定義する必要があります。

<filter-class>
oracle.wsm.agent.handler.servlet.SecurityFilter
</filter-class>

3. サーブレット名をパラメータとして、Oracle WSMサーブレット・フィルタ・クラスのinit()メソッドに渡すには、<filter>定義に<init-param>要素を追加します。
たとえば、次のようにします。

<init-param>
<param-name>servlet-name</param-name>
<param-value>TestServlet</param-value>
</init-param>

注意: このパラメータを省略すると、次の手順で<policySet>要素を定義した場合でも、サーブレット・アプリケーションは保護されません。

4. 1つ以上の<PolicyReference>または<OverrideProperty>要素とともに、<policySet>要素を定義する<init-param>を追加することにより、セキュリティ・ポリシー添付を定義します。<policySet>要素の詳細は、付録E「ポリシー・セットのスキーマ参照」を参照してください。
注意: このコンテキストでは、<policySet>要素はconstraintまたはstatus属性をサポートしません。これらの属性は、グローバル・ポリシー・アタッチメントのみでサポートされます。

たとえば、次の抜粋コードでは、<policySet>はCDATAの形式で構成されています。

<init-param>
<param-name>oracle.wsm.metadata.policySet</param-name>
<param-value><![CDATA[<sca11:policySet name="policySet"
appliesTo="REST-Resource()"
attachTo="Service('*')"
xmlns:sca11="http://docs.oasis-open.org/ns/opencsa/sca/200903"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
xmlns:wsp15="http://www.w3.org/ns/ws-policy">
<wsp15:PolicyReference
URI="oracle/multi_token_rest_service_policy"
orawsp:category="security" orawsp:status="enabled">
</wsp15:PolicyReference>
<wsp15:PolicyReference
URI="oracle/binding_authorization_permitall_policy"
orawsp:category="security" orawsp:status="enabled">
</wsp15:PolicyReference>
</sca11:policySet>]]>
</param-value>
</init-param>

2. <filter-mapping>要素を使用して、Oracle WSMセキュリティ・フィルタをサーブレットに関連付けます。
たとえば、次のようにします。

<filter>
<filter-mapping>
<filter-name>OWSM Security Filter</filter-name>
<servlet-name>TestServlet</servlet-name>
</filter-mapping>

3. <servlet>および<servlet-mapping>要素を使用して、サーブレットとサーブレットのマッピングを定義します。
たとえば、次のようにします。

<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>webproj.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TestServlet</servlet-name>
<url-pattern>/testservlet</url-pattern>
</servlet-mapping>

4. 保護する必要があるサーブレットごとに、手順1～3を繰り返します。

例8-1は、サーブレット・アプリケーションにポリシーを添付するために、web.xmlファイルを更新する方法の例を示します。

例8-1 サーブレット・アプリケーションをポリシーに添付するためのweb.xmlファイルの例

<?xml version = '1.0' encoding = 'windows-1252'?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5" xmlns="http://java.sun.com/xml/ns/javaee">
<filter>
<filter-name>OWSM Security Filter</filter-name>
<filter-class>oracle.wsm.agent.handler.servlet.SecurityFilter</filter-class>
<init-param>
<param-name>servlet-name</param-name>
<param-value>TestServlet</param-value>
</init-param>
<init-param>
<param-name>oracle.wsm.metadata.policySet</param-name>
<param-value><![CDATA[<sca11:policySet name="policySet"
appliesTo="REST-Resource()"
attachTo="Service('*')"
xmlns:sca11="http://docs.oasis-open.org/ns/opencsa/sca/200903"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
xmlns:wsp15="http://www.w3.org/ns/ws-policy">
<wsp15:PolicyReference
URI="oracle/multi_token_rest_service_policy"
orawsp:category="security" orawsp:status="enabled">
</wsp15:PolicyReference>
<wsp15:PolicyReference
URI="oracle/binding_authorization_permitall_policy"
orawsp:category="security" orawsp:status="enabled">
</wsp15:PolicyReference>
</sca11:policySet>]]>
</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>OWSM Security Filter</filter-name>
<servlet-name>TestServlet</servlet-name>
</filter-mapping>
<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>webproj.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TestServlet</servlet-name>
<url-pattern>/testservlet</url-pattern>
</servlet-mapping>
</web-app>

サーブレット・アプリケーションへのポリシーのグローバル添付

サーブレット・アプリケーションにグローバルにポリシーを添付するには、「ポリシー・セットの作成」で説明するように、WLSTを使用してポリシー・セットを作成します。

ポリシー・セットの作成時には、引数型がREST-resourceに設定されていることを確認します。グローバル・ポリシーがドメイン内のすべてのRESTfulサービスに適用されるように、Domain式として リソース・スコープを定義することをお薦めします。

1. <filter>要素を追加することで、Oracle WSMセキュリティ・フィルタを定義し、次のサブ要素を定義します。

1. <filter-name>要素を使用して、Oracle WSMサーブレット・フィルタに意味ある名前を指定します。
たとえば、次のようにします。

<filter>
<filter-name>OWSM Security Filter</filter-name>

2. <filter-class>要素を使用して、Oracle WSMサーブレット・フィルタを定義します。
この要素は、次のように定義する必要があります。

<filter-class>
oracle.wsm.agent.handler.servlet.SecurityFilter
</filter-class>

3. サーブレット名をパラメータとして、Oracle WSMサーブレット・フィルタ・クラスのinit()メソッドに渡すには、<filter>定義に<init-param>要素を追加します。
たとえば、次のようにします。

<init-param>
<param-name>servlet-name</param-name>
<param-value>TestServlet</param-value>
</init-param>

注意: このパラメータを省略すると、グローバルにアタッチされたポリシーを定義した場合でも、サーブレット・アプリケーションは保護されません。

2. <filter-mapping>要素を使用して、Oracle WSMセキュリティ・フィルタをサーブレットに関連付けます。
たとえば、次のようにします。

<filter>
<filter-mapping>
<filter-name>OWSM Security Filter</filter-name>
<servlet-name>TestServlet</servlet-name>
</filter-mapping>

3. <servlet>および<servlet-mapping>要素を使用して、サーブレットとサーブレットのマッピングを定義します。
たとえば、次のようにします。

<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>webproj.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TestServlet</servlet-name>
<url-pattern>/testservlet</url-pattern>
</servlet-mapping>

4. 保護する必要があるサーブレットごとに、手順1～3を繰り返します。

例8-2は、WLSTを使用してサーブレット・アプリケーションにグローバルにポリシーを添付する例を示します。

例8-2 WLSTを使用したサーブレット・アプリケーションへのグローバルなポリシー添付

C:\Oracle\Middleware\oracle_common\common\bin> wlst.cmd
...
wls:/offline> connect("weblogic","password","t3://myAdminServer.example.com:7001")
Connecting to t3://myAdminServer.example.com:7001" with userid weblogic ...
Successfully connected to Admin Server "AdminServer" that belongs to domain "my_domain".

Warning: An insecure protocol was used to connect to the
server. To ensure on-the-wire security, the SSL port or
Admin port should be used instead.

wls:/my_domain/serverConfig> beginRepositorySession()

Session started for modification.

wls:/my_domain/serverConfig> createPolicySet('myPolicySet','REST-Resource', 'Domain("*")')

Description defaulted to "Global policy attachments for REST Resource resources."
The policy set was created successfully in the session.

wls:/my_domain/serverConfig> attachPolicySetPolicy('oracle/http_basic_auth_over_ssl_service_policy')

Policy reference "oracle/http_basic_auth_over_ssl_service_policy" added.

wls:/my_domain/serverConfig> commitRepositorySession()

The policy set myPolicySet is valid.
Creating policy set myPolicySet in repository.

Session committed successfully.

wls:/my_domain/serverConfig> displayPolicySet('myPolicySet')

Policy Set Details:
-------------------
Display Name : mypolicyset
Type of Resources:   REST Resource
Scope of Resources:  Domain("*")
Description:         Global policy attachments for REST Resource resources.
Enabled:             true
Policy Reference:    URI=oracle/http_basic_auth_over_ssl_service_policy, category=security, enabled=true
wls:/my_domain/serverConfig>

オーバーライド可能なWebサービス・ポリシーの添付

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

事前定義済またはカスタムのWebサービス・ポリシーでサーバー側の構成プロパティの値を指定して、Webサービスにポリシーを添付するたびにその値を使用するか、または添付ごとのベースでその値をオーバーライドできます。

注意:
有効なポリシー・セットが常にあるように、事前定義済ポリシーは編集しないことをお薦めします。ただし、ベースとして事前定義済ポリシーを使用して新しいポリシーを作成できます。新しいポリシーの作成の詳細は、「既存のポリシーからのWebサービス・ポリシーの作成」を参照してください。新しいポリシーを作成した後は、必要に応じてポリシーを編集し、構成プロパティを設定できます。

たとえば、構成プロパティとしてIPアドレスを指定し、そのIPアドレスをWebサービスから検証します。

サーバー側の構成プロパティ値のスコープは、指定されたポリシーに限定されます。つまり、サーバー側の構成プロパティの名前が同じ(たとえばP1)2つのポリシーを、同じWebサービス・エンドポイントに添付し、その2つのP1プロパティに異なる値を指定することができます。

オーバーライドできるサーバー側プロパティには次の2種類あります。

- 事前定義済ポリシー構成プロパティ: 事前定義済ポリシーに含まれるサーバー側の設定プロパティにより、たとえば署名キー・パスワードを格納するために使用されるCSFキーなど、特定のドメイン単位の構成設定をポリシーからオーバーライドできます。

- ユーザー定義ポリシー構成プロパティ: ユーザー定義のプロパティでは、使用環境で意味を持つプロパティを追加できます。ユーザー定義のサーバー側プロパティを、事前定義済ポリシーまたはカスタム・ポリシーに追加できます。ユーザー定義構成プロパティの作成および構成の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

次の項では、オーバーライドが許可されるWebサービス・ポリシーを添付する方法についてより詳しく説明します。

- メッセージ保護ポリシーのサーバー側オーバーライド・プロパティの構成

- 認可ポリシーのサーバー側オーバーライド・プロパティの構成

- Fusion Middleware Controlを使用したポリシーの添付時の構成プロパティのオーバーライド

- WLSTを使用したポリシーの添付時の構成プロパティのオーバーライド

メッセージ保護ポリシーのサーバー側オーバーライド・プロパティの構成

事前定義済Oracle WSMメッセージ保護ポリシーは、表8-2に示すサーバー側のオーバーライド・プロパティのセットを定義します。

これらのプロパティを設定(またはオーバーライド)すると、「メッセージ保護に関するキーストアの構成」で説明するように、添付されたWebサービスで、メッセージ保護に関するキーストアの設定の一部として構成されたキーストア・パスワードのかわりに新しい値が使用されます

これらのプロパティを設定せずにデフォルトの空白のままにすると、「メッセージ保護に関するキーストアの構成」で説明するように、メッセージ保護に関するキーストアの設定の一部として構成された値が使用されます。

表8-2 メッセージ保護ポリシーのサーバー側の構成プロパティ

プロパティ名

デフォルト値

説明

keystore.sig.csf.key

空白

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。

このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

(WSS10メッセージ保護ポリシーにのみ適用可能)

KSSとともに使用する場合、資格証明ストア内のkeystore.sig.csf.keyおよびkeystore.enc.csf.keyプロパティは、直接エイリアスをポイントする必要があります。

keystore.enc.csf.key

空白

暗号化キー・パスワードをキーストアに格納するために使用する別名とパスワード。

このプロパティにより、ドメイン・レベルのかわりに添付レベルで暗号化キーを指定できます。

(WSS10とWSS11メッセージ保護同期ポリシーに適用可能)

KSSとともに使用する場合、資格証明ストア内のkeystore.sig.csf.keyおよびkeystore.enc.csf.keyプロパティは、直接エイリアスをポイントする必要があります。

saml.enveloped.signature.required

True

ベアラー・トークンを未署名にするには、(クライアントおよびサービス・ポリシーの両方で)falseに設定します。

デフォルト(true)で、ベアラー・トークンはドメイン署名鍵を使用して署名されています。ベアラー・クライアント・ポリシーのkeystore.sig.csf.keyプロパティを使用することで、これをオーバーライドできます。

reference.priority

空白

効果的なポリシー計算で、ポリシー添付の優先順位を設定するために使用します。詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

空白(Falseと同等)

Webサービス・クライアントからWebサービスへアイデンティティ・コンテキストを伝播するには(クライアントおよびサービス・ポリシーの両方で)trueに設定してから、認証および認可の目的で他のコンポーネントで利用できるようにします(公開します)。

キーストア構成プロパティのデフォルト値の設定

デフォルトでは、keystore.sig.csf.keyおよびkeystore.enc.csf.keyプロパティは空白です。値を設定すると、ポリシーを添付するWebサービスでその値を使用したり、ポリシーを添付するときにその値をオーバーライドしたりできます。

注意:
有効なポリシー・セットが常にあるように、事前定義済ポリシーは編集しないことをお薦めします。ただし、事前定義済ポリシーから新しいポリシーを作成し、必要に応じてプロパティを構成できます。

ポリシーの構成プロパティの値を設定する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表からメッセージ保護ポリシーを選択して「編集」をクリックします。

3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

4. 構成プロパティを選択し、「編集」をクリックして、キーストア内のキーに基づいてkeystore.sig.csf.keyおよびkeystore.enc.csf.keyプロパティを変更します。画面の一部は、図8-10を参照してください。

図8-10 サーバー側の構成プロパティ

5. 変更内容を検証します。

6. 「保存」をクリックします。

認可ポリシーのサーバー側オーバーライド・プロパティの構成

事前定義済oracle/binding_permission_authorization_policyポリシーは、表8-3に示すサーバー側のオーバーライド・プロパティのセットを定義します。これらのプロパティを使用して、異なるアクションとリソースを設定できます。

これらのプロパティを設定(またはオーバーライド)すると、「認証権限の決定方法」で説明するように、添付されたWebサービスで、構成されたアクションとリソースのかわりに新しい値が使用されます。

表8-3 認可ポリシーのサーバー側の構成プロパティ

プロパティ名

デフォルト値

説明

action

*

このポリシーを実行する操作を指定します。

resource

*

Webサービス名(Webサービスの名前空間 + サービス名)を指定します。

構成プロパティのデフォルト値の設定

デフォルトでは、actionおよびresourceプロパティの値は*です。別の値を設定すると、ポリシーを添付するWebサービスでその値を使用したり、ポリシーを添付するときにその値をオーバーライドしたりできます。

構成プロパティの値を設定する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表から oracle/binding_permission_authorization_policy ポリシーを選択して「編集」をクリックします。

3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

4. 構成プロパティを選択し、「編集」をクリックして、使用環境に基づいてactionまたはresourceプロパティを変更します。

5. 変更内容を検証します。

6. 「保存」をクリックします。

Fusion Middleware Controlを使用したサービス・ポリシーの添付時の構成プロパティのオーバーライド

サーバー側のオーバーライド可能な構成プロパティを含むポリシーを添付した後で、既存の値をオーバーライドできます。WLSTでこれを行うには、「WLSTを使用してポリシーの添付時の構成プロパティのオーバーライド」で説明されているように、setWebServicePolicyOverrideコマンドを使用します。

Fusion Middleware Controlを使用して構成プロパティをオーバーライドするには:

1. オーバーライド可能な構成プロパティとともに、添付されたポリシーを選択します。
図8-11に示すように、「ポリシー構成のオーバーライド」ボタンが表示されます。

注意:
「ポリシー構成のオーバーライド」ボタンは、選択されたポリシーにオーバーライド可能な構成プロパティが含まれている場合にのみ表示されます。

図8-11 「ポリシー構成のオーバーライド」ボタン

2. 「ポリシー構成のオーバーライド」を選択します。
図8-12に示すように、「セキュリティ構成の詳細」ウィンドウが表示されます。この図は、oracle/wss10_message_protection_service_policyのオーバーライド可能なプロパティを示します。

図8-12 ポリシー構成プロパティのオーバーライド

3. プロパティの「値」フィールドにオーバーライド値を入力し、「適用」をクリックします。
プロパティは添付単位でオーバーライドされます。

たとえば、oracle/wss10_message_protection_service_policyのkeystore.sig.csf.keyプロパティの値を変更しておらず、まだ空白のままであると仮定します。WebサービスAにoracle/wss10_message_protection_service_policyを添付し、keystore.sig.csf.keyプロパティに「sigkey」をオーバーライドした場合、keystore.sig.csf.keyプロパティが値「sigkey」を持つのは、WebサービスAに添付されたoracle/wss10_message_protection_service_policyのみです。

他のすべてのポリシーでは、「メッセージ保護に関するキーストアの構成」で説明するように、keystore.sig.csf.keyは、メッセージ保護に関するキーストアの設定の一部として構成された値を使用します。

WLSTを使用したポリシーの添付時の構成プロパティのオーバーライド

オーバーライド可能なプロパティを持つポリシーを添付する場合は、setWebServicePolicyOverrideコマンドを使用して既存の値をオーバーライドできます。これを実行するには、次の手順に従ってください。

1. 「WLSTを使用したWebサービスへのポリシーの添付」の説明に従って、サービスにポリシーを添付します。

2. setWebServicePolicyOverrideコマンドを使用して、ポリシー・プロパティをオーバーライドします。

setWebServicePolicyOverride(application,moduleOrCompName,moduleType,
serviceName,portName,policyURI,properties)

表8-2および表8-3にリストされているプロパティと、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」に記載されているユーザー定義のプロパティをオーバーライドできます。

たとえば、oracle/wss10_message_protection_service_policyポリシーのkeystore.sig.csf.keyプロパティをオーバーライドするには、次のコマンドを使用します。

wls:/wls-domain/serverConfig>setWebServicePolicyOverride
('/wls_domain/AdminServer/Jaxwsejb30ws','jaxwsejb',
'web','WsdlConcreteService','WsdlConcretePort',
"oracle/wss10_message_protection_service_policy",[("keystore.sig.csf.key","sigkey")])

注意:
指定したポリシーがポートに添付されていない場合は、エラーメッセージが表示されるか例外が返されます。
properties引数をNoneに設定した場合は、ポリシーのすべてのオーバーライドが削除されます。

3. ADFおよびWebCenterアプリケーションの場合は、Webサービス・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

オーバーライド可能なクライアント・ポリシーの添付

ポリシー構成のオーバーライド機能を使用すると、ポリシー添付のWebサービス・クライアント構成情報をグローバルに設定するかわりに、またはそれに加えて、特定の構成情報をクライアントごとに指定できます。構成情報のターゲット指定により、管理する個別ポリシーの数を制限できます。

1つのポリシーを定義して、構成値のデフォルト値を指定できます。構成がほとんど変わらない複数のポリシーを作成するのではなく、同じ一般ポリシーを使用し、要件に一致するように特定の値をオーバーライドできます。

たとえば、oracle/wss_http_token_client_policyポリシーには、csf-keyプロパティがあり、デフォルト値はbasic.credentialsです。この値は、ユーザー名/パスワードにマッピングされているキーを表しています。任意の数のWebサービス・クライアントにこのポリシーを添付するときに、いつも同じキーの値を使用することになる可能性があります。この場合、oracle/wss_http_token_client_policyポリシーの「構成」ページでキー値を指定して、すべてのインスタンスに適用できます。

一方、このキー値をクライアントごとにオーバーライドすることもできます。

Webサービス・クライアント・ポリシーで、添付するポリシーに応じて表8-4に定義されている1つ以上のプロパティをオーバーライドできる場合があります。

オーバーライドした構成プロパティをクリアするには、空の文字列を設定します。クリアする前に、他のポリシーで同じプロパティを使用している可能性がないかを確認します。プロパティはクライアント固有ですが、同じプロパティを使用する同一クライアントに複数のポリシーが添付されている場合があります。

注意:
クライアント側のセキュリティ・ポリシーを解除する場合、クライアント構成オーバーライドはポート・レベルで適用されるため、手動ですべての構成オーバーライドを削除する必要があります。そうしない場合オーバーライドは、このポートへのすべての将来のポリシー添付(グローバルと直接の両方)に対して有効であり続けます。

表8-4 Webサービス・クライアント・ポリシーでオーバーライド可能なプロパティ

プロパティ

注意

attesting.mapping.attribute

オプションで、設定は任意です。

audience.uri

オーディエンス制限。オプションで、設定は任意です。

authz.code

3-legged OAuth2ユースケースの認可コードを渡すためのオプションのプロパティ。このリリースではサポートされません。

caller.principal.name

ktpassコマンドを使用して生成されたクライアントのプリンシパル名で、kerberosトークンの生成先のユーザー名にマップされます。<username>@<REALM NAME>の形式を使用します。

注意: keytab.locationとcaller.principal.nameは、Java EEアプリケーションのクライアント・アイデンティティの伝搬で必要です。

csf-key

ポリシーの「構成」ページで設定するか、オーバーライドする必要があります。

csf-map

オプションで、設定は任意です。

federated.client.token

oauth2.client.csf.keyおよびkeystore.sig.csf.keyプロパティの値を使用してクライアントのJWTトークンを生成するかどうかを指定するオプションのプロパティ。

include.certificate

オプションで、設定は任意です。trueの場合、署名証明書と信頼できる証明書チェーン(CAにより発行された証明書の場合)をJWTトークン要求に含めます。JWTトークンのサイズが大きくなりますが、サービス側キーストアに証明書および証明書チェーンをインポートする必要はありません。

issuer.name

オプションで、設定は任意です。

keystore.enc.csf.key

オプションで、設定は任意です。

注意: keystore.enc.csf.keyプロパティは、クライアントの証明書をreplyToヘッダーに付けます。

WSS11ポリシーでは、keystore.enc.csf.keyは非同期クライアントのみに使用されます。WSS10ポリシーでは、keystore.enc.csf.keyは同期クライアントと非同期クライアントの両方に使用されます。

keystore.recipient.alias

ポリシーの「構成」ページで設定するか、オーバーライドできます。 「サービス・アイデンティティ証明拡張の使用」で説明されているように、サービス・アイデンティティ証明拡張の使用機能が優先されます。証明書がWSDLでパブリッシュされる場合には、クライアント・オーバーライド・プロパティ値は無視されます。

keystore.sig.csf.key

オプションで、設定は任意です。

keytab.location

クライアントのキータブ・ファイルの場所。

注意: keytab.locationとcaller.principal.nameは、Java EEアプリケーションのクライアント・アイデンティティの伝搬で必要です。

oauth2.client.csf.key

クライアントのユーザー名とパスワードを取得するために使用するキーを指定する必須プロパティ。

oauth2.client.csf.keyの値は、クライアント・プロファイルで必要とされるクライアントIDおよびシークレットと一致する必要があります(『Oracle Fusion Middleware Oracle Access Management管理者ガイド』のOAuthクライアント・プロファイル構成の理解に関する項を参照)。

on.behalf.of

オプションで、設定は任意です。sts_trust_config_client_policyがクライアントWebサービスに添付されている場合にのみ使用されます。

propagate.identity.context

Webサービス・クライアントからWebサービスへアイデンティティ・コンテキストを伝播するには(クライアントおよびサービス・ポリシーの両方で)trueに設定してから、認証および認可の目的で他のコンポーネントで利用できるようにします(公開します)。

redirect.uri

アクセス権が付与または拒否された後、ユーザー・エージェントをクライアントにリダイレクトするためにOAuthサーバーが使用するリダイレクトURIを指定するオプションのプロパティ。

reference.priority

オプションで、設定は任意です。効果的なポリシー計算で、ポリシー添付の優先順位を指定するために使用されます。詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

saml.assertion.filename

オプションで、設定は任意です。

saml.audience.uri

オプションで、設定は任意です。

saml.enveloped.signature.required

オプションで、設定は任意です。デフォルト値はtrueです。

saml.issuer.name

オプションで、設定は任意です。

scope

OAuth2リクエストのスコープ(現状のまま)を指定するオプションのプロパティ。存在する場合、OAuth2トークン・リクエストにスコープとこの値を含めます。

service.principal.name

ポリシーの「構成」ページで設定するか、オーバーライドする必要があります。

<host>/<machine name>@<REALM NAME>の形式を使用して、保護する必要があるWebサービスのプリンシパル名。たとえば、HTTP/mymachine@EXAMPLEREALM.COMです。

subject.precedence

オプションで、設定は任意です。

注意: wss11_saml_token_identity_switch_with_message_protection_client_policyポリシーの場合、subject.precedenceは必須であり、認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにfalseに設定する必要があります。

Oracle WSMが外部から提供されるアイデンティティをアプリケーションから受け入れるには、そのアプリケーションがWSIdentityPermission権限を持つ必要があります。これにより、Oracle WSMが潜在的に悪質なアプリケーションからアイデンティティを提供されるのを回避します。

subject.precedenceの使用方法の詳細は、「アイデンティティ切替えのためのWebサービス・クライアントの構成」を参照してください。特に、「メッセージ・コンテキストから直接」、「WSIdentityPermission権限の設定」を行う必要があります。

その他すべてのSAMLおよびJWTポリシーの場合、subject.precedenceはtrueに設定され、オーバーライドできます。

subject.precedenceがtrueの場合、SAMLまたはJWTアサーションを作成するためのユーザー名は、認証されたサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLまたはJWTアサーションを作成するためのユーザー名は、csf-keyユーザー名プロパティからのみ取得されます。

sts.auth.on.behalf.of.csf.key

オプションで、設定は任意です。sts_trust_config_client_policyがクライアントWebサービスに添付されている場合にのみ使用されます。

sts.auth.user.csf.key

STS構成ポリシーに基づいて、sts.auth.user.csf.keyまたはsts.auth.x509.csf.keyのいずれかまたは両方を設定する必要があります。sts_trust_config_client_policyがクライアントWebサービスに添付されている場合にのみ使用されます。

sts.auth.x509.csf.key

STS構成ポリシーに基づいて、sts.auth.user.csf.keyまたはsts.auth.x509.csf.keyのいずれかまたは両方を設定する必要があります。sts_trust_config_client_policyがクライアントWebサービスに添付されている場合にのみ使用されます。

sts.keystore.recipient.alias

ポリシーの「構成」ページで設定するか、オーバーライドする必要があります。sts_trust_config_client_policyがクライアントWebサービスに添付されている場合にのみ使用されます。

token.uri

OAuth2サーバーのトークン・エンドポイントを指定する必須プロパティ。

user.attributes

オプションで、設定は任意です。

user.roles.include

オプションで、設定は任意です。

user.tenant.name

Oracle Cloud用に予約済。

Fusion Middleware Controlを使用したクライアント・ポリシーの添付時の構成プロパティのオーバーライド

Fusion Middleware Controlを使用してクライアント構成プロパティをオーバーライドするには:

1. 「Webサービス・クライアントへのポリシーの添付」で説明するように、ポリシーをWebサービス・クライアントに添付します。

2. オーバーライドできるプロパティを含むクライアント・ポリシーを添付した後、ポリシーを選択し、図8-13に示す「OWSMポリシー」ページの「セキュリティ構成の詳細」セクションで、プロパティの値を提供します。

図8-13 クライアント構成プロパティのオーバーライド

WLSTを使用してオーバーライド可能なクライアント・ポリシーの添付

注意:
この手順は、Oracle Infrastructure Webサービス・クライアントにのみ適用されます。

オーバーライド可能なプロパティを持つポリシーを添付する場合は、setWebServiceClientStubPropertiesコマンドを使用して既存の値をオーバーライドできます。

WLSTを使用してクライアント構成プロパティをオーバーライドするには:

1. 「WLSTを使用したWebサービス・クライアントへのポリシーの添付」で説明するように、ポリシーをWebサービス・クライアントに添付します。

2. setWebServiceClientStubPropertiesコマンドを使用して、ポリシー・プロパティをオーバーライドします。

setWebServiceClientStubProperties(application, moduleOrCompName,
moduleType, serviceRefName, portInfoName, properties)

たとえば、次のようにします。

wls:soainfra/serverConfig>
setWebServiceClientStubProperties('/soa_domain/soa_server1/adf_dc_to_bc',
'ADF_BC', 'wsconn', 'AppModuleService', 'AppModuleServiceSoapHttpPort',
[("csf-key","HCM_APPID")])

3. ADF DCおよびWebCenterクライアント・アプリケーションの場合は、Webサービス・クライアント・アプリケーションを再起動します。SOAコンポジットでは再起動する必要はありません。

注意:
アプリケーションの停止から再起動まで、約30秒間(または「正常な停止のタイムアウト」に設定された時間と同じ時間)待機する必要があります。この間に、アプリケーションを停止する前にサーバーですべてのグローバル・トランザクションを完了させます。「正常な停止のタイムアウト」に設定された時間待機しない場合、アプリケーションは適切に再起動されず、アクセスできなくなります。「正常な停止のタイムアウト」時間の待機を避けるには、アプリケーションを2回再起動します。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成

注意:
この項で説明する手順は、Oracle Infrastructure Webサービスにのみ適用されます。

新規構成プロパティの追加機能を使用して、使用環境で意味を持つ1つ以上の構成プロパティを追加できます。特に、1つ以上のユーザー定義のサーバー側またはクライアント側プロパティを、事前定義済ポリシーまたはカスタム・ポリシーに追加できます。それから、ユーザー定義のプロパティをそのまま使用するか、ポリシーに添付するときにそれをオーバーライドできます。

どちらの場合でも、ポリシーをWebサービスまたはクライアントに添付するときに、プロパティをオーバーライドする前にそのプロパティがポリシーに存在している必要があります。つまり、ポリシーにすでに存在するプロパティのみオーバーライドできます。

そのため、通常はユーザーが提供するプロパティをデフォルト値を含めて事前定義済またはカスタムのポリシーに追加し、それから添付単位でそれをオーバーライドします。

required、optional、またはconstantタイプのユーザー定義のプロパティを追加できますが、constantタイプのプロパティはオーバーライドできません。

次の項では、ユーザー定義オーバーライド・プロパティを構成する方法について説明します。

- ユーザー定義の構成プロパティのスコープ

- ユーザー定義の構成プロパティの追加

- ユーザー定義の構成プロパティの編集

- ユーザー定義の構成プロパティの削除

- ユーザー定義ポリシーの添付時の構成プロパティのオーバーライド

ユーザー定義の構成プロパティのスコープ

事前定義済の構成プロパティと同様に、ポリシーのユーザー定義の構成プロパティのスコープは、クライアントとWebサービスで異なります。次の内容を考慮します。

- クライアント側の構成プロパティ値のスコープは、そのクライアントです。同一クライアントに添付される複数のポリシーが同じプロパティを使用できます。

- サーバー側の構成プロパティ値のスコープは、指定されたポリシーに限定されます。つまり、サーバー側の構成プロパティの名前が同じ(たとえばP1)2つのポリシーを、同じWebサービス・エンドポイントに添付し、その2つのP1プロパティに異なる値を指定することができます。

ユーザー定義の構成プロパティの追加

ユーザー定義の構成プロパティを追加するには、事前定義済またはカスタムのポリシーを編集します。

ユーザー定義の構成プロパティを追加する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表からプロパティを追加するポリシーを選択して「編集」をクリックします。

3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

4. 「追加」をクリックします。図8-14に示すように、「新規構成プロパティの追加」ダイアログ・ボックスが表示されます。

図8-14 新規構成プロパティの追加

5. 次の情報を入力して、「OK」をクリックします。

- 「プロパティ・セット」は、このプロパティを含めるグループ(セット)の名前です。これは必須フィールドです。

- 「名前」は、プロパティの名前です。名前はこのポリシーに対して一意である必要があります。これは必須フィールドです。

- 「説明」は、プロパティの説明です。

- 「値」は、プロパティの現在の文字列値です。これは必須フィールドです。

- 「デフォルト」は、プロパティが他で設定されていない場合のプロパティのデフォルトの文字列値です。

- 「コンテンツ・タイプ」は、Constant、Optional、Requiredのいずれかです。タイプがOptionalとRequiredのプロパティのみオーバーライドできます。

6. ポリシーを検証します。

7. 「保存」をクリックします。

ユーザー定義の構成プロパティの編集

ユーザー定義の構成プロパティを変更する必要がある場合は、これを編集できます。

ユーザー定義の構成プロパティを編集する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表からプロパティを編集するポリシーを選択して「編集」をクリックします。

3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

4. 編集するユーザー定義の構成プロパティを選択して、「編集」をクリックします。

5. 必要な変更を行います。

6. ポリシーを検証します。

7. 「保存」をクリックします。

ユーザー定義の構成プロパティの削除

ユーザー定義の構成プロパティが必要なくなった場合は、これを削除できます。

ユーザー定義の構成プロパティを削除する手順

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」 ページで、「ポリシー」表からプロパティを削除するポリシーを選択して「編集」をクリックします。

3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

4. 削除するユーザー定義の構成プロパティを選択して、「削除」をクリックします。

5. ポリシーを検証します。

6. 「保存」をクリックします。

ユーザー定義ポリシーの添付時の構成プロパティのオーバーライド

「単一のサブジェクトへのポリシーの添付」、「複数のサブジェクトへのポリシーの添付(一括添付)」または「Webサービス・クライアントへのポリシーの添付」で説明するように、必要に応じてユーザー定義ポリシーを添付します。

ユーザー定義構成プロパティを含むポリシーを添付するとき、次のように既存の値をオーバーライドできます。

- Webサービス・ポリシーのユーザー定義構成プロパティをオーバーライドするには:

- Fusion Middleware Controlを使用するには、「Fusion Middleware Controlを使用したサービス・ポリシーの添付時の構成プロパティのオーバーライド」を参照してください。

- WLSTを使用して、「WLSTを使用したポリシーの添付時の構成プロパティのオーバーライド」で説明されているように、setWebServicePolicyOverrideコマンドを使用します。

- Webサービス・クライアント・ポリシーのユーザー定義構成プロパティをオーバーライドするには:

- Fusion Middleware Controlを使用するには、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

- WLSTを使用して、「WLSTを使用したオーバーライド可能なクライアント・ポリシーの添付」で説明するように、setWebServiceClientStubPropertiesコマンドを使用します。

9 ポリシー・セットの作成および管理

ポリシー・セットを使用すると、ある範囲に含まれる同じタイプのエンドポイントに対して、ポリシーをグローバルにアタッチできます。この章では、Oracle Enterprise Manager Fusion Middleware Controlおよびコマンドライン・インタフェースWebLogic Scripting Tool (WLST)を使用して、ポリシー・セットを管理および作成する方法について説明します。ポリシー・サブジェクトにポリシーを直接添付する場合の詳細は、第8章「Webサービスへのポリシーの添付」を参照してください。

この章では次の項について説明します。

- ポリシー・セットを使用したグローバル・ポリシー・アタッチメントについて

- 「ポリシー・セット・サマリー」ページへの移動

- WLSTを使用したポリシー・セットのリストの表示

- ポリシー・セットの構成の表示

- WLSTを使用したリポジトリ変更セッションの管理

- ポリシー・セットの作成

- 既存のポリシー・セットからのポリシー・セットの作成

- ポリシー・セットの編集

- リソースのタイプおよびスコープの定義

- ポリシー・セットの検証

- グローバルにアタッチされたポリシーの構成プロパティのオーバーライド

- ポリシー・セットの実行時制約の指定

- グローバルにアタッチされたポリシーの無効化

- ポリシー・セットの有効化および無効化

- ポリシー・セットの削除

- グローバル・ポリシー・アタッチメントへのダイレクト・ポリシー・アタッチメントの移行

- ポリシー・アタッチメントの優先度の指定

- エンドポイントのセキュア・ステータスの決定

- ポリシーの有効セットの計算方法

注意:
この章の手順は、Oracle Infrastructure Web Servicesにのみ適用されます。
この章に記載されているWLSTコマンドのヘルプを表示するには、サーバーの実行中のインスタンスに接続し、「help('wsmManage')」と入力します。

ポリシー・セットを使用したグローバル・ポリシー・アタッチメントについて

エンドポイントにポリシーを直接アタッチすることに加えて、デプロイメントの状態に関係なく、同タイプの一連のエンドポイントにポリシーをグローバルにアタッチすることを可能にするポリシー・セットを作成できます。Fusion Middleware ControlおよびWebLogic Scripting Tool(WLST)の両方を使用して、ポリシー・セットを作成および管理できます。この章では、両方の方法について説明します。WLSTコマンドの参照情報は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項で提供されています。

ポリシー・セットを使用してポリシーをグローバルにアタッチすることによって、開発者、アセンブラまたはデプロイヤがアタッチするポリシーを明示的に指定しなかった状況において、管理者は、すべてのサブジェクトが確実に保護されるようにできます。たとえば、開発者が注釈内にポリシーを指定しなかった場合、またはデプロイメント・ディスクリプタにポリシー参照を含めなかった場合、デプロイヤはポリシーをアタッチする必要があり、このようにしないと、潜在的なセキュリティ・リスクが発生します。タイプ別のサブジェクトのセットに対してポリシーをグローバルにアタッチすることによって、管理者はデプロイメントに関係なく(かつデプロイメント前に)、すべてのサブジェクトがデフォルトで保護されるようにできます。たとえば、管理者はあるドメイン内のすべてのWebサービス・エンドポイントに対してセキュリティ・ポリシーをアタッチするポリシー・セットを定義できます。この場合、ドメインに追加されるすべての新規サービスには、ポリシー・セットに定義されたセキュリティ構成が自動的に継承されます。詳細は、「エンドポイントのセキュア・ステータスの決定」を参照してください。

また、ポリシー・セットを使用してグローバルにアタッチされたポリシーにより、次のことが可能になります。

- 参照されたポリシーに対する構成のオーバーライドを指定できます。このオーバーライドは、ポリシー・セットのスコープが設定されたすべてのエンドポイントに適用されます。オーバーライドの構成の詳細は、「グローバルにアタッチされたポリシーの構成プロパティのオーバーライド」を参照してください。

- 実行時制約を指定できます。この制約によってそのポリシー・セットが関連するコンテキストが決定されます。たとえば、セキュリティ保護されていない公衆回線でメッセージが送信される可能性があるため、外部クライアントと通信する場合にのみ、サービスでメッセージ保護を使用するように指定できます。ただし、信頼できるネットワークで内部クライアントと通信するときは、メッセージ保護を要求しない場合もあります。詳細は、「ポリシー・セットの実行時制約の指定」を参照してください。

Fusion Middlewareインストールに含まれるいかなる動作も強制しない事前定義済ポリシーを使用して、特定のエンドポイントまたはエンドポイントの範囲に対して、グローバルにアタッチされたポリシーを無効にできます。特定のエンドポイントに対して、または下位のスコープで、こうしたポリシーのいずれかをアタッチすると、上位のスコープでグローバルにアタッチされたポリシーの動作が無効になります。詳細は、「グローバルにアタッチされたポリシーの無効化」を参照してください。

ポリシー・セット定義は、別個のXMLドキュメントとして、Oracle WSMリポジトリの/policysets/globalディレクトリに保存されます。

サブジェクト・タイプおよびリソース・スコープ

表9-1「ポリシー・サブジェクのリソース・タイプ」は、OWSMポリシーをアタッチできるポリシー・サブジェクトと有効なリソース・スコープを示しています。詳細は、「リソースのタイプおよびスコープの定義」を参照してください。

グローバル・ポリシー・アタッチメントの一般的な用途

次に、ポリシーのグローバルなアタッチが役立つ一般的なシナリオをいくつか示します。

- 指定タイプのすべてのサブジェクトについて、それぞれデフォルトの構成を使用して、同じポリシー・セットにより保護する必要がある場合。たとえば、(SAMLまたはユーザー名トークンを使用して)認証およびWSS11メッセージ保護によりドメイン内のすべてのサービスを保護する必要があります。ドメイン内のすべてのサービスに適切なポリシーをアタッチするためにポリシー・セットを作成できます。

- サブジェクトのサブセットを同じポリシー・セットにより保護する必要がありますが、こうしたポリシーがドメイン全体のデフォルトとは異なる場合。たとえば、(SAMLまたはユーザー名トークンを使用して)認証によりすべてのサービスを保護する必要がありますが、一般元帳アプリケーションではより強力なWSS11メッセージ保護も必要です。このような場合、すべてのサービスに認証ポリシーをアタッチする1つのポリシー・セットと、一般元帳アプリケーションにより強力なメッセージ保護ポリシーをアタッチする第2のポリシー・セットを作成します。

- 現セットのグローバル・ポリシー・アタッチメントがまだ適用されていないカテゴリのポリシーによって単一のサブジェクトを保護する必要があり、さらに両方のポリシーを適用する必要がある場合。たとえば、機密性の高い財務に基づくサービス・エンドポイントでは、必要な認証およびメッセージ保護に加えて、クライアントがアクセスするための権限を必要とします。このような場合は、財務に基づくサービス・エンドポイントに認可ポリシーを直接アタッチします。ダイレクト・アタッチメントとグローバルにアタッチされたポリシーを組み合せることで、両方のポリシーが強制されます。

- アプリケーションが設計時のポリシー・アタッチメントによりデプロイされており、グローバル・ポリシー・アタッチメントを使用するように変換する必要がある場合。このアタッチメントを移行するために、migrateAttachments WLSTコマンドを使用できます。詳細は、「グローバル・ポリシー・アタッチメントへのダイレクト・ポリシー・アタッチメントの移行」を参照してください。

「ポリシー・セット・サマリー」ページへの移動

ポリシー・セットは、「ポリシー・セット・サマリー」ページからドメイン・レベルで管理できます。このページでは、ポリシー・セットを表示、作成、コピー、編集および削除できます。

「ポリシー・セット・サマリー」ページに移動するには:

1. ナビゲータ・ペインで「WebLogicドメイン」を開きます。

2. ポリシー・セットを管理するドメインを選択します。

3. 「WebLogicドメイン」メニューから、「Webサービス」、 「ポリシー・セット」の順に選択します。
図9-1に示すように、「ポリシー・セット・サマリー」ページが表示されます。

図9-1 「ポリシー・セット・サマリー」ページ

WLSTを使用したポリシー・セットのリストの表示

リポジトリ内のポリシー・セットのリストを表示するには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. リポジトリ内のポリシー・セットのリストを表示するために、listPolicySetsコマンドを使用します。

listPolicySets ([type=None])

特定のタイプのポリシー・サブジェクト・リソース・タイプに適用されるポリシー・セットのみを含めるように表示を制限できます。サブジェクトのタイプを指定するには、表9-1「ポリシー・サブジェクト・リソース・タイプ」で指定された略語を使用する必要があります。

たとえば、Webサービス・エンドポイントに適用されるポリシー・セットのリストを表示するには、次のコマンドを使用します。

wls:/jrfserver_domain/serverConfig>listPolicySets('ws-service')
Global Policy Sets in Repository:
app-only-web-service-policies
all-domains-default-web-service-policies

このWLSTコマンドについての詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

ポリシー・セットの構成の表示

次の項では、Fusion Middleware Controlまたはコマンドライン・インタフェースWebLogic Scripting Tool (WLST)のいずれかを使用してポリシー・セットを表示する方法について説明します。

Fusion Middleware Controlの使用

ポリシー・セットを表示するには:

1. 「「ポリシー・セット・サマリー」ページへの移動」の説明に従って、「ポリシー・セット・サマリー」ページに移動します。

2. 「ポリシー・セット・サマリー」ページで、表からポリシー・セットを選択し、「表示」をクリックします。

3. ポリシー・セットを参照し終わったら、「ポリシー・セットに戻る」をクリックします。

図9-2 ポリシー・セットの表示

WLSTの使用

リポジトリ内の特定のポリシー・セットの構成を表示するには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. 指定のポリシー・セットの構成を表示するために、displayPolicySetコマンドを使用します。

displayPolicySet ([name=None])

リポジトリ・セッションの外側でこのコマンドを実行した場合、name引数を使用してポリシー・セットの構成を表示できます。ポリシー・セットが存在しない場合、エラー・メッセージが表示されます。

リポジトリ・セッションでポリシー・セットを作成または変更している場合は、name引数を指定する必要はありません。現在のポリシー・セットがデフォルトで使用されます。ポリシー・セットを変更した場合は、変更後のバージョンが表示されます。それ以外の場合は、リポジトリの最新バージョンが表示されます。

たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig>displayPolicySet('int-only-web-service-policies')

Policy Set Details:
-------------------
Name:                int-only-web-services-policies
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("*")
Constraint:          !HTTPHeader("VIRTUAL_HOST_TYPE","external")
Description:         Policies for non-external client requests
Enabled:             true
Policy Reference:    security : oracle/wss_saml_or_username_token_service_policy, enabled=true
reference.priority=1
management : oracle/log_policy, enabled=true

このWLSTコマンドについての詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

WLSTを使用したリポジトリ変更セッションの管理

ポリシー・セットの作成、変更および削除を行うためにWLSTを使用する場合、リポジトリ・セッションのコンテキストでコマンドを実行する必要があります。各リポジトリ・セッションは、単一のポリシー・セットにのみ適用されます。

リポジトリを変更するセッションを作成するには、beginRepositorySessionコマンドを使用します。ポリシー・セットの作成、変更または削除のための必要なコマンドを入力した後、commitRepositorySessionコマンドを使用してリポジトリへのセッション・コンテンツの書込みを行います。

現在のセッションのコンテンツを示すには、describeRepositorySessionコマンドを使用します。

リポジトリへのコンテンツの書込みを行わないでリポジトリ・セッションを終了するには、abortRepositorySessionコマンドを使用します。

これらのコマンドの例は、以降の項で示します。詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

ポリシー・セットの作成

次の項では、Fusion Middleware Controlまたはコマンドライン・インタフェースWebLogic Scripting Tool (WLST)のいずれかを使用してポリシー・セットを作成する方法について説明します。

- Fusion Middleware Controlの使用

- WLSTの使用

Fusion Middleware Controlの使用

ポリシー・セットを作成するには、次のコマンドを実行します。

1. 「「ポリシー・セット・サマリー」ページへの移動」の説明に従って、「ポリシー・セット・サマリー」ページに移動します。

2. 「ポリシー・セット・サマリー」ページで、「作成」をクリックします。
ポリシー・セットを作成するウィザードの最初のページが表示されます。

3. 図9-3に示すように、「一般情報の入力」ページで、ポリシー・セットの名前を入力します。

図9-3 「一般情報の入力」ページ

4. ポリシー・セットを有効にする場合は、「有効」チェック・ボックスを選択します。

5. 「リソース・タイプ」フィールドで、ポリシーをアタッチするポリシー・サブジェクトのタイプを選択します。次のページで、ポリシー・セットを適用するリソース・スコープを定義します。選択できるポリシー・サブジェクトのタイプは、表9-1「ポリシー・サブジェクトのリソース・タイプ」に定義されています。

6. 必要に応じて、ポリシー・セットの説明を追加し、「次へ」をクリックします。

7. 「リソース・スコープの入力」ページで、前の手順で選択したリソース・タイプのスコープを定義する少なくとも1つのパターン文字列を入力します。有効なスコープは、表9-2「リソース・スコープについてサポートされる式」に定義されています。

注意:
リソース・スコープを指定するには、このページで少なくとも1つの「パターン」フィールドにパターン文字列を入力する必要があります。

使用可能なリソース・スコープのリストは、前のページで選択したリソース・タイプによって決定します。たとえば、Webサービス・エンドポイントを選択した場合、使用可能なリソース・スコープは、ドメイン名、サーバー・インスタンス名、アプリケーション名、アプリケーション・モジュール名、SOAサービスまたはWebサービスのエンドポイント/名前/ポート名です。SOAサービス・リソース・タイプでは、使用可能なリソース・スコープは、ドメイン名、サーバー・インスタンス名、SOAパーティション名、SOAコンポジット名、SOAサービスまたはWebサービス・エンドポイント名/ポート名です。

たとえば、ドメイン内のすべてのWebサービス・エンドポイントにポリシーをアタッチするには、そのドメインの名前のみを示すパターン文字列を入力します。他のフィールドに記入する必要はありません。より詳細なスコープ、たとえばアプリケーション・レベルまたはアプリケーション・モジュール・レベルでポリシーをアタッチするには、「パターン」フィールドにアプリケーションまたはモジュールの名前を示すパターン文字列を入力します。該当位置で任意の数の文字に一致するワイルドカード文字としてアスタリスク(*)を文字列内の任意の場所で使用できます。また、文字列内で複数のワイルドカードを指定できます。ドメインに対してアスタリスクのワイルドカードのみを使用した場合、そのスコープ・レベルによりエンタープライズ内のすべてのドメインが影響を受けることに注意してください。

ドメイン名やアプリケーションなど、複数のリソース・スコープのパターン文字列を指定した場合、フィルタリング条件はANDで結合されます(例: Domain("myDomain*") AND Application("*myApp*"))。リソース・タイプとスコープの指定の詳細、および複数のリソース・スコープを指定する例は、「リソースのタイプおよびスコープの定義」を参照してください。

図9-4 「リソース・スコープの入力」ページ

8. 「次へ」をクリックします。

9. 「制約の入力」ページで、必要に応じて、ポリシー・セットが関連するコンテキストを決定するためにポリシー・セットに適用される制約を入力します。たとえば、セキュリティ保護されていない公衆回線でメッセージが送信される可能性があるため、外部クライアントと通信する場合に、サービスでメッセージ保護を使用するように指定できます。ただし、信頼できるネットワークで内部クライアントと通信するときは、メッセージ保護を要求しない場合もあります。
制約を指定するには、このページの「制約式詳細」セクションで「有効」チェック・ボックスを選択し、「HTTPヘッダー名」フィールドおよび「HTTPヘッダー値」フィールドでヘッダーの名前および値を指定したうえで、必要に応じて制約を反転する「!(NOT)」演算子を選択し、「制約の更新」をクリックします。次に「次へ」をクリックします。

制約の指定の詳細は、「ポリシー・セットの実行時制約の指定」を参照してください。

10. 「ポリシー参照の追加」ページで、「使用可能なポリシー」リストからポリシーを選択し、「アタッチ」をクリックします。
ポリシーの詳細を表示するには、ポリシーを選択して、「詳細の表示」アイコンをクリックします。ポップアップ・ウィンドウに、ポリシーの読取り専用の詳細説明とそのポリシーに含まれるアサーションのリストが表示されます。ポリシーの詳細を確認し終わったら、「OK」をクリックします。

11. ポリシーの選択と添付を続行します。完了したら、「検証」をクリックして、選択されたポリシーの組合せが有効であることを確認します。

図9-5 「ポリシー参照の追加」ページ

12. 「次へ」をクリックし、「ポリシー・セット・サマリー」ページを表示します。

13. ポリシー・セット・サマリー情報を確認します。満足のいくポリシー・セットが得られた場合は「保存」をクリックします。
検証が失敗した場合でも、ポリシー・セットは依然として保存されていますが、無効モードになることに注意してください。

図9-6 ポリシー・セットの作成ウィザードの「ポリシー・セット・サマリー」ページ

WLSTの使用

WLSTを使用してポリシー・セットを作成するには、次の手順に従います。

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. beginRepositorySessionコマンドを使用してリポジトリ・セッションを開始します。
リポジトリを変更するセッションを作成するために、beginRepositorySessionコマンドを使用します。すべての作成、変更または削除のコマンドは、セッションのコンテキストで実行する必要があります。セッションは、単一のドキュメントにのみ作用できます。

たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig> beginRepositorySession()

Repository session begun.

3. 新しい空のポリシー・セットを作成するためにcreatePolicySetコマンドを使用します。name、typeおよびattachTo引数が必要です。

createPolicySet(name, type, attachTo, [description=None], [enable='true'])

この場合:

- nameは、新しい空のポリシー・セットの名前を表します。

- typeは、新しいポリシー・セットが適用されるポリシー・サブジェクトのタイプを表します。

- attachToは、ポリシー・セットをアタッチするリソースのスコープを表します。この引数では、サポートされた形式で有効なリソース・スコープを定義するサポートされた式を使用する必要があります。詳細は、「リソースのタイプおよびスコープの定義」を参照してください。
リソース・スコープに正確なドメイン名を入力する必要はありません。次の例に示すように、ワイルドカードを使用できます。詳細は、「リソースのタイプおよびスコープの定義」を参照してください。

- descriptionは、ポリシー・セットの説明を提供するオプションの引数を表します。

- enableは、ポリシー・セットが有効か無効かを指定します。この引数はオプションです。

たとえば、必要な引数のみを使用して、ドメイン内のすべてのサービスに対するポリシー・セットを作成できます。

wls:/jrfserver_domain/serverConfig> createPolicySet('all-domains-default-web-service-policies', 'ws-service', 'Domain("*")')

Description defaulted to "Global policy attachments for Web Service Endpoint resources."The policy set was created successfully in the session.

コマンドラインで説明が指定されなかったのでデフォルトの説明が提示されたことに注意してください。

このコマンドの引数の詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

4. setPolicySetDescriptionコマンドを使用して説明を指定します。

setPolicySetDescription(description)

たとえば、「Default policies for web services in any domain」という説明を設定するには、次のコマンドを使用します。

wls:/jrfserver_domain/serverConfig> setPolicySetDescription('Default policies for web services in any domain')

Description updated.

5. 現在のポリシー・セットにポリシーをアタッチするには、attachPolicySetPolicyコマンドを使用します。uri引数を使用して指定したURIによって識別されるポリシーは、ポリシー・セット内の指定したエンドポイントにアタッチされます。必要なすべてのポリシーをポリシー・セットにアタッチするために、必要に応じてこのコマンドを繰り返すことができます。

attachPolicySetPolicy(uri)

たとえば、ポリシー・セット内の指定したサブジェクトにポリシー「'oracle/wss11_saml_or_username_token_with_message_protection_service_policy'」をアタッチするには、次のコマンドを入力します。

wls:/jrfserver_domain/serverConfig>attachPolicySetPolicy('oracle/wss11_saml_or_username_token_with_message_protection_service_policy')

Policy reference added.

6. 必要に応じて、構成のオーバーライドまたは実行時制約を指定します。詳細は、次のトピックを参照してください。

- 「グローバルにアタッチされたポリシーの構成プロパティのオーバーライド」の「WLSTの使用」

- 「ポリシー・セットの実行時制約の指定」の「WLSTの使用」

7. 必要に応じて、displayPolicySetコマンドを使用して、現在のリポジトリ・セッション中のポリシー・セットの構成を表示します。

displayPolicySet(name=None)

リポジトリ・セッション内でこのコマンドを実行する場合、name引数を指定する必要はないことに注意してください。現在のポリシー・セットがデフォルトで使用されます。ポリシー・セットを変更した場合は、変更後のバージョンが表示されます。それ以外の場合は、リポジトリの最新バージョンが表示されます。

たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig>displayPolicySet()

Policy Set Details:
-------------------
Name:                all-domains-default-web-service-policies
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("*")
Description:         Default policies for web services in any domain
Enabled:             true
Policy Reference:    security : oracle/wss11_saml_or_username_token_with_message_protection_service_policy, enabled=true

8. validatePolicySetコマンドを使用してポリシー・セットを検証します。

validatePolicySet(name=None)

このコマンドは、名前を指定しない場合、現在のセッション中に作成または変更されるポリシー・セットを検証します。また、リポジトリ・セッションの外側でこのコマンドを実行できることに注意してください。この場合、name引数が必要です。

たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig> validatePolicySet()

The policy set all-domains-default-web-service-policies is valid.

9. commitRepositorySessionコマンドを使用して、リポジトリに対して、現在のリポジトリ・セッションのコンテンツの書込みを行います。

wls:/jrfserver_domain/serverConfig> commitRepositorySession()

The policy set all-domains-default-web-service-policies is valid.
Creating policy set all-domains-default-web-service-policies in repository.

Repository session committed successfully.

また、セッション中にリポジトリに加えたすべての変更を破棄するabortRepositorySessionコマンドを使用することにより、すべての変更を取り消すことができます。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

既存のポリシー・セットからのポリシー・セットの作成

新しいポリシー・セットのベースとして既存のポリシー・セットを使用できます。次の項では、Fusion Middleware Controlまたはコマンドライン・インタフェースWebLogic Scripting Tool (WLST)のいずれかを使用して既存のポリシー・セットから新しいポリシー・セットを作成する方法について説明します。

既存のポリシー・セットからポリシー・セットを作成すると、すべての値とアタッチメントが新規のポリシー・セットにコピーされることに注意してください。新規のポリシー・セットのリソース・スコープとポリシー・アタッチメントは変更できますが、適用されるリソースのタイプは変更できません。

Fusion Middleware Controlの使用

既存のポリシー・セットを使用してポリシー・セットを作成するには:

1. 「「ポリシー・セット・サマリー」ページへの移動」の説明に従って、「ポリシー・セット・サマリー」ページに移動します。

2. 「ポリシー・セット・サマリー」ページで、コピーするポリシー・セットを選択し、「類似作成」をクリックします。

3. 「一般情報の入力」ページで、ポリシー・セットの新しい名前および説明を入力します。
次の事項に注意してください。

- ベース・ポリシー・セット名に「_Copy」を追加したデフォルトの新しいポリシー・セット名が作成されます。たとえば、ベース・ポリシー・セットの名前がall-domains-default-web-service-policiesである場合、表示されるコピーの名前はall-domains-default-web-service-policies_Copyになります。

- 「リソース・タイプ」フィールドは読取り専用です。ポリシー・セットのクローンを作成する場合、スコープを変更することはできますが、ポリシー・セットをアタッチするリソースのタイプは変更できません。

4. 「有効」チェック・ボックスを選択するか、その選択を解除して、ポリシー・セットを有効または無効にします。

5. 「次へ」をクリックします。

6. 「リソース・スコープの入力」ページで、必要に応じてスコープを変更し、「次へ」をクリックします。

注意:
リソース・スコープを指定するには、このページで少なくとも1つの「パターン」フィールドにパターン文字列を指定する必要があります。

7. 「制約の入力」ページで、必要に応じて制約を指定するか、または既存の制約を変更します。「制約の更新」をクリックし、「次へ」をクリックします。
詳細は、「ポリシー・セットの実行時制約の指定」を参照してください。

8. 「ポリシー参照の追加」ページで、必要に応じてポリシー・アタッチメントを変更します。完了したら、「検証」をクリックして、選択されたポリシーの組合せが有効であることを確認します。

9. 「次へ」をクリックし、「ポリシー・セット・サマリー」ページを表示します。

10. ポリシー・セット・サマリー情報を確認します。満足のいくポリシー・セットが得られた場合は「保存」をクリックします。

WLSTの使用

既存のポリシー・セットからポリシー・セットを作成するには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. beginRepositorySessionコマンドを使用してリポジトリ・セッションを開始します。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig> beginRepositorySession()

Repository session begun.

3. clonePolicySetコマンドにより、既存のポリシー・セットを使用してポリシー・セットを作成します。

clonePolicySet(name, source, [attachTo=None,] [description=None], [enable='true'])

この場合:

- nameは、新しいクローンのポリシー・セットの名前を表します。

- sourceは、クローンを作成するポリシー・セットの名前を指定します。

- attachToは、ポリシー・セットをアタッチするリソースのスコープを表します。この引数を指定する場合、サポートされた形式で有効なリソース・スコープを定義するサポートされた式を使用する必要があります。リソース・スコープに正確な名前を入力する必要はありません。次の例に示すように、ワイルドカードを使用できます。詳細は、「リソースのタイプおよびスコープの定義」を参照してください。
この引数を指定しない場合、リソース・スコープの識別のためにソース・ポリシー・セットで使用されている式が保持されます。また、手順5に従って、attachPolicySetコマンドを使用してリソース・スコープを変更することもできます。

- descriptionは、クローンのポリシー・セットの説明を提供するオプションの引数を表します。

- enableは、ポリシー・セットが有効か無効かを指定します。この引数はオプションです。

たとえば、ポリシー・セットのクローンを作成するには、次のようにします。

wls:/jrfServer_domain/serverConfig>clonePolicySet
('app-only-web-service-policies','all-domains-default-web-service-policies',
None, 'Default policies for application jaxws-sut')

The policy set was cloned successfully in the session.

この例では、attachTo引数が指定されていないことに注意してください。

このコマンドの引数の詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

4. 必要に応じて、displayPolicySetコマンドを使用してポリシー・セットの構成を表示します。
たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> displayPolicySet()

Policy Set Details:
-------------------
Name:                app-only-web-service-policies
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("jrfServer_domain")
Description:         Default policies for application jaxws-sut
Enabled:             true
Policy Reference:    security : oracle/wss11_saml_or_username_token_with_message_protection_service_policy, enabled=true

5. アタッチメントのリソース・スコープを変更するには、attachPolicySetコマンドを使用します。

attachPolicySet(expression)

この場合:

- expressionは、ポリシー・セットで定義されたリソース・タイプに有効であるリソース・スコープをサポートされた形式で定義するサポートされた式です。たとえばSOAリソース・タイプでは、アプリケーションとなるリソース・スコープを定義できません。SOAリソース・タイプでサポートされるリソース・スコープは、ドメイン、サーバーおよびコンポジットです。

注意:
信頼できない結果が発生する可能性があるため、サーバー・スコープの使用はお薦めできません。

詳細は、「リソースのタイプおよびスコープの定義」を参照してください。

たとえば、jaxws-sutという名前のアプリケーションにのみポリシー・セット内のポリシーをアタッチするには、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig> attachPolicySet('Application("jaxws-sut")')

Scope of resources updated.

6. 必要に応じて、構成のオーバーライドまたは実行時制約を指定します。詳細は、次のトピックを参照してください。

- 「グローバルにアタッチされたポリシーの構成プロパティのオーバーライド」の「WLSTの使用」

- 「ポリシー・セットの実行時制約の指定」の「WLSTの使用」

7. 必要に応じて、displayPolicySetコマンドを使用してクローンのポリシー・セットの構成を表示します。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig>displayPolicySet()

Policy Set Details:
-------------------
Name:                app-only-web-service-policies
Type of Resources:   Web Service Endpoint
Scope of Resources:  Application("jaxws-sut")
Description:         Default policies for application jaxws-sut
Enabled:             true
Policy Reference:    security : oracle/wss11_saml_or_username_token_with_message_protection_service_policy, enabled=true

8. commitRepositorySessionコマンドを使用して、リポジトリに対して、現在のリポジトリ・セッションのコンテンツの書込みを行います。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig>commitRepositorySession()
The policy set app-only-web-service-policies is valid.
Creating policy set app-only-web-service-policies in repository.

Repository session committed successfully.

また、セッション中にリポジトリに加えたすべての変更を破棄するabortRepositorySessionコマンドを使用することにより、すべての変更を取り消すことができます。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

ポリシー・セットの編集

次の項では、Fusion Middleware Controlまたはコマンドライン・インタフェースWebLogic Scripting Tool (WLST)のいずれかを使用して既存のポリシー・セットを編集する方法について説明します。

Fusion Middleware Controlの使用

既存のポリシー・セットを編集するには:

1. 「「ポリシー・セット・サマリー」ページへの移動」の説明に従って、「ポリシー・セット・サマリー」ページに移動します。

2. 「ポリシー・セット・サマリー」ページで、編集するポリシー・セットを選択し、「編集」をクリックします。

3. 「一般情報の入力」ページで、「有効」チェック・ボックスを選択するか、その選択を解除して、ポリシー・セットを有効または無効にします。また、ポリシー・セットの説明を編集できます。
「名前」フィールドおよび「リソース・タイプ」フィールドが読取り専用であることに注意してください。

4. 「次へ」をクリックします。

5. 「リソース・スコープの入力」ページで、必要に応じてスコープを変更し、「次へ」をクリックします。

6. 「制約の入力」ページで、必要に応じて制約を指定するか、または既存の制約を変更します。「制約の更新」をクリックし、「次へ」をクリックします。
制約の指定の詳細は、「ポリシー・セットの実行時制約の指定」を参照してください。

7. 「ポリシー参照の追加」ページで、必要に応じてポリシー・アタッチメントを変更します。完了したら、「検証」をクリックして、選択されたポリシーの組合せが有効であることを確認します。

8. 「次へ」をクリックし、「ポリシー・セット・サマリー」ページを表示します。

9. ポリシー・セット・サマリー情報を確認します。満足のいくポリシー・セットが得られた場合は「保存」をクリックします。

WLSTの使用

ポリシー・セットを編集するには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. beginRepositorySessionコマンドを使用してリポジトリ・セッションを開始します。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig> beginRepositorySession()

Repository session begun.

3. modifyPolicySetコマンドを使用して、編集する既存のポリシー・セットを選択します。

modifyPolicySet(name)

名前付きポリシー・セットの最新バージョンが現在のセッションにロードされます。たとえば、ポリシーを追加するためにポリシー・セットを編集するには、次のコマンドを使用します。

wls:/jrfServer_domain/serverConfig> modifyPolicySet('all-domains-default-web-service-policies')

The policy set is ready for modification in the session.

4. 必要応じて、ポリシー・セットを編集します。たとえば、次のようにします。

- ポリシー・セットにポリシーを追加するには、attachPolicySetPolicyコマンドを使用して、uri引数で指定するURIによりポリシーを識別します。

attachPolicySetPolicy(uri)

oracle/wss_saml_or_username_token_service_policyポリシーおよびoracle/log_policyポリシーをポリシー・セットに追加するには、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig> attachPolicySetPolicy('oracle/wss_saml_or_username_token_service_policy')

Policy reference added.

wls:/jrfServer_domain/serverConfig>attachPolicySetPolicy('oracle/log_policy')

Policy reference added.

- ポリシー・セットからポリシーを削除するには、detachPolicySetPolicyコマンドを使用して、uri引数で指定するURIによりポリシーを識別します。

detachPolicySetPolicy(uri)

ポリシー・セットからoracle/wss11_saml_or_username_token_with_message_protection_service_policyを削除するには、次のように入力します。

wls:/jrfServer_domain/serverConfig> detachPolicySetPolicy('oracle/wss11_saml_or_username_token_with_message_protection_service_policy')

Policy reference removed.

- ポリシー・セット内でポリシー・アタッチメントを有効または無効にするには、enablePolicySetPolicyコマンドを使用して、uri引数で指定するURIによりポリシーを識別します。

enablePolicySetPolicy(uri,[enable=true])

デフォルトはtrueです。

oracle/log_policyを無効にするには、次のように入力します。

wls:/jrfServer_domain/serverConfig> enablePolicySetPolicy('oracle/log_policy',false)

Policy reference disabled.

5. 必要に応じて、構成のオーバーライドまたは実行時制約を指定します。詳細は、次のトピックを参照してください。

- 「グローバルにアタッチされたポリシーの構成プロパティのオーバーライド」の「WLSTの使用」

- 「ポリシー・セットの実行時制約の指定」の「WLSTの使用」

6. ValidatePolicySetコマンドを使用してポリシー・セットを検証します。
たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> validatePolicySet()

The policy set app-only-web-service-policies is valid.

7. 必要に応じて、displayPolicySetコマンドを使用して、変更後のポリシー・セットを表示します。

wls:/jrfServer_domain/serverConfig>displayPolicySet()

Policy Set Details:
-------------------
Name:                all-domains-default-web-service-policies
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("*")
Description:         Default policies for web services in any domain
Enabled:             true
Policy Reference:    security : oracle/wss_saml_or_username_token_service_policy, enabled=true
management : oracle/log_policy, enabled=false

8. リポジトリに対して、現在のリポジトリ・セッションのコンテンツの書込みを行うために、commitRepositorySessionコマンドを使用します。

wls:/jrfServer_domain/serverConfig> commitRepositorySession()

The policy set all-domains-default-web-service-policies is valid.
Updating policy set all-domains-default-web-service-policies in repository.

Repository session committed successfully.

また、セッション中にリポジトリに加えたすべての変更を破棄するabortRepositorySessionコマンドを使用することにより、すべての変更を取り消すことができます。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

リソースのタイプおよびスコープの定義

リソース・タイプ(つまり、サブジェクト・タイプ)は、ポリシー・セットが適用されるエンドポイントのタイプを識別します。これは、ポリシー・セットのappliesTo属性にマッピングされます。

リソース・スコープ式は、ポリシー・セットがアタッチされるポリシー・サブジェクト・セットを識別します(0個、1個または多数個が可能です)。これは、ポリシー・セットのattachTo属性にマッピングされ、複数のポリシー・セットが存在する場合に競合の解決に使用されます。ポリシー・セットでの競合の解決に関する詳細は、「ポリシーの有効セットの計算方法」を参照してください。

リソース・セット全体でグローバルにポリシーをアタッチするには、ポリシー・セットが適用されるポリシー・サブジェクトのタイプ、およびエンタープライズのトポロジ内のリソース・スコープを指定する必要があります。

リソース・タイプ

Fusion Middleware Controlで、ポリシー・セットを作成しているときに、メニューからリソース・タイプを選択します。WLSTを使用してポリシー・セットを作成する場合、こうしたリソース・タイプに対応する特定の略語を使用する必要があります。表9-1に、Fusion Middleware Controlで選択したリソースのタイプ、WLSTで必要な略語および各リソース・タイプに有効なリソース・スコープをリストします。

注意:
サーバー・インスタンス・スコープを使用すると信頼できない結果が発生する可能性があるため、特にクラスタを含む複数サーバーにターゲット指定されたアプリケーションではお薦めしません。

表9-1 ポリシー・サブジェクトのリソース・タイプ

Fusion Middleware Control

WLST

有効なリソース・スコープ

ADF RESTful Webサービス接続

将来使用するために予約されたフィールド。

将来使用するために予約されたフィールド。

非同期コールバック・クライアント

ws-callback

- ドメイン

- アプリケーション

- アプリケーション・モジュール

- Webサービス・エンドポイント

- ポート

RESTfulクライアント

rest-client

- ドメイン

- アプリケーション

- モジュール

RESTfulリソース

rest-resource

- ドメイン

- アプリケーション

- モジュール

- サービス

注意: サーバー・インスタンスは、RESTfulリソースの有効なリソース・スコープではありません。

SOAコンポーネント

sca-component

- ドメイン

- SOAパーティション

- SOAコンポジット

- SOAコンポーネント

SOA参照

sca-reference

- ドメイン

- SOAパーティション

- SOAコンポジット

- SOA参照

- ポート

SOAサービス

sca-service

- ドメイン

- SOAパーティション

- SOAコンポジット

- SOAサービス

- ポート

Webサービス・クライアント

ws-client

- ドメイン

- アプリケーション

- アプリケーション・モジュール

- Webサービス・クライアント

- ポート

Webサービス接続

ws-connection

- ドメイン

- アプリケーション

- アプリケーション・モジュール

- SOA参照またはWebサービス・クライアント

- ポート

Webサービス・エンドポイント

ws-service

- ドメイン

- アプリケーション

- アプリケーション・モジュール

- Webサービス・エンドポイント

- ポート

リソース・スコープ

Fusion Middleware Controlで、リソース・スコープに関連付けられている名前を表すパターン文字列を入力することにより、スコープを指定します。たとえば、ドメイン内のすべてのWebサービス・エンドポイントにポリシー・セットをアタッチするには、「ドメイン名」フィールドにドメインの名前を表すパターンを入力します。WLSTでリソース・スコープを指定する場合、各スコープについてサポートされる式を使用する必要があります。サポートされる式は、表9-2を参照してください。こうした式は、次の引数で必要になります。

- createPolicySetコマンドおよびclonePolicySetコマンドのattachTo引数

- attachPolicySetコマンドのexpression引数

Fusion Middleware ControlおよびWLSTの両方について、名前全体またはワイルドカードを使用した部分値を入力できます。該当位置で任意の数の文字に一致するワイルドカード文字としてアスタリスク(*)を文字列内の任意の場所で使用できます。また、文字列内の任意の位置で複数のワイルドカードを指定できます。たとえば、ドメイン名jrf_domainに対しては、jrf*、*rf*domain、または任意の個数の組合せを入力できます。1つのスコープについて1つのパターンのみを提供する必要があります。リソース・スコープについてパターン文字列を指定しない場合、アスタリスク(*)が想定されます。一重引用符または二重引用符を使用できます。複数の値を指定した場合、ポリシー・サブジェクトにアタッチすることが考慮されているポリシー・セットにすべての式が一致する必要があります。

次に、リソース・スコープについてサポートされる式のリストを示します。

表9-2 リソース・スコープについてサポートされる式

サポートされる式

説明

Domain("expression")

この値は、デプロイされた管理ドメインに基づくポリシー・サブジェクトに一致します。

Server("expression")

この値は、デプロイされたサーバー・インスタンスに基づくポリシー・サブジェクトに一致します。

注意: このスコープを使用すると信頼できない結果が発生する可能性があるため、特にクラスタを含む複数サーバーにターゲット指定されたアプリケーションではお薦めしません。

Application("expression")

この値は、配置されたアプリケーションの名前に基づくポリシー・サブジェクトに一致します。

Partition('expression")

この値は、配置されたパーティションの名前に基づくポリシー・サブジェクトに一致します。

Module("expression")

この値は、配置されたアプリケーション・モジュールの名前に基づくポリシー・サブジェクトに一致します。

Composite("expression")

この値は、配置されたSOAコンポジットの名前に基づくポリシー・サブジェクトに一致します。

注意: コンポジットの場合、式ではコンポジットの名前のみを使用すべきです。次に例を示します。

Composite("*Basic_SOA_Client*")

式には、SOAパーティションまたはコンポジット・リビジョン番号を含めないでください。

Reference("expression")

この値は、配置された参照の名前に基づくポリシー・サブジェクトに一致します。

Service("expression")

この値は、配置されたサービスの名前に基づくポリシー・サブジェクトに一致します。

注意: Webサービス・エンドポイントおよびWebサービス・クライアントのリソース・タイプ(ws-serviceおよびws-client)では、式にネームスペースおよびサービス名を含める必要があります。次に例を示します。

Service("{http://mynamespace/}myService")

PS5の前にアセンブルされたアプリケーションでは、listWebServices出力またはサービス名が表示されるFusion Middleware Controlにネームスペースが表示されません。この場合、「Webサービスのネームスペースの決定」の説明に従ってネームスペースを決定できます。

Component("expression")

この値は、配置されたコンポーネントの名前に基づくポリシー・サブジェクトに一致します。

Port("expression")

この値は、配置されたポートの名前に基づくポリシー・サブジェクトに一致します。

Webサービスのネームスペースの決定

PS5の前にアセンブルされたアプリケーションでは、WLSTコマンドの出力またはサービス名が表示されるFusion Middleware Controlにネームスペースが表示されません。Webサービス・エンドポイントおよびWebサービス・クライアントのリソース・タイプ(ws-serviceおよびws-client)のリソース・スコープとしてサービスを指定するには、サービス名にネームスペースを含める必要があります。WebサービスのWSDLドキュメントからサービスのネームスペースを決定できます。これを行うには、次の手順を実行します。

1. 「WebサービスWSDLドキュメントの表示」の説明に従って、Webサービス・エンドポイントのWSDLドキュメントを表示します。

2. WSDLドキュメントで、サービスのターゲット・ネームスペースを含むwsdl:definitions要素を特定します。
たとえば、TestService WSDLで、次のようにします。:

http://host:7001/jaxws-service/TestService?WSDL

次のwsdl:definitions要素が含まれます。

<wsdl:definitions name="TestService"targetNamespace="http://service.jaxws.wsm.oracle/">

完全なサービス名を指定するには、ネームスペースとサービス名を組み合せます。前記の例では、完全なサービス名は次のようになります。

{http://service.jaxws.wsm.oracle/}TestService

例

次の例では、様々なリソース・タイプおよびスコープを使用してポリシー・セットを作成する方法を示しています。

例9-1では、非同期コールバック・クライアント(ws-callback)リソース・タイプのポリシー・セットを作成しています。この例では、ポリシー・セットが特定のアプリケーション・スコープにアタッチされ、フィルタ条件(Domain AND Application)を満たすすべてのサービスに適用されます。

例9-1 非同期コールバック・クライアント・リソース・タイプのポリシー・セット

beginRepositorySession()
createPolicySet('Async callback client', 'ws-callback',
'Domain('FinancialDomain') and Application('Expense*')',
'Global policy for asynchronous callback client', true)
attachPolicySetPolicy('oracle/wss10_saml_token_client_policy')
validatePolicySet()
commitRepositorySession()
displayPolicySet('Async callback client')

例9-2では、Webサービス接続(ws-connection)リソース・タイプのweb_connection_cost_serviceという名前のポリシー・セットを作成しています。この例では、ポリシー・セットが特定のアプリケーション・モジュール・スコープにアタッチされ、フィルタ条件(Domain AND Application AND Module)を満たすすべてのサービスに適用されます。

例9-2 Webサービス接続リソース・タイプのポリシー・セット

beginRepositorySession()
createPolicySet('web_connection_cost_service', 'ws-connection',
'Domain("SCMDomain") and and Application("ScmCst*") and Module("*Costs")', enable=true)
attachPolicySetPolicy('oracle/wss10_saml_token_client_policy')
validatePolicySet()
commitRepositorySession()
displayPolicySet('web_connection_cost_service')

ポリシー・セットの検証

ポリシー・セットの検証では、ポリシー・セットが「ポリシー・サブジェクトの検証」に記載されたルールに準拠するかどうかの検証に加えて、次のチェックも実行されます。

- 定義されたリソース・タイプおよびスコープがポリシー・セットに対して有効であること。

- リソース・スコープに対して入力された値に、サポートされる形式でサポートされる式が含まれていること。

- 参照されたすべてのポリシーが使用可能であり、相互に互換性があること。たとえば、ポリシーのカテゴリが相互に競合しない場合、ポリシーには互換性があります。

注意:
ポリシー・アタッチメント間に競合が存在しないことを確認するために、Fusion Middleware ControlおよびWLSTコマンドを使用して、Webサービス・エンドポイントに有効でセキュアな構成が含まれるかどうかを判断できます。詳細は、「エンドポイントのセキュア・ステータスの決定」を参照してください。
トラブルシューティングの詳細は、「WLSTを使用したポリシー・アタッチメントの問題の診断」を参照してください。

グローバルにアタッチされたポリシーの構成プロパティのオーバーライド

ポリシー・セットで参照されたポリシーにオーバーライド可能プロパティが含まれる場合、Fusion Middleware ControlまたはWLSTのいずれかを使用して、該当ポリシー・セットのプロパティの既存値をオーバーライドできます。

Fusion Middleware Controlの使用

ポリシー・セットで参照されたポリシーの構成プロパティをオーバーライドするには:

1. 「「ポリシー・セット・サマリー」ページへの移動」の説明に従って、「ポリシー・セット・サマリー」ページに移動します。

2. 「ポリシー・セット・サマリー」ページから、オーバーライドを構成するポリシーを含むポリシー・セットを選択します。
オーバーライド可能プロパティを含むポリシーをポリシー・セットで参照している場合、図9-7に示すように、「ポリシー構成のオーバーライド」ボタンが表示されます。

図9-7 ポリシー・セットの「ポリシー構成のオーバーライド」ボタン

3. 「ポリシー構成のオーバーライド」を選択します。
図9-8に示すように、「ポリシー構成のオーバーライド」ページが表示されます。

図9-8 ポリシー・セットの「ポリシー構成のオーバーライド」ページ

4. 「ポリシー参照」表で、構成プロパティをオーバーライドするポリシーを選択します。ポリシーにオーバーライド可能プロパティが含まれる場合、「ポリシー構成のオーバーライド」ボタンが表示されます。

5. 「ポリシー構成のオーバーライド」を選択します。「セキュリティ構成の詳細」ページに、選択したポリシーでオーバーライドできる構成プロパティのリストが表示されます。
図9-9に、oracle/wss11_saml_or_username_token_with_message_protection_service_policyのオーバーライド可能プロパティを示します。

図9-9 ポリシー・セットの「セキュリティ構成の詳細」ページ

6. プロパティの「値」フィールドにオーバーライド値を入力し、「適用」をクリックします。
ポリシー・セットが適用されるすべてのエンドポイントで、プロパティがオーバーライドされます。

構成オーバーライドおよびオーバーライドできるプロパティの詳細は、次の項を参照してください。

- オーバーライド可能なWebサービス・ポリシーの添付

- オーバーライド可能なクライアント・ポリシーの添付

- ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成

WLSTの使用

setPolicySetPolicyOverrideコマンドを使用して、ポリシー・セットで参照されているポリシー内の構成オーバーライドを指定できます。このコマンドは、リポジトリ・セッションのコンテキストでポリシー・セットの作成または変更中にのみ使用できます。次の手順は、既存のポリシー・セットの編集中に構成のオーバーライドを指定する方法ですが、新しいポリシー・セットを作成するか、既存のポリシー・セットからポリシー・セットを作成するときにリポジトリ・セッションでこのコマンドを使用することもできます。

1. beginRepositorySessionコマンドを使用してリポジトリ・セッションを開始します。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig> beginRepositorySession()

Repository session begun.

2. modifyPolicySetコマンドを使用して、編集する既存のポリシー・セットを選択します。

modifyPolicySet(name)

名前付きポリシー・セットの最新バージョンが現在のセッションにロードされます。たとえば、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig> modifyPolicySet('all-domains-default-web-service-policies')

The policy set is ready for modification in the session.

3. 必要に応じて、displayPolicySetコマンドを使用してポリシー・セットの構成を表示します。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig>displayPolicySet()

Policy Set Details:
-------------------
Name:                all-domains-default-web-service-policies
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("*")
Description:         Default policies for web services in any domain
Enabled:             true
Policy Reference:    security : oracle/wss_saml_or_username_token_service_policy, enabled=true
management : oracle/log_policy, enabled=false

4. setPolicySetPolicyOverrideコマンドを使用して、構成オーバーライドを指定します。
たとえば、reference.priorityプロパティの構成オーバーライドを指定するには、次のコマンドを入力します。

wls:/jrfserver_domain/serverConfig>setPolicySetPolicyOverride('oracle/wss_saml_or_username_token_service_policy',
'reference.priority','1')

The configuration override property "reference.priority" having value "1" has
been added to the reference to policy with URI "oracle/wss_saml_or_username_token_service_policy".

5. 必要に応じて、ポリシー・セットの構成を表示します。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig>displayPolicySet()

Policy Set Details:
-------------------
Name:                all-domains-default-web-service-policies
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("*")
Description:         Default policies for web services in any domain
Enabled:             true
Policy Reference:    security : oracle/wss_saml_or_username_token_service_policy, enabled=true
reference.priority=1
management : oracle/log_policy, enabled=false

reference.priority構成オーバーライドが出力に表示されるようになったことに注意してください(前記の例の太字の部分)。

6. ValidatePolicySetコマンドを使用してポリシー・セットを検証します。
たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> validatePolicySet()

The policy set all-domains-default-web-service-policies is valid.

7. リポジトリに対して、現在のリポジトリ・セッションのコンテンツの書込みを行うために、commitRepositorySessionコマンドを使用します。

wls:/jrfServer_domain/serverConfig> commitRepositorySession()

The policy set all-domains-default-web-service-policies is valid.
Updating policy set all-domains-default-web-service-policies in repository.

Repository session committed successfully.

ポリシー・セットの実行時制約の指定

アプリケーションは、外部および内部の両方のクライアントに同じサービスを公開する環境にデプロイできます。こうした環境では多くの場合、クライアントの場所に基づいて様々なセキュリティ動作を強制することが適切です。

たとえば、Webサービスをホストする単一のFusion Middlewareサーバー(WebLogic Server)から構成される環境では、2つの別個のネットワークからのHTTPリクエストをリスニングするために、フロント・エンドでOracle HTTP Serverが構成されます。この一方のネットワークはすべてのプライベート内部リクエストを転送するために使用され、他方のネットワークはすべての外部リクエストを転送するために使用されます。外部ネットワークによるアクセスは、ファイアウォールを経由します。内部ネットワークに対する物理アクセスは高度に制限されるので、このネットワークからのリクエストはすでに保護されています。したがって、認証および認可を強制することのみが必要です。メッセージ保護を強制しないことによって、サーバー上の負荷が軽減され、パフォーマンスが向上します。しかし、外部ネットワークからのすべてのリクエストは、誰でもアクセスできる可能性があるので、保護されていないものとみなされます。この場合、認証と認可に加えて、メッセージ保護(機密保護と整合性)を強制する必要があります。こうしたリクエストのパフォーマンスは低下しますが、それに代わる結果(データ・リーク、リプレイ攻撃など)はさらに悪いために、容認できるものとみなされます。

管理者は、外部ネットワークに対してポリシー・セットの適切な適用を確実に行うために、ポリシー・セットが評価される制約式を指定する必要があります。この式の値は、ポリシー・セットが関連する実行時のコンテキストを示します。

制約式では、有効なヘッダー名および値を指定する必要があります。このリリースでは、次の式が動作することが確認されています。

- HTTPHeader("VIRTUAL_HOST_TYPE","External")—外部としての制約を設定し、Oracle HTTP Serverを通じて受信するすべての外部リクエストにポリシー・セットを適用すべきであることを示します。

- !HTTPHeader("VIRTUAL_HOST_TYPE","External")—非外部としての制約を設定し、内部ネットワークからのリクエストなど、Oracle HTTP Serverを経由していないすべての受信リクエストにポリシー・セットを適用すべきであることを示します。

注意:
実行時制約関数HTTPHeaderは、Oracle HTTP Serverがフロント・エンドで構成されており、なおかつOracle HTTP Server管理者がリクエストにカスタムVIRTUAL_HOST_TYPEヘッダーを追加している場合にのみ、その使用が認定されています。リクエストへのヘッダーの追加に関する詳細は、「リクエスト・オリジンを指定するためのOracle HTTP Serverの構成」を参照してください。この手順ではoracle/whitelist_authorization_policyを引用していますが、これは実行時制約のリクエスト・オリジンの指定にも該当します。

制約を指定する場合は、次のルールが適用されます。

- 複数のポリシー・セットで同じ制約を指定している場合、標準の有効なポリシー計算ルールが適用されます。標準の有効なポリシー・ルールの詳細は、「有効なポリシー・セットの計算方法」を参照してください。

- 複数のポリシー・セットで様々な制約を指定する場合、各タイプの制約に対して有効なポリシー・セットが独立して計算されます。つまり、すべての外部リクエストについて有効なポリシー・セットが評価され、すべての非外部リクエストについて別個の有効なポリシー・セットが評価されます。

- ポリシー・セットで実行時制約を指定しない場合、すべてのリクエスト、つまり外部および非外部のリクエストに適用されます。

図9-10は、3つの異なるポリシー・セットで制約を使用して決定された外部および非外部のリクエストに対して有効なポリシーを示しています。

図9-10 実行時制約を含むポリシー・セットに対して有効なポリシー計算

Fusion Middleware Controlの使用

ポリシー・セット・ウィザードを使用してポリシー・セットの作成、編集またはクローンの作成を行う場合に、実行時制約を指定できます。ポリシー・セットのスコープを指定した後、「制約の入力」ページが表示されます。指定の制約を含むポリシー・セットを編集しているか、またはそのクローンを作成している場合、 図9-11に示すように、ポリシー・セットで現在構成されている制約が表示されます。新しいポリシー・セットを作成している場合は、これらのフィールドは空白になります。

図9-11 ポリシー・セット・ウィザードでの制約ページの入力

制約を指定するには:

1. ページ上の「制約式詳細」セクションで、「有効」チェック・ボックスを選択して制約を有効にします。

2. 必要に応じて、制約を反転するために「! (NOT)演算子」を選択します。

3. 「HTTPヘッダー名」フィールドおよび「HTTPヘッダー値」フィールドにそれぞれ、HTTPHeader制約関数のヘッダー名およびヘッダー値を入力します。制約が有効である場合、「HTTPヘッダー名」フィールドが必要です。
たとえば、図9-11に示すように、外部クライアントにのみ適用される制約を指定するには、「HTTPヘッダー名」フィールドに「VIRTUAL_HOST_TYPE」と入力し、「HTTPヘッダー値」フィールドに「External」と入力します。

4. 「制約の更新」をクリックします。
制約式が「制約」フィールドに表示されます(例: HTTPHeader('VIRTUAL_HOST_TYPE','External')など)。

WLSTの使用

setPolicySetConstraintコマンドを使用して、ポリシー・セット内の制約を指定できます。このコマンドは、リポジトリ・セッションのコンテキストでポリシー・セットの作成または変更中にのみ使用できます。

次の手順は、新しいポリシー・セットの作成中に実行時制約を指定する方法ですが、既存のポリシー・セットを編集するか、既存のポリシー・セットから新しいポリシー・セットを作成するときにリポジトリ・セッションでsetPolicySetConstraintコマンドを使用することもできます。

1. beginRepositorySessionコマンドを使用してリポジトリ・セッションを開始します。
たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> beginRepositorySession()

Repository session begun.

2. 新しいポリシー・セットを作成するためにcreatePolicySetコマンドを使用します。
たとえばこのために、ドメイン・スコープで外部クライアントに認証およびメッセージ保護を提供するポリシー・セットを作成するには、次のようにします。

wls:/jrfServer_domain/serverConfig>createPolicySet('domainExternal',
'ws-service','Domain("*")','Authentication and message protection at domain scope for external clients')

The policy set was created successfully in the session.

WLSTを使用したポリシー・セットの作成の詳細は、「ポリシー・セットの作成」の「WLSTの使用」を参照してください。

3. attachPolicySetPolicyコマンドを使用して、現在のポリシー・セットにポリシーをアタッチします。
たとえば、ポリシー・セットで指定されたサブジェクトにポリシー'oracle/wss10_message_protection_service_policy'をアタッチするには、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig>attachPolicySetPolicy('oracle/wss11_saml_or_username_token_with_message_protection_service_policy

Policy reference added.

4. setPolicySetConstraint(constraint)コマンドを使用して、実行時制約を指定します。constraint引数では、サポートされた形式で有効な実行時制約を定義するサポートされた式を使用する必要があります。このリリースでは、次の式が動作することが確認されています。

- HTTPHeader("VIRTUAL_HOST_TYPE","External")

- !HTTPHeader("VIRTUAL_HOST_TYPE","External")

たとえば、外部クライアントにのみ適用される制約を指定するには、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig>setPolicySetConstraint('HTTPHeader("VIRTUAL_HOST_TYPE","External")')

Constraint updated.

5. 必要に応じて、displayPolicySetコマンドを使用して、現在のリポジトリ・セッション中のポリシー・セットの構成を表示します。
たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig>displayPolicySet()

Policy Set Details:
-------------------
Name:                domainExternal
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("em_domain")
Constraint:          HTTPHeader("VIRTUAL_HOST_TYPE","External")
Description:         Authentication and message protection at domain scope for external clients
Enabled:             true
Policy Reference:    security : oracle/wss11_saml_or_username_token_with_message_protection_service_policy, enabled=true

6. commitRepositorySessionコマンドを使用して、リポジトリに対して、現在のリポジトリ・セッションのコンテンツの書込みを行います。

wls:/jrfServer_domain/serverConfig> commitRepositorySession()

The policy set domainMsgExternal is valid.
Creating policy set domainMsgExternal in repository.
Repository session committed successfully.

グローバルにアタッチされたポリシーの無効化

特定のエンドポイントに対してグローバルにアタッチされたポリシーを無効にする場合のために、いかなる動作も強制しない事前定義済ポリシーがFusion Middlewareインストールに含まれています。無効にするポリシーと同じカテゴリのアサーションを含むこうした事前定義済ポリシーのいずれかをアタッチすることによって、グローバルにまたは外部からアタッチされたポリシーを無効にできます。エンドポイントに直接、またはグローバルに、アプリケーションやモジュール・レベルなどの下位のスコープで、動作無効ポリシーをアタッチできます。デフォルトでは、直接アタッチされたポリシーは、グローバルにアタッチされたポリシーよりも優先され、下位のスコープでグローバルにアタッチされたポリシーは、上位のスコープでグローバルにアタッチされたポリシーよりも優先されます。詳細は、「ポリシーの有効セットの計算方法」を参照してください。

たとえば、ドメイン内のすべてのサービス・エンドポイントに認証ポリシーがグローバルにアタッチされている場合、エンドポイントに直接oracle/no_authentication_service_policyをアタッチすることにより、特定のWebサービス・エンドポイントについて認証ポリシーを無効にできます。また、ドメイン内のアプリケーションについてのみ認証ポリシーを無効にするために、アプリケーション内のサービス・エンドポイントにのみoracle/no_authentication_service_policyをアタッチするポリシー・セットを作成できます。

注意:
無効にしているグローバルにアタッチされたポリシーに他のアサーションが含まれる場合、それらのアサーションもまた無効になります。たとえば、無効にするグローバル・ポリシーがoracle/wss10_saml_token_with_message_protection_client_policyであり、下位スコープで(または直接)エンドポイントに動作無効のoracle/no_authentication_service_policyをアタッチした場合、グローバルにアタッチされたポリシーの認証およびメッセージ保護のアサーションがともに無効になります。

エンドポイントへの直接的なポリシーのアタッチに関する詳細は、「単一のサブジェクトへのポリシーの添付」を参照してください。動作無効ポリシーの詳細は、「動作無効ポリシー」を参照してください。

注意:
こうした動作無効ポリシーは削除しないでください。これらのポリシーは、いずれも同じno_behaviorアサーションを使用します。アサーション・テンプレートは提供されていないので、これらのポリシーを削除した場合、手動で再作成する方法はありません。誤って削除した場合、リストアする唯一の方法はリポジトリを再構築することです。詳細は、「Oracle WSMリポジトリの再構築」を参照してください。

ポリシー・セットの有効化および無効化

次の項では、Fusion Middleware Controlまたはコマンドライン・インタフェースWebLogic Scripting Tool (WLST)のいずれかを使用してポリシー・セットを有効または無効にする方法について説明します。

Fusion Middleware Controlの使用

Fusion Middleware Controlを使用してポリシー・セットを有効または無効にするには、「ポリシー・セットの編集」の説明に従ってポリシー・セットを編集します。ポリシー・セットが無効な場合にそれを有効にするには、「有効」チェック・ボックスを選択します。ポリシー・セットを無効にするには、「有効」チェック・ボックスの選択を解除します。

残る手順では「次へ」をクリックし、「保存」をクリックして更新されたポリシー・セットを保存します。

図9-12 ポリシー・セットの有効化および無効化

WLSTの使用

ポリシー・セットを有効または無効にするには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. beginRepositorySessionコマンドを使用してリポジトリ・セッションを開始します。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig> beginRepositorySession()

Repository session begun.

3. modifyPolicySetコマンドを使用して、変更するポリシー・セットを指定します。
たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> modifyPolicySet('all-domains-default-web-service-policies')

The policy set is ready for modification in the session.

4. enablePolicySetコマンドを使用して、ポリシー・セットを有効または無効にします。

enablePolicySet([enable=true])

ポリシー・セットが無効な場合に、ポリシー・セットを有効にするために、enable引数をtrueに設定します。デフォルトはtrueです。ポリシー・セットを無効にするには、enable引数をfalseに設定します。

たとえば、ポリシー・セットを無効にするには、次のようにします。

wls:/jrfServer_domain/serverConfig> enablePolicySet(false)

Policy set disabled.

5. ValidatePolicySetコマンドを使用してポリシー・セットを検証します。
たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> validatePolicySet()

The policy set app-only-web-service-policies is valid.

6. リポジトリに対して、現在のリポジトリ・セッションのコンテンツの書込みを行うために、commitRepositorySessionコマンドを使用します。

wls:/jrfServer_domain/serverConfig> commitRepositorySession()

The policy set all-domains-default-web-service-policies is valid.
Updating policy set all-domains-default-web-service-policies in repository.

Repository session committed successfully.

また、セッション中にリポジトリに加えたすべての変更を破棄するabortRepositorySessionコマンドを使用することにより、すべての変更を取り消すことができます。

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

ポリシー・セットの削除

次の項では、Fusion Middleware Controlまたはコマンドライン・インタフェースWebLogic Scripting Tool (WLST)を使用してポリシー・セットを削除する方法について説明します。

Fusion Middleware Controlの使用

ポリシー・セットを削除するには:

1. 「「ポリシー・セット・サマリー」ページへの移動」の説明に従って、「ポリシー・セット・サマリー」ページに移動します。

2. 「ポリシー・セット・サマリー」ページで、表からポリシー・セットを選択し、「削除」をクリックします。

3. 削除の確認を要求するダイアログ・ボックスが表示されます。「OK」をクリックします。

WLSTの使用

リポジトリ内のポリシー・セットを削除するために、次のコマンドを使用できます。

- deletePolicySet—リポジトリ・セッションのコンテキスト内で個別のポリシー・セットを削除します。

- deleteAllPolicySets—リポジトリ内で選択したポリシー・セットまたはすべてのポリシー・セットを削除します。このコマンドは、リポジトリ・セッションの内部または外部で使用できます。

リポジトリ・セッション内で個別のポリシー・セットを削除するには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. beginRepositorySessionコマンドを使用してリポジトリ・セッションを開始します。
たとえば、次のようにします。

wls:/jrfserver_domain/serverConfig> beginRepositorySession()

Repository session begun.

3. 必要に応じて、listPolicySetsコマンドを使用してリポジトリ内のポリシー・セットをリストします。

wls:/jrfServer_domain/serverConfig> listPolicySets()

Global Policy Sets in Repository:
app-only-web-service-policies
all-domains-default-web-service-policies

4. deletePolicySetコマンドを使用して目的のポリシー・セットを削除します。

deletePolicySet (name)

たとえば、次のようにします。

wls:/jrfServer_domain/serverConfig> deletePolicySet('app-only-web-service-policies')

The policy set was deleted successfully in the session.

5. リポジトリに対して、現在のリポジトリ・セッションのコンテンツの書込みを行うために、commitRepositorySessionコマンドを使用します。

wls:/jrfServer_domain/serverConfig> commitRepositorySession()

Deleting policy set app-only-web-service-policies from repository.

Repository session committed successfully.

また、セッション中にリポジトリに加えたすべての変更を破棄するabortRepositorySessionコマンドを使用することにより、すべての変更を取り消すことができます。

リポジトリ内のすべてのポリシー・セットまたは選択したポリシー・セットを削除するには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. 必要に応じて、listPolicySetsコマンドを使用してリポジトリ内のポリシー・セットをリストします。

wls:/jrfServer_domain/serverConfig> listPolicySets()

Global Policy Sets in Repository:
all-domains-default-web-service-policies
ws-1
ws-2

3. deleteAllPolicySets()コマンドを使用して目的のポリシー・セットを削除します。(force引数を使用して)すべてのポリシー・セットの削除を強制するか、削除する個別のポリシー・セットを選択するプロンプトを表示するかを指定できます。このコマンドのデフォルトはpromptモードです。

deleteAllPolicySets(mode)

たとえば、削除するポリシー・セットを指定するには、次のようにします。

wls:/jrfServer_domain/serverConfig> deleteAllPolicySets()

Starting Operation deleteAllPolicySets ...
Policy Set Name: ws-2
Select "ws-2" for deletion (yes/no/cancel)? yes
Policy Set Name: all-domains-default-web-service-policies
Select "all-domains-default-web-service-policies" for deletion (yes/no/cancel)? no
Policy Set Name: ws-1
Select "ws-1" for deletion (yes/no/cancel)? yes

All the selected policy sets were deleted successfully from repository.

deleteAllPolicySets Operation Completed.

すべてのポリシー・セットの削除を強制するには:

wls:/jrfServer_domain/serverConfig> deleteAllPolicySets('force')

Starting Operation deleteAllPolicySets ...

All policy sets were deleted successfully from repository.

deleteAllPolicySets Operation Completed.

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

グローバル・ポリシー・アタッチメントへのダイレクト・ポリシー・アタッチメントの移行

ダイレクト(ローカル)ポリシー・アタッチメントを外部グローバル・ポリシー・アタッチメントに移行するために(両者が同じである場合)、migrateAttachments WLSTコマンドを使用できます。同じポリシー・アタッチメントを移行することにより、メンテナンスする必要のある物理的なアタッチメントの数が減少し、管理性が向上します。

ダイレクト・ポリシー・アタッチメントとグローバル・ポリシー・アタッチメントは、ダイレクト・ポリシー・アタッチメントのURIがグローバル・ポリシー・アタッチメントで提供されたURIと同じであり、次の条件を満たしている場合に同一です。

- 構成のオーバーライドがない。
または

- 有効範囲の指定された構成のオーバーライドがあり、ダイレクト・ポリシー・アタッチメントの有効範囲付構成オーバーライドのプロパティおよび値がグローバル・ポリシー・アタッチメントのものと同一である。

次の移行はできません。

- プログラム的なポリシー・アタッチメント

- SOAコンポーネントに対するダイレクトまたはグローバルなポリシー・アタッチメント

注意:
migrateAttachments WLSTコマンドは、ダイレクト・ポリシー・アタッチメントへのスコープなしオーバーライドを識別できません。したがって、スコープなしオーバーライドを持つダイレクト・ポリシー・アタッチメントは、構成オーバーライドなしとして処理されるため、これと同等の構成オーバーライドのないグローバル・ポリシー・アタッチメントがmigrateAttachmentsによって検出された場合に移行されます。

ポリシー・アタッチメントを移行するには:

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、WebLogic Serverの実行中のインスタンスに接続します。

2. migrateAttachmentsコマンドを使用してアタッチメントを移行します。移行を強制するか(force)、各移行の前に確認のためのプロンプトを表示するか(prompt)、または実行される移行を単純にリストするか(preview)を指定できます。モードが指定されていない場合、デフォルトはpromptです。

migrateAttachments(mode=None)

たとえば、考えられる各アタッチメントの移行について確認のためのプロンプトをデフォルトで表示するには、次のコマンドを入力します。出力には、jaxws-sutアプリケーションについて移行可能な同じグローバル・ポリシー・アタッチメントとダイレクト・ポリシー・アタッチメントがあることに注意してください。

wls:/jrfServer_domain/serverConfig> migrateAttachments()

--------------------------------------------------------------------------------
Application Path:    /jrfServer_domain/jrfServer/jaxws-sut-no-policy
Web Service Name:    TestService
Module Type:         web
Module Name:         jaxws-service
Port:                TestPort

--------------------------------------------------------------------------------
Application Path:    /jrfServer_domain/jrfServer/jaxws-sut
Web Service Name:    TestService
Module Type:         web
Module Name:         jaxws-sut-service
Port:                TestPort
Policy Reference:    management : oracle/log_policy, enabled=true
security : oracle/wss_username_token_service_policy, enabled=true
(global) /policysets/global/migrate_example : oracle/wss_username_token_service_policy

Migrate "oracle/wss_username_token_service_policy" (yes/no/cancel)? yes
"oracle/wss_username_token_service_policy" was migrated successfully.

このコマンドの引数の詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

ポリシー・アタッチメントの優先度の指定

インストールで提供されている事前定義済ポリシーには構成のオーバーライド(reference.priority)が含まれており、これによって管理者はポリシー・アタッチメントを使用するプリファレンスを指示できます。デフォルトでは、他の値が指定されていない場合、アタッチされたポリシーは0のreference.priorityを持ちます。

たとえば管理者は、ドメインのスコープでグローバルにポリシーをアタッチし、1以上のリファレンス優先度を指定することによって、ダイレクト・アタッチメントを変更する必要なく、直接アタッチされたポリシーよりも優先させることができます。管理者が特定のダイレクト・アタッチメントを例外にする場合は、そのアタッチメントのリファレンス優先度を指定し、グローバル・ポリシー・アタッチメント以上の優先度に昇格させることができます。reference.priorityについて最大の整数値を持つポリシー・アタッチメントは、それが直接または外部からアタッチされたかどうか、またはそのスコープにかかわりなく、有効なポリシー計算で優先されます。

reference.priorityには、次の値を指定できます。

- 文字列値"true"、"yes"および"on"
これらの文字列値は、整数値1と等価です。その他の文字列値は、整数値0として扱われます。

- 次の範囲の整数値

- MAX_VALUE = 2147483647または(2^31 - 1)

- MIN_VALUE = -2147483648または(-2^31)

詳細は、次の各項を参照してください。

- グローバルにアタッチされたポリシーの構成プロパティのオーバーライド

- オーバーライド可能なWebサービス・ポリシーの添付

- ポリシーの有効セットの計算方法

エンドポイントのセキュア・ステータスの決定

グローバル・ポリシー・アタッチメントでは、開発者、アセンブラまたはデプロイヤがアタッチするポリシーを明示的に指定しなくても、すべてのサブジェクトが保護される「デフォルトでセキュア」の方針に準拠する機能を提供しています。つまり、管理者はポリシー・セットを使用することによって、ポリシーが明示的にアタッチされていない場合でも、1つ以上のポリシーが自動的に適用されることを確認できます。

管理者は、WLSTおよびFusion Middleware Controlの両方を使用して、ドメイン内のすべてのサブジェクトが保護されているかどうか、およびエンドポイント構成が有効であるかどうかを判断できます。

次の事項に注意してください。

- エンドポイントは、(直接またはグローバルに)アタッチされたポリシーで認証、認可またはメッセージ保護操作が強制される場合にセキュアであると判断されます。無効なポリシーまたはポリシー内の無効なアサーションでは何も強制されません。

- 有効なポリシー計算セットに従って、アタッチされたポリシーの組合せに競合がない場合に、エンドポイントは有効な構成を持ちます。詳細は、「ポリシーの有効セットの計算方法」を参照してください。

「ポリシー・アタッチメントの優先度の指定」の説明に従って、グローバルにまたは直接アタッチされたポリシーの優先度を指定できるので、直接アタッチされたポリシーの「有効」フィールドはエンドポイントに対してそのポリシーが有効であるかどうかを示します。エンドポイントの管理を簡素化するために、有効であるかどうかに関係なく、すべての直接添付されたポリシーが出力に表示されます。対照的に、グローバルにアタッチされたポリシーは、エンドポイントに対して有効であるもののみが表示されます。

Fusion Middleware Controlを使用することにより、構成が有効であるかどうか、「Webサービス・エンドポイント」ページでエンドポイントが保護されているかどうかを確認できます。図9-13に、セキュアなエンドポイントを含む有効な構成を示します。

図9-13 有効でセキュアなエンドポイント構成を含む「Webサービス・エンドポイント」ページ

WLSTを使用することで、WLSTコマンドlistWebServicesおよびlistWebServiceClientsにより、エンドポイントとそのセキュア・ステータスのリストを生成できます。例9-3に示すように、detail引数をtrueに設定した場合、こうしたコマンドからの出力には、ドメイン内のすべてのアプリケーションおよびコンポジットに対するエンドポイントおよびポリシーの詳細、エンドポイントのセキュア・ステータス、構成のオーバーライドおよび制約が含まれます(エンドポイントに有効な構成がある場合)。

例9-3 有効でセキュアなエンドポイント構成を含むlistWebServicesOutput

wls:/jrfServer_domain/serverConfig> listWebServices(detail='true')

/jrfServer_domain/jrfServer_admin/jaxws-sut :
moduleName=jaxws-sut-service, moduleType=web, serviceName={http://namespace/}TestService
enableTestPage: true
enableWSDL: true

TestPort        http://host.example.com:9315/jaxws-sut-service/TestService
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
management : oracle/log_policy, enabled=true
security : oracle/wss_username_token_service_policy , enabled=true , effective=false
Constraint: No Constraint
(global) security : oracle/wss_saml_or_username_token_service_policy, enabled=true
/policysets/global/all-domains-default-web-service-policies : Domain("*")
reference.priority=1
Constraint: HTTPHeader('VIRTUAL_HOST_TYPE','external')
(global) security : oracle/wss10_message_protection_service_policy, enabled=true
/policysets/global/domainExternal : Domain("*")
Attached policy or policies are valid; endpoint is secure.

これらのWLSTコマンドの使用に関する詳細は、「WLSTを使用したドメインのWebサービスの表示」を参照してください。

ポリシーの有効セットの計算方法

Oracle WSMでは、ポリシーに含まれるアサーションのカテゴリに基づいてサブジェクトにアタッチ可能なポリシーの数が制限されます。ほとんどの場合、同じアサーション・カテゴリを含む複数のポリシーをアタッチすることは禁止されます。たとえば、認証アサーションを含む2つのポリシーを1つのポリシー・サブジェクトにアタッチすることはできませんが、認証アサーションを含む1つのポリシーと認可アサーションを含む1つのポリシーを同じサブジェクトにアタッチすることはできます。同じアサーション・カテゴリを含む複数のポリシーがサブジェクトにアタッチされており、アサーションが競合する場合、構成は無効であると判断されます。サブジェクトにアタッチできるポリシーの数および組合せに関する詳細は、「ポリシー・サブジェクトの検証」を参照してください。

ポリシーのアタッチメントを直接および外部(グローバル)の両方でサポートするために、サブジェクトに対して有効なポリシー・セットの決定で、各ポリシー内のアサーションのカテゴリが考慮されます。直接アタッチされたポリシーは、ポートまたはコンポーネントのスコープでアタッチされることに注意してください。デフォルトでは、指定のカテゴリのアサーションを含むポートまたはコンポーネントのスコープ(直接アタッチされたポリシーなど)でアタッチされたポリシーがサブジェクトにある場合、次のようにreference.priority構成オーバーライドが設定されていなければ、上位のスコープで外部ポリシー・セットによって参照されている同じカテゴリの競合アサーションを含むポリシーは、サブジェクトに対して有効なポリシー・セットから除外されます。このプロセスは、各サブジェクト・スコープで繰り返されます。狭い/下位のスコープが広い/上位のスコープよりも優先されます。スコープによって決定されるポリシー・アタッチメントの降順の優先順位は次のとおりです。

- ポート(スコープ:1)

- コンポーネント(スコープ:1)

- サービス(スコープ:2)

- 参照(スコープ:2)

- コンポジット(スコープ:3)

- モジュール(スコープ:3)

- パーティション(スコープ:4)

- アプリケーション(スコープ:4)

- サーバー(スコープ:5)

- ドメイン(スコープ:6)

たとえば、モジュール・スコープでアタッチされたかまたは直接アタッチされたポリシーと同じカテゴリの競合アサーションがアプリケーション・スコープでのポリシー・アタッチメントに含まれる場合、そのポリシー・アタッチメントはサブジェクトに対して有効なポリシー・セットから除外されます。 リソース・スコープの詳細は、「リソースのタイプおよびスコープの定義」を参照してください。

管理者は、reference.priority構成オーバーライドを使用することによって、スコープによって決定されたデフォルトの優先度をオーバーライドし、使用されるポリシー・アタッチメントのプリファレンスを指定できます。最も高い優先度を持つポリシー・アタッチメントがそのスコープにかかわらず優先されます。

reference.priorityオーバーライドを使用する場合は、次のルールが適用されます。

- 最も高い優先度(最高の整数値)を持つポリシー・アタッチメントがスコープにかかわらず優先されます。

- アタッチメントに同じカテゴリの競合アサーションが含まれており、同じ優先度が指定されている場合は、より固有のスコープが優先されます。

- アタッチメントに同じカテゴリ、優先度およびスコープの競合アサーションが含まれる場合、構成は無効です。

ポリシー・セットに実行時制約が適用される場合、次のルールが該当します。

- それぞれの一意の制約により、独立したポリシー・セットが作成されます。有効なポリシー計算は、同じ制約を含むポリシー・セット上でのみ実行されます。

- ポリシー・セットで制約が指定されていない場合(デフォルト)、このポリシー・セット内のポリシー参照は別個の各制約からのポリシー・セットとマージされます。次に、各制約について有効なポリシー・セットを決定するために、各ポリシー・セット上で有効なポリシー計算が実行されます。

実行時制約の詳細は、「ポリシー・セットの実行時制約の指定」を参照してください。

ポリシー計算の有効セットでは、各ポリシー・アタッチメントのステータスが考慮されます。ポリシー、ポリシー・セット内のポリシー参照またはポリシー・セットが無効である場合、サブジェクトに対する有効なポリシー・セットから削除されます。

no reference.priorityオーバーライドを指定した場合、グローバルにアタッチされたポリシーは、下位のスコープ(たとえば、ダイレクト・アタッチメントによるポートまたはコンポーネントのスコープ)で同じカテゴリのアサーションを含むポリシーをアタッチすることによりオーバーライドできます。この特別な例として、特定のサブジェクトに対して、どのような動作も強制しない同じカテゴリのアサーションを含むポリシーをアタッチすることにより、グローバルにアタッチされたポリシーを実質的に無効にできます。どのような動作も強制しないポリシーの詳細は、「動作無効ポリシー」を参照してください。

次の例では、有効なポリシー計算の結果を示しています。

- ダイレクト・アタッチメント: oracle/wss_username_token_service_policy
外部アタッチメント: oracle/wss_saml_or_username_token_service_policy @ Domain('*')

結果: 下位スコープによるダイレクト・アタッチメント— oracle/wss_username_token_service_policy

- ダイレクト・アタッチメント: oracle/wss_username_token_service_policy
外部アタッチメント: oracle/wss_saml_or_username_token_service_policy @ Domain('*')、reference.priority=1

結果: 高優先度による外部アタッチメント—oracle/wss_saml_or_username_token_service_policy @ Domain('*')

- 外部アタッチメント: oracle/wss_username_token_service_policy @ Application('*')
外部アタッチメント: oracle/wss_saml_or_username_token_service_policy @ Domain('*')

結果: 下位スコープによる外部アタッチメント—oracle/wss_username_token_service_policy @ Application('*')

- 外部アタッチメント: oracle/wss_username_token_service_policy @ Application('*')
外部アタッチメント: oracle/wss10_message_protection_service_policy @ Domain('*')

結果: アサーション・カテゴリが競合しないために、両アタッチメントが有効です—oracle/wss_username_token_service_policy @ Application('*')およびoracle/wss10_message_protection_service_policy @ Domain('*')

- 外部アタッチメント: oracle/wss_username_token_service_policy @ Domain('*')
外部アタッチメント: oracle/wss_saml_or_username_token_service_policy @ Domain('*')

結果: 無効。同じスコープで指定された競合アサーション・カテゴリを含むポリシー。

- ダイレクト・アタッチメント: oracle/wss11_saml_token_with_message_protection_service_policy
外部アタッチメント: oracle/wss11_username_token_with_message_protection_service_policy @ Port('TestPort')

結果: 無効。同じスコープで指定された競合アサーション・カテゴリを含むポリシー。

- ダイレクト・アタッチメント: oracle/wss11_saml_token_with_message_protection_service_policy
外部アタッチメント: oracle/wss11_username_token_with_message_protection_service_policy @ Port('TestPort')、reference.priority="true"

結果: 高優先度のスコープによる外部アタッチメント—oracle/wss11_username_token_with_message_protection_service_policy @ Port('TestPort')

注意:
グローバル・ポリシー・アタッチメントが有効になるまでにかかる時間は、Oracle WSMポリシー・アクセッサおよびポリシー・キャッシュ・プロパティ設定によって決定されます。デフォルトでは、この遅延は最大で11分です。この遅延量を削減するために、次のキャッシュ・プロパティ設定をチューニングできます。

- ポリシー・アクセッサ
cache.refresh.initial、デフォルトは600000ミリ秒(10分)

cache.refresh.repeat、デフォルトは600000ミリ秒(10分)

- ポリシー・キャッシュ
cache.tolerance、デフォルトは60000ミリ秒(1分)

これらのプロパティの調整の詳細は、「プラットフォーム・ポリシー・プロパティの構成」を参照してください。

10 ポリシーの環境設定

この章では、セキュリティ・ポリシーのためのFusion Middleware ControlおよびWebLogic Server環境の設定方法について説明します。

この章では次の項について説明します。

- 鍵と証明書について

- メッセージ保護に関するキーストアの構成

- 資格証明ストアの構成

- アプリケーション・レベルの資格証明マップの作成

- メッセージ保護に関するOPSSキーストア・サービスの構成

- SSLに関するキーストアの構成

- Oracle HTTP ServerでのSSLの構成

- ハードウェア統合

- サービス・アイデンティティ証明拡張の使用

- WebLogic Serverへの認証プロバイダの構成

- SAMLおよびKerberosログイン・モジュールの構成

- SAMLの構成

- Oracle WSMでのJSON Web Token (JWT)の使用

- Oracle WSMでのOAuth2の使用

- アイデンティティ切替えのためのWebサービス・クライアントの構成

- Oracle WSMによるアイデンティティ・コンテキストの伝播

- Kerberosトークンの使用

- Active DirectoryのKerberosおよびメッセージ保護との使用

- SAMLメッセージ保護のユースケース

- WS-Trustポリシーと構成手順

- OpenSSO STSでのWS-Trustの使用例

- Oracle Entitlements Serverを使用したファイングレイン認可の理解

鍵と証明書について

SSLセキュリティ・ポリシーによるメッセージ保護および認証、またはメッセージ保護セキュリティ・ポリシーを使用するには、キーストアおよびトラストストアを設定する必要があります。(認証のみのセキュリティ・ポリシーでは鍵は不要です)。

キーストアには、エンティティ秘密鍵およびその秘密鍵に関連付けられた証明書が含まれます。トラストストアには、認証局(CA)からの証明書、またはこのエンティティが信頼する他のエンティティからの証明書が含まれます。キーストアおよびトラストストアは、Oracle Web Services Manager (WSM)などにより、共通のストア内で同時にメンテナンスできます。

Webサービスを構成する前に、必要な秘密鍵および証明書のタイプ、鍵およびキーストアの名前を決定し、それに応じて環境を設定する必要があります。

秘密鍵と証明書の概要

秘密鍵、デジタル証明書および信頼できる認証局(CA)によって、サーバーのアイデンティティと信頼が確立され、検証されます。

SSLでは、認証のために公開鍵暗号化テクノロジを使用します。公開鍵暗号化では、サーバーの公開鍵と秘密鍵が生成されます。公開鍵で暗号化されたデータは対応する秘密鍵でのみ復号化でき、公開鍵で検証されたデータは対応する秘密鍵でのみ署名できます。秘密鍵は、その所有者のみが公開鍵で暗号化されたメッセージを復号化できるように厳重に保護されます。

公開鍵は、公開鍵の所有者を示す他の情報(名前、住所および電子メール・アドレスなど)とともにデジタル証明書に埋め込まれています。秘密鍵およびデジタル証明書は、サーバーのアイデンティティを提供します。

デジタル証明書に埋め込まれたデータは、認証局(CA)によって検証され、その認証局のデジタル証明書を使用して署名されています。十分に認知された認証局には、VerisignやEntrust.netなどがあります。信頼できる認証局(CA)の証明書により、証明書の信頼性が確立されます。

SSL接続に参加しているアプリケーションは、そのデジタル証明書を相手が評価して受け入れた場合に認証されます。Webブラウザ、サーバーおよび他のSSL対応アプリケーションは一般に、信頼できる認証局によって署名されるか、または他の方法で有効とされているデジタル証明書を本物として受け入れます。たとえば、デジタル証明書が期限切れになったか、その署名のために使用された認証局のデジタル証明書が期限切れになったために、デジタル証明書が無効になることが考えられます。サーバーのデジタル証明書のホスト名がクライアントによって指定されたURLに一致しない場合、サーバー証明書は無効になります。

それぞれの環境で使用可能な様々なタイプの信頼できる証明書と、その利点および欠点は次のとおりです。

- 自己署名証明書 — 自己署名証明書は、作成元のエンティティによって署名される証明書です。
利点:

- 生成が容易です。たとえば、「秘密鍵の生成およびJavaキーストアの作成」の説明に従ってkeytoolコマンドを使用して自身で生成できます。

- 自身で生成した新しい証明書のみを使用するかぎり、本番で使用できます。

欠点

- 相互に通信する必要がある多数のクライアントおよびサービスが存在する場合に、自己署名証明書は短期間で管理が難くなることがあります。たとえば、2つのサービスと通信する3つのクライアントが存在する場合に、両サービスについて秘密鍵および自己署名証明書を生成し、3つのクライアントすべてのトラストストアにその2つの証明書をインポートする必要があります。

- デモ用認証局(CA)署名証明書— WebLogic Serverには、開発専用のデモ用秘密鍵、デジタル証明書および信頼できる認証局のセットが含まれています。
利点:

- 開発環境内のデフォルトのWebLogic Serverインストールで使用可能であり、そのために構成されているので、簡単に使用できます。

欠点

- 本番環境では決して使用できません。デモ用証明書CAの秘密鍵は、WebLogic Serverのすべてのインストールで使用可能です。したがって、各インストールで同じ鍵を使用してデモ用CA署名証明書を生成できます。したがって、こうした証明書は信頼できません。

- 内部CA署名証明書 — 内部CA署名証明書は、イントラネット用に設定可能な内部CAを使用して自身で発行する証明書です。このタイプの証明書は、サービスがほとんど内部専用である場合に使用できます。
利点:

- 証明書を自身で作成するので、証明書の発行プロセスを完全に制御できます。証明書の発行先、証明書の有効期間などを制御できます。たとえば、パートナに証明書を発行する場合に、優良なパートナに発行先を限定できます。

欠点

- すべてのクライアントでトラストストアに内部CAルート証明書がインポートされていることを確認する必要があります。

- 外部CA署名証明書 — 外部CA署名証明書は、VerisignやEntrust.netなどの信頼できるCAによって発行された証明書です。このタイプの証明書は、サービスが外部向けである場合に使用すべきです。
利点:

- ほとんどの場合、クライアントはこうした外部CAを信頼するようにすでに設定されています。したがって、このようなクライアントでトラストストアを変更する必要はありません。

欠点

- 証明書発行プロセスを制御することはできません。

様々なセキュリティ・ポリシーでの秘密鍵および証明書の使用方法

秘密鍵の使用を必要とするOracle WSMセキュリティ・ポリシーは、メッセージ保護および認証の2つの側面に対応します。

- メッセージ保護には、メッセージ機密保護とメッセージ整合性の2つの概念があります。メッセージの機密保持では、データの機密性を維持します。そのために、メッセージのコンテンツは暗号化されます。メッセージ整合性では、送信ユーザーがメッセージにデジタル署名することによって、転送中にメッセージが変更されないことを確認します。

- 認証では、ユーザーが表明しているとおりのユーザーであることを検証します。ユーザーのアイデンティティは、ユーザー自身が提供する資格証明に基づいて検証されます。

インストールに含まれている事前定義済のOracle WSMポリシーでは、メッセージ保護および認証に対する様々なオプションがサポートされます。これらのオプションについては、次に示す項で説明します。

注意:
Oracle WSMポリシーで使用されるネーミング規則により、使用オプションのタイプが識別されます。たとえば、ポリシーoracle/wss10_username_token_with_message_protection_service_policyは、wss10 Webサービス標準を使用し、認証のためにusername_tokenを必要とするメッセージ保護サービス・ポリシーです。ポリシーのネーミング規則の詳細は、「ポリシーの推奨ネーミング規則」を参照してください。

メッセージ保護ポリシー・タイプ

次の項では、メッセージ保護ポリシーのタイプとその動作方法について説明します。

SSL

oracle/wss_saml_or_username_token_over_ssl_service_policyなど、SSLオプションを含むポリシーでは、メッセージ保護のために一方向SSLを使用します。このタイプのポリシーを使用する場合、次のことを実行する必要があります。

- サービス側では、「SSLポリシー用の秘密鍵および証明書の設定」の説明に従って、SSL終端ポイントで秘密鍵を設定します。

- クライアント側では、サービスの鍵を信頼するようにトラストストアを設定します。

秘密鍵は、クライアントとサービスが共有セッション・キーについて同意したときに、SSLハンドシェイクのためのメッセージ保護に使用されます。SSLハンドシェイクの後は、秘密鍵は使用されず、クライアント間のトラフィックおよびサービスはすべて共有セッション・キーを使用して署名および暗号化されます。

wss11

このタイプのポリシーでは、メッセージ保護にWS-Security 1.1を使用します。wss11ポリシーを使用する場合、次のことを実行する必要があります。

- サービス側では、Oracle WSMの「キー・ストアの構成」画面で、秘密鍵を設定し、暗号化鍵の別名として定義します。詳細は、「Oracle WSMキーストアの構成」を参照してください。

- クライアント側では、次のいずれかの方法でサーバー証明書を取得することにより、クライアント側の信頼を構成する必要があります。

- 「サービス・アイデンティティ証明拡張の使用」の説明に従って、サービス・アイデンティティ証明拡張を使用して、WSDL内で公開されたサービスのパブリック証明書を使用します。また、サーバー証明書を発行したCAから、サーバー証明書自体またはルート証明書のいずれかをクライアントのトラストストアにインポートする必要があります。サーバー証明書について、任意の別名を選択できます。

- 選択した任意の別名を使用してクライアントのキーストアにサーバー証明書をインポートします。別名は、ポリシーのアタッチ時に構成オーバーライドを使用して、keystore.recipient.aliasプロパティにより指定します。この方法では、実際のサーバー証明書をインポートする必要があります。CAルート証明書をインポートすることはできません。

各リクエストに関して、次のことが実行されます。

1. クライアントは対称鍵を作成し、暗号化鍵の別名により構成されたサービスの公開鍵でこの対称鍵を暗号化した後、対称鍵によりメッセージ全体の暗号化および署名を行います。

2. サービスがこのメッセージを受信すると、まず暗号化された鍵を復号化し、次にメッセージ全体を復号化して検証します。

3. 次にWebサービスは、クライアントに返信するレスポンスの暗号化および署名のために、同じ対称鍵を使用します。

wss10

このタイプのポリシーでは、メッセージ保護にWS-Security 1.0を使用します。wss10ポリシーを使用する場合、次のことを実行する必要があります。

- クライアント側およびサービス側の両方で秘密鍵を設定します。クライアント側で署名鍵の別名を設定し、サービス側で暗号化鍵の別名および署名鍵の別名の両方を設定する必要があります。通常は、両方で同じ鍵を使用できます。

- クライアント側では、次のいずれかの方法でサーバー証明書を取得することにより、クライアント側の信頼を構成する必要があります。

- 「サービス・アイデンティティ証明拡張の使用」の説明に従って、サービス・アイデンティティ証明拡張を使用して、WSDL内で公開されたサービスのパブリック証明書を使用します。また、サーバー証明書を発行したCAから、サーバー証明書自体またはルート証明書のいずれかをクライアントのトラストストアにインポートする必要があります。サーバー証明書について、任意の別名を選択できます。

- 選択した任意の別名を使用してクライアントのキーストアにサーバー証明書をインポートします。別名は、ポリシーのアタッチ時に構成オーバーライドを使用して、keystore.recipient.aliasプロパティにより指定します。この方法では、実際のサーバー証明書をインポートする必要があります。CAルート証明書をインポートすることはできません。

- サービス側では、こうした証明書を直接インポートするか、こうした証明書を発行したCAをインポートすることにより、クライアントを信頼するようにサービスを構成する必要があります。

wss11オプションの場合と同様に、クライアントは対称鍵を作成した後、サービスの公開鍵により対称鍵を暗号化します。ただし、メッセージの暗号化のためにのみこの対称鍵を使用する点が異なり、メッセージの署名のためにはこの対称鍵は使用しません。そのかわりに、クライアントは、署名鍵の別名によって定義された独自の秘密署名鍵によりリクエスト・メッセージに署名し、サービスはその秘密署名鍵によりレスポンスに署名します。

認証トークン・ポリシー・タイプ

認証のためにサポートされるトークン、およびこうしたポリシー・タイプに使用される秘密鍵および証明書については、次の項で説明します。

次の項では、様々なコンテキストの様々な対象を示すために「署名鍵別名」が使用されていることに注意してください。

- SAML送信者保証ポリシーでは、これはSAMLアサーションの署名に使用される鍵です。これにより、SAMLアサーションの認証性が証明されます。またSAMLログイン・モジュールは、SAMLアサーションで指定されたユーザーをアサートします。

- wss10ポリシーでは、リクエストおよびレスポンス・メッセージに署名し、伝送中の改ざんを防止するために使用されます。

- X.509認証ポリシーでは、特定のエンド・ユーザーを認証するために使用されます。

JWTトークン

JSON Web Token (JWT)は、二者間でやりとりされるコンパクトでURL-safeなクレームの表現方法です。JWT内のクレームは、JSON Web Signature (JWS)を使用してデジタル署名され、オプションでJSON Web Encryption (JWE)を使用して暗号化されるJSONオブジェクトとしてエンコードされます。このトークンは、クライアントがその秘密署名鍵を使用することにより生成および署名されます。

Kerberosトークン

Kerberosトークンは、バイナリ認証およびセッション・トークンから構成されます。Kerberosトークンが認証のみのポリシーとともに使用される場合、秘密鍵は使用されません。認証およびメッセージ保護を含むポリシーで使用された場合、メッセージ保護に必要な鍵が要求されます。

STSからのSAMLベアラーおよびSAML HOKトークン

これらのオプションでは、クライアントはSAMLトークンを作成しません。そのかわりに、SAMLトークンの作成および署名を行うのはSTSです。

STSからトークンを使用する場合、サービスのトラストストアにSTSの証明書またはその発行者を追加する必要があります。必要に応じて、信頼できるDNリストでSTSを構成できます。

SAML送信者保証トークン

送信者保証では、クライアントは自身の秘密署名鍵によりSAMLトークンに署名します。

SAML送信者保証トークンは、各メッセージ保護オプションとともに次のように使用します。

- SSLを使用: SAML送信者保証では双方向SSLが必要です。したがって、クライアント側でSSL秘密鍵およびサービス側で対応する信頼証明書を設定する必要があります。SSLがOracle HTTP Serverやロード・バランサなど、WebLogic Serverの前で終端する場合、WebLogic Serverに至るまでクライアント証明書が伝播するようにこうしたレイヤーを構成する必要があります。

- wss11を使用: 通常、wss11ではクライアント側の署名鍵は不要です。しかし、SAMLとともにwss11を使用する場合、クライアント側で署名鍵を設定し、署名鍵の別名を使用して構成する必要があります。また、このクライアント証明書またはその発行者をサービスのトラストストアに追加する必要があります。

- wss10を使用: SAMLを使用するための追加設定は必要ありません。リクエストの署名のために使用される通常のクライアント署名鍵がSAMLトークンの署名にも使用されます。

注意:
SAML署名鍵を使用する場合には細心の注意が必要です。これは非常に強力な鍵であり、クライアント側で任意のユーザーを偽装できます。信頼できるDNリストを設定することにより、許容されるSAML署名者の数を制限するサーバー側の構成を検討してください。信頼できるDNの設定の詳細は、「署名証明書の信頼できる発行者および信頼できるDNリストの定義」を参照してください。

ユーザー名トークン

ユーザー名トークンは、ユーザー名やパスワードなどのBasic認証情報を伝達します。ユーザー名トークンが認証のみのポリシーとともに使用される場合、秘密鍵は使用されません。認証およびメッセージ保護を含むポリシーで使用された場合、メッセージ保護に必要な鍵が要求されます。

X.509証明書トークン

リクエスト・メッセージは、エンド・ユーザーの署名鍵により署名されます。クライアント側では、エンド・ユーザーの署名鍵により署名鍵の別名を構成する必要があります。

SSLポリシー用の秘密鍵および証明書の設定

次のリストは、SSLポリシーを使用するためにクライアント側およびサービス側で構成する必要のある鍵および信頼をまとめたものです。

- サービス側の構成: SSLセキュリティ・ポリシーのために、SSL終端ポイントで秘密鍵を設定する必要があります。こうした終端ポイントは一般的に、次のいずれかから構成されます。

- WebLogic ServerなどのJava EEコンテナ。構成の詳細は、「SSLに関するキーストアの構成」を参照してください。

- Oracle HTTP Server(クライアントとWebLogic Server間のWebプロキシとして構成している場合)。構成の詳細は、「Oracle HTTP ServerでのSSLの構成」を参照してください。

- ロード・バランサ(WebLogic ServerまたはOracle HTTP Serverの前にロード・バランサを配置している場合)。

注意:
SSLでは、1サーバーごとに1つの秘密鍵のみを持つことができます。したがって、同じサーバー上で実行する複数のWebサービスが存在する場合は、そのすべてで同じ秘密鍵を使用します。このSSL秘密鍵は、ホスト名と同じDNで生成する必要があります。ただし、テスト目的のために、このホスト名の検証機能はクライアント側でオフにできます。

基本構成例: WebLogic Serverに含まれるデモ用のデジタル証明書、秘密鍵および信頼できるCA証明書を使用します。これらの鍵および証明書は、開発用にのみ提供されています。本番環境では使用しないでください。

詳細構成: 本番環境では、内部CAまたは外部CAを使用します。

- クライアント側の構成: クライアント側では、クライアントのトラストストアにサーバー証明書をインポートする必要があります。サーバー側で自己署名証明書を使用している場合は、その自己署名証明書を直接含める必要があります。サーバー側でCAを使用して署名された証明書を使用している場合は、クライアント・トラストストアにそのCAルート証明書をインポートします。各タイプのWebサービス・クライアントでそのクライアント・トラストストアは異なることに注意してください。

- WebLogic Server Webサービスでは、WebLogic Serverトラスト・ストアに鍵をインポートする必要があります。デモ用CA証明書は、WebLogic Serverトラストストアにすでに含まれています。

- Oracle Infrastructure Webサービスでは、javax.net.ssl*システム・プロパティを使用してトラストストアを指定するか、または接続でトラストストアを指定する必要があります。詳細は、「Webサービス・クライアントに関するSSLの構成」を参照してください。

- SOAコンポジット・アプリケーションでは、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』の双方向SSL通信用のSOAコンポジット・アプリケーションの構成に関する項の説明に従って、javax.net.ssl*プロパティを使用してトラストストアを指定する必要があります。

- 非同期Webサービスでは、『Oracle Infrastructure Webサービス開発者ガイド』の非同期Webサービス用のSSLの構成に関する項の説明に従ってトラストストアを構成する必要があります。

メッセージ保護ポリシー用の秘密鍵および証明書の設定

Oracle WSMメッセージ保護セキュリティ・ポリシーでは、Oracle WSMキーストアに秘密鍵を設定する必要があります。

ドメインごとに単一のOracle WSMキーストアが存在し、ドメイン内で実行するすべてのWebサービスおよびクライアントによってそのキーストアが共有されます。このキーストアには、秘密鍵および信頼証明書の両方が含まれます。JDK cacertsファイルは、Oracle WSMによって使用されません。

基本構成例

Oracle WSMキーストアを設定する最も簡単な方法は、単一の自己署名秘密鍵を作成し、それをドメイン全体で使用することです。秘密鍵およびキーストアを作成する場合、キーストアの名前とパスワードを指定します(たとえば、キーストア名としてdefault-keystore.jks、キーストアのパスワードとしてpasswordなど)。また、秘密鍵を参照する場合に使用する別名とパスワードも指定します(たとえば、別名としてorakey、鍵のパスワードとしてpasswordなど)。署名鍵の別名と暗号化鍵の別名の両方で同じ鍵および別名を使用し、キーストアと別名の両方で同じパスワードを使用できます。秘密鍵に関連付けた証明書は、自動的に信頼できるものと見なされるので、信頼できる証明書を追加する必要はありません。

鍵およびキーストアを作成したら、キーストアのパスワードと、別名およびパスワードをOracle Web Services Managerに指定する必要があります。このために、Fusion Middleware ControlまたはWLSTのいずれかを使用できます。

「秘密鍵の生成およびJavaキーストアの作成」および「Oracle WSMキーストアの構成」の手順では、この例で指定した名前およびパスワードを使用してこの基本的な構成を設定する方法について説明しています。それぞれの環境では、構成に対して適切な名前およびパスワードを使用する必要があります。

クライアントとサーバーが同じドメインにあるかぎり、この設定はほとんどのポリシーで問題なく使用できます。つまり、SAMLの有無を問わず、任意のwss10またはwss11のポリシーを使用できます。

共通のJPSルートを共有する複数の関連ドメインが存在する場合は、すべてのドメインにこのキーストア・ファイルをコピーできます。これによって、関連するすべてのドメインがすべての暗号化および署名についてこの単一の鍵を共有します。

詳細な設定に関する考慮事項

「基本構成例」で説明したように、メッセージ保護セキュリティを設定する最も簡単な方法は、ドメイン内のすべてのWebサービスについて単一の秘密鍵を用意することです。

より機密性の高いWebサービスを得るには、独自の秘密暗号化鍵を使用するように各Webサービスを構成する必要があります。これらの秘密鍵はOracle WSMキーストアに存在する必要があります。それぞれが異なる別名(たとえばServiceAおよびServiceB)を使用し、その別名を資格証明ストアに追加していることを確認します。サービスにポリシーをアタッチした場合、Webサービスが必要とする特定の別名を示すために構成オーバーライドを使用する必要があります。そうしない場合、ドメインに対して構成したデフォルトの別名(たとえばorakey)が使用されます。

「資格証明ストアへの鍵およびユーザー資格証明の追加」の手順では、資格証明ストアにサンプルの別名を追加する方法について説明しています。

また、信頼できるCA証明書を管理する方が格段に容易であるために、自己署名証明書ではなく内部CAまたは外部CAによって発行された信頼できる証明書を使用すべきです。ただし、「署名証明書の信頼できる発行者および信頼できるDNリストの定義」の説明に従って、SAML署名者の信頼できるDNリストを設定するようにしてください。これは、Oracle WSMキーストアに外部CA証明書をインポートした場合に特に重要です。そうしない場合、証明書を持つ任意のユーザーがSAMLトークンに署名し、任意のユーザーを偽装できることになります。

メッセージ保護に関するキーストアの構成

注意:
REST APIを使用してメッセージ保護のためのキーストアを構成するには、『Oracle Web Services Managerでの資格証明およびキーストアの管理のためのREST API』のJKSキーストアの管理に関する項を参照してください。

メッセージ保護では、メッセージ機密保護のためのメッセージの暗号化と、メッセージ整合性のためのメッセージへの署名が行われます。SOAPメッセージの署名および暗号化のために、WebLogicドメインのOracle Web Services Manager (WSM)キーストアに格納する公開/秘密の署名/暗号化鍵を使用します。キーストアの構成はドメイン単位で行います。ドメイン内のすべてのWebサービスおよびWebサービス・クライアントはこのキーストアを使用します。

注意:
Oracle WSMランタイムでは、WebLogic Server管理コンソールにより構成され、「SSLに関するキーストアの構成」の記載に従ってSSL用に使用されるWebLogic Serverキーストアは使用しません。

メッセージ保護のためにJavaキーストアを作成および構成するには、次の項の手順に従います。

- 秘密鍵の生成およびJavaキーストアの作成

- Oracle WSMキーストアの構成

注意:
これらの手順は、 「基本構成例」の説明および図10-8に従って、例で指定された名前およびパスワードを使用して、基本的な構成を設定する方法を説明しています。それぞれの環境では、構成に対して適切な名前およびパスワードを使用する必要があります。

秘密鍵の生成およびJavaキーストアの作成

次の項では、keytoolユーティリィティを使用して秘密鍵ペアおよびJavaキーストア(JKS)を作成する方法について概要を示します。keytoolユーティリティのコマンドや引数の詳細は、次のWebサイト・アドレスにアクセスして参照してください。

http://download.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html

1. domain_home/config/fmwconfigディレクトリに移動します。domain_homeは、キーストアが使用されるドメインの名前および位置です。

2. 鍵ペアを生成し、キーストアを作成するために(まだ作成していない場合)、次のようなkeytoolコマンドを入力します。
keytool -genkeypair -keyalg RSA -alias orakey -keypass password -keystore default-keystore.jks -storepass password -validity 3600

注意:
keytoolコマンドを起動するために、PATH変数の定義にjdk/binディレクトリを追加することが必要になる場合があります。

各項目の意味は次のとおりです。

- genkeypairは、aliasパラメータによって指定されたエントリに格納される新しい公開鍵/秘密鍵ペアを作成します。

- keyalgは、鍵のペアを生成するために使用するアルゴリズムを指定します(この例ではRSA)。

注意:
デフォルトの鍵ペア生成アルゴリズムはDigital Signature Algorithm(DSA)です。DSA鍵は署名でのみ使用できるのに対して、RSA鍵は署名および暗号化の両方で使用できます。したがって、暗号化および署名で同じ鍵を使用する場合(一般的なシナリオ)、-keyalg RSAを明示的に指定します。そうしない場合、keytoolではDSAがデフォルトになります。

- aliasは、鍵ペアを参照する場合に使用する別名orakeyを指定します。

- keypassは、生成された鍵ペアの秘密鍵を保護するために、パスワードを使用するように指示します

- keystoreは、default-keystore.jksという名前のキーストアを作成します。キーストアがすでに存在する場合は、鍵ペアがキーストアに追加されます。

- storepassは、キーストアの整合性を保護するために使用されるパスワードとしてpasswordを指定します。

- validityは、keypairが3600日間有効であることを示します。

keytoolユーティリィティは、鍵の作成のために使用される名前、組織単位および組織、局所性(市区町村、都道府県、国)を尋ねるプロンプトを表示します。

What is your first and last name?
[Unknown]:  orcladmin
What is the name of your organizational unit?
[Unknown]:  Doc
What is the name of your organization?
[Unknown]:  Oracle
What is the name of your City or Locality?
[Unknown]:  US
What is the name of your State or Province?
[Unknown]:  US
What is the two-letter country code for this unit?
[Unknown]:  US
Is CN=orcladmin, OU=Doc, O=Oracle, L=US, ST=US, C=US correct?
[no]:  y

3. 必要に応じて、「信頼できる証明書の入手と、キーストアへのインポート」の説明に従って、信頼できる証明書をキーストアにインポートします。

4. 必要に応じて、キーストアのコンテンツを表示するためにkeytool -listコマンドを使用します。

keytool -list -keystore default-keystore.jks

プロンプトが表示されたら、キーストアの作成時に指定したキーストアのパスワードを入力します。

Enter keystore password:

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 1 entry

Alias name: orakey
Creation date: Mar 9, 2011
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=orcladmin, OU=Doc, O=Oracle, L=US, ST=US, C=US
Issuer: CN=orcladmin, OU=Doc, O=Oracle, L=US, ST=US, C=US
Serial number: 4d77aff6
Valid from: Wed Mar 09 11:51:02 EST 2011 until: Fri Jan 15 11:51:02 EST 2021
Certificate fingerprints:
MD5:  DF:EC:3C:60:CF:8B:10:A7:73:3A:51:99:4C:A3:D0:2E
SHA1: E0:52:58:EB:34:51:E4:9B:D4:13:C2:CB:F3:CC:08:89:EF:4E:4E:05
Signature algorithm name: SHA1withRSA
Version: 3

*******************************************
*******************************************

Oracle WSMキーストアの構成

次の項では、Oracle WSMキーストアを構成するために、Oracle Enterprise Manager Fusion Middleware Controlを使用する方法について説明します。キーストアの構成には、この方法を使用することをお薦めします。環境にFusion Middleware Controlが含まれていない場合は、「WLSTの使用」に従って、WebLogic Scripting Tool (WLST) コマンドを使用することもできます。

Fusion Middleware Controlの使用

Oracle WSMキーストアを構成するためにFusion Middleware Controlを使用する場合、資格証明マップoracle.wsm.securityおよび定義したすべての鍵について、資格証明ストア内にエントリが作成されます。キーストアを構成するには、次の手順を実行します。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、キーストアの構成が必要なドメインを表示します。ドメインを選択します。

2. 図10-1に示すように、W「WebLogicドメイン」メニューから、「セキュリティ」、「セキュリティ・プロバイダ構成」の順に選択します。

図10-1 「セキュリティ・プロバイダ構成」メニュー

図10-2に示すように、「セキュリティ・プロバイダ構成」ページが表示されます。

図10-2 「セキュリティ・プロバイダ構成」ページ

3. ページの「キー・ストア」セクションで「構成」をクリックします。
図10-3に示すように、「キー・ストアの構成」ページが表示されます。

図10-3 キーストアの構成

4. 「KeyStoreタイプ」ドロップ・ダウンで、まだ選択していない場合は、「Javaキー・ストア(JKS)」を選択します。

注意:
また、ハードウェア・セキュリティ・モジュール(HSM)も、Oracle Advanced Securityで動作することが証明されています。詳細は、「Oracle WSMでのハードウェア・セキュリティ・モジュールの使用」を参照してください。
また、「暗号化アクセラレーションのためのメッセージ・レベル・セキュリティの構成」の手順6に記載されているように、暗号化アクセラレーションを使用する場合に、公開鍵暗号化標準(PKCS-11)を選択できます。ハードウェア・トークン・サポートが必要な場合、PKCS-11キーストア・タイプを使用します。

5. ページの「アクセス属性」セクションで、キーストアの名前とパス、およびパスワードを次のように入力します。

- 「キーストア・パス」フィールドで、「秘密鍵の生成およびJavaキーストアの作成」の説明に従って作成したキーストアのパスと名前を入力します。このフィールドはデフォルトでは./default-keystore.jksになります。これは、domain_name/config/fmwconfigディレクトリに位置するデフォルトのJavaキーストアの名前default-keystore.jksを表します。キーストアで異なる名前または位置を使用した場合は、かわりにその値を入力します。

- 「パスワード」フィールドおよび「パスワードの確認」フィールドで、キーストアのパスワードを入力します。このパスワードは、「秘密鍵の生成およびJavaキーストアの作成」の説明に従って、keytoolユーティリティを使用してキーストアを作成したときに使用したパスワードに一致する必要があります(例: password)。

6. ページの「アイデンティティ証明書」セクションで、署名鍵と暗号化鍵の別名とパスワードを次のように入力します。

- 署名鍵について、「キーの別名」フィールドに別名、「署名のパスワード」フィールドおよび「パスワードの確認」フィールドに別名のパスワードを入力します。ここで指定する値は、キーストアの値に一致する必要があります。たとえば、orakeyおよびpasswordです。

- 暗号化鍵について、「暗号化の別名」フィールドに別名、「暗号化のパスワード」フィールドおよび「パスワードの確認」フィールドに別名のパスワードを入力します。ここで指定する値は、キーストアの値に一致する必要があります。たとえば、orakeyおよびpasswordです。

署名と暗号化キーの別名とパスワードによって、鍵の格納と取得に使用される文字列の別名とパスワードが定義されます。これらの値は、資格証明ストア内でsign-csf-keyおよびenc-csf-keyとして作成されます。

7. 「OK」をクリックして変更内容を送信します。
ファイルベースのキーストア・プロバイダを使用した場合は、変更を有効にするためにサーバーを再起動する必要があります。データベースまたはLDAPベースのキーストア・サービス・プロバイダでは、再起動は必要ありません。

WLSTの使用

次の手順に従って、WLSTコマンドを使用して、Oracle WSMキーストアにアクセスするために資格証明ストアを構成します。

1. インストールのために、Oracleの共通ホーム・ディレクトリ、たとえば/home/Oracle/Middleware/oracle_commonに移動します。
Oracleの共通ホーム・ディレクトリとOracle Fusion Middlewareのインストールの詳細は、『Oracle Fusion Middlewareインストレーション・プランニング・ガイド』を参照してください。

2. oracle_common/common/binディレクトリにあるWLST.sh/cmdコマンドを使用して、WLSTを起動します。たとえば、次のようにします。

- /home/Oracle/Middleware/oracle_common/common/bin/wlst.sh(UNIX)

- C:\Oracle\Middleware\oracle_common\common\bin\wlst.cmd(Windows)

これらのコマンドを実行すると、WLSTがオフライン・モードで起動されます。資格証明ストアのWLSTコマンドを使用するには、WLSTをオンライン・モードで使用する必要があります。

3. Oracle WebLogic Serverを起動します。
詳細は、Oracle WebLogic Server管理コンソールのヘルプのサーバーの起動と停止に関する項を参照してください。

4. connect()コマンドを使用して、実行中のWebLogic Serverインスタンスに接続します。たとえば、次のコマンドは、ユーザー名/パスワードの資格証明weblogic/passwordを使用して、URL myAdminServer.example.com:7001でWLSTを管理サーバーに接続します。

connect("weblogic","password","t3://myAdminServer.example.com:7001")

5. 次のようにして、キーストアの名前およびパスワードとして、資格証明ストア内でエントリを作成するためにcreateCredコマンドを入力します。

createCred(map="oracle.wsm.security", key="keystore-csf-key", user="Oracle WSM", password="password", desc="Keystore key")

userに対して、任意の値を入力できることに注意してください。このフィールドは、keystore-csf-keyエントリでは無視されます。passwordの値は、「秘密鍵の生成およびJavaキーストアの作成」の説明に従ってキーストアを作成したときに指定したパスワード(この例ではpassword)に一致する必要があります。

6. 次のようにして、署名鍵の別名およびパスワードとして、資格証明ストア内でエントリを作成するためにcreateCredコマンドを入力します。

createCred(map="oracle.wsm.security", key="sign-csf-key", user="orakey", password="password", desc="Signing key")

userおよびpasswordの値は、「秘密鍵の生成およびJavaキーストアの作成」の説明に従ってキーストアを作成したときに指定したキーストア内の署名鍵の別名およびパスワードに一致する必要があります。この例では、値はorakeyおよびpasswordです。

7. 次のようにして、暗号化鍵の別名およびパスワードとして、資格証明ストア内でエントリを作成するためにcreateCredコマンドを入力します。

createCred(map="oracle.wsm.security", key="enc-csf-key", user="orakey", password="password", desc="Encryption key")

userおよびpasswordの値は、「秘密鍵の生成およびJavaキーストアの作成」の説明に従ってキーストアを作成したときに指定したキーストア内の暗号化鍵の別名およびパスワードに一致する必要があります。この例では、値はorakeyおよびpasswordです。

信頼できる証明書の入手と、キーストアへのインポート

VerisignやEntrust.netのような認証局(CA)から証明書を取得し、キーストアに含めることができます。証明書を取得するには、証明書リクエストを作成してCAに送信する必要があります。CAは、証明書リクエストを認証し、リクエストに基づいてデジタル証明書を作成します。

信頼できる証明書を取得し、その証明書をキーストアにインポートするには:

1. 秘密鍵と自己署名証明書を生成します。自己署名証明書は、信頼できる証明書に置き換えられます。

注意:
「秘密鍵の生成およびJavaキーストアの作成」の説明に従って以前に作成した自己署名証明書がキーストアにすでに含まれる場合は、この手順を無視して手順2に進むことができます。

keytool -genkeypairコマンドを使用して、指定の別名に対する鍵ペアを生成します(この例ではorakey)。存在しない場合は、キーストアが作成されます。

keytool -genkeypair -keyalg RSA -alias orakey -keypass password -keystore default-keystore.jks -storepass password -validity 3600

2. 証明書リクエストを生成します。

リクエストの生成には、keytool -certreqコマンドを使用します。次のコマンドでは、orakey別名の証明書リクエストおよびcertreq_fileという名前の証明書署名リクエスト(CSR: Certificate Signing Request)が生成されます。

keytool -certreq -alias orakey -sigalg "SHA1withRSA" -file certreq_file -storetype jks -keystore default-keystore.jks

3. たとえばVeriSignなどのCAにCSRファイルを送信します。CAによりリクエストが認証され、証明書または証明書チェーンが返されます。

4. CAの公開鍵を認証するCAルート証明書をインポートします。
keytool -importcertコマンドにより、別名verisigncaを使用して、信頼できるCAルート証明書(この例ではVerisignCAcert.cerという名前)をdefault-keystore.jksキーストアにインポートします。keytoolユーティリティから必要なパスワードを要求するプロンプトが表示されます。

keytool -importcert -alias verisignca -trustcacerts -file VerisignCAcert.cer -keystore default-keystore.jks

5. 証明書リクエストに対応してCAによって発行された自己署名証明書を信頼できるCA証明書で置き換えます。
keytool -importcertコマンドを使用します。次のコマンドは、この例ではMyCertIssuedByVerisign.cerという名前の信頼できるCA証明書で、別名orakeyの自己署名証明書を置換します。keytoolユーティリティから必要なパスワードを要求するプロンプトが表示されます。

keytool -importcert -trustcacerts -alias orakey -file MyCertIssuedByVerisign.cer -keystore default-keystore.jks

Webサービス・クライアント・キーストアの設定

クライアントのX.509トークンで必要な署名と暗号化キーを格納するには、Javaキーストア(JKS)のキーストアを作成する必要があります。鍵は、認証やデータ整合性など、様々な用途に使用されます。たとえば、次のようにします。

- データに署名するには、署名者の秘密鍵が必要です。

- 署名を検証するには、信頼できるCA証明書と、秘密鍵に一致する公開鍵が必要です。

- データを暗号化するには、受信者の公開鍵が必要です。「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

- データを復号化するには、公開鍵に対応する秘密鍵が必要です。

これらの信頼できる証明書、公開鍵および秘密鍵はキーストアに格納されます。次の項では、様々なタイプのメッセージ保護ポリシーの要件、こうしたキーストアを作成および使用する方法、および信頼できる証明書を入手する方法について説明しています。

- 様々なセキュリティ・ポリシーでの秘密鍵および証明書の使用方法

- 秘密鍵の生成およびJavaキーストアの作成

- 信頼できる証明書の入手と、キーストアへのインポート

Javaキーストアの証明書の管理

Javaキーストア(JKS)の証明書の管理には、WebLogic Scripting Tool (WLST)コマンドを使用できます。

- キーストア内のすべての別名のリスト

- キーストア内の証明書の表示

- 信頼できる証明書または秘密鍵に関連付られた証明書チェーンのエクスポートとインポート:

- 証明書 - Base64でエンコードされたX.509 (.cer)

- 証明書チェーン - PKCS7 (.p7b)または証明書の配列

- キーストアからの証明書の削除

WLSTの使用

WLSTコマンドを使用してJKS証明書を管理するには、次の手順に従います。

1. インストールのために、Oracleの共通ホーム・ディレクトリ、たとえば/home/Oracle/Middleware/oracle_commonに移動します。
Oracleの共通ホーム・ディレクトリとOracle Fusion Middlewareのインストールの詳細は、『Oracle Fusion Middlewareインストレーション・プランニング・ガイド』を参照してください。

2. oracle_common/common/binディレクトリにあるWLST.sh/cmdコマンドを使用して、WLSTを起動します。たとえば、次のようにします。

- /home/Oracle/Middleware/oracle_common/common/bin/wlst.sh(UNIX)

- C:\Oracle\Middleware\oracle_common\common\bin\wlst.cmd(Windows)

これらのコマンドを実行すると、WLSTがオフライン・モードで起動されます。資格証明ストアのWLSTコマンドを使用するには、WLSTをオンライン・モードで使用する必要があります。

3. Oracle WebLogic Serverを起動します。
詳細は、Oracle WebLogic Server管理コンソールのヘルプのサーバーの起動と停止に関する項を参照してください。

4. connect()コマンドを使用して、実行中のWebLogic Serverインスタンスに接続します。たとえば、次のコマンドは、ユーザー名/パスワードの資格証明weblogic/passwordを使用して、URL myAdminServer.example.com:7001でWLSTを管理サーバーに接続します。

connect("weblogic","password","t3://myAdminServer.example.com:7001")

5. 次のコマンドを使用してキーストアを管理します。

- displayWSMCertificate: 別名がKeyStore.TrustedCertificateEntryを指定している場合、ユーザーの証明書のコンテンツを表す文字列を表示します。別名がKeyStore.PrivateKeyEntryで指定された証明書チェーンを指している場合は、チェーン内の証明書を表示します。たとえば、次のようにします。

wls:/DefaultDomain/serverConfig> displayWSMCertificate('testalias')

- listWSMKeystoreAliases: キーストア内のすべての別名を一覧表示します。たとえば、次のようにします。

wls:/DefaultDomain/serverConfig> listWSMKeystoreAliases()

- deleteWSMKeyStoreEntry: キーストアから1つのKeyStore.TrustedCertificateEntryエントリを削除します。たとえば、次のようにします。

wls:/DefaultDomain/serverConfig> deleteWSMKeyStoreEntry(alias='testalias')

- deleteWSMKeyStoreEntries: 除外リストで別名によって識別されたエントリを除き、キーストアからすべてのKeyStore.TrustedCertificateEntryエントリを削除します。
この例では、除外リストに指定された別名testaliasおよびtestalias2を除き、キーストアからすべてのキー・ストア・エントリが削除されます。

wls:/DefaultDomain/serverConfig> deleteWSMKeyStoreEntries(exclusionList=['testalias', 'testalias2'])

- exportWSMKeyStoreCertificate: 指定された場所に、別名によって示された、信頼できる証明書または秘密鍵に関連付けられた証明書チェーンをエクスポートします。
この例では、信頼できる証明書testaliasがCertificateタイプとして識別され、指定されたcertificate.cerファイルにエクスポートされます。

wls:/DefaultDomain/serverConfig> exportWSMCertificate(alias='testalias',certFile='/tmp/certificate.cer',type='Certificate')

この例では、証明書チェーンtestalias2はPKCS7タイプとして識別され、指定されたcertificatechain.p7bファイルにエクスポートされます。

wls:/base_domain/serverConfig> exportWSMCertificate(alias='testalias2',certFile='/tmp/certificatechain.p7b', type='PKCS7')

- importWSMKeyStoreCertificate: 別名によって示された、信頼できる証明書または秘密鍵に関連付けられた証明書チェーンをインポートします。指定された場所から、Base64でエンコードされた証明書がインポートされます。
この例では、信頼できる証明書testaliasがCertificateタイプとして識別され、指定されたcertificate.cerファイルからインポートされます。

wls:/DefaultDomain/serverConfig> importWSMCertificate(alias='testalias',certFile='/tmp/certificate.cer',type='Certificate')

この例では、証明書チェーンtestaliasはPKCS7タイプとして識別され、指定されたcertificatechain.p7bファイルからインポートされます。

wls:/base_domain/serverConfig> importWSMCertificate(alias='testalias',certFile='/tmp/certificatechain.p7b',type='PKCS7')

これらのWLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

資格証明ストアの構成

注意:
REST APIを使用して資格証明ストアを構成するには、『Oracle Web Services Managerでの資格証明およびキーストアの管理のためのREST API』の資格証明ストアの管理に関する項を参照してください。

Oracle WSMは、保護された形式で資格証明を管理するために資格証明ストア・フレームワーク(CSF: Credential Store Framework)を使用します。CSFは、Webサービスやその他のアプリケーションの資格証明を格納、取得および削除する手段を提供します。Oracle WSMは、次の検索のために資格証明ストアを使用します。

- Javaキーストア内の鍵の別名およびパスワード
Oracle WSMがJavaキーストアから別名およびパスワードを検索するために資格証明ストアを使用する方法に関する詳細は、「Oracle WSMがキーストアおよび鍵のパスワードを特定する方法」を参照してください。

- 認証に使用されるユーザー名およびパスワード
たとえば、認証のためにユーザー名トークンを受け入れるWebサービスを考えてください。このWebサービスと対話するWebサービス・クライアントを作成した場合、Webサービスに送信できるユーザー名およびパスワードでWebサービス・クライアントを構成する必要があります。(Fusion Middleware ControlまたはWLSTのいずれかを使用して)資格証明ストアにこのユーザー名とパスワードを格納し、それにCSFキーを割り当てます。

たとえば、oracle/wss_username_token_client_policyポリシーにはcsf-keyプロパティが含まれており、そのデフォルト値はbasic.credentialsです。wss_username_token_client_policyを使用するには、資格証明名basic.credentials、およびクライアントが接続する必要があるユーザー名とパスワードを使用して、CSF内に新しいパスワード資格証明を作成する必要があります。この同じクライアント・ポリシーを使用する2つのWebサービス・クライアントが存在する場合、これらのクライアントで同じパスワード資格証明(デフォルト値はbasic.credentials)を共有することもできますし、それぞれが独自の資格証明を持つこともできます。後者の場合は、クライアント1およびクライアント2についてそれぞれ、CSF内に2つのパスワード資格証明(たとえばApp1.credentials、App2.credentials)を作成する必要があります。クライアント1ではcsf-key構成オーバーライドにApp1.credentialsを設定し、クライアント2ではcsf-keyプロパティにApp2.credentialsを設定します。詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。いずれの場合も、ユーザー名およびパスワードがOPSSアイデンティティ・ストア内の有効なユーザーを表す必要があることに注意してください。

パスワード資格証明には、ユーザー名とパスワードを格納できます。汎用資格証明には、資格証明オブジェクトを格納できます。

CSF構成は、 domain-home/config/fmwconfigディレクトリのjps-config.xmllファイル内で維持されます。

「Oracle WSMキーストアの構成」の説明に従って、Fusion Middleware Controlを使用してOracle WSMキーストアを構成した場合、指定した別名およびパスワードが資格証明ストアに安全に格納されます。ただし、キーストアに他の別名を追加するか、クライアントの認証資格証明を追加する必要がある場合、次の項の説明に従って、資格証明ストアでもそれらが構成および格納されていることを確認する必要があります。

資格証明ストアへの鍵およびユーザー資格証明の追加

Fusion Middleware ControlまたはWLSTコマンドを使用して、資格証明ストアに鍵およびユーザー資格証明を追加できます。次の手順では、両方の方法について説明します。

注意:
この項の例の手順では、前述したように、basic.credentials鍵のユーザー資格証明、および「詳細な設定に関する考慮事項」に記載されている例の別名ServiceAおよびServiceBを追加する方法について説明しています。それぞれの環境では、構成に対して適切な別名およびパスワードを使用する必要があります。
資格証明ストアに鍵の資格証明を追加する前に、秘密鍵と別名がキーストアに存在することを確認します。これは、次のようなコマンドを使用して作成できます。

keytool -genkeypair -keyalg RSA -alias ServiceA -keypass password -keystore default-keystore.jks -storepass password -validity 3600

keytool -genkeypair -keyalg RSA -alias ServiceB -keypass welcome3 -keystore default-keystore.jks -storepass password -validity 3600

キーストアの詳細は、「秘密鍵の生成およびJavaキーストアの作成」を参照してください。

Fusion Middleware Controlの使用

Fusion Middleware Controlで次の手順に従って資格証明ストアに鍵と証明書を追加します。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、キーストアの構成が必要なドメインを表示します。ドメインを選択します。

2. 「WebLogicドメイン」メニューで、「セキュリティ」→「資格証明」を選択します。

図10-4 「資格証明ストア」メニュー

図10-5に示すように、「資格証明」ページが表示されます。

図10-5 資格証明ストア・プロバイダの構成ページ

この構成では、資格証明ストアにoracle.wsm.security資格証明マップがすでに存在することに注意してください。この資格証明マップは、「Oracle WSMキーストアの構成」の説明に従ってOracle WSMキーストアを構成したときに作成されたものです。この資格証明マップが構成に表示されない場合は、「マップの作成」ボタンをクリックし、「マップ名」フィールドに「oracle.wsm.security」と入力することにより作成できます。

3. 必要に応じて、マップで構成された鍵を表示するために、「資格証明」表でoracle.wsm.securityマップを開きます。図10-6に、サンプルのOracle WSM資格証明ストアの構成を示します。

図10-6 Oracle WSM資格証明マップで構成された鍵

鍵を選択し、「編集」をクリックすることにより、資格証明マップで鍵を編集できます。資格証明ストアで加えるすべての変更がOracle WSM Javaキーストア内の鍵の定義に準拠することに注意してください。

4. oracle.wsm.security資格証明マップ内で、たとえばServiceA およびServiceBの別名に対応する新しいエントリを作成するために、「キーの作成」をクリックします。図10-7に示すように、「キーの作成」ダイアログ・ボックスが表示されます。

図10-7 「キーの作成」ダイアログ・ボックス

1. 「マップの選択」メニューから、まだ選択されていない場合は、マップ名「oracle.wsm.security」を選択します。

2. キーストアにアクセスするための鍵と値のペアを作成するために、「キー」フィールドに「csfServiceA」と入力します。

3. 「タイプ」メニューから、「パスワード」を選択します。

4. 「ユーザー名」フィールドで、キーストアで秘密鍵に指定した別名(たとえばServiceA)を入力します。

5. 「パスワード」フィールドおよび「パスワードの確認」フィールドで、キーストアで別名のために指定したパスワード(たとえばpassword)を入力します。

6. 「説明」フィールドで、エントリの説明を入力します(たとえば、「Key for ServiceA」など)。

7. 「OK」をクリックします。

8. もう一度「キーの作成」をクリックし、ServiceBの別名に対するcsfServiceBなど、追加キーストアの別名の値を入力します。

5. 必要に応じて、「キーの作成」をクリックして、次のようにしてoracle.wsm.security資格証明マップでcsf-keyユーザー資格証明のエントリを作成します(たとえばbasic.credentialsなど)。

1. 「マップの選択」メニューから、まだ選択されていない場合は、マップ名「oracle.wsm.security」を選択します。

2. 「キー」フィールドで、「basic.credentials」と入力します。この例では、basic.credentialsを使用しますが、鍵に選択した任意の名前を指定できます。

3. 「タイプ」メニューから、「パスワード」を選択します。

4. 「ユーザー名」フィールドで、OPSSアイデンティティ・ストアに存在する有効なユーザー名を入力します(たとえばAppIDなど)。

5. 「パスワード」フィールドおよび「パスワードの確認」フィールドで、ユーザーの有効なパスワードを入力します(たとえばpasswordなど)。

6. 「説明」フィールドで、エントリの説明を入力します(たとえば、Username and Password for basic.credential keyなど)。

7. 「OK」をクリックします。

6. サーバーを再起動します。

WLSTの使用

WLSTコマンドを使用して、次の手順に従って、資格証明ストアに鍵およびユーザー資格証明を追加します。

1. インストールのために、Oracleの共通ホーム・ディレクトリ、たとえば/home/Oracle/Middleware/oracle_commonに移動します。
Oracleの共通ホーム・ディレクトリとOracle Fusion Middlewareのインストールの詳細は、『Oracle Fusion Middlewareインストレーション・プランニング・ガイド』を参照してください。

2. oracle_common/common/binディレクトリにあるWLST.sh/cmdコマンドを使用して、WLSTを起動します。たとえば、次のようにします。

- /home/Oracle/Middleware/oracle_common/common/bin/wlst.sh(UNIX)

- C:\Oracle\Middleware\oracle_common\common\bin\wlst.cmd(Windows)

これらのコマンドを実行すると、WLSTがオフライン・モードで起動されます。資格証明ストアのWLSTコマンドを使用するには、WLSTをオンライン・モードで使用する必要があります。

3. Oracle WebLogic Serverを起動します。
詳細は、Oracle WebLogic Server管理コンソールのヘルプのサーバーの起動と停止に関する項を参照してください。

4. connect()コマンドを使用して、実行中のWebLogic Serverインスタンスに接続します。たとえば、次のコマンドは、ユーザー名/パスワードの資格証明weblogic/passwordを使用して、URL myAdminServer.example.com:7001でWLSTを管理サーバーに接続します。

connect("weblogic","password","t3://myAdminServer.example.com:7001")

5. oracle.wsm.security資格証明マップ内で、たとえばServiceAおよびServiceBの別名に対応する新しいエントリを作成するために、createCredコマンドを使用しますたとえば、次のようなコマンドを使用して、ServiceAの別名のエントリcsfServiceAを作成します。

wls:/DefaultDomain/serverConfig> createCred(map="oracle.wsm.security", key="csfServiceA", user="ServiceA", password="password", desc="Key for ServiceA")

6. 手順5を繰り返して、追加の別名のエントリ、たとえばServiceBの別名のcsfServiceBを作成します。

7. createCredコマンドを使用して、oracle.wsm.security資格証明マップでcsf-keyユーザー資格証明のエントリを作成します(たとえばbasic.credentialsなど)。

wls:/DefaultDomain/serverConfig> createCred(map="oracle.wsm.security", key="basic.credentials", user="AppID", password="password", desc="Key for ServiceA")

Oracle WSMでキーストアおよび鍵のパスワードが特定される方法

Oracle WSMでは、キーストアおよび鍵のパスワードが資格証明ストア・フレームワーク(CSF)に格納されていることが求められます。次に、このしくみを示します。

- JKSキーストア・ファイルは、キーストアのパスワードによって保護されています。

- キーストア・ファイルは、0個以上の秘密鍵および0個以上の信頼できる証明書から構成されます。各秘密鍵は、独自のパスワードを持ちます(ただし、鍵のパスワードとキーストアのパスワードが同じであることが一般的です)。Oracle WSMでは、キーストアのパスワードと鍵のパスワードの両方を認識している必要があります。

- CSFは、それぞれが個別の名前を持つ多数のマップから構成されます。Oracle WSMは、マップoracle.wsm.securityのみを使用します。

- 各マップ内部で、複数のcsf-keyエントリから対応する資格証明にマッピングされています。csf-keyは、簡単な名前ではあっても、様々なタイプの資格証明が考えられます。最も一般的なタイプの資格証明は、主にユーザー名とパスワードで構成されるパスワード資格証明です。
Oracle WSMでは、oracle.wsm.securityマップ内で次のcsf-keyを参照します。

- keystore-csf-key - この鍵には、キーストアのパスワードを含める必要があります。ユーザー名は無視されます。

- enc-csf-key - この鍵には、ユーザー名として暗号化鍵の別名、および対応する鍵のパスワードを含める必要があります。

- sign-csf-key - この鍵には、ユーザー名として署名鍵の別名、および対応する鍵のパスワードを含める必要があります。

こうしたcsf-keyに加えて、たとえば構成オーバーライドで署名鍵および暗号化鍵を指定する場合に、Oracle WSMで使用する新しい各秘密鍵についてcsf-keyエントリを追加する必要があります。

図10-8に、OPSS内のキーストア構成、資格証明ストア内のoracle.wsm.securityマップおよびOracle WSM Javaキーストアの関係を示します。

注意:
フェデレーテッド環境の場合、管理者は、特定の事前定義されたポリシーおよびアサーション・テンプレートでcsf.mapの構成オーバーライドとしてアプリケーション・レベルの資格証明マップ名を設定できます。詳細は、「アプリケーション・レベルの資格証明マップの作成」を参照してください。

図10-8 メッセージ保護のためのOracle WSM Javaキーストア構成

図を見ると次のことがわかります。

- keystore.csf.mapプロパティは、CSFの別名を含む資格証明ストア内のOracle WSMマップを参照します。この場合、keystore.csf.mapはお薦めの名前であるoracle.wsm.securityとして定義されていますが、任意の値でかまいません。

- keystore.pass.csf.keyプロパティは、キーストアのユーザー名およびパスワードにマッピングされたCSFの別名keystore-csf-keyを参照します。パスワードのみが使用されます。キーストアの場合、ユーザー名は冗長です。

- keystore.sig.csf.keyプロパティは、署名に使用される秘密鍵のユーザー名およびパスワードにマッピングされたCSFの別名sign-csf-keyを参照します。

- keystore.enc.csf.keyプロパティは、復号化に使用される秘密鍵のユーザー名およびパスワードにマッピングされたCSFの別名enc-csf-keyを参照します。

アプリケーション・レベルの資格証明マップの作成

csf.map構成プロパティにより、特定の事前定義されたポリシーにアプリケーション・レベルの資格証明マップ名を設定できます(このプロパティを使用してドメイン・レベルの資格証明マップをアタッチメントごとにオーバーライドできます)。csf.map構成オーバーライドは、csf-keyまたはキーストア関連のcsfキーのいずれかを持つすべてのポリシーおよびアサーション・テンプレートで使用できます。

オーバーライドの構成の詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

使用可能な事前定義済ポリシーの一覧は、「アプリケーション・レベルのCSFマップへのアクセスに使用できるポリシー」を参照してください。

アプリケーション・レベルの資格証明マップからCSFキーを取得する方法

ドメイン・レベルの oracle.wsm.security資格証明マップは、「Oracle WSMキーストアの構成」の説明に従ってOracle WSMキーストアを構成した場合に資格証明ストアに作成されます。

アプリケーション・レベルの資格証明マップを構成すると、クライアントのcsfキー(csf-keyおよびユーザー・キーsts.auth.user.csf.key)は、次に示すように、ドメイン・レベルのマップではなく、そのマップからのみ取得されます。

- アプリケーション・レベルのcsfマップを構成すると、そこからcsfキーが取得されます。csfキーが見つからない場合は、例外がスローされます。

- アプリケーション・レベルのcsfマップが構成されていない場合は、ドメイン・レベルのcsfマップからcsfキーが取得されます。csfキーが見つからない場合は、例外がスローされます。

共有cfsキーの場合は、次のように動作が異なります。

- keystore-csf-key: このcsfキーは、常にドメイン・レベルの資格証明マップ(oracle.wsm.security)から取得されます。

- enc-csf-key: アプリケーション・レベルのマップが構成されている場合、このcsfキーは、最初にそこから取得されます。見つからなかった場合は、ドメイン・レベルのcsfマップから取得されます。

- sign-csf-key: アプリケーション・レベルのマップが構成されている場合、このcsfキーは、最初にそこから取得されます。見つからなかった場合は、ドメイン・レベルのcsfマップから取得されます。

アプリケーション・レベルの資格証明マップにアクセスする権限の付与

アプリケーション・レベルの資格証明マップにアクセスするには、次のことが必要です。

- csf.mapプロパティのオーバーライドの構成

- wsm-agent-core.jarへのCredentialAccessPermissionの付与

- wsm-agent-core.jarへのWSIdentityPermissionの付与

csf.mapプロパティのオーバーライドの構成

アプリケーションが独自の資格証明マップにアクセスするには、アプリケーションに割り当てるポリシーのcsf.map構成のオーバーライドを設定する必要があります。

1. 「Fusion Middleware Controlで「Webサービス・ポリシー」ページに移動」の説明に従って、「Webサービス・ポリシー」ページに移動します。

2. 「Webサービス・ポリシー」ページで、「ポリシー」表からプロパティを編集するポリシーを選択して「編集」をクリックします。

3. 「ポリシーの編集」ページで、「構成」タブをクリックします。

4. csf.map構成プロパティを選択し、「編集」をクリックします。図10-9に示された「構成プロパティの編集」ダイアログ・ボックスが表示されます。

図10-9 「構成プロパティの編集」ダイアログ

5. 「値」フィールドに、使用するポリシーのアプリケーション・レベルのマップ名を入力し、「OK」をクリックします。

6. ポリシーを検証します。

7. 「保存」をクリックします。

wsm-agent-core.jarへのCredentialAccessPermissionの付与

wsm-agent-core.jarへのCredentialAccessPermissionを付与します。この権限は、Oracle Platform Security Services (OPSS)でCSFストア内の資格証明マップへのアクセスを許可するために必要です。

Oracle Enterprise Managerの使用

ドメインの「システム・ポリシー」ページから、アプリケーション・レベルの資格証明マップへのCredentialAccessPermissionを付与します。

1. 「ナビゲータ」ペインで「WebLogicドメイン」を展開し、新しいシステム・ポリシーを構成するドメインを選択します。

2. 「WebLogicドメイン」メニューから、「セキュリティ」、「システム・ポリシー」の順に選択します。

3. 「作成」をクリックして、「システム権限の作成」ページを開きます。

4. 必要に応じて、「権限付与先」ドロップ・ボックスの「コードベース」をポリシー・タイプとして選択します。

5. 「コードベース」フィールドに、次の文字列を入力します。

file:${common.components.home}/modules/oracle.wsm.agent.common_${jrf.version}/wsm-agent-core.jar

6. 「権限」表の上の「追加」をクリックします。

7. 「権限の追加」ダイアログで、「新しい権限の詳細を入力するにはここを選択します」チェック・ボックスをクリックし、次の情報を入力します。
権限クラス: oracle.security.jps.service.credstore.CredentialAccessPermission

リソース名: context=SYSTEM,mapName=application.csf.map.name,keyName=*

ここで、mapNameは、構成する必要があるアプリケーション・レベルの資格証明マップの名前です。

権限アクション: *

8. 「OK」をクリックして、「システム権限の作成」ページに戻ります。選択した権限が、「権限」の表に追加されます。

9. 「OK」をクリックして、「システム・ポリシー」ページに戻ります。ページの上部に表示されるメッセージは、操作の結果を示します。操作が正常に完了すると、ページの下部の表にポリシーが追加されます。

システム・ポリシーの構成の詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのシステム・ポリシーの管理に関する項を参照してください。

WLSTの使用

grantPermission WLSTコマンドを使用して、アプリケーション・レベルの資格証明マップへのCredentialAccessPermissionを付与できます。

1. WLSTを起動し、実行中のWebLogic Serverインスタンスに接続します(「WLSTの使用」を参照)。

2. grantPermissionコマンドを使用して、コードベース・システム・ポリシーを作成します。

grantPermission(appStripe=None, codeBaseURL='file:${common.components.home}/modules/oracle.wsm.agent.common_${jrf.version}/wsm-agent-core.jar',principalClass=None,principalName=None,permClass='oracle.security.jps.service.credstore.CredentialAccessPermission',permTarget='context=SYSTEM,mapName=application.csf.map.name,keyName=*',permActions='*')

このWLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のインフラストラクチャ・セキュリティ・カスタムWLSTコマンドに関する項を参照してください。

wsm-agent-core.jarへのWSIdentityPermissionの付与

mapName用語およびgetKeyアクションを使用して、wsm-agent-core.jarへのWSIdentityPermissionを付与します。特定のアプリケーションにこの権限を付与しない場合、アプリケーション・レベルの資格証明マップにアクセスできません。

Oracle Enterprise Managerの使用

ドメインの「システム・ポリシー」ページから、アプリケーション・レベルの資格証明マップへのCredentialAccessPermissionを付与します。

1. 「ナビゲータ」ペインで「WebLogicドメイン」を展開し、新しいシステム・ポリシーを構成するドメインを選択します。

2. 「WebLogicドメイン」メニューから、「セキュリティ」、「システム・ポリシー」の順に選択します。

3. 「wsm-agent-core.jarへのCredentialAccessPermissionの付与」の手順がすでに完了している場合は、「検索」セクションで、「コードベース」タイプを選択し、「名前」フィールドで次の文字列を検索します。

file:${common.components.home}/modules/oracle.wsm.agent.common_${jrf.version}/wsm-agent-core.jar

4. 「検索」表のコードベース権限を選択し、「編集」をクリックします。

5. 「システム権限の編集」ページで、「権限」表の上の「追加」をクリックします。

6. 「権限の追加」ダイアログで、「新しい権限の詳細を入力するにはここを選択します」チェック・ボックスをクリックし、次の情報を入力します。
権限クラス: oracle.wsm.security.WSIdentityPermission

リソース名: resource=usermessagingserver,mapName=application.specific.map

ここで、resourceは権限が必要なアプリケーションの名前、mapNameは構成する必要があるアプリケーション・レベルの資格証明マップの名前です。

権限アクション: getKey

7. 「OK」をクリックして「システム権限の作成」ページに戻ります。選択した権限が、「権限」の表に追加されます。

8. 「OK」をクリックして、「システム・ポリシー」ページに戻ります。ページの上部に表示されるメッセージは、操作の結果およびコードベース権限の新しい権限の追加を示します。

システム・ポリシーの構成の詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのシステム・ポリシーの管理に関する項を参照してください。

WLSTの使用

grantPermission WLSTコマンドを使用して、アプリケーション・レベルの資格証明マップへのCredentialAccessPermissionを付与できます。

1. WLSTを起動し、実行中のWebLogic Serverインスタンスに接続します(「WLSTの使用」を参照)。

2. grantPermissionコマンドを使用して、コードベース・システム・ポリシーを作成します。

grantPermission(appStripe=None, codeBaseURL='file:${common.components.home}/modules/oracle.wsm.agent.common_${jrf.version}/wsm-agent-core.jar',principalClass=None,principalName=None,permClass='oracle.wsm.security.WSIdentityPermission',permTarget='resource=usermessagingserver,mapName=application.specific.map',permActions='getKey')

このWLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のインフラストラクチャ・セキュリティ・カスタムWLSTコマンドに関する項を参照してください。

system-jazn-data.xmlでのアプリケーション・レベルの権限の付与の例

ここでは、アプリケーション・レベルの資格証明マップへのアクセスおよび特定のアプリケーションにアクセスを制限するためのsystem-jazn-data.xmlでの権限付与の例を示します。resourceは、アプリケーションの資格証明マップの構成が必要なアプリケーション名、 mapNameは、構成する必要があるアプリケーション・レベルの資格証明マップ名です。

<grant>
<grantee>
<codesource>
<url>
file:${common.components.home}/modules/oracle.wsm.agent.common_${jrf.version}/wsm-agent-core.jar
</url>
</codesource>
</grantee>
<permissions>
<permission>
<class>oracle.wsm.security.WSIdentityPermission</class>
<name>resource=usermessagingserver,mapName=application.specific.map</name>
<actions>getKey</actions>
</permission>
</permissions>
</grant>

resource用語およびmapName用語では、アスタリスク(*)のワイルドカードもサポートされます。アクションがgetKeyである場合の適正な権限名の例を次に示します。

- resource=usermessagingserver,mapName=application.specific.map
usermessagingserverアプリケーションのみが資格証明マップapplication.specific.mapにアクセスできます。

- resource=*,mapName=application.specific.map
すべてのアプリケーションが資格証明マップapplication.specific.mapにアクセスできます。

- resource=usermessagingserver,mapName=*
アプリケーションusermessagingserverは、すべての資格証明マップにアクセスできます。

- resource=usermessagingserver,mapName=intel-*
アプリケーションusermessagingserverは、intel-で始まるすべての資格証明マップにアクセスできます。

- resource=intel-*,mapName=application.specific.map
名前がintel-*で始まるすべてのアプリケーションが資格証明マップapplication.specific.mapにアクセスできます。

注意:
WSMIdentityPermissionを使用してアプリケーション・レベルの資格証明マップにアクセスする場合:

- 権限は、管理対象アプリケーションでのみチェックされます。Java SEアプリケーションの場合、権限はチェックされません。

- Oracle WSM JARへのjava.security.AllPermissionが付与されているOracle Java Cloud Service環境では、権限は機能しません。

- ドメイン・レベルの資格証明マップにアクセスする場合、権限は必要ではありません。「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

アプリケーション・レベルのCSFマップへのアクセスに使用できるポリシー

csf.map構成オーバーライド・プロパティにより、次の事前定義されたポリシーにアプリケーション・レベルの資格証明マップ名を設定できます(このプロパティを使用してドメイン・レベルの資格証明マップをアタッチメントごとにオーバーライドできます)。

csf.map構成プロパティを含む事前定義済セキュリティ・アサーション・テンプレートの詳細は、「セキュリティ・アサーション・テンプレート」を参照してください。

- http_basic_auth_over_ssl_client_policy

- http_jwt_token_client_policy

- http_jwt_token_identity_switch_client_policy

- http_jwt_token_over_ssl_client_policy

- http_jwt_token_over_ssl_service_policy

- http_jwt_token_service_policy

- http_oauth2_token_client_policy

- http_oauth2_token_identity_switch_opc_oauth2_over_ssl_client_policy

- http_oauth2_token_identity_switch_over_ssl_client_policy

- http_oauth2_token_opc_oauth2_client_policy

- http_oauth2_token_opc_oauth2_over_ssl_client_policy

- http_oauth2_token_over_ssl_client_policy

- oauth2_config_client_policy

- http_saml20_token_bearer_client_policy

- http_saml20_token_bearer_over_ssl_client_policy

- multi_token_over_ssl_rest_service_policy

- multi_token_rest_service_policy

- wss10_message_protection_client_policy

- wss10_message_protection_service_policy

- wss10_saml20_token_client_policy

- wss10_saml20_token_with_message_protection_client_policy

- wss10_saml20_token_with_message_protection_service_policy

- wss10_saml_hok_token_with_message_protection_client_policy

- wss10_saml_hok_token_with_message_protection_service_policy

- wss10_saml_token_client_policy

- wss10_saml_token_with_message_integrity_client_policy

- wss10_saml_token_with_message_integrity_service_policy

- wss10_saml_token_with_message_protection_client_policy

- wss10_saml_token_with_message_protection_service_policy

- wss10_saml_token_with_message_protection_ski_basic256_client_policy

- wss10_saml_token_with_message_protection_ski_basic256_service_policy

- wss10_username_id_propagation_with_msg_protection_client_policy

- wss10_username_id_propagation_with_msg_protection_service_policy

- wss10_username_token_with_message_protection_client_policy

- wss10_username_token_with_message_protection_service_policy

- wss10_username_token_with_message_protection_ski_basic256_client_policy

- wss10_username_token_with_message_protection_ski_basic256_service_policy

- wss10_x509_token_with_message_protection_client_policy

- wss10_x509_token_with_message_protection_service_policy

- wss11_message_protection_client_policy

- wss11_message_protection_service_policy

- wss11_saml20_token_with_message_protection_client_policy

- wss11_saml20_token_with_message_protection_service_policy

- wss11_saml_or_username_token_with_message_protection_service_policy

- wss11_saml_token_identity_switch_with_message_protection_client_policy

- wss11_saml_token_with_message_protection_client_policy

- wss11_saml_token_with_message_protection_service_policy

- wss11_sts_issued_saml_hok_with_message_protection_client_policy

- wss11_sts_issued_saml_hok_with_message_protection_service_policy

- wss11_sts_issued_saml_with_message_protection_client_policy

- wss11_username_token_with_message_protection_client_policy

- wss11_username_token_with_message_protection_service_policy

- wss11_x509_token_with_message_protection_client_policy

- wss11_x509_token_with_message_protection_service_policy

- wss_http_token_client_policy

- wss_http_token_over_ssl_client_policy

- wss_saml20_token_bearer_over_ssl_client_policy

- wss_saml20_token_over_ssl_client_policy

- wss_saml_token_bearer_client_policy

- wss_saml_token_bearer_over_ssl_client_policy

- wss_saml_token_bearer_identity_switch_client_policy

- wss_saml_token_over_ssl_client_policy

- wss_sts_issued_saml_bearer_token_over_ssl_client_policy

- wss_username_token_client_policy

- wss_username_token_over_ssl_client_policy

メッセージ保護に関するOPSSキーストア・サービスの構成

注意:
REST APIを使用してメッセージ保護のためのOPSSキーストア・サービスを構成するには、『Oracle Web Services Managerでの資格証明およびキーストアの管理のためのREST API』のKSSキーストアの管理に関する項を参照してください。

『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』の「キーストア・サービスを使用したキーと証明書の管理」の説明のとおり、OPSSキーストア・サービスは、メッセージ・セキュリティのための鍵および証明書を管理するための代替メカニズムです。OPSSキーストア・サービスを使用して、KSSタイプのキーストアを作成して管理します。

注意:
キーストアはエクスポートおよびインポートできます。JKSおよびJCEKSの証明書形式に対して移行がサポートされます。

ドメインごとに単一のOracle WSMキーストアが存在し、ドメイン内で実行するすべてのWebサービスおよびクライアントによってそのキーストアが共有されます。したがって、この項の説明に従ってKSSキーストアを構成した場合、Oracle WSMではそのKSSキーストアのみが使用され、それとともに定義されているJKSキーストアは無視されます。

Fusion Middleware ControlおよびWLSTの両方を使用して、OPSSキーストア・サービス操作を実行できます。ここでは、Fusion Middleware Controlの手順に焦点を当てますが、「キーストア・サービスを使用したキーと証明書の管理」では、両方の方法について説明しています。

次の手順に従って、メッセージの保護のためにOPSSキーストア・サービスを構成します。

1. ストライプを作成し、Oracle WSMという名前を付けます。(詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』のFusion Middleware Controlを使用したキーストアの作成に関する項を参照してください)。

1. 「WebLogicドメイン」メニューから、「セキュリティ」、「キー・ストア」の順に選択します。

2. 「ストライプの作成」をクリックします。図10-10に、「ストライプの作成」画面を示します。

3. 「Oracle WSM」と入力し、「OK」をクリックします。この名前を使用する必要があります。

図10-10 ストライプの作成

2. Oracle WSMストライプに、keystoreという名前のキーストアを作成します。(詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』のFusion Middleware Controlを使用したキーストアの作成に関する項を参照してください)。

1. 作成したOracle WSMストライプを選択し、「キーストアの作成」をクリックします。
図10-11に、「キーストアの作成」ページを示します。

図10-11 キーストアの作成

2. このキーストアにkeystoreという名前を付けます。この名前を使用する必要があります。

3. 保護タイプを「ポリシー」に設定します。

4. 「権限の付与」チェック・ボックスの選択を解除します。

5. 「コード・ベースURL」フィールドには値を指定しないでください。

6. 「OK」をクリックします。

3. 先に作成したキーストアを選択し、「管理」をクリックします。
図10-12に、「証明書の管理」画面を示します。

図10-12 証明書の管理

4. 「鍵ペアの生成」をクリックして、秘密鍵/公開鍵のペアを生成します。
一般的に、署名および暗号化の両方のリクエストに対してこの鍵ペアを使用します。ただし、必要に応じて、署名および暗号化で別個の鍵ペアを作成できます。

図10-13に、「鍵ペアの生成」画面を示します。

図10-13 鍵ペアの生成

1. 鍵ペアにorakeyなどの別名を指定します。

2. 必要に応じて、他のサイト固有の情報を指定します。

3. 環境に適合する場合、デフォルトのRSAキー・サイズを受け入れることができます。Oracleでは、鍵の長さは1024ビット以上である必要があります。

4. 「OK」をクリックします。

5. 証明書はデフォルトでは、CN=CertGenCAB, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyState, C=USの発行元として生成されます。この発行者は、Oracle WSMストライプ内のキーストアには存在しません。この証明書を使用するには、次のいずれかのことを行う必要があります。

- systemストライプ内のcastoreキーストアからdemoca証明書をエクスポートし、信頼できる証明書としてOracle WSMストライプ内のkeystoreキーストアにインポートします。

- 生成した証明書をファイルにエクスポートし、CAを使用して署名したうえで、CAとその証明書をOracle WSMストライプ内のkeystoreキーストアにインポートします。

6. このキーストアと別名を使用するようにOracle WSMを構成します。
図10-14に示すように、W「WebLogicドメイン」メニューから、「セキュリティ」、「セキュリティ・プロバイダ構成」の順に選択します。

図10-14 「セキュリティ・プロバイダ構成」メニュー

図10-15に示すように、「セキュリティ・プロバイダ構成」ページが表示されます。

図10-15 「セキュリティ・プロバイダ構成」ページ

7. ページの「キー・ストア」セクションで「構成」をクリックします。
図10-16に示すように、「キー・ストアの構成」ページが表示されます。

図10-16 キーストアの構成

8. 「キーストア・タイプ」フィールドで、タイプとして「キーストア・サービス(KSS)」を選択します。
図10-17に示すように、KSSの構成ページが表示されます。

図10-17 KSSの「キーストアの構成」ページ

9. ページの「アイデンティティ証明書」セクションで、署名鍵と暗号化鍵の別名を次のように入力します。

- 署名鍵について、「キーの別名」フィールドに別名を入力します。ここで指定する値は、キーストアの値に一致する必要があります。たとえば、「orakey」と入力します。

- 暗号化鍵について、「暗号化の別名」フィールドに別名を入力します。ここで指定する値は、キーストアの値に一致する必要があります。たとえば、「orakey」と入力します。

署名鍵と暗号化鍵の別名は、鍵の格納と取得に使用されます。

注意:
「Oracle WSMキーストアの構成」の説明に従って、Oracle WSMキーストアの構成のためにFusion Middleware Controlを使用した場合、Oracle WSMにより資格証明ストア内に資格証明マップoracle.wsm.securityのエントリと、定義したすべての鍵のエントリが作成されます。ユーザー操作は不要です。
これは、KSSキーストアの場合も同様ですが、1つ大きな違いがあります。KSSキーストアでは、資格証明ストア内に作成されたkeystore.sig.csf.keyプロパティおよびkeystore.enc.csf.keyプロパティが別名を直接参照します(JKSの場合、これらのプロパティは署名鍵およびパスワードを参照するCSF鍵を参照します)。

10. 「OK」をクリックして変更内容を送信します。
ファイルベースのキーストア・プロバイダを使用した場合は、変更を有効にするためにサーバーを再起動する必要があります。データベースまたはLDAPベースのキーストア・サービス・プロバイダでは、再起動は必要ありません。

11. 必要に応じて、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』のFusion Middleware Controlを使用した証明書または信頼できる証明書のインポートに関する項の説明に従って、信頼できる証明書を取得します。

12. 「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定します。

SSLに関するキーストアの構成

「SSLの構成が必要なポリシー」または「双方向SSLの構成が必要なポリシー」にあげたポリシーを使用する場合、SSL用のキーストアを構成する必要があります。

SSLでは、ネットワークを介して接続される2つのアプリケーションが互いのアイデンティティを認証できるようにし、アプリケーション間で交換されるデータを暗号化することで、安全な接続を提供します。

認証によって、サーバーと、必要に応じてクライアントが、ネットワーク接続の反対側にあるアプリケーションのアイデンティティを検証できます。暗号化によって、ネットワーク上で伝送されるデータを意図した受信者のみが認識できるようになります。クライアント証明書(双方向SSL)は、ユーザーの認証に使用できます。

この項では、SSL経由でリクエストを送信するようにWebサービス・クライアントとWebLogic Server Webサービス・コンテナを設定する方法を説明します。

Webサービス・アプリケーションでSSLを使用するには、次の作業を実行する必要があります。

- WebLogic ServerのキーストアとSSL設定を構成します。

- Webサービス・クライアントのキーストアとSSL設定を構成します。

これらの手順については、次の項で説明します。

SSLの構成が必要なポリシー

SSLの構成が必要な事前定義済ポリシーは次のとおりです。

- oracle/wss_http_token_over_ssl_service_policy

- oracle/wss_http_token_over_ssl_client_policy

- oracle/wss_saml_token_bearer_over_ssl_server_policy

- oracle/wss_saml_token_bearer_over_ssl_client_policy

- oracle/wss_saml_token_over_ssl_service_policy

- oracle/wss_saml_token_over_ssl_client_policy

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_template

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_template

- oracle/wss_username_token_over_ssl_service_policy

- oracle/wss_username_token_over_ssl_client_policy

さらに、次のテンプレートを使用して、SSLを必要とする新しいポリシーを作成できます。

- oracle/wss_http_token_over_ssl_service_template

- oracle/wss_http_token_over_ssl_client_template

- oracle/wss_saml_token_bearer_over_ssl_service_template

- oracle/wss_saml_token_bearer_over_ssl_client_template

- oracle/wss_saml_token_over_ssl_service_template

- oracle/wss_saml_token_over_ssl_client_template

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_template

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_template

- oracle/wss_username_token_over_ssl_service_template

- oracle/wss_username_token_over_ssl_client_template

これらのアサーションおよびポリシーの詳細は、付録C「事前定義済アサーション・テンプレート」および付録B「事前定義済ポリシー」を参照してください。

双方向SSLの構成が必要なポリシー

双方向SSLの構成が必要な事前定義済ポリシーは次のとおりです。

- oracle/wss_saml_token_over_ssl_client_policy

- oracle/wss_saml_token_over_ssl_service_policy

- oracle/wss_username_token_over_ssl_client_policy(相互認証を選択した場合)

- oracle/wss_username_token_over_ssl_service_policy(相互認証を選択した場合は、)

- oracle/wss_http_token_over_ssl_client_policy(相互認証を選択した場合)

- oracle/wss_http_token_over_ssl_service_policy(相互認証を選択した場合)

さらに、次のテンプレートを使用して、双方向SSLを必要とする新しいポリシーを作成できます。

- oracle/wss_saml_token_over_ssl_client_template

- oracle/wss_saml_token_over_ssl_service_template

WebLogic Serverへのキーストアの構成方法

秘密鍵、デジタル証明書および信頼できる認証局(CA)証明書によって、WebLogic Server環境でアイデンティティと信頼が確立され、検証されます。

この項では、WebLogic Serverにキーストアを構成するために必要な手順の概要を説明します。詳細は、次の2つの資料を参照してください。

- 詳細は、Oracle WebLogic Server管理コンソールのヘルプ。特に「サーバー: 構成: キーストア」に関するトピック。

- Securing Oracle WebLogic Server。特にアイデンティティと信頼の構成に関する項。

WebLogic Serverには、デフォルトのアイデンティティ・キーストアDemoIdentity.jksとデフォルトの信頼キーストアDemoTrust.jksが構成されています。さらに、WebLogic Serverでは、JDKのcacertsファイル内の認証局を信頼しています。このデフォルトのキーストア構成は、テストや開発を目的とする場合に適しています。ただし、これらのキーストアは本番環境では使用しないでください。

サーバーのアイデンティティと信頼を構成する手順は次のとおりです。

1. keytoolユーティリティまたはEntrust社やVerisign社のような信頼できるベンダーから、デジタル証明書、秘密鍵および信頼できるCA証明書を取得し、キーストアに含めます。
証明書を取得するには、証明書リクエストを作成してCAに送信する必要があります。CAは、証明書リクエストを認証し、リクエストに基づいてデジタル証明書を作成します。

秘密鍵、デジタル証明書および信頼できる認証局(CA)には、Privacy Enhanced Mail(PEM)形式を使用することをお薦めします。

keytoolユーティリティを使用する場合、デフォルトの鍵のペア生成アルゴリズムはDigital Signature Algorithm(DSA)です。WebLogic ServerではDSAはサポートされていません。WebLogic Serverを使用する場合は、RSAなど、別の鍵のペア生成および署名アルゴリズムを指定してください。keytoolユーティリティの詳細は、「keytool - Key and Certificate Management Tool」(http://download.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html)の説明を参照してください。

WebLogic Serverキットで提供されるデジタル証明書、秘密鍵および信頼できるCA証明書も使用できます。デモ用のデジタル証明書、秘密鍵および信頼できるCA証明書は、開発環境でのみ使用してください。

2. アイデンティティ用に1つと信頼用に1つ、キーストアを作成します。キーストア形式にはJavaキーストア(JKS)を使用することをお薦めします。

3. 秘密鍵と信頼できるCAをキーストアにロードします。

4. コンソールの左側のペインで、「環境」を開き、「サーバー」を選択します。

5. アイデンティティと信頼キーストアを構成するサーバーの名前をクリックします。

6. 「構成」→「キーストア」を選択します。

7. 「キーストア」フィールドで、秘密鍵/デジタル証明書のペアおよび信頼できるCA証明書を格納および管理する方法を選択します。選択できるオプションは次のとおりです。

- カスタムIDとカスタム信頼: ユーザーが作成するアイデンティティと信頼キーストア。

- デモIDとデモ信頼: デモ用のアイデンティティと信頼キーストア。..\server\libディレクトリおよびJDK cacertsキーストアにあり、デフォルトで構成されています。開発目的にのみ使用してください。

- カスタムIDとJava標準信頼: ユーザーが作成するキーストアと、JAVA_HOME\jre\lib\securityディレクトリのcacertsファイルに定義されている信頼できるCA。

- カスタムIDとコマンドライン信頼: ユーザーが作成するアイデンティティ・キーストアと、信頼キーストアの場所を指定するコマンドライン引数。

8. 「ID」セクションで、アイデンティティ・キーストアの属性を定義します。

- カスタムIDキーストア: アイデンティティ・キーストアへの完全修飾パス。

- カスタムIDキーストアのタイプ: キーストアのタイプ。一般に、この属性にはJavaキーストア(JKS)を指定します。空白のままにすると、デフォルトでJKSに設定されます。

- カスタムIDキーストアのパスフレーズ: キーストアの読取りまたは書込み時に入力するパスワード。この属性は、キーストアのタイプに応じてオプションまたは必須になります。すべてのキーストアでは、キーストアへの書込みにパスフレーズが必要です。ただし、キーストアによっては読取りにパスフレーズが不要な場合もあります。WebLogic Serverは、キーストアからの読取りのみを行うため、このプロパティを定義するかどうかは、キーストアの要件に応じて決まります。

注意:
デモ・アイデンティティ・キーストアのパスフレーズは、DemoIdentityKeyStorePassPhraseです。

9. 「信頼」セクションで、信頼キーストアのプロパティを定義します。
キーストアとして「Java標準信頼キーストア」を選択する場合、キーストアの作成時に定義したパスワードを指定します。パスワードを確認します。

カスタム信頼を選択した場合、次の属性を定義します。

- カスタム信頼キーストア: 信頼キーストアへの完全修飾パス。

- カスタム信頼キーストアのタイプ: キーストアのタイプ。一般に、この属性にはJKSを指定します。空白のままにすると、デフォルトでJKSに設定されます。

- カスタム信頼キーストアのパスフレーズ: キーストアの読取りまたは書込み時に入力するパスワード。この属性は、キーストアのタイプに応じてオプションまたは必須になります。すべてのキーストアでは、キーストアへの書込みにパスフレーズが必要です。ただし、キーストアによっては読取りにパスフレーズが不要な場合もあります。WebLogic Serverは、キーストアからの読取りのみを行うため、このプロパティを定義するかどうかは、キーストアの要件に応じて決まります。

10. 変更内容は自動的にアクティブ化されます。

WebLogic ServerへのSSLの構成(一方向)

一方向SSLでは、サーバーはクライアントに証明書を提示する必要がありますが、クライアントがサーバーに証明書を提示する必要はありません。

「SSLに関するキーストアの構成」の説明に従ってWebLogic Serverインスタンスのアイデンティティと信頼キーストアを構成したら、そのSSL属性を構成します。これらの属性では、「構成: キーストア」ページで指定したキーストア内のアイデンティティ鍵と証明書の場所を示します。この情報を指定するには、「構成: SSL」ページを使用します。

この項では、WebLogic ServerにSSLを構成するために必要な手順の概要を説明します。詳細は、『Securing Oracle WebLogic Server』を参照してください。

SSLを構成する手順

1. WebLogic Server管理コンソールの左側のペインで、「環境」を開き、「サーバー」を選択します。

2. SSLを構成するサーバーの名前をクリックします。

3. 「構成」→「SSL」ページを選択し、WebLogic Serverのアイデンティティ(証明書と秘密鍵)と信頼(信頼できるCA)の場所を選択します。

4. 秘密鍵の別名とパスワードのSSL属性を設定します。

5. ページの下部で、「詳細」をクリックします。

6. 「ホスト名の検証」を「なし」に設定します。

7. WebLogic Serverが内部サーバーとエクスポート可能クライアントとの間で何回エクスポート可能鍵を使用したら新しい鍵を生成する必要があるか、使用できる回数を指定します。新しい鍵を生成するまでに鍵を使用する回数が少ないほど、WebLogic Serverのセキュリティが強化されます。

8. 「相互クライアント証明書の動作」コントロールを「クライアント証明書を要求しない」に設定します。

9. インバウンドとアウトバウンドのSSL証明書検証方法を指定します。選択できるオプションは次のとおりです。

- 組込みSSLの検証のみ: 組込みの信頼できるCAベースの検証を使用します。これがデフォルトです。

- 組込みSSLの検証および証明書パス検証プロバイダ: 組込みの信頼できるCAベースの検証を使用し、追加の検証を実行するために構成済のCertPathValidatorプロバイダを使用します。

WebLogic ServerへのSSLの構成(双方向)

双方向SSLでは、サーバーはクライアントに、またクライアントはサーバーに証明書を提示します。SSLハンドシェイクを完了する前に、クライアントに有効で信頼できる証明の送信を要求するようにWebLogic Serverを構成できます。

「SSLに関するキーストアの構成」の説明に従って、WebLogic Serverインスタンスのアイデンティティと信頼キーストアを構成した後、使用するポリシーまたはテンプレートで必要な場合は、「双方向SSLの構成が必要なポリシー」の説明に従って双方向SSL属性を構成できます。

この項では、WebLogic ServerにSSLを構成するために必要な手順の概要を説明します。詳細は、『Securing Oracle WebLogic Server』を参照してください。

双方向SSLの構成手順は次のとおりです。

1. WebLogic Server管理コンソールの左側のペインで、「環境」を開き、「サーバー」を選択します。

2. SSLを構成するサーバーの名前をクリックします。

3. 「構成」→「SSL」ページを選択し、WebLogic Serverのアイデンティティ(証明書と秘密鍵)と信頼(信頼できるCA)の場所を選択します。

4. 秘密鍵の別名とパスワードのSSL属性を設定します。

5. ページの下部で、「詳細」をクリックします。

6. 「ホスト名の検証」を「なし」に設定します。

7. WebLogic Serverが内部サーバーとエクスポート可能クライアントとの間で何回エクスポート可能鍵を使用したら新しい鍵を生成する必要があるか、使用できる回数を指定します。新しい鍵を生成するまでに鍵を使用する回数が少ないほど、WebLogic Serverのセキュリティが強化されます。

8. 必要に応じて、「サーバーの証明書を使用」コントロールを設定します。このコントロールを設定すると、WebLogic ServerでホストされているWebサービス・クライアントが、HTTPSを介して接続を開始するときにサーバー証明書/鍵をクライアント・アイデンティティとして使用する必要があるかどうかが決まります。

9. 「相互クライアント証明書の動作」コントロールを「クライアント証明書を要求(強制する)」に設定します。

10. インバウンドとアウトバウンドのSSL証明書検証方法を指定します。選択できるオプションは次のとおりです。

- 組込みSSLの検証のみ: 組込みの信頼できるCAベースの検証を使用します。これがデフォルトです。

- 組込みSSLの検証および証明書パス検証プロバイダ: 組込みの信頼できるCAベースの検証を使用し、追加の検証を実行するために構成済のCertPathValidatorプロバイダを使用します。

Webサービス・クライアントに関するSSLの構成

中核となるWebLogic Serverのセキュリティ・サブシステムでは、デフォルトのキーストアに格納されている秘密鍵とX.509証明書のペアをSSLに使用します。

WebLogic Serverでリクエストのデジタル署名に使用されるX.509証明書を、Webサービス・クライアントが信頼できるようにする必要があります。次のいずれかを実行します。

1. WebLogic Serverが、信頼できる認証局から発行された、クライアントが自動的に信頼するデジタル証明書を取得するようにします。

2. WebLogic Serverが信頼する個々の証明書をすべてリストした証明書レジストリを作成し、クライアントが登録されたこれらの証明書を信頼するようにします。

Webサービス・クライアントに関するSSLの構成手順は次のとおりです。

1. クライアント・アプリケーションで使用するキーストアを作成します。アプリケーション・ユーザーごとに1つのクライアント・キーストアを作成することをお薦めします。
この手順の実行には、keytoolユーティリティを使用できます。開発目的の場合、最初はkeytoolユーティリティを使用するのが最も簡単な方法です。

2. 秘密鍵とデジタル証明書のペアを作成し、クライアント・キーストアにロードします。
証明書の鍵が暗号化とデジタル署名の両方に使用できることを確認します。Oracleでは、鍵の長さは1024ビット以上である必要があります。

3. クライアントのJVMに次のプロパティが設定されていることを確認します。

- javax.net.ssl.trustStore -- 信頼ストアが含まれるファイルの名前。

- javax.net.ssl.trustStoreType -- デフォルトのTrustManagerで使用するキーストア・オブジェクトのタイプ。

- javax.net.ssl.trustStorePassword -- デフォルトのTrustManagerで使用するキーストア・オブジェクトのパスワード。

Webサービス・クライアントに関する双方向SSLの構成

注意:
SOAアプリケーションが双方向SSLでのWebサービス・クライアントである場合の特定の構成手順については、Oracle Fusion Middleware管理者ガイド for Oracle SOA SuiteおよびOracle Business Process Management Suiteの双方向SSL通信のSOAコンポジット・アプリケーションの構成に関する項を参照してください。

クライアントでリクエストのデジタル署名に使用されるX.509証明書をWebLogic Serverが検証でき、WebLogic Serverがその証明書をクライアントへの応答の暗号化に使用できるようにする必要があります。次のいずれかを実行します。

1. クライアント・アプリケーションが、信頼できる認証局から発行された、WebLogic Serverが自動的に信頼するデジタル証明書を取得するようにします。

2. WebLogic Serverが信頼する個々の証明書をすべてリストした証明書レジストリを作成し、クライアントが登録されたこれらの証明書のいずれかを使用するようにします。

Webサービス・クライアントに関するSSLの構成手順は次のとおりです。

1. クライアント・アプリケーションで使用するキーストアを作成します。アプリケーション・ユーザーごとに1つのクライアント・キーストアを作成することをお薦めします。
この手順の実行には、keytoolユーティリティを使用できます。開発目的の場合、最初はkeytoolユーティリティを使用するのが最も簡単な方法です。

2. 秘密鍵とデジタル証明書のペアを作成し、クライアント・キーストアにロードします。
証明書の鍵が暗号化とデジタル署名の両方に使用できることを確認します。Oracleでは、鍵の長さは1024ビット以上である必要があります。

3. クライアントのJVMに次のプロパティが設定されていることを確認します。

- javax.net.ssl.trustStore -- 信頼ストアが含まれるファイルの名前。

- javax.net.ssl.trustStoreType -- デフォルトのTrustManagerで使用するキーストア・オブジェクトのタイプ。

- javax.net.ssl.trustStorePassword -- デフォルトのTrustManagerで使用するキーストア・オブジェクトのパスワード。

- javax.net.ssl.keyStore -- キーストア・オブジェクトが含まれるファイルの名前。

- javax.net.ssl.keyStoreType -- キーストア・オブジェクトのタイプ。

- javax.net.ssl.keyStorePassword -- キーストア・オブジェクトのパスワード。

クラスタ上のJKSキーストア・ファイルの同期の構成

新規インストールでJKSキーストアを構成するか、アップグレード・シナリオでJKSを使用してJKSキーストア・ファイルの同期をクラスタ上でサーバーを再起動せずに行うには、次の手順を実行します。

1. wsm-client-mbeans.xmlファイルをテキスト・エディタで開きます。

2. 次のプロパティをwsm-client-mbeans.xmlに手動で追加します。

<config-file path="../default-keystore.jks"/>

注意:
default-keystore.jksは他の名前である場合があります。このため、ファイル・パスを指定する必要があります。

wsm-client-mbeans.xmlファイル内のJKS MBeanは次のような内容です。

<?xml version = '1.0' encoding = 'UTF-8' standalone='yes'?>
<application-mbeans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/11/application-mbeans-11_1.xsd" schema-major-version="11" schema-minor-version="1">
<config-mbeans>
<jmx-config-mbean
objectname="oracle.wsm:type=security,name=JKSKeystoreMBean"
class="oracle.wsm.security.store.jks.mgmt.KeystoreMBeanImpl"

management-interface="oracle.wsm.security.store.jks.mgmt.KeystoreMBean">
<description>MBean to access and manage JKS
Keystore</description>
<config-file path="../default-keystore.jks"/>
</jmx-config-mbean>
</config-mbeans>
</application-mbeans>

3. wsm-client-mbeans.xmlファイルを保存します。

4. 構成ファイルのパスを追加したら、サーバーを再起動します。

Oracle HTTP ServerでのSSLの構成

HTTPSプロトコルは、クライアントとサーバー間で保護された接続を確立するためにSecure Sockets Layer (SSL)と呼ばれる業界標準のプロトコルを使用します。クライアントとWebサービス間で通信するための通信プロトコルの1つとして、Oracle HTTP Serverによって提供されるHTTPS/SSLサポートを使用することもできます。この項では、Oracle WSMポリシーを使用して、SSL経由でリクエストを送信するようにWebサービス・クライアントおよびWebサービスを設定する方法を説明します。Oracle HTTP Serverは、クライアントとOracle WebLogic Server間を仲介するWebプロキシとして構成されます。Oracle HTTP ServerでSSLが有効であり、またクライアントとOracle HTTP Server間でSSLトランスポートが有効です。Oracle HTTP ServerとWebLogic Server間の通信は非SSLのままです。ここでは、一方向SSLおよび双方向SSLを必要とするポリシーを構成する方法について説明します。

詳細は、次の項目を参照してください。

- 『Oracle Fusion Middleware管理者ガイド』のOracle Fusion MiddlewareでのSSL構成に関する項

- Oracle WebLogic Serverの保護のSSLの構成

- Oracle WebLogic Server管理コンソール・ヘルプのSSLの設定に関する項

- 『Oracle Fusion Middleware Oracle HTTP Server管理者ガイド』のSecure Sockets Layerの構成に関する項

一方向SSL

一方向SSL構成を必要とするOracle WSMポリシーの詳細は、「SSLの構成が必要なポリシー」を参照してください。

一方向SSLを使用するには、次の作業を実行する必要があります。

1. 次の手順に従って、Oracle HTTP Serverを構成します。

1. 例10-1に示すように、ファイルORACLE_INSTANCE/config/OHS/<ohs_name>/ssl.conf,で、Oracle HTTP ServerをWebプロキシとして構成し、アクセスするURLのリストを指定します。

例10-1 ssl.confでのURLの指定

# added properties for configuring OHS as webproxy
<IfModule weblogic_module>
WebLogicHost <host>
WebLogicPort <port>
SecureProxy Off
WlProxySSL On
Debug ALL
WlLogFile /tmp/weblogic.log
#the location attributes list the urls you want to access via OHS
<Location
/myWlsService>
SetHandler weblogic-handler
WebLogicHost <host>
WeblogicPort <port>
</Location>

2. 同じファイルで、クライアント証明書情報がWebLogic Serverに送信されるように、仮想ホスト構成で次のプロパティを設定します。
SSLVerifyClient optional

3. デフォルトでは、Oracle HTTP ServerでSSLは有効です。デフォルトのhttpsポートは4443です。このポートの構成の詳細は、『Oracle Fusion Middleware管理者ガイド』のOracle Fusion MiddlewareでのSSL構成に関する項を参照してください。

4. Oracle HTTP Serverを再起動します。
詳細は、『Oracle Fusion Middleware管理者ガイド』のOracle Fusion MiddlewareでのSSL構成に関する項を参照してください。

2. 『Oracle Fusion Middleware管理者ガイド』のキーストア、ウォレットおよび証明書の管理に関する項の説明に従ってウォレットを作成し、デフォルトのウォレットを置換します。デフォルトのウォレットは、ORACLE_INSTANCE/config/OHS/<ohs_name/keystores/defaultディレクトリ内にあります。例10-2に、ウォレットを作成するためのサンプル・コマンドを示します。

例10-2 一方向SSLのためのサンプル・コマンド

./orapki wallet create -wallet <wallet_location> -pwd password -auto_login
./orapki wallet display -wallet <wallet_location> -pwd password
./orapki cert display -cert <wallet_location>/ohs.crt

./orapki wallet add -wallet <wallet_location> -keysize 512 -dn "CN=<host_name>,OU=st,O=Oracle WSM,L=N,ST=delhi,C=IN"
-self_signed -validity 700 -serial_num 20 -cert <wallet_location>/ohs.crt -user_cert -pwd password

./orapki wallet display -wallet <wallet_location> -pwd password

JAVA_HOME/bin/keytool -import -trustcacerts -file ohs.crt -alias sslcert -keystore client_keystore.jks -storepass password

3. Oracle WebLogic管理コンソールで、次の手順を実行します。

1. 「環境」タブの「サーバー」ページに移動します。

2. 「AdminServer」をクリックし、「構成」で「一般」を選択します。

3. 「詳細」セクションで、「WebLogicプラグインの有効化」および「クライアント証明書プロキシの有効化」を選択していることを確認します。

4. 変更を保存します。

5. SOAサーバーに同じパラメータを設定します。
詳細は、Oracle WebLogic Server管理コンソール・ヘルプのサーバー: 構成: 要約に関する項を参照してください。

一方向モード(サーバー認証モード)を使用するようにクライアントを変更するために、JDeveloperを使用してWebサービスからJSEクライアントを作成します。例10-3に従って、パラメータおよびプロパティを変更します。

例10-3 SSLを使用するJSEクライアント

public static void main(String [] args)
{
class1Service = new Class1Service();
SecurityPolicyFeature[] securityFeatures =
new SecurityPolicyFeature[] { new SecurityPolicyFeature("oracle/wss_
saml_token_over_ssl_client_policy") };
Class1 class1 = class1Service.getClass1Port(securityFeatures);
((BindingProvider) class1).getRequestContext().put(BindingProvider.ENDPOINT_
ADDRESS_PROPERTY,
"https://<host>:4443/myWlsService/Class1Port");

((BindingProvider) class1).getRequestContext().put(BindingProvider.USERNAME_
PROPERTY, "weblogic");
System.setProperty("javax.net.ssl.trustStore","D:\\Oracle WSM_
QA\\11g\\PS2\\OHS\\wallet\\client_keystore.jks");
System.setProperty("javax.net.ssl.trustStorePassword","password");
System.setProperty("javax.net.ssl.trustStoreType","JKS");

System.setProperty("weblogic.security.SSL.ignoreHostnameVerification" ,
"true");
System.setProperty("java.protocol.handler.pkgs",
"com.sun.net.ssl.internal.www.protocol");
System.setProperty("javax.net.debug","all");

System.out.println("Call to the SSL service...");
String response1 = class1.sayHello("test");
System.out.println("Response = " + response1);
}

双方向SSL

双方向SSL構成を必要とするOracle WSMポリシーの詳細は、「双方向SSLの構成が必要なポリシー」を参照してください。

双方向SSLを使用するには、次の作業を実行する必要があります。

1. 次の手順に従って、Oracle HTTP Serverを構成します。

1. 例10-4に示すように、ファイルORACLE_INSTANCE/config/OHS/<ohs_name>/ssl.conf,で、Oracle HTTP ServerをWebプロキシとして構成し、アクセスするURLのリストを指定します。

例10-4 ssl.confでのURLの指定

# added properties for configuring OHS as webproxy
<IfModule weblogic_module>
WebLogicHost <host>
WebLogicPort <port>
SecureProxy Off
WlProxySSL On
Debug ALL
WlLogFile /tmp/weblogic.log
#the location attributes list the urls you want to access via OHS
<Location /myWlsService>
SetHandler weblogic-handler
WebLogicHost <host>
WeblogicPort <port>
</Location>

2. 同じファイルで、クライアント証明書情報がWebLogic Serverに送信されるように、仮想ホスト構成で次のプロパティを設定します。
SSLVerifyClient optional

SSLOptions +StdEnvVars +ExportCertData

SSLOptions +ExportCertDataは、証明書に関連する情報をWebLogic Serverに送信するようにするmod_sslディレクティブです。SSLOptions +StdEnvVars +ExportCertDataは、SSLに関連する情報を送信するようにします。

3. デフォルトでは、Oracle HTTP ServerでSSLは有効です。デフォルトのhttpsポートは4443です。このポートの構成の詳細は、『Oracle Fusion Middleware管理者ガイド』のOracle Fusion MiddlewareでのSSL構成に関する項を参照してください。

4. Oracle HTTP Serverを再起動します。
詳細は、『Oracle Fusion Middleware管理者ガイド』のOracle Fusion MiddlewareでのSSL構成に関する項を参照してください。

2. 『Oracle Fusion Middleware管理者ガイド』のキーストア、ウォレットおよび証明書の管理に関する項の説明に従ってウォレットを作成し、デフォルトのウォレットを置換します。デフォルトのウォレットは、ORACLE_INSTANCE/config/OHS/<ohs_name/keystores/defaultディレクトリ内にあります。例10-5に、サンプル・コマンドを示します。

例10-5 双方向SSLのためのサンプル・コマンド

JAVA_HOME/bin/keytool -genkey -alias twowayssl -keyalg RSA
-keystore twowaykeystore.jks -storepass password -validity 700
./orapki wallet add -wallet <wallet_location> -cert
<wallet_location>/twowayssl.crt -trusted_cert -pwd password

3. Oracle WebLogic管理コンソールで、次の手順を実行します。

1. 「環境」タブの「サーバー」ページに移動します。

2. 「AdminServer」をクリックし、「構成」で「一般」を選択します。

3. 「詳細」セクションで、「WebLogicプラグインの有効化」および「クライアント証明書プロキシの有効化」を選択していることを確認します。

4. 変更を保存します。

5. SOAサーバーに同じパラメータを設定します。
詳細は、Oracle WebLogic Server管理コンソール・ヘルプのサーバー: 構成: 要約に関する項を参照してください。

双方向(相互認証モード)SSLを使用するようにクライアントを変更するために、JDeveloperを使用してWebサービスからJSEクライアントを作成します。例10-6に従って、パラメータおよびプロパティを変更します。

例10-6 SSLを使用するJSEクライアント

public static void main(String [] args)
{
class1Service = new Class1Service();
SecurityPolicyFeature[] securityFeatures =
new SecurityPolicyFeature[] { new SecurityPolicyFeature("oracle/wss_
username_token_over_ssl_client_policy") };
Class1 class1 = class1Service.getClass1Port(securityFeatures);
((BindingProvider) class1).getRequestContext().put(BindingProvider.ENDPOINT_
ADDRESS_PROPERTY,
"https://<host>:4443/myWlsService/Class1Port");

((BindingProvider) class1).getRequestContext().put(BindingProvider.USERNAME_
PROPERTY, "weblogic");
((BindingProvider) class1).getRequestContext().put(BindingProvider.PASSWORD_
PROPERTY, "password");
System.setProperty("javax.net.ssl.trustStore","D:\\Oracle WSM_
QA\\11g\\PS2\\OHS\\wallet\\twowaykeystore.jks");
System.setProperty("javax.net.ssl.trustStorePassword","password");
System.setProperty("javax.net.ssl.trustStoreType","JKS");
System.setProperty("javax.net.ssl.keyStore","D:\\Oracle WSM_QA\\11g\\PS2\\OHS\\wallet\\twowaykeystore.jks");
System.setProperty("javax.net.ssl.keyStorePassword","password");
System.setProperty("javax.net.ssl.keyStoreType","JKS");

System.setProperty("weblogic.security.SSL.ignoreHostnameVerification" ,
"true");
System.setProperty("java.protocol.handler.pkgs",
"com.sun.net.ssl.internal.www.protocol");
System.setProperty("javax.net.debug","all");

System.out.println("Call to the SSL service...");
String response1 = class1.sayHello("test");
System.out.println("Response = " + response1);
}

ハードウェア統合

この項では、次のハードウェア関連項目について設定情報を示します。

- Oracle WSMでのハードウェア・セキュリティ・モジュールの使用

- Oracle SPARC T4暗号化アクセラレーションのためのOracle WSMの構成

Oracle WSMでのハードウェア・セキュリティ・モジュールの使用

ハードウェア・セキュリティ・モジュール(HSM)は、Oracle Advanced Securityで動作することが認定されています。これらのモジュールでは、鍵を安全に格納し、暗号処理の負荷を軽減できます。

鍵保存のためのSafeNet Luna SAおよびOracle WSMの使用

SafeNet Luna SAは、ネットワーク接続されたアプリケーションのための暗号化処理およびハードウェア鍵管理機能を備えるHSMです。Luna SAは、様々なセキュリティ・アプリケーションで、非常に重要な暗号化鍵を保護するように設計されています。

Oracle WSMとともにLuna SAを使用する場合、鍵について次のような利点があります。

- ネットワークの共有性

- ハードウェアにより、鍵の最も高い安全性が常に維持されます

- FIPSの検証

注意:
Oracle Advanced Securityで使用する認定済のハードウェアおよびソフトウェアを入手するには、SafeNetの代理店にお問い合せください。

Oracle Web Services Manager (Oracle WSM)では、デフォルトで鍵の保存にJavaキーストア(JKS)が使用されます。暗号化操作のためにOracle WSMによって必要とされる鍵および証明書は、キーストア・ファイルからフェッチされます。ネットワーク内でLuna SAが使用可能である場合、鍵の保存目的および暗号化操作のためにOracle WSMによりLuna SAを活用できます。

この項の項目は次のとおりです。

- Luna SA HSMクライアントのインストールおよび構成について

- Oracle WSMによって使用されるJREの構成

- Luna SAへのログオン

- JKSからLuna SAへの鍵および証明書のコピー

- Luna SAを使用するためのOracle WSMの構成

Luna SA HSMクライアントのインストールおよび構成について

Oracle WSMの実行中のインスタンスが存在するホストにLuna SA HSMクライアントをインストールする必要があります。これによって、Luna SA HSMクライアントは、使用可能なLuna SA HSMネットワークと通信します。ただし、Luna SAクライアントのインストール、Luna SAネットワークのインストールおよび設定については、このドキュメントの範囲外であり、ここでは取り上げません。こうした手順は、Luna SAドキュメント(http://www.safenet-inc.com/Products/Detail.aspx?id=2147483853&terms=search)を参照してください。

Luna SA HSMクライアントをインストールする前に、次のチェックリストを確認してください。

- ネットワークにはすでにLuna SAがインストールされており、使用可能です。

- そして、ルートまたはインストール権限を持つユーザーとしてログインしています。

- Luna SAクライアント・インストールCDまたはソフトウェア・イメージが利用可能です。

- 管理者パスワードおよびパーティション・パスワードを含めて、Luna SAに必要なすべてのパスワードが手元にあります。

注意:
ハードウェア・セキュリティ・モジュールおよび必要なライブラリを入手するには、SafeNetの代理店にお問い合せください。
これらの作業は、Oracle WSMでLuna SAハードウェア・セキュリティ・モジュールを使用する前に実施する必要があります。

Oracle WSMによって使用されるJREの構成

Luna SAクライアントをインストールした後、Oracle WSM設定によって使用されるJREを構成する必要があります。

1. /usr/lunasa/jsp/libディレクトリから$JAVA_HOME/jre/lib/extディレクトリに次のJARファイルをコピーします。

- LunaJCASP.jar

- LunaJCESP.jar

2. libLunaAPI.soファイルをjava.library.pathにコピーします。

3. $JAVA_HOME/jre/lib/security/java.securityファイルを編集して、2つのLunaプロバイダを含めます。
security.providersリストの最後に、次の2つのLunaプロバイダを追加します。

security.provider.n=com.chrysalisits.crypto.LunaJCAProvider
security.provider.n+1=com.chrysalisits.cryptox.LunaJCEProvider

各項目は次のとおりです。

nは、特定のプロバイダをリクエストしない場合に、リクエストしたアルゴリズムについてプロバイダを検索する順序を決定するプリファレンス順序を指定します。この順序は1が基準になります。1が最も優先され、次に2が優先されます。以降も同様です。

Luna SAへのログオン

Oracle WSMでLuna SAを使用するには、Luna SAサーバーにログオンする必要があります。これは、クライアント・マシン上でLunaログイン・セッションを作成する1回かぎりのプロセスです。クライアント・マシンまたはサーバー・マシンが再起動されるか、またはユーザーがLunaセッションを明示的にログアウトするまで、このセッションはアクティブなままです。

ログインするにはsaloginユーティリィティを使用する必要があります。saloginユーティリィティは、特定のアプリケーションのためにクライアントとHSMパーティション間の接続を確立します。引数としてアプリケーションIDを取得します。このアプリケーションIDは、上位IDおよび下位IDの2つの部分から構成されます:。

saloginユーティリィティを起動する前に、アプリケーションIDを登録するエントリをChrystoki.confファイルに追加する必要があります。Chrystoki.confファイルは通常、/etc/ディレクトリにあります。これも1回かぎりのプロセスです。

1. /etc/Chrystoki.confファイルを編集し、ファイルの末尾にアプリケーションIDを追加します。たとえば、次のようにします。

Misc = { AppIdMajor=<major id>; AppIdMinor=<minor id>;  }

2. 次のように入力してLuna SAサーバーにログインします。

/salogin -o -s <partition number> -i <AppIdMajor>:<AppIdMinor> -v -p <partition_password>

これによって、指定したアプリケーションIDのセッションが開きます。saloginは、/usr/lunasa/binディレクトリにあります。

3. Luna SAサーバーからログアウトするには、次のように入力します。

salogin -c -s <slot number> -i <AppIdMajor>:<AppIdMinor>

JKSからLuna SAへの鍵および証明書のコピー

鍵および証明書が現在はJKSにある場合、すべての鍵および証明書をLunaSAに移動する必要があります。LunaSAで提供されているcmuスクリプトを使用して鍵および証明書をインポートできます。

- cmu importKeyコマンドは、ファイルからRSA|DSA秘密鍵をHSMにインポートします(PKCS12(RSA)、PKCS8(RSA/DSA)またはPKCS1(RSA)をサポートします)。

- cmu importコマンドは、ファイルからX.509証明書をHSMにインポートします。

Luna SAを使用するためのOracle WSMの構成

Luna SAを使用するようにOracle WSMを構成する一環として、キーストア・タイプをデフォルトのJavaキーストア(JKS)値からLunaに変更する必要があります。

キーストアのタイプを構成するには、次の手順に従います。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、キーストアの構成が必要なドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「セキュリティ」→「セキュリティ・プロバイダ構成」をクリックします。

3. ページの下部近くにある「キーストア」コントロールのプラス記号(+)をクリックして開き、「構成」をクリックします。
図10-18に示すように、Web Services Managerの「キーストアの構成」ページが表示されます。

図10-18 Web Services Managerの「キーストアの構成」ページ

4. 「キーストア・タイプ」ドロップダウンで、「ハードウェア・セキュリティ・モジュール(HSM)」を選択します。

5. 図10-19に示すように、「キーストアの構成」ページがリフレッシュした後、「HSMプロバイダ・タイプ」フィールドに「Luna」と入力します。

図10-19 Web Services Managerの「キーストアの構成」ページ(リフレッシュ後)

6. 「キーの別名」フィールドおよび「暗号化の別名」フィールドに、署名鍵および暗号化鍵の別名を入力します(Luna SAではキーストアおよび秘密鍵にアクセスするためにパスワードを必要としないことに注意してください)。
HSMでは、鍵の別名のみが必要であるため、すべての*csf.key(keystore.sig.csf.keyおよびkeystore.enc.csf.key)プロパティには資格証明ストアの鍵ではなく別名を直接指定する必要があります。これは、*csf.keyプロパティの構成オーバーライドにも該当します。

7. 「OK」をクリックして変更内容を送信します。

8. Fusion Middleware Controlを再起動します。

Oracle SPARC T4暗号化アクセラレーションのためのOracle WSMの構成

Oracle WSMでは、Oracle SPARC T4プロセッサ・ベースのサーバーを使用できます。これによって、計算、セキュリティおよびI/Oが単一チップ上に統合され、サード・パーティ製のセキュリティ・ハードウェアが不要になります。Oracle SPARC T4ベースのサーバーにOracle WSMをデプロイすることで、T4プロセッサ・ベースの暗号化機能が透過に活用されます。これは、トランスポート・レイヤーおよびメッセージ・レイヤーの保護ポリシーによって強制された場合など、計算集中型の暗号化操作に依存するシナリオで高パフォーマンスのセキュリティを提供します。

ここでは、Oracle SPARC T4プロセッサ・ベースのサーバーの暗号化アクセラレーション機能を活用するためにOracle WSMを構成する方法について説明します。

この項は、Oracle Solaris 10 8/11以降を実行するOracle SPARC T4プロセッサ・ベースのサーバーにのみ該当します。

次の項目について説明します。

- 理解しておく必要がある用語

- Oracle SPARC T4 ハードウェア支援暗号化アクセラレーションの概要

- 暗号化アクセラレーションのためのトランスポート・レベル・セキュリティの構成

- 暗号化アクセラレーションのためのメッセージ・レベル・セキュリティの構成

- 追加資料

理解しておく必要がある用語

ここでは、まず次の用語について理解しておく必要があります。これらの用語の詳細は、「追加資料」に記載されているホワイトペーパーを参照してください。

- PKCS#11トークン — PKCS#11 APIを実装するすべてのハードウェアおよびソフトウェアのトークンを一般的に示すトークン。PKCS#11 APIは、ハードウェア暗号化アクセラレータ、暗号化トークン(たとえばSCA-6000など)およびスマートカードを統合するためのRSA標準です。
ソフトウェア・ベースのPKCS#11トークンは、完全にソフトウェアで実装されたPKCS#11トークンです(たとえばSolaris PKCS11 Softtokenなど)。

- Solaris暗号化フレームワーク — Solaris暗号化フレームワーク(SCF)ライブラリは、 Oracle Sun Crypto Accelerator 6000 PCIeカード(SCA-6000)およびサード・パーティ製HSMを含めて、Oracle T-seriesプロセッサおよびハードウェア・セキュリティ・モジュール(HSM)によって提供されるハードウェア支援暗号化アクセラレーションに対するアプリケーション・アクセスを提供するうえで重要な役割を果たします。SCFは、PKCS#11標準インタフェースに基づいており、暗号化操作を実行するためにカーネル・レベルおよびユーザー・レベルのコンシューマに一連の暗号化サービスを提供します。

Oracle SPARC T4 ハードウェア支援暗号化アクセラレーションの概要

Oracle SPARC T4プロセッサは、Oracle SPARC T-seriesプロセッサ・ファミリに属し、Chip Level Multi-Threading (CMT)を可能にするために、プロセッサ・コア・レベルのマルチプロセッシングと、効率的な命令パイプラインを備える各コア内部でのハードウェア・マルチスレッディングを組み合せています。これらのプロセッサは、オンチップ/オンコア暗号化アクセラレーション、10ギガビット・イーサネット・ネットワーク、ハードウェア対応仮想化機能などの専用機能を組み込むユニークな「システム・オン・チップ」設計原理を示すものです。Oracle SPARC T4プロセッサの各コアには、コアと同クロック速度で暗号化操作処理を実行するStream Processing Unit (SPU)が搭載されています。このSPUは、プロセッサの10 GbEポート上でワイヤ速度の暗号化および復号化を実現するように設計されています。

Oracle SPARC T4ベースのサーバーでOracle WSMを構成およびデプロイすることにより、SSLおよびWS-Securityメカニズムを使用して、Webサービスのセキュリティ・トランザクションの一環として、T4オンコア暗号化命令を活用して計算集中型の暗号化操作を実行することにより、高いパフォーマンスが得られます。たとえば、すべてのメッセージ保護ポリシーは計算集中型です。

Oracle WSMは、次のシナリオでSPARC T4プロセッサ・ベースの暗号化アクセラレーションを使用します。

- トランスポート・レベルのセキュリティ(「暗号化アクセラレーションのためのトランスポート・レベル・セキュリティの構成」を参照してください)
Oracle WSMおよびWebLogic Serverは、SSLv3/TLSv1ベースのセキュアな通信をサポートするための基盤としてJava Cryptographic Extensions (JCE)プロバイダに依存します。Oracle Solaris/SPARCベースのデプロイメントでは、Javaランタイム環境にSun JCEプロバイダがバンドルされています。

Java PKCS#11インタフェースは、SPARC T4プロセッサのオンコア暗号化命令を使用することにより、SSL/TLSプロトコルの計算集中型の暗号化ワークロード(たとえばRSA、AES、ECCなど)を軽減し、高速化します。

- メッセージ・レベルのセキュリティ(「暗号化アクセラレーションのためのメッセージ・レベル・セキュリティの構成」を参照してください)
メッセージ・レベル・セキュリティは、WS-Security、WS-SecurityPolicy、WS-TrustなどのWebサービス・セキュリティ標準をサポートする暗号化操作を基盤として構築されます。

特に、Webサービス・セキュリティは、XML暗号化、XMLデジタル署名および関連する暗号化操作をサポートするために、公開鍵暗号化、デジタル署名(RSA、DSA、ECCなど)、バルク暗号化(AES、3DES、DESなど)およびメッセージ・ダイジェスト(SHA-1、SHA-2、MD5など)の機能を利用します。

Oracle WSMでは、SPARC T4プロセッサのオンコア暗号化命令に(SCFを通じて)暗号化操作を委任するための専用PKCS#11インタフェースを実装しています。

暗号化アクセラレーションのためのトランスポート・レベル・セキュリティの構成

トランスポート・レベルのセキュリティのために暗号化アクセラレーションを構成するには、次のタスクを実行します。

1. Oracle WebLogic Server管理コンソールのヘルプのキーストアの構成に関する項の説明に従って、WebLogic Serverキーストアを構成します。
「カスタム・アイデンティティとJava標準信頼」および「Javaキーストア(JKS)」を選択します。

2. WebLogic Serverに対してJSSE SSLを有効にします。
JSSEベースのSSLを使用することによって、Solaris SPARC上でJavaランタイム環境により事前構成済のSunPKCS11プロバイダ実装が自動的に活用されます。

手順の詳細は、「Oracle WebLogic Serverの保護」の「JSSEベースのSSL実装の有効化および無効化」を参照してください。

3. SunPKCS11プロバイダの使用を確認します。
SunPKCS11プロバイダは、SCFおよびその公開暗号化プロバイダによって提供される基盤PKCS#11実装と統合するJavaベースのPKCS#11実装です。

Solaris上の一般的なWebLogic Serverインストールでは、SunPKCS11プロバイダを利用するためのJavaランタイム環境が構成済です。

したがって、$JAVA_HOME/jre/lib/security/java.security propertiesプロパティ・ファイルで最初のプロバイダとしてSunPKCS11プロバイダがリストに含まれることを確認してください。

security.provider.1=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/sunpkcs11-solaris.cfg

例10-7に、デフォルトの$JAVA_HOME/jre/lib/security/java.securityファイルの関連部分を示します。

例10-7 java.securityファイルの抜粋

#
# List of providers and their preference orders (see above):
#
security.provider.1=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/sunpkcs11-solaris.cfg
security.provider.2=sun.security.provider.Sun
security.provider.3=sun.security.rsa.SunRsaSign
security.provider.4=com.sun.net.ssl.internal.ssl.Provider
security.provider.5=com.sun.crypto.provider.SunJCE
security.provider.6=sun.security.jgss.SunProvider
security.provider.7=com.sun.security.sasl.Provider
security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI
security.provider.9=sun.security.smartcardio.SunPCSC

4. WebLogic Serverを再起動します。

5. SSL構成が動作していることを確認します。

暗号化アクセラレーションのためのメッセージ・レベル・セキュリティの構成

メッセージ・レベルのセキュリティのために暗号化アクセラレーションを構成するには、次のタスクを実行します。

1. Solarisコマンドラインから、PKCS11キーストアを作成します。

PKCS11キーストアを作成および初期化するには、pktool setpinコマンドを使用します。

keystore=pkcs11を指定した場合、キーストアはデフォルトの「Sun Software PKCS#11 softtoken」になります。

softokenキーストアが初期化されていない場合は、元のパスフレーズとして「changeme」を使用します。

# pktool setpin keystore=pkcs11
Enter token passphrase:
Create new passphrase:
Re-enter new passphrase:
Passphrase changed.

2. キーストアの秘密鍵を生成します。

# pktool genkeypair keystore=pkcs11 keytype=rsa keylen=1024 hash=sha1

3. また、次のコマンドを使用することにより、JavaキーストアからSolaris Softtokenキーストアに鍵をインポートできます。

# keytool –importkeystore
-srckeystore /opt/Oracle/Middleware/default-keystore.jks
-destkeystore NONE -srcstoretype JKS
-deststoretype PKCS11
-srcstorepass changeme -deststorepass your-scfpassword

4. Solarisコマンドラインから、Solaris Softtokenキーストア内に鍵があることを確認します。

keytool -list -storetype pkcs11 -keystore NONE

5. 使用するポリシーのアルゴリズム・スイートが$JAVA_HOME/jre/lib/security/sunpkcs11-solaris.cfgsunpkcs11-solaris.cfg構成ファイル内のdisabledMechanismsリストに含まれていないことを確認します。
たとえば、図10-20に示すように、ポリシーに対して指定されたアルゴリズム・スイートがBasic256Rsa15である場合、鍵のラップのためにAes256暗号化およびKwAes256/kwRsA15が使用されます。この場合、構成ファイル内のdisabledMechanismsリストにCKM_AESが含まれないことを確認します。

図10-20 サンプル・アルゴリズム・スイート

サポートされるアルゴリズムのリストは、Java PKCS#11リファレンス・ガイドの付録A、Sun PKCS#11プロバイダのサポートされるアルゴリズムに関する項を参照してください。

6. Oracle WSMキーストアの構成

PKCS11キーストアのタイプを構成するには、次の手順に従います。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、キーストアの構成が必要なドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「セキュリティ」→「セキュリティ・プロバイダ構成」をクリックします。

3. ページの下部近くにある「キーストア」コントロールのプラス記号(+)をクリックして開き、「構成」をクリックします。
図10-18に示すように、Web Services Managerの「キーストアの構成」ページが表示されます。

図10-21 Web Services Managerの「キーストアの構成」ページ

4. 図10-19に示すように、「キーストア・タイプ」ドロップダウンで、「公開鍵暗号化標準(PKCS-11)」を選択します。

図10-22 Web Services ManagerのPKCS-11キーストア

5. キーストアのパスワードを入力して確認します。このパスワードは、手順1で入力したPKCS11キーストアのパスワードに一致する必要があります。

6. 「キーの別名」フィールドおよび「暗号化の別名」フィールドに、署名鍵および暗号化鍵の別名と、対応する鍵のパスワードを入力します。署名と暗号化キーの別名とパスワードによって、鍵の格納と取得に使用される文字列の別名とパスワードが定義されます。これらの鍵がPKCS11キーストア内に存在する必要があります。

7. 「OK」をクリックして変更内容を送信します。

8. Fusion Middleware Controlを再起動します。

7. 構成を確認します。
ハードウェア支援暗号化アクセラレーションが正しく構成され、動作していることを確認するために、次のSolaris DTraceスクリプトを使用します。

#!/usr/sbin/dtrace -s
pid$1:libsoftcrypto:yf*:entry,
pid$1:libmd:yf*:entry
{
@[probefunc] = count();
}
tick-10sec
{
printa(@);
clear(@);
trunc(@,0);
}
tick-100sec
{exit(0);}

このスクリプトをcryptoverify.dという名前のファイルとして保存します。次のようにして、コマンドライン引数としてWebLogic ServerのJavaプロセスIDを指定してこのスクリプトを実行します。

# dtrace -s cryptoverify.d  <WeblogicServer Process ID>

たとえば、AESアルゴリズムを使用する暗号化のシナリオでは、AESジョブの値が正で増大する場合、暗号化アクセラレーションがターゲットAESバルク暗号化ペイロードに対して動作していることを示します。

追加資料

Oracle SPARC T2+/T3プロセッサ上でのOracle WSMのデプロイに関する詳細は、ホワイトペーパー「Oracle Web Services ManagerおよびOracle SPARC Enterprise T-series Serversを使用したSOAおよびXML Web Servicesの高パフォーマンス・セキュリティ」(http://www.oracle.com/technetwork/articles/systems-hardware-architecture/hi-perf-soa-xml-svcs-172821.pdf)を参照してください。

このホワイトペーパーは、Oracle SPARC T2+およびT3プロセッサ・ベースのサーバーを使用するための暗号化アクセラレーションに関する最も信頼性の高い資料です。

このホワイトペーパーでは、Solaris Kernel SSL (KSSL)を使用したSolaris暗号化フレームワーク・コンポーネント、パフォーマンス特性など、多くの追加関連トピックについて取り上げています。

サービス・アイデンティティ証明拡張の使用

メッセージ保護ポリシーを実装したWebサービスの場合、Webサービスのbase64エンコードされた公開証明書はWSDLで公開されます。証明書は、ポリシーがデータを暗号化または復号化するかどうかに関係なく、メッセージ保護ポリシーに含められます。

注意:
前のリリースのOracle WSMでは、メッセージ保護ポリシーを実装したWebサービスの場合、Webサービス・クライアントはWebサービスの公開証明書をそのドメイン・レベルのキーストアに格納する必要がありました。それからクライアントはkeystore.recipient.aliasプロパティを使用して、キーストア内の証明書を識別していました。これを行うために、「構成」ページでkeystore.recipient.aliasプロパティを確認するか、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して(またはプログラムによって)、クライアントごとにプロパティをオーバーライドしていました。

WSDLの証明書は、デフォルトではサービスの公開鍵です。これは、「メッセージ保護に関するキーストアの構成」の説明に従ってキーストアを構成したときに指定した「暗号化鍵」によって決まります。

WSDLで証明書が見つからない場合は、かわりにkeystore.recipient.aliasプロパティが使用され、以前と同様に証明書をクライアントのドメイン・レベルのキーストアに格納する必要があります。

注意:
自己署名証明書を信頼できるものにするには、クライアント側のキーストアで使用可能にする必要があります。

WSDLに含まれる証明書のホスト名検証

WSDLから取り出した証明書が改ざん攻撃や中間者攻撃を受けておらず、期待通りの証明書であることを確認するホスト名検証機能が含まれています。

これを行うために、Oracle WSMは、証明書内の共通名(CN)またはサブジェクトのグループ・ベース識別名(DN)がサービスのホスト名と一致していることを検証します。

この機能は、証明書のサブジェクトDNに依存します。

デフォルトでは、ホスト名検証は無効です。

サービス・アイデンティティ証明拡張およびホスト名検証の有効化または無効化

サービス・アイデンティティ証明拡張およびホスト名検証を有効化または無効化するには、Fusion Middleware Controlを使用します。

アイデンティティ拡張タブのプロパティにより、WSDLのX509資格証明をパブリッシュしてWebサービス・ポリシーを強制するかどうかを指定できます。また、X509をパブリッシュする場合は、ホスト名検証を無視するかどうかも指定できます。

サービス・アイデンティティ証明拡張はデフォルトで有効、ホスト名検証はデフォルトで無効です。

注意:
サービス・アイデンティティ証明拡張は、公開鍵の元となる暗号化キーを設定しません。最初に、「メッセージ保護に関するキーストアの構成」の説明に従って、この鍵を指定する必要があります。

サービス・アイデンティティ証明拡張およびホスト名検証を有効化または無効化する手順

1. 「メッセージ保護に関するキーストアの構成」で説明されているように、公開鍵の元となる暗号化キーを設定します。
サービス側のオーバーライドを使用して暗号化キーやWebサービスのキーストアをオーバーライドする場合は、オーバーライドされるキーに対応する証明書が使用されます。

2. ナビゲーション・ペインから、「WebLogicドメイン」を開きます。

3. サービス・アイデンティティ証明拡張およびホスト名検証を有効化または無効化するドメインを選択します。

4. Fusion Middleware Controlを使用して、「WebLogicドメイン」をクリックします。

5. 「Webサービス」→「プラットフォーム・ポリシー構成」を選択します。

6. アイデンティティ拡張タブを選択します。

7. アイデンティティ拡張プロパティを変更するには、それを選択してから「編集」をクリックします。「プロパティの編集」ウィンドウで、「値」フィールドを編集して各プロパティのデフォルト値を変更できます。

- wsm.ignore.identity.wsdl - クライアント側のWSDLから取得したX509証明書の使用を有効にするかどうかをドメインごとに指定します。デフォルトではこのプロパティは有効(false)で、クライアントのランタイムはWSDLからの証明書を暗号化に使用します。デフォルト設定をtrueに変更すると、X509証明書の使用を無効化できます。

- wsm.ignore.hostname.verification - ホスト名検証機能を無効にするかどうかをドメインごとに指定します。デフォルトでは、このプロパティは無効(true)です。ただし、プロパティをfalseに設定すると、ホスト名検証を有効化できます。

8. 既存のプロパティを削除するには、それを選択してから「削除」をクリックします。

9. 「適用」をクリックしてプロパティの更新を適用します。

クライアントからのサービス・アイデンティティ証明拡張の無効化

注意:
デフォルトでは、WSDLで証明書が公開されている場合、keystore.recipient.aliasのクライアント・オーバーライド・プロパティ値は無視されます。

Java EEクライアントの場合は、wsm.ignore.identity.wsdlプロパティの値が自動的に読み取られ、その他の構成は必要ありません。「サービス・アイデンティティ証明拡張およびホスト名検証の有効化または無効化」で説明されているように、Fusion Middleware Controlでこのプロパティを設定して、アイデンティティ検証を有効または無効にします。

JSEクライアントの場合は、Webサービス・クライアントはWSDLの証明書を無視するための明示的なアクションを行う必要があり、無視するかどうかは設定されたkeystore.recipient.aliasプロパティのみに依存します。

これを行うには、次のようにwsm.ignore.identity.wsdlの値をtrueに設定します。

BindingProvider.getRequestContext().put(SecurityConstants.ClientConstants.WSM_IGNORE_IDENTITY_WSDL, "true");

クライアントからのホスト名検証の無効化

Java EEクライアントの場合は、wsm.ignore.hostname.verificationプロパティの値が自動的に読み取られ、その他の構成は必要ありません。「サービス・アイデンティティ証明拡張およびホスト名検証の有効化または無効化」で説明されているように、Fusion Middleware Controlでこのプロパティを設定して、ホスト名検証を有効または無効にします。

JSEクライアントの場合は、Webサービス・クライアントはホスト名検証を無視するための明示的なアクションを行う必要があります。

これを行うには、次のようにwsm.ignore.hostname.verificationの値をtrueに設定します。

BindingProvider.getRequestContext().put(SecurityConstants.ClientConstants.WSM_IGNORE_HOSTNAME_VERIFICATION,"false");

WebLogic Serverへの認証プロバイダの構成

この項では、WebLogic Serverのセキュリティ機能について説明します。この機能の詳細は、Securing Oracle WebLogic ServerおよびOracle WebLogic Server管理コンソールのヘルプで説明されています。この項では、セキュリティ機能と構成ポリシーとの関係を中心に、セキュリティ機能の概要のみを解説します。

ユーザー名、X.509、Kerberos、SAML、HTTP BASICなどを含めて、サポートされるトークン・タイプを使用するポリシーでは、WebLogicデフォルト認証プロバイダなどの認証プロバイダが必要になります。

次のポリシーはこのカテゴリに分類されます。

- oracle/wss_http_token_service_policy

- oracle/wss_username_token_service_policy

- oracle/wss_username_token_over_ssl_service_policy

- oracle/wss11_username_token_with_message_protection_service_policy

- oracle/wss10_username_token_with_message_protection_service_policy

- oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy

- oracle/wss10_x509_token_with_message_protection_service_policy

- oracle/wss10_saml_token_service_policy

- oracle/wss10_saml_token_with_message_protection_service_policy

- oracle/wss_saml_token_over_ssl

- oracle/wss_saml_token_bearer_over_ssl_service_policy

- oracle/wss10_saml_hok_token_with_message_protection_service_policy

- oracle/wss11_saml_token_with_message_protection_service_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

- oracle/wss11_x509_token_with_message_protection_service_policy

作成が必要なWebLogicセキュリティ認証プロバイダのタイプ

WebLogic Server認証プロバイダでは、Oracle WSMとともに使用するための構成が可能です。つまり、トークン・タイプにかかわらず、次のいずれかのWebLogic Server認証プロバイダを使用できます。

- WebLogic認証プロバイダ(DefaultAuthenticatorとも呼ばれています)。

- Oracle Internet Directory AuthenticatorまたはOracle Virtual Directory Authenticator。

- LDAP AuthenticatorまたはOpen LDAP Authenticator。

- RDBMS認証プロバイダ

注意:
RDBMS認証プロバイダ、または他の非LDAPベースのプロバイダを使用する場合、Oracle WSMにより生成されるSAMLアサーションに追加されるカスタム属性を指定できないという制限があります。この制限は、LDAPベースのプロバイダには存在しません。

つまり、SAML、KerberosおよびX.509トークンを使用するポリシーでは、こうした特定のトークン・タイプを処理するためにWebLogic Serverプロバイダを構成する必要はありません。

特に、Oracle WSMランタイムでは、次のような他のWebLogic Serverプロバイダを使用しません(下記を含みますが、下記に限定されるわけではありません)。

- 任意のアイデンティティ・アサーション・プロバイダ

- X509プロバイダ
X509トークン・ベースのOracle WSMポリシーは、WebLogic Server X509アイデンティティ・アサーション・プロバイダを使用しません。

- SAMLプロバイダ
SAMLトークン・ベースのOracle WSMポリシーは、WebLogic Server SAMLプロバイダを使用しません。

- 資格証明マッパー・プロバイダ

- 認可プロバイダ

- ロール・マッパー・プロバイダ

- 証明書パス・プロバイダ

- 監査プロバイダ

SAMLおよびKerberosログイン・モジュールの構成

SAMLおよびKerberosポリシーには、ログイン・モジュールが関連付けられています。このモジュールは、ポリシーを構成するアサーションによって決まります。SAMLポリシーをWebサービスに添付する場合、ログイン・ポリシーを編集して必要な変更を加えることができます。

次のSAMLログイン・モジュールおよびKerberosログイン・モジュールを構成できます。

- saml.loginmodule—このSAMLログイン・モジュールは、Java Authentication and Authorization Service(JAAS)ログイン・モジュールであり、ログインのためにSAMLアサーションを受け入れます。また、SAMLアサーションから作成されたプリンシパルのログイン・コンテキストを使用して、Webサービスを実行できるようにします。

- saml2.loginmodule—このSAML2ログイン・モジュールは、JAASログイン・モジュールであり、ログインのためにSAML2アサーションを受け入れます。また、SAML2アサーションから作成されたプリンシパルのログイン・コンテキストを使用して、Webサービスを実行できるようにします。

- krb5.loginmodule—このKerberosログイン・モジュールは、JAASログイン・モジュールであり、Kerberosプロトコルを使用してユーザーを認証します。このログイン・モジュールには、構成可能なオプション・プロパティがあります。

(他のポリシー・タイプに関連付けられているログイン・モジュールには、Webサービス・ポリシーに固有の設定はありません。)

ログイン・モジュールを構成するには:

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、ログイン・モジュールの構成が必要なドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「セキュリティ」→「セキュリティ・プロバイダ構成」をクリックします。

3. ログイン・モジュールのリストから、ログイン・モジュールを選択し、「編集」をクリックします。
たとえば、図10-23に示すように、ログイン・モジュールのリストから「saml.loginmodule」を選択し、「編集」をクリックすると、「ログイン・モジュールの編集」ページが表示されます。

図10-23 SAMLログイン・モジュールの「ログイン・モジュールの編集」ページ

注意:
「一般プロパティ」セクションのデフォルト値は編集しないでください。このデフォルト値を編集した場合、予期しない結果が生じることがあります。これらのプロパティのデフォルト値は、次のとおりです。

- 制御フラグ —必須

- デバッグ — True

- すべてのロールの追加 — True

- ログ・レベル — 密

4. それぞれの構成で必要に応じて、「SAML固有の属性」セクションで、代替の「発行者」の属性を構成できます。SAMLポリシーでは、「発行者」の属性が必要です。この属性では、SAMLトークンまたはSAML2トークンの発行者の名前を指定します。事前定義済Oracle SAMLポリシーおよびアサーションでは、デフォルト値はwww.oracle.com.です。Webサービス・クライアントおよびWebサービス側の両方で事前定義済SAMLポリシー(またはアサーション)を使用している場合、一般にデフォルトを使用できます。この場合は、発行者を構成できません。詳細は、「別のSAMLアサーション発行者名の追加」を参照してください。

5. ページの「カスタム・プロパティ」セクションで、ログイン・モジュールのカスタム・プロパティを構成します。
プロパティを追加するには、「追加」をクリックし、「新規プロパティの追加」ウィンドウにプロパティの名前および値を入力します。「OK」をクリックして、「カスタム・プロパティ」リストにプロパティを追加します。

既存のプロパティの値を変更するには、「カスタム・プロパティ」リストからプロパティを削除し、値を変更した新しいプロパティを追加する必要があります。

表10-1に、SAMLログイン・モジュール、Kerberosログイン・モジュールおよび構成可能なプロパティを示します。

表10-1 SAMLログイン・モジュールおよびKerberosログイン・モジュールの属性とプロパティ

ログイン・モジュール・サービス名

プロパティ

説明

saml.loginmodule

saml2.loginmodule

oracle.security.jps.assert.saml.identity

SAMLサブジェクトとユーザー間のマッピングを決定するために使用されるドメイン全体のプロパティ。有効な値は次のとおりです。

- false—このフラグをfalseに設定した場合、SAMLサブジェクトのユーザー名はアイデンティティ・ストア内の実際のユーザーにマッピングされます。アイデンティティ・ストアで指定されたユーザー名およびロールにより、ユーザー・ロールおよびサブジェクトが作成されます。これがデフォルトです。

- true—このフラグをtrueに設定した場合、SAMLサブジェクトは論理/仮想ユーザーとして扱われます。ユーザーは、アイデンティティ・ストア内の実際のユーザーにはマッピングされません。サブジェクトには、SAMLサブジェクトからのユーザー名のみが移入されます。サブジェクトは仮想ユーザーとして扱われるので、アイデンティティ・ストア構成は必要ありません。また、このログイン・モジュールを使用するドメイン内のすべてのSAMLポリシーについて、認証プロバイダは起動されません。

oracle.security.jps.add.assertion.to.subject

認証されたサブジェクトに秘密資格証明としてSAMLアサーションを追加すべきかどうかを示すブール・フラグ。デフォルトはtrueです。

krb5.loginmodule

principal

使用すべきプリンシパルの名前。「testuser」のような簡単なユーザー名または「host/testhost.eng.sun.com」のようなサービス名を指定できます。keyTabに複数のプリンシパルの資格証明がある場合、または特定のチケット・キャッシュのみが必要な場合に、プリンシパルを設定するためにprincipalオプションを使用できます。

useKeyTab

TrueまたはFalse。モジュールがkeyTabからプリンシパルの鍵を取得できるようにするには、trueに設定します(デフォルト値はfalse)。keyTabが設定されていない場合は、モジュールはKerberos構成ファイルでkeyTabを検索します。Kerberos構成ファイルに指定されていない場合は、ファイル{user.home}{file.separator}krb5.keytabを検索します。

storeKey

プリンシパルの鍵をサブジェクトの秘密資格証明に格納するには、trueに設定します。

keyTab

プリンシパルの秘密鍵を取得するには、keyTabのファイル名を設定します。

doNotPrompt

資格証明をキャッシュまたはkeyTabから取得できないときに、パスワードを要求するプロンプトを表示しない場合は、trueに設定します(デフォルト値はFalse)。trueに設定すると、資格証明をキャッシュまたはkeyTabから取得できない場合、認証は失敗します。

SAMLの構成

SAML標準では、Web上のソフトウェア・エンティティ間のセキュリティ・アサーションを作成、要求および交換するための共通のXMLフレームワークが定義されています。SAMLトークン・プロファイルは、WS-Security標準のコア・セットの一部であり、WebサービスのセキュリティのためにSAMLアサーションを使用する方法が指定されています。SAMLでは、ビジネス・プロセスまたはトランザクションの複数のステップ間で、ブラウザからポータル、Webサービスのネットワークへと渡すことのできるセキュリティ・トークンを表す標準的な方法も提供されます。

次の事前定義済ポリシーを使用する場合は、SAMLを構成する必要があります。

- oracle/wss_saml_token_bearer_over_ssl_server_policy

- oracle/wss_saml_token_bearer_over_ssl_client_policy

- oracle/wss_saml_token_over_ssl_service_policy

- oracle/wss_saml_token_over_ssl_client_policy

- oracle/wss10_saml_token_service_policy

- oracle/wss10_saml_token_client_policy

- oracle/wss10_saml20_token_service_policy

- oracle/wss10_saml20_token_client_policy

- oracle/wss10_saml_token_with_message_protection_client_policy

- oracle/wss10_saml_token_with_message_protection_service_policy

- oracle/wss10_saml20_token_with_message_protection_client_policy

- oracle/wss10_saml20_token_with_message_protection_service_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

- oracle/wss10_saml_hok_token_with_message_protection_service_policy

- oracle/wss10_saml_hok_token_with_message_protection_client_policy

- oracle/wss10_saml_token_with_message_integrity_service_policy

- oracle/wss10_saml_token_with_message_integrity_client_policy

- oracle/wss11_saml_token_with_message_protection_service_policy

- oracle/wss11_saml_token_with_message_protection_client_policy

- oracle/wss11_saml20_token_with_message_protection_service_policy

- oracle/wss11_saml20_token_with_message_protection_client_policy

次のセクションで、SAML構成の詳細を説明しています。

- SAMLトークンの検証方法

- 設計時のSAML Webサービス・クライアントの設定

- アサーションへのユーザー属性の組込み

- アサーションへのユーザー・ロールの組込み

- SAMLポリシーに関するOracle Platform Security Services(OPSS)の構成方法

- 別のSAMLアサーション発行者名の追加

- アイデンティティ切替えのためのWebサービス・クライアントの構成

- SAML署名証明書の信頼できる識別名(DN)リストの定義

- SAMLポリシーによる匿名ユーザーの使用

- アイデンティティ切替えのためのWebサービス・クライアントの構成

SAMLトークンの検証方法

SAMLログイン・モジュールは、Webサービスに代わってSAMLトークンを検証します。次に、SAMLログイン・モジュールは認証を完了するために、検証されたトークンからユーザー名を抽出し、Oracle Platform Security Services(OPSS)に(間接的に)渡します。

使用される認証プロバイダ

「WebLogic Serverへの認証プロバイダの構成」の説明に従って、任意の構成済認証プロバイダを起動できます。

設計時のSAML Webサービス・クライアントの設定

設計時にSAML Webサービス・クライアントを構成するには、この項で説明する手順を実行します(デプロイ時にWebサービス・クライアントにSAMLポリシーを添付する場合、これらのプロパティは構成が不要で、Fusion Middleware Controlに表示されることもありません)。

これ以降の項で説明するように、ユーザー・ロールをアサーションに含め、SAMLアサーション発行者名を変更することもできます。

SAMLアサーションのユーザー名の構成

JSEクライアント・アプリケーションの場合、次のようにユーザー名をBindingProviderプロパティとして構成します。

Map<String,Object>  reqContext = ((BindingProvider) proxy).getRequestContext()   reqContext.put( BindingProvider.USERNAME_PROPERTY, "jdoe")

ここで、proxyは、実際のWebサービスの起動に使用されるWebサービス・プロキシを示します。

Java EEクライアントの場合は、ユーザーが認証済で、サブジェクトがコンテナ内で確立されていれば、ユーザー名はサブジェクトから自動的に取得されるため、追加の構成は必要ありません。

たとえば、ユーザーjdoeがすでにJava EEアプリケーションに対して認証され、Java EEアプリケーションからWebサービス・コールを行う場合、ユーザー名jdoeは自動的に伝播されます。

ただし、ユーザーが認証されていない場合、JSEと同様にBindingProviderにユーザー名を構成する必要があります。

アサーションへのユーザー属性の組込み

SAMLクライアント・ポリシーには、SAMLアサーションにユーザー属性を追加するために使用できるuser.attributesプロパティが含まれます。

このために、含める属性をカンマ区切りリストとして指定します。たとえば、attrib1,attrib2のようにします。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。

user.attributesでは、サブジェクトが使用可能であること、およびsubject.precedenceをtrueに設定することが必要です(subject.precedenceがtrueである場合、SAMLアサーションを作成するためのユーザー名はサブジェクトのみから取得されます)。

Oracle WSMランタイムは、構成済アイデンティティ・ストアからこうした属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

user.attributesプロパティは、1つのアイデンティティ・ストアに対してサポートされ、デフォルトではリスト内の最初のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

複数のアイデンティティ・ストアを構成しており、すべてのアイデンティティ・ストアでユーザーを検索する場合は、すべての構成済アイデンティティ・ストアで検索を有効にするために、次の手順に従います。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、アイデンティティ・ストア・プロバイダの構成が必要なドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「セキュリティ」→「セキュリティ・プロバイダ構成」をクリックします。

3. ページの「アイデンティティ・ストア・プロバイダ」セクションで、「構成」をクリックしてアイデンティティ・ストアを操作するパラメータを構成します。
図10-24に示すように、「アイデンティティ・ストア構成」ページが表示されます。

図10-24 「アイデンティティ・ストア構成」ページ

4. 「追加」をクリックしてカスタム・プロパティを追加します。

5. 図10-25に示すように、値「true」のプロパティ「virtualize」を追加します。

図10-25 virtualizeプロパティの追加

6. 「OK」をクリックして変更内容を送信します。

7. Fusion Middleware Controlを再起動します。

アサーションへのユーザー・ロールの組込み

ユーザーのロールをSAMLアサーションの属性文として渡すことができます。このためには、デプロイ後にuser.role.includeプロパティを「true」に構成します。このポリシーのデフォルト値は「false」です。

設計時にユーザーのロールを構成するには、BindingProviderのuser.role.includeプロパティをtrueに設定します。

SAMLポリシーに関するOracle Platform Security Services(OPSS)の構成方法

事前定義済SAMLポリシーに関してOPSSを構成するには、次の手順を実行します。

1. 「SAMLおよびKerberosログイン・モジュールの構成」の説明に従って、SAMLログイン・モジュールを構成します。
デフォルトでは、SAMLアサーション発行者名はwww.oracle.comです。Webサービス・クライアント側とWebサービス側の両方で事前定義済SAMLポリシー(またはアサーション)が使用されている場合は、saml.issuer.nameクライアント・プロパティはwww.oracle.comであることが必要です。このため、通常はデフォルト値を使用でき、発行者の構成は不要です。

発行者の追加の詳細は、「別のSAMLアサーション発行者名の追加」を参照してください。

2. WebLogic Server管理コンソールで認証プロバイダを構成します。

3. SAML鍵所有者ポリシーなど、SAMLアサーションに関連する署名が含まれるポリシー(アサーションから参照される鍵がメッセージの署名に使用される)、または送信者保証ポリシー(送信者の鍵がメッセージの署名に使用される)を使用する場合、「メッセージ保護に関するキーストアの構成」の説明に従って、署名と検証のための鍵と証明書を構成する必要があります。

4. SSLが必要なポリシーを使用する場合、「SSLに関するキーストアの構成」の説明に従ってSSLを構成する必要があります。

別のSAMLアサーション発行者名の追加

Webサービス・クライアント側とWebサービス側の両方で事前定義済SAMLポリシー(またはアサーション)が使用されている場合は、SAML発行者名は通常www.oracle.comです。このため、通常はデフォルト値を使用でき、発行者の構成は不要です。

発行者を追加する必要があるのは、次の2つの状況です。

- SAML事前定義済Webサービス・ポリシーまたはアサーションの場合、saml.trusted.issuerプロパティの値を設定します。このプロパティに値を設定する場合は、その信頼できる発行者を「発行者」リストに追加する必要があります。

- SAML事前定義済Webサービス・ポリシーまたはアサーションの場合、saml.issuer.nameプロパティの値を設定します。このプロパティに値を設定する場合は、同じ値の信頼できる発行者を「発行者」リストに追加する必要があります。

- 別のクライアント、たとえば.NET/STSが事前定義済SAMLポリシーによって保護されたWebサービスと通信する場合、その発行者を「発行者」リストに追加する必要があります。

注意:
ここで説明したメカニズムによって発行者を追加できますが、ただしこれは下位互換性専用です。優先される方法は、プラットフォーム・ポリシーの構成レベルで信頼できる発行者を構成することです。「署名証明書の信頼できる発行者および信頼できるDNリストの定義」を参照してください。
信頼できる発行者の決定方法は、次の順位で決められます。

1. 最初に、ポリシーに対して構成された(またはオーバーライドされた)信頼できる発行者のリストがチェックおよび使用されます。

2. ポリシーに対して構成(またはオーバーライド)されていなければ、プラットフォーム・ポリシーの構成がチェックおよび使用されます。「署名証明書の信頼できる発行者および信頼できるDNリストの定義」を参照してください。

3. ポリシーに対して構成(またはオーバーライド)されておらず、またプラットフォーム・ポリシーで構成されていない場合にのみ、SAMLログイン・モジュールで定義された「発行者」リストが使用されます。

ここに記載されたメカニズムによってSAML発行者を定義した場合、発行者はjps-config.xml内で永続化されます。また、変更はドメインの再起動後にのみ有効になります。

別のSAMLアサーション発行者を「発行者」リストに追加する手順

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、発行者の追加が必要なドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「セキュリティ」→「セキュリティ・プロバイダ構成」をクリックします。

3. 必要に応じてSAMLログイン・モジュールまたはSAML2ログイン・モジュールを選択し、「編集」をクリックします。

4. 図10-26に示すように、ページの「SAML固有の属性」セクションから、「追加」をクリックして、別の発行者名を追加します。

図10-26 SAML発行者のログイン・モジュールへの追加

5. クライアント・ポリシーの場合、デプロイ時に、SAMLクライアント・ポリシーの「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。ポリシーのデフォルト値はwww.oracle.comです。
設計時に発行者を構成するには、BindingProviderのsaml.issuer.nameプロパティを設定します。

SAML署名証明書の信頼できる識別名(DN)リストの定義

セキュリティを高めるために、SAML署名証明書の信頼できるDNのリストを定義できます。

デフォルトでは、Oracle WSMは、受信した発行者名を構成済の発行者のリストと照合してチェックし、SAML署名をOracle WSMキーストアにある構成済の証明書と照合してチェックします。また、信頼できるDNリストを定義する場合は、SAML署名がその発行者に関連付けられている特定の証明書に基づいて署名されているかどうかが検証されます。

信頼できるDNリストの構成はオプションです。詳細な制御を必要とするユーザーは、これにより各発行者を1つ以上の署名証明書のリストに関連付けることができます。信頼できる発行者のDNリストが定義されていない場合、証明書がOracle WSMキーストアに存在する証明書によって信頼されているかぎり、その証明書に基づいて署名できます。

SAML署名証明書の信頼できるDNリストの定義の詳細は、「署名証明書の信頼できる発行者および信頼できるDNリストの定義」を参照してください。

SAMLポリシーによる匿名ユーザーの使用

すべてのSAMLポリシーで、匿名ユーザーの伝播が許可されます。たとえば、認証ユーザーまたは匿名ユーザーのいずれかが操作できるADFアプリケーションが存在し、このADFアプリケーションでWebサービスへのコールを行い、現在のユーザーを伝播する必要がある場合、いずれかのSAMLポリシーを使用して認証ユーザーおよび匿名ユーザーの両方を伝播できます。セキュリティの観点からは、SAML経由での匿名ユーザーの伝播は、サービスに認証トークンを送信しないクライアントと等価です。

1つのポリシーで認証ユーザーおよび匿名ユーザーの両方をサポートできる利便性のために、SAML経由での匿名ユーザーが許可されています。ただし、SAML経由での匿名の伝播は非標準であり、他のベンダーとは相互運用できないことに注意してください。クライアントおよびWebサービスの両方でOracle WSMを使用している場合にのみ、使用すべきです。

Oracle WSMでのJSON Web Token (JWT)の使用

JSON Web Token (JWT)は、二者の間で転送されるクレームを表す手段です。JWTは、HTTP認可ヘッダーやURI問合せパラメータなど、領域が制限された環境向けのコンパクトなトークン・フォーマットです。

次の各項で、Oracle WSMでのJWTの使用例の概要と、そのために必要な構成手順を示します。

- JWTユースケースの例(手順の概要)

- JWTトークンを伝播するためのクライアントおよびサービスの構成

JWTユースケースの例(手順の概要)

このユースケースの例では、次のシナリオについて説明します。

- エンド・ユーザーが、ブラウザを使用してクライアントWebアプリケーション内のパートナ埋込みユーザー・インタフェースをポイントします。

- ユーザーによりカスタマイズされた情報を表示し、追加のトランザクション処理を実行するために、ブラウザは外部パートナ・アプリケーションを呼び出して認証/認可を行います。

- パートナ・アプリケーションが、クライアント・アプリケーションから(電子メールなどの)エンド・ユーザー関連データを取得します。

- (最初にクライアントWebアプリケーションにログインしたエンド・ユーザーにかわって、つまりアイデンティティ伝播を実行して)セキュアなSOAPまたはRESTful Webサービスにコールバックすることにより、トランザクション作業が完了します。

次の手順概要では、クライアントWebアプリケーション、パートナ・アプリケーションおよびOracle WSMで保護されたWebサービスの間でJWTトークンを受渡しすることによってこのユースケース例を導入する方法について説明します。

図10-27にこの例を示します。

図10-27 JWTトークンの伝播例

注意:
この例では、「JWTトークンを伝播するためのクライアントおよびサービスの構成」で説明されているようにクライアントとサービスが適切に構成されていることを前提としています。

1. クライアントWebアプリケーションは、OPSSトラスト・サービスを呼び出してJWTトークンを取得します。
このためには、UserIDをTokenManagerに渡す必要があります。オプションで、他のUserInfo (emailやfirstNameなど)およびAppInfo (orgIDやopportunityIDなど)を新しいクレームとして渡すこともできます(例10-8を参照)。

例10-8 JWTトークンを取得するためのOPSSトラスト・サービスの呼出し

javax.security.auth.Subject subject = javax.security.auth.Subject.getSubject(AccessController.getContext());
String userName = oracle.security.jps.util.SubjectUtil.getUserName(subject);
JpsContextFactory ctxFactory = JpsContextFactory.getContextFactory();
JpsContext jctx = ctxFactory.getContext();
TrustService trustService = jctx.getServiceInstance(TrustService.class);
final TokenManager tokenMgr = trustService.getTokenManager();

// Issue token
final ExtendedTokenContext ectx = (ExtendedTokenContext) tokenMgr.createTokenContext(TokenConfiguration.PROTOCOL_EMBEDDED);
ectx.setTokenType(JwtToken.JWT);
TrustToken tsToken = new TrustToken(TokenConstants.TOKEN_TYPE_USERID, userName);
ectx.setTrustToken(tsToken);
ectx.setIssuer("www.oracle.com");

Map<String, Object> ctxProperties = ectx.getOtherProperties();
ctxProperties.put("trust.tokenSigningMethod", JwtToken.SIGN_ALGORITHM.RS256.toString());
// Passing parameters like email, opportunityID
ArrayList<Object> emailValue = new ArrayList<Object>();
emailValue.add("joe.abc@example.com");
Claim emailClaim = new Claim("oracle:apps:attributes:email", emailValue);

ArrayList<Object> oppIDValue = new ArrayList<Object>();
oppIDValue.add("200");
Claim oppIDClaim = new Claim("oracle:apps:attributes:opportunityID", oppIDValue);
List<Claim> list = new ArrayList<Claim>();
list.add(emailClaim);
list.add(oppIDClaim);

ectx.setClaims(list)

Object tokenData = AccessController.doPrivileged(new PrivilegedExceptionAction<Object>() {
@Override
public Object run() throws Exception {
try {
return  tokenMgr.issueTrustToken(ectx);

} catch (Exception ex) {
throw ex;
}
}
});
Object tokValue = ectx.getTrustToken().getTokenValue(); //base 64 encoded JWT token

OPSSトラスト・サービスからのトークンの取得の詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』の次の各項を参照してください。

- OPSSトラスト・サービス

- OPSSトラスト・サービスを使用したアイデンティティの伝播

2. クライアントWebアプリケーションは、URLパラメータ内でJWTトークンをパートナ・アプリケーションに渡します。

?token=<tokValue>

注意:
トークンを渡すために使用するトランスポート・チャネルは、SSLを使用して保護する必要があります。

3. パートナ・アプリケーションはURLパラメータからトークンを抽出し、トークン署名を検証します。

4. パートナ・アプリケーションは、URLパラメータから抽出したトークンを、Authorization:Bearer HTTPヘッダー内のOracle WSMサービス・ポリシーで保護されたSOAPまたはRESTful Webサービスに渡します。

Authorization:Bearer <tokValue>

注意:
トークンを渡すために使用するトランスポート・チャネルは、SSLを使用して保護する必要があります。

5. Oracle WSMはJWTトークンを検証し、ユーザー・アイデンティティでサブジェクトを確立します。伝播されるユーザー・アイデンティティがサービス側のアイデンティティ・ストアに存在している必要があります。

JWTトークンを伝播するためのクライアントおよびサービスの構成

次の各項で説明するように、クライアント側とサービス側の両方で構成を実行する必要があります。

- JWTトークン伝播のためのクライアント側構成

- JWTトークン伝播のためのサーバー側構成

カスタマ・アプリケーションに必要な構成はありません。

JWTトークン伝播のためのクライアント側構成

OPSSトラスト・サービスはKSSキーストアを使用し、Oracle WSMはJKSキーストア(default-keystore.jks)を使用します。JKSキーストアをOPSS KSSキーストアにコピーしてこれらの2つのキーストアを同期してから、OPSSトラスト・サービスにアクセスするための適切な権限をクライアント・アプリケーションに付与する必要があります。

手順1: KSSキーストアとJKSキーストアの同期

1. Oracle WSM JKSキーストアのコピーを作成します。

1. ファイルシステムにkssという名前のディレクトリを作成します。

2. $DOMAIN_HOME/config/fmwconfigディレクトリからOracle WSMキーストアdefault-keystore.jksをkssディレクトリにコピーします。

cp default-keystore.jks default-keystore-copy.jks                       chmod 777 default-keystore-copy.jks

2. キーストア内のorakey別名をtrustservice別名に変更します。

keytool -changealias -alias orakey -keypass orakey -destalias trustservice -storepass password -keystore ./default-keystore-copy.jks

注意:
この例では、keypassがorakeyで、storepassがパスワードです。必ず、キーストアに適切なパスワードを使用してください。

3. 次のCLIコマンドを実行して、キーストアをKSSにアップロードします。

注意:
stripeNameおよびKeystoreNameは次のように構成されています。
stripeName=opssおよびkeystoreName=trustservice_ks。KeyPairを含み、別名がtrustserviceとして指定されています。

stripeName=opss、keystoreName=trustservice_ts。Certificateを含み、別名がtrustserviceとして指定されています。

svc = getOpssService(name='KeyStoreService')
svc.deleteKeyStoreEntry(appStripe='opss', name='trustservice_ks', password='', alias='trustservice', keypassword='password')
svc.deleteKeyStoreEntry(appStripe='opss', name='trustservice_ts', password='', alias='trustservice', keypassword='password')

svc.importKeyStore(appStripe='opss', name='trustservice_ks', password='', aliases='trustservice', keypasswords='password', type='JKS', permission=true, filepath=Oracle WSMkeystorecopy)
svc.importKeyStore(appStripe='opss', name='trustservice_ts', password='', aliases='trustservice', keypasswords='password', type='JKS', permission=true, filepath=Oracle WSMkeystorecopy)

print '--------\--list keystore alias-\-------------------------------------------'

svc.listKeyStoreAliases(appStripe='opss', name='trustservice_ks', password='', type='*')
svc.listKeyStoreAliases(appStripe='opss', name='trustservice_ts', password='', type='*')

手順2: クライアントWebアプリケーションへのOPSSトラスト・サービス権限の付与

OPSSトラスト・サービスを呼び出してJWTトークンを取得するには、次のようにgrantPermission WLSTコマンドを使用して、クライアントWebアプリケーションにTrustServiceAccessPermissionを付与しておく必要があります。

grantPermission(codeBaseURL="file:${oracle.deployed.app.dir}/MyApp${oracle.deployed.app.ext}",
permClass="oracle.security.jps.service.trust.TrustServiceAccessPermission",permTarget="appId=*", permActions="issue")

このコマンドラインのMyAppをクライアント・アプリケーションの名前で置き換えます。

JWTトークン伝播のためのサーバー側構成

サービス側で、JWTトークンをサポートするOracle WSMポリシーを使用してJWTトークンを保護し、そのドメインに対してJWTの信頼できる発行者を構成する必要があります。

手順1: Webサービスの保護

次のいずれかのポリシーを使用して、SOAP WebサービスまたはRESTfulサーブレット・アプリケーションを保護します。

- SOAP Webサービスの場合、wss11_saml_or_username_token_with_message_protection_service_policyを使用します。SOAP Webサービスへのポリシーの添付の詳細は、「Webサービスへのポリシーの添付」を参照してください。

- RESTfulサーブレット・アプリケーションの場合、multi_token_rest_service_policyを使用します。RESTfulサーブレット・アプリケーションへのポリシーの添付の詳細は、「サーブレット・アプリケーションへのポリシーの添付」を参照してください。

JWTトークンのアイデンティティの切替えを実行できるポリシーを持つWebサービスの構成の手順は、「アイデンティティ切替えのためのWebサービス・クライアントの構成」を参照してください。

手順2: JWTトークンの信頼できる発行者の定義

JWTの信頼できる発行者を定義するには、「WLSTを使用した信頼できる発行者の定義およびDNリストの管理」で説明されているように、setWSMTokenIssuerTrust WLSTコマンドを使用します。たとえば、次のようにします。

setWSMTokenIssuerTrust('dns.jwt','www.oracle.com',['CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US'])

Oracle WSMでのOAuth2の使用

この項では、Oracle WSMでのOracle Mobile and Social OAuth2の認可フレームワークの使用について説明します。

この項では、『Oracle Fusion Middleware Oracle Access Management管理者ガイド』の次の項に記載された用語、概念および構成情報に精通していることを前提としています。

- 「OAuthサービスの理解」

- 「OAuthサービスの構成」

Oracle WSMでのOAuth2の理解

Oracle WSMでのOAuth2サポートは、OAuth 2.0 Authorization Framework(http://tools.ietf.org/html/rfc6749)の仕様に基づいています。Oracle WSMでは、OAuth2.0プロトコル操作にOracle Mobile and Social OAuth2サービスを認可サーバーとして使用します。

Oracle WSMでは、Webサービス・クライアントがMobile and Social OAuth2サーバーが実装するSOAPおよびRESTのWebサービスと対話し、2-legged認可を行うことができます。

2-Legged認可

2-legged OAuth2では、アプリケーション間で対話が行われ、ユーザーによる承認は必要ではありません。

クライアントは、リソース所有者からの承認を要求します。応答で、クライアントはリソース所有者の認可を示す資格証明、認可付与を受け取ります。次のようになります。

1. クライアントは、認可サーバーで認証し、認可付与を提示して、アクセス・トークン(AT)を要求します。

2. 認可サーバーはクライアントを認証し、認可付与を検証して、有効であればATを発行します。

3. クライアントは、リソース・サーバーの保護されたリソースを要求し、ATを提示して認証します。

4. Oracle WSMサーバー側エージェントは、ATを検証し、有効な場合は要求を受け入れ、無効な場合は要求を拒否します。

クライアント・アプリケーションに、OAuth2クライアント・ポリシー(oracle/http_oauth2_token_client_policy、oracle/oauth2_config_client_policyなど)を割り当てます。oracle/oauth2_config_client_policyポリシーの必須プロパティtoken.uriは、OAuth2サーバーのトークン・エンドポイントを指定します。

次の任意のOracle WSM JWTサービス・ポリシーもWebサービスに割り当てます。Oracle WSMのサーバー側エージェントがアクセス・トークンを検証します。

- oracle/http_jwt_token_service_policy

- oracle/http_jwt_token_over_ssl_service_policy

- multi_token_rest_service_policy

- multi_token_over_ssl_rest_service_policy

(Oracle WSM JWTサービス・ポリシーの詳細は、「Oracle WSMでのJSON Web Token (JWT)の使用」を参照してください。)

2-Legged認可でサポートされる認可付与タイプ

前述のとおり、認可付与は、リソース所有者の認可を示す資格証明です。Oracle WSMでは、2-legged認可で次の認可付与タイプをサポートします。使用するタイプは、OAuth2 OWSMクライアント・プロファイルの構成時に指定します(「Oracle WSM OAuth2ポリシーを使用するための前提条件」を参照)。

- クライアント資格証明付与: この場合、クライアント資格証明は「Authorization: Basic」HTTPヘッダーで送信されます(クライアント資格証明付与 - OAuth2.0認可フレームワークを参照)。
クライアント・トークン・ポリシーのoauth2.client.csf.keyプロパティを設定して、使用するユーザー名とパスワードを指定します。federated.client.tokenプロパティがfalseに設定されていることを確認してください。

- クライアント資格証明JWT (フェデレーション・ユースケース): この場合、クライアント資格証明はJWTアサーションとして送信されます(クライアント認証のためのJWTの使用を参照)。
Oracle WSMは、Oracle WSM資格証明ストアに保存されたクライアント資格証明に基づいてJWTトークンをローカルに生成します。クライアント・トークン・ポリシーのfederated.client.tokenプロパティを設定して、oauth2.client.csf.keyおよびkeystore.sig.csf.keyプロパティの値を使用してクライアントのJWTトークンを生成するかどうかを指定します。

- クライアント資格証明がBasic認証ヘッダーで送信され、これに加えて、ユーザー資格証明がJWTアサーションで送信されます(クライアント資格証明付与 - OAuth2.0認可フレームワークおよびクライアント認証のためのJWTの使用を参照)。
クライアント・トークン・ポリシーのoauth2.client.csf.keyプロパティを設定して、Basic認証ヘッダーに使用するユーザー名とパスワードを指定します。

- クライアント資格証明がJWTアサーションで送信され、これに加えて、ユーザー資格証明がJWTアサーションで送信されます(クライアント認証のためのJWTの使用を参照)。

2-Legged認可でのクライアント資格証明の決定方法

クライアント資格証明は、OAuth2サーバーへのリクエストに常に含まれます。federated.client.tokenプロパティにより、クライアント資格証明のクライアントIDにJWTを使用するか、またはクライアント資格証明のクライアントIDとパスワードを使用するかどうかが決まります。

- federated.client.tokenがtrue (デフォルト)の場合は、JWTがクライアント資格証明のクライアントIDに使用されます。

- federated.client.tokenがfalseの場合は、クライアント資格証明にクライアントIDとパスワードが使用されます。

2-Legged認可でのユーザー資格証明、クライアント資格証明およびサブジェクトの関係

subject.precedenceプロパティは、JWTトークンの作成のために使用するサブジェクトの取得場所を指定します。

表10-2に示すように、subject.precedenceをtrueに設定した場合、JWTトークンを作成するためのユーザー名は認証済サブジェクトからのみ取得されます。

subject.precedenceをfalseに設定した場合、JWTトークンを作成するためのユーザー名はcsf-keyプロパティからのみ取得されます。

表10-2 ユーザー資格証明、サブジェクトおよびアクセス・トークン

subject.precedence

csf-key

認証済ユーザー・サブジェクト

クライアント資格証明

ユーザー資格証明

アクセス・トークン・プリンシパル/サブジェクト

True(デフォルト)

N/A

使用可能

2-Legged認可でのクライアント資格証明の決定方法を参照。

認証済エンド・ユーザーのJWT。

エンドユーザー名。

True(デフォルト)

N/A

なし

2-Legged認可でのクライアント資格証明の決定方法を参照。

対象外

クライアントID

False

未構成(デフォルト)

N/A

2-Legged認可でのクライアント資格証明の決定方法を参照。

対象外

N/A

False

構成済

N/A

2-Legged認可でのクライアント資格証明の決定方法を参照。

csf-keyエントリからのアイデンティティのJWT。

csf-key/user nameからユーザー名が構成されます。

Oracle WSM OAuth2ポリシーを使用するための前提条件

次の手順を実行して、Oracle WSMで使用するMobile and Social OAuth2を構成します。この手順では、『Oracle Fusion Middleware Oracle Access Management管理者ガイド』に記載された構成情報に精通していることを前提としています。

1. OAuthサービスを有効にします(「OAuthサービスの有効化」を参照)。

2. RESTの場合は、Authorization and Consent Service Plug-insプラグイン・プロファイルを作成します(OAuthプラグインの構成を参照)。

次に例を示します。

- 大まかな(推奨)

- 名前: PermissionRESTPlugin

- 説明: Permission Authorization REST Coherence Plug-in

- セキュリティ・ハンドラ・クラス: oracle.security.idaas.oauth.consent.impl.CoherenceAuthorizationUserConsentImpl

- ファイングレイン(エンドポイント使用)

- 名前: PermissionRESTPlugin

- 説明: Permission Authorization REST Callback Plug-in

- セキュリティ・ハンドラ・クラス: oracle.security.idaas.oauth.consent.impl. AuthorizationRESTCallbackImpl

- 属性: rest.permission.service.endpoint=endpoint.

3. リソース・サーバー・プロファイルを作成します(「OAuthリソース・サーバーの作成」を参照)。
手順2でAuthorization and Consent Service Plug-insを作成した場合、それをリソース・サーバー・プロファイルで指定します。

4. クライアント・プロファイルを構成します(「OAuthクライアント・プロファイル構成の理解」を参照)。「OAuth Webクライアントの作成」ページを使用します。

1. クライアントIDとクライアント・シークレットを指定します。これらの値は、後でOWSMクライアント・ポリシーを構成するときに使用する必要があるため、メモをとります。

2. 「権限」で、「すべてのスコープにアクセスを許可する」を選択します。

3. 「権限」で、使用する付与タイプを選択します。
2-legged認可の場合は、「クライアント資格証明」と「JWTベアラー」を選択します。

5. OAuth2サービス・プロファイルの構成を更新します(「OAuthサービス・プロファイルの編集と削除」を参照)。
JWTベアラーをクライアント資格証明の1つとして使用する場合:

- jwt.issuerをwww.oracle.comに設定します

- jwt.CryptoSchemeをRS256に設定します

- jwt.trusted.issuer.1をhttp://www.oracle.comに設定します

- jwt.trusted.issuer.sizeを1に設定します

6. Oracle WSM資格証明ストアにパスワード・タイプのoauth2.client.csf.keyキーを作成します(「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照)。
手順4のクライアントIDをユーザー名として使用し、クライアント・シークレットをパスワードとして使用します。

注意:
ユーザー名およびパスワードは、OPSSアイデンティティ・ストア内の有効なユーザーを表す必要があります。

7. Oracle WSMクライアント証明書をエクスポートし、それをOAuth2サーバーのトラストストアにインポートして、Oracle WSMクライアントによって生成されたJWTトークンを検証します。
Oracle WSMクライアント証明書のエクスポートの詳細は、「メッセージ保護に関するキーストアの構成」を参照してください。

8. OAuth2サーバー証明書をエクスポートし、それをWebサービス側のOracle WSMトラストストアにインポートして、Oracle WSMがOAuth2サーバーによって生成された署名ATを検証できるようにします。
デフォルト・ドメイン内のデフォルトOAuthサービス・プロファイルは、Oracle Access Managementに含まれるJavaキーストア(JKS)を使用します。OAuth2キーストアの詳細は、「OAuthサービスの構成」を参照してください。

Oracle WSMキーストアへのOAuth2サーバー証明書のインポートの詳細は、「メッセージ保護に関するキーストアの構成」を参照してください。

Oracle WSM OAuth2ポリシーの構成の詳細は、第11章「ポリシーの構成」を参照してください。

ポリシーの添付の詳細は、第8章「Webサービスへのポリシーの添付」を参照してください。

アイデンティティ切替えのためのWebサービス・クライアントの構成

Oracle WSMには、アイデンティティ切替えを可能にするSAMLおよびJWTクライアント・ポリシーが含まれています。アイデンティティ切替えとは、ポリシーが、認証されたサブジェクトに基づいたアイデンティティとは異なるアイデンティティを伝播することを意味します。アイデンティティ切替えポリシーは、次のとおりです。

- wss11_saml_token_identity_switch_with_message_protection_client_policy: このポリシーは、WS-Security 1.1に記述されたメカニズムを使用するアウトバウンドSOAPリクエストで使用できます。詳細は、「oracle/wss11_saml_token_identity_switch_with_message_protection_client_policy」を参照してください。

- wss_saml_token_bearer_identity_switch_client_policy: このポリシーは、任意のSOAPクライアント・エンドポイントに割り当てることができます。詳細は、「oracle/wss_saml_token_bearer_identity_switch_client_policy」を参照してください。

- http_jwt_token_identity_switch_client_policy: このポリシーは、任意のHTTPベースの、SOAPまたはRESTクライアント・エンドポイントで実行できます。詳細は、「oracle/http_jwt_token_identity_switch_client_policy」を参照してください。

場合によっては、SOAまたはRESTアプリケーションがクライアント側Webサービス・ポリシーで使用するユーザー・アイデンティティを指定し、その後、アウトバウンドWebサービス・リクエストで、SAMLまたはJWTトークンに関連付けられたユーザーの動的な切替えが必要になることもあります。これらのポリシーでは、サブジェクトのユーザー名を使用するかわりに、SAMLまたはJWT Webサービス・リクエストの送信時に新しいユーザー名を設定できます。

たとえば、wss11_saml_token_identity_switch_with_message_protection_client_policyポリシーは、javax.xml.ws.security.auth.usernameプロパティで設定されたユーザーIDに基づいてSAMLトークンを作成します。

互換性

アイデンティティ切替えクライアント・ポリシーは、Webサービス上の次のポリシーと互換性があります。

- wss11_saml_token_identity_switch_with_message_protection_client_policy

- wss11_saml_token_with_message_protection_service_policy

- wss11_saml_or_username_token_with_message_protection_service_policy

- wss_saml_token_bearer_identity_switch_client_policy

- wss_saml_token_bearer_service_policy

- wss_saml_bearer_or_username_token_service_policy

- http_jwt_token_identity_switch_client_policy

- http_jwt_token_service_policy

- multi_token_rest_service_policy

- wss11_saml_or_username_token_with_message_protection_service_policy

ユースケース例

Webサービス・クライアントがSOAアプリケーションを呼び出し、SOAアプリケーションがWebサービスのクライアントとなる次のようなユースケースについて検討します。

client -> SOA -> web service

このユースケースでは、次のようになります。

- クライアントは、wss11_username_with_message_protection_client_policyまたはSSLを介した類似のクライアント・ポリシーによって保護されています。そして、ユーザーend_user1としてSOAエントリ・ポイントと通信します。

- SOAのエントリ・ポイントは、wss11_username_with_message_protection_service_policyまたはwss_username_over_ssl_service_policyなどの対応するタイプのサービス・ポリシーによって保護されています。SOAアプリケーションはエンド・ユーザーを認証し、end_user1に基づいてサブジェクトを確立します。ただし、外部Webサービスには別のアイデンティティを伝播することが求められます。
そのため、アイデンティティ切替えを行うには、適切なアイデンティティ切替えポリシー(SAMLトークンの場合はwss11_saml_identity_switch_message_protection_client_policyポリシーなど)を、SOAの参照バインディング・コンポーネントに割り当てます。

- 伝播されるユーザー名は、SOAアプリケーションのコンポーネントであるBPELプロセスによって動的に決定されます。ユーザー名は、動的に決定されたユーザー名の値を含むBPELプロパティjavax.xml.ws.security.auth.usernameとして設定されます(「メッセージ・コンテキストから直接」を参照)。外部Webサービスは、wss11_saml_with_message_protection_service_policyによって保護できます。この場合は、end_user1ではなく切り替えられたユーザーを受信します。

- エンド・ユーザーに基づいてサブジェクトを確立するが、別のアイデンティティを伝播する必要があるJava EEアプリケーションにも、同様のシナリオが適用できます(このシナリオのSOAをJava EEアプリケーションに置き換えます)。Java EEの場合は、次のようにユーザー名をプログラムによって設定できます。

((BindingProvider) port).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, config.get(USERNAME));

- Fusion Middleware ControlまたはWLSTを使用して、WSIdentityPermission権限をSOA参照バインディング・コンポーネントに追加します(「WSIdentityPermission権限の設定」を参照)。
アイデンティティ切替えポリシーでは、ポリシーをアタッチするアプリケーションにWSIdentityPermission権限が必要です。つまり、Oracle WSMが外部から提供されるアイデンティティをアプリケーションから受け入れるには、そのアプリケーションがWSIdentityPermission権限を持つ必要があります。

これにより、Oracle WSMが潜在的に悪質なアプリケーションからアイデンティティを提供されるのを回避します。

注意:
アイデンティティ切替えポリシー(wss11_saml_token_identity_switch_with_message_protection_client_policy、wss_saml_token_bearer_identity_switch_client_policyおよびhttp_jwt_token_identity_switch_client_policy)は、ローカルの最適化を無効化します(同一サーバー上のSOA対SOAの対話は、「ポリシーに対するローカルの最適化の構成」を参照)。

クライアント側でのアイデンティティ切替えポリシーによるユーザー名の選択方法

この項では、クライアント側でアイデンティティ切替えポリシーによって使用されるユーザー名を選択する方法について説明します。

メッセージ・コンテキストから直接

SOAの場合:

SOAコンポジットは、1つのSOAサービス・コンポーネントとしてBPELプロセスを持ちます。BPELプロセスは、同期および非同期プロセスのプロセス編成と格納を行います。このため、正確な名前javax.xml.ws.security.auth.usernameを持つBPELプロパティを定義できます。このプロパティの値を、SOAアプリケーションが伝播するアイデンティティにすることができます。これは潜在的にBPELプロセスによって動的に決定できます。

Java EEの場合:

BindingProvider.USERNAME_PROPERTYプロパティを設定します。

メッセージ・コンテキストのcsf-keyから

リクエスト・コンテキストにSecurityConstants.ClientConstants.WSS_CSF_KEYプロパティを設定します。

クライアント・ポリシーのcsf-keyのオーバーライド

任意のアイデンティティ切替えポリシーのClientConstants.WSS_CSF_KEYフィールドの値を入力します。たとえば、HTTPのアイデンティティ切替えポリシーでは、次のように、クライアントがcsf-key構成のオーバーライドを構成できます。

PropertyFeature csfKey = new PropertyFeature( SecurityConstants.ClientConstants.CO_CSF_KEY, "Oracle WSMtest.credentials");

WSIdentityPermission権限の設定

wss11_saml_token_identity_switch_with_message_protection_client_policyポリシーを添付するWebサービス・クライアント(たとえば、SOA参照バインディング・コンポーネント)は、oracle.wsm.security.WSIdentityPermission権限を持つ必要があります。

Fusion Middleware Controlの使用

Fusion Middleware Controlを使用して、oracle.wsm.security.WSIdentityPermission権限をSOA参照バインディング・コンポーネントにシステム権限として追加するには、次の手順を実行します。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、アプリケーションの構成が必要なドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「セキュリティ」→「システム・ポリシー」をクリックします。システム・ポリシーは、現在のWebLogicドメインにデプロイされるすべてのアプリケーションに適用されるシステム全体のポリシーです。

3. 「システム・ポリシー」ページで、「権限」フィールドの矢印アイコンを選択し、システム・セキュリティ権限を検索します。

4. コードベース権限のいずれかを選択して開始点として使用し、「類似作成」をクリックします。

5. ページの「権限の詳細」セクションで、「コードベース」フィールドにfile:${common.components.home}/modules/oracle.wsm.agent.common_${jrf.version}/wsm-agent-core.jarと入力します。

注意:
権限付与の詳細を定義する場合、ディレクトリまたはJARの名前で製品バージョン番号の使用は避けることをお薦めします。これによって、将来の新しいリリースへのアップグレード時に影響を最小限に抑えることができます。

6. ページの「権限」セクションで、開始点の権限クラスを選択して「編集」をクリックします。

7. 「権限クラス」フィールドにoracle.wsm.security.WSIdentityPermissionと入力します。リソース名はSOAのコンポジット名で、Java EEクライアントのアプリケーション名です。図10-28に示すように、アクションは常にassertです。

図10-28 WSIdentityPermissionの編集

WLSTの使用

WLSTを使用してoracle.wsm.security.WSIdentityPermission権限を追加するには、次のコマンドを実行します。

grantPermission(codeBaseURL="file:${common.components.home}/modules/
oracle.wsm.agent.common_${jrf.version}/wsm-agent-core.jar",
permClass="oracle.wsm.security.WSIdentityPermission",
permTarget="resource=yourAppName",
permActions="assert")

各項目の意味は次のとおりです。

- codeBaseURLでは、wsm-agent-core.jarを参照する必要があります。

- permTargetの構文は、"resource=yourAppName/compositeName"です。リソース名はSOAのコンポジット名で、Java EEクライアントのアプリケーション名です。

- permActionsは常に"assert"です。

Oracle WSMによるアイデンティティ・コンテキストの伝播

アイデンティティ・コンテキストにより、組織は、Oracle Access Managementプラットフォームに組み込まれているコンテキストを意識したポリシー管理および認可機能を使用することで、増大するセキュリティの脅威に対応できます。アイデンティティ・コンテキストでは、従来のセキュリティ制御(ロールやグループなど)とともに、認証および認可中に確立される動的データ(認証強度、リスク・レベル、デバイス・トラストなど)を使用することで、リソースへのアクセスのセキュリティが確保されます。

たとえば、アプリケーションでは、次のためにアイデンティティ・コンテキストを使用できます。

- ユーザーがスマート・カードなど強力な資格証明を使用して認証されていない場合、特定のビジネス機能を無効化します。

- 組織が(Identity Federationを使用して)取引しているビジネス・パートナによって提供されたアイデンティティ・データに基づいてトランザクションへのアクセスのセキュリティを確保します。

- 不正行為で知られる場所からアクセスされていることが検出された場合、追加の認証資格証明を要求します。

- 管理者の(サードパーティで管理されている)業界認定証が有効期限切れになっている場合、管理権限の範囲を制限します。

- 不明なデバイスからアクセスされていることが検出された場合、特定のビジネス機能を無効化します。

Oracle WSMは、Webサービス・クライアントからWebサービスにアイデンティティ・コンテキストを伝播した後、認証および認可の目的のために、他のコンポーネントに対して使用可能に(「公開」)できます。

アイデンティティ・コンテキストは、Webサービス・クライアントおよびWebサービスに対して不透過であり、ポリシーのアイデンティティ・コンテキストの伝播を有効にした後、アイデンティティ・コンテキストのサポートのためにWebサービス・クライアントまたはWebサービスで追加コーディングまたは追加処理を実行する必要はありません。

注意:
アイデンティティ・コンテキストの伝播は、SOA、WebCenterおよびWebLogic(Java EE)Webサービス・アプリケーションではサポートされません。

アイデンティティ・コンテキスト、アイデンティティ・コンテキスト・サービスの構成、アイデンティティ・コンテキストAPIの使用に関する詳細は、『Oracle Access Management管理者ガイド』のアイデンティティ・コンテキストの使用tに関する項を参照してください。

SAMLおよびJWTポリシーを使用したアイデンティティ・コンテキストの伝播

この機能を使用するには、Webサービス・ポリシーおよびWebサービス・クライアント・ポリシーの両方について、propagate.identity.context構成プロパティを使用することにより、アイデンティティ・コンテキストの伝播を明確に有効にする必要があります。つまり、Webサービス・クライアント・ポリシーおよびWebサービス・ポリシーの両方で明確に許可する場合にのみ、Oracle WSMでアイデンティティ・コンテキストを伝播できます。

Oracle WSMは、SAML 1.1、SAML 2.0またはJWTアサーションを使用することにより、Webサービス・クライアントからWebサービスにアイデンティティ・コンテキストを伝播します。したがって、SAMLおよびJWTポリシーにのみpropagate.identity.context構成プロパティが含まれます。

次のOracle WSMポリシーには、propagate.identity.context構成プロパティが含まれます。

- oracle/http_jwt_token_service_policyおよびoracle/http_jwt_token_client_policy

- oracle/http_jwt_token_over_ssl_service_policyおよびoracle/http_jwt_token_over_ssl_client_policy

- oracle/http_saml20_token_bearer_service_policyおよびoracle/http_saml20_token_bearer_client_policy

- oracle/http_saml20_token_bearer_over_ssl_service_policyおよびoracle/http_saml20_token_bearer_over_ssl_client_policy

- oracle/wss_saml_or_username_token_service_policy

- oracle/wss_saml_or_username_token_over_ssl_service_policy

- oracle/wss_saml_token_bearer_over_ssl_service_policyおよびoracle/wss_saml_token_bearer_over_ssl_client_policy

- oracle/wss_saml_token_over_ssl_service_policyおよびoracle/wss_saml_token_over_ssl_client_policy

- oracle/wss_saml20_token_bearer_over_ssl_service_policyおよびoracle/wss_saml20_token_bearer_over_ssl_client_policy

- oracle/wss_saml20_token_over_ssl_service_policyおよびoracle/wss_saml20_token_over_ssl_client_policy

- oracle/wss10_saml_token_service_policyおよびoracle/wss10_saml_token_client_policy

- oracle/wss10_saml_token_with_message_integrity_service_policyおよびoracle/wss10_saml_token_with_message_integrity_client_policy

- oracle/wss10_saml_token_with_message_protection_service_policyおよびoracle/wss10_saml_token_with_message_protection_client_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policyおよびoracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

- oracle/wss10_saml20_token_service_policyおよびoracle/wss10_saml20_token_client_policy

- oracle/wss10_saml20_token_with_message_protection_service_policyおよびoracle/wss10_saml20_token_with_message_protection_client_policy

- oracle/wss11_saml_token_with_message_protection_service_policyおよびoracle/wss11_saml_token_with_message_protection_client_policy

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy

- oracle/wss11_saml20_token_with_message_protection_service_policyおよびoracle/wss11_saml20_token_with_message_protection_client_policy

アイデンティティ・コンテキストの伝播の構成: メイン手順

この項の説明に従ってポリシーの「構成」タブでpropagate.identity.contextの値を指定するか、ポリシーのアタッチ時にこの値をオーバーライドできます。

注意:
JWTトークン・ポリシーの場合、「構成」タブは使用できません。これらのポリシーでは、「JWTトークン・ポリシーに対するアイデンティティ・コンテキスト伝播の構成」の説明に従って、アサーション・コンテンツXML内のプロパティを直接編集する必要があります。

ポリシーのアタッチ後のpropagate.identity.contextプロパティのオーバーライドに関する詳細は、次のトピックを参照してください。

- オーバーライド可能なWebサービス・ポリシーの添付

- オーバーライド可能なクライアント・ポリシーの添付

- グローバルにアタッチされたポリシーの構成プロパティのオーバーライド

注意:
有効なポリシー・セットが常にあるように、事前定義済ポリシーは編集しないことをお薦めします。ただし、「SAMLおよびJWTポリシーを使用したアイデンティティ・コンテキストの伝播」に記載された事前定義済SAMLポリシーを使用して、(サーバーおよびクライアントの両方の)新しいポリシーを作成できます。新しいポリシーの作成に関する詳細は、「既存のポリシーからのWebサービス・ポリシーの作成」を参照してください。新しいポリシーを作成した後、次のようにしてポリシーを編集し、propagate.identity.contextプロパティを設定できます。

デフォルトでは、propagate.identity.context構成プロパティは未設定であり、これはFalseと等価です。アイデンティティ・コンテキストの伝播を使用するには、propagate.identity.contextに明確にTrueを設定する必要があります。

SAMLポリシーに対するアイデンティティ・コンテキスト伝播の構成

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、アイデンティティ・コンテキストの伝播の構成が必要なドメインを表示します。ドメインを選択します。

2. コンテンツ・ウィンドウで、「WebLogicドメイン」、「Webサービス」、および「ポリシー」の順に選択します。

3. アイデンティティ・コンテキストの伝播を有効にするSAMLポリシーを選択し、「編集」をクリックします。Webサービス・クライアントおよびWebサービス・ポリシーの両方についてアイデンティティ・コンテキストの伝播を有効にする必要があることに注意してください。

4. 「ポリシーの編集」ページで、「構成」タブを選択します。

5. プロパティのリストからpropagate.identity.contextを選択し、「編集」をクリックします。

6. 図10-29に示すように、値フィールドをTrueに変更し、「OK」をクリックします。

図10-29 propagate.identity.contextプロパティをTrueに設定する

7. 「保存」をクリックして変更を送信します。

8. 対応するクライアント・ポリシーまたはサービス・ポリシーについて、必要に応じて手順3から7を繰り返します。

JWTトークン・ポリシーに対するアイデンティティ・コンテキスト伝播の構成

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、アイデンティティ・コンテキストの伝播の構成が必要なドメインを表示します。ドメインを選択します。

2. コンテンツ・ウィンドウで、「WebLogicドメイン」、「Webサービス」、および「ポリシー」の順に選択します。

3. アイデンティティ・コンテキストの伝播を有効にするJWTポリシーを選択し、「編集」をクリックします。Webサービス・クライアントおよびWebサービス・ポリシーの両方についてアイデンティティ・コンテキストの伝播を有効にする必要があることに注意してください。

4. 「ポリシーの編集」ページの「アサーション・コンテンツ」セクションで、propagate.identity.contextプロパティを見つけます。

5. 次のように、値フィールドをtrueに変更します。

<orawsp:Property orawsp:contentType="optional" orawsp:name="propagate.identity.context" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>

6. 「保存」をクリックして変更を送信します。

7. 対応するクライアント・ポリシーまたはサービス・ポリシーについて、必要に応じて手順3から6を繰り返します。

Kerberosトークンの使用

Oracle Fusion Middleware 11gリリース1 (11.1.1.9)では、次に示す事前定義済のポリシーとともに、Kerberosトークンもサポートされています。

- oracle/wss11_kerberos_token_client_policy

- oracle/wss11_kerberos_token_service_policy

- oracle/wss11_kerberos_token_with_message_protection_client_policy

- oracle/wss11_kerberos_token_with_message_protection_service_policy

- oracle/wss11_kerberos_token_with_message_protection_basic128_client_policy

- oracle/wss11_kerberos_token_with_message_protection_basic128_service_policy

また、次のアサーション・テンプレートを使用して、ポリシーを作成することもできます。

- oracle/http_spnego_token_client_template

- oracle/http_spnego_token_service_template

- oracle/wss11_kerberos_token_client_template

- oracle/wss11_kerberos_token_service_template

- oracle/wss11_kerberos_token_with_message_protection_client_template

- oracle/wss11_kerberos_token_with_message_protection_service_template

これらのポリシーおよびアサーションの詳細は、付録B「事前定義済ポリシー」および付録C「事前定義済アサーション・テンプレート」を参照してください。

この項に記載されている手順に従って、KerberosをWebサービス・クライアントとWebサービスで使用できるように構成します。

Microsoft Active DirectoryをKey Distribution Center(KDC)とともに使用することもできます。「Active DirectoryのKerberosおよびメッセージ保護との使用」を参照してください。

- MIT Kerberos KDCの初期化および起動

- プリンシパルの作成

- 正しいKDCを使用するためのWebサービス・クライアントの構成

- Webサービス・クライアントでのサービス・プリンシパル名の設定

- 設計時のWebサービス・クライアントでのサービス・プリンシパル名の設定

- 正しいKDCを使用するためのWebサービスの構成

- Enterprise Managerでの正しいkeytabファイルの使用方法

- サービス・プリンシパルに対応するユーザーの認証

- Webサービス・クライアントのチケット・キャッシュの作成

- SPNEGOネゴシエーションによるKerberosの構成

MIT Kerberos KDCの初期化および起動

Key Distribution Center (KDC)データベースの初期化たとえば、UNIXでは次のコマンドをルートとして実行する場合があります。ここで、example.comはデフォルトのレルムです。

root# /usr/kerberos/sbin/krb5_util -r example.com -s

kerberosサービス・プロセスを起動します。たとえば、UNIXでは次のコマンドをルートとして実行します。

root# /usr/kerberos/sbin/krb5kdc &
root# /usr/kerberos/sbin/kadmind &

プリンシパルの作成

KDCユーザー・レジストリに2つのアカウントを作成します。最初のアカウントは、エンド・ユーザー用のもの、つまりWebサービス・クライアント・プリンシパルです。2つ目のアカウントは、Webサービス・プリンシパル用のものです。

これらのアカウントを作成する方法には、kadmin.localツールを使用する方法があります。このツールは通常、MIT KDCの配布に含まれています。たとえば、次のようにします。

>sudo su - # become root
>cd /usr/kerberos/sbin/kadmin.local
>kadmin.local>addprinc fmwadmin -pw password
>kadmin.local> addprinc SOAP/myhost.example.com -randkey
>kadmin.local>listprincs # to see the added principals

この例のWebサービス・プリンシパル名(SOAP/myhost.example.com)は、ランダム・パスワードを使用して作成されています。Webサービス・プリンシパルは、キー表(サービス・プリンシパル名とキーを格納するファイル)を使用して、Kerberosシステムにログインします。ランダム・パスワードを使用することにより、セキュリティが強化されます。

正しいKDCを使用するためのWebサービス・クライアントの構成

Webサービス・クライアントは、正しいKDCに対して認証するように構成する必要があります。

KDCの構成は、UNIXホストの場合は/etc/krb5.confに存在し、Windowsホストの場合はC:\windows\krb5.iniに存在します。

例10-9に、サンプルのkrb5.confを示します。次の事項に注意してください。

- ファイルは、Kerberosランタイムに対して、操作のレルムと接続先のKDCエンドポイントを通知します。

- Kerberosトークン・ポリシーが動作するためには、このファイルのlibdefaultsセクションで、次の3つの追加プロパティが指定されている必要があります。

- default_tkt_enctypes

- default_tgs_enctypes

- permitted_enctypes

暗号スイートの順序は重要であり、クライアント側Kerberosポリシーで使用されているアルゴリズム・スイートに従う必要があります。たとえば、KDC-supported enc-typesがdes3-cbc-sha1、des-cbc-md5、des-cbc-crc、arcfour-hmacである場合、次のポリシーについてクライアントのkrb5.confで次の順序でenc-typesエントリを使用する必要があります。

- wss11_kerberos_with_message_protection_client_policy:

- default_tkt_enctypes = des3-cbc-sha1 des-cbc-md5 des-cbc-crc arcfour-hmac

- default_tgs_enctypes = des3-cbc-sha1 des-cbc-md5 des-cbc-crc arcfour-hmac

- permitted_enctypes = des3-cbc-sha1 des-cbc-md5 des-cbc-crc arcfour-hmac

- wss11_kerberos_with_message_protection_basic128_client_policy:

- default_tkt_enctypes = arcfour-hmac des3-cbc-sha1 des-cbc-md5 des-cbc-crc

- default_tgs_enctypes = arcfour-hmac des3-cbc-sha1 des-cbc-md5 des-cbc-crc

- permitted_enctypes = arcfour-hmac des3-cbc-sha1 des-cbc-md5 des-cbc-crc

例10-9 サンプルのkrb5.confファイル

[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log

[libdefaults]
default_realm = example.com
dns_lookup_realm = false
dns_lookup_kdc = false
default_tkt_enctypes = des3-cbc-sha1 des-cbc-md5 des-cbc-crc arcfour-hmac
default_tgs_enctypes = des3-cbc-sha1 des-cbc-md5 des-cbc-crc arcfour-hmac
permitted_enctypes = des3-cbc-sha1 des-cbc-md5 des-cbc-crc arcfour-hmac

[realms]
example.com =
{kdc = exampleadminserver.com:88  admin_server = exampleadminserver.com:749

default_domain = us.example.com  }
[domain_realm]
us.example.com = example.com

[kdc]
profile = /var/kerberos/krb5kdc/kdc.conf

[appdefaults]
pam =
{   debug = false    ticket_lifetime = 36000   renew_lifetime = 36000

forwardable = true    krb4_convert = false  }

Webサービス・クライアントでのサービス・プリンシパル名の設定

Kerberosクライアント側ポリシーを実行するWebサービス・クライアントは、アクセスを試行するサービスのサービス・プリンシパル名を認識している必要があります。サービス・プリンシパル名の設定は、「プリンシパルの作成」で行います。

「構成」ページでservice.principal.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。デフォルト(プレースホルダ)値は、HOST/localhost@example.comです。

設計時のWebサービス・クライアントでのサービス・プリンシパル名の設定

Kerberosクライアント側ポリシーを実行するWebサービス・クライアントは、アクセスを試行するサービスのサービス・プリンシパル名を認識している必要があります。サービス・プリンシパル名の設定は、「プリンシパルの作成」で行います。

設計時に構成のオーバーライドを使用し、次のようにサービス・プリンシパル名を指定します。

JAX-WS Clients:
((BindingProvider)port).getRequestContext().put(SecurityConstants.ClientConstants.WSSEC_KERBEROS_SERVICE_PRINCIPAL,
SOAP/myhost.example.com@example.com);

正しいKDCを使用するためのWebサービスの構成

適切なKDCに対してWebサービスを認証するように構成します。KDCの構成は、UNIXホストの場合は/etc/krb5.confに存在し、Windowsホストの場合はC:\windows\krb5.iniに存在します。

例10-9に、Webサービス・クライアント用のサンプルのKDC構成を示します。この例は、WebサービスのKDC構成にも適用されます。

Enterprise Managerでの正しいkeytabファイルの使用方法

正しいkeytabファイルを使用するには、次の作業を行います。

- keytabファイルの抽出とインストール

- krb5ログイン・モジュールの変更

これらの作業は、後続の項で説明されています。

keytabファイルの抽出とエクスポート

KDCからサービス・プリンシパル・アカウントのキー表ファイル(キー・タブとも呼ばれる)を抽出し、Webサービス実装のホストとなるマシンにインストールします。

たとえば、kadmin.localなどのツールを使用し、次のようにサービス・プリンシパル名のキー・タブを抽出できます。

>kadmin.local>ktadd -k /tmp/krb5.keytab SOAP/myhost.example.com

keytabファイルを、Webサービスのホストとなるマシンにエクスポートします。キー・タブはバイナリ・ファイルです。これをFTPで転送する場合は、バイナリ・モードを使用してください。

keytabファイルを使用するためのkrb5ログイン・モジュールの変更

「Configuring the SAML and Kerberos Login Modules」の説明に従って、WebサービスのKDCファイルの場所を識別するようにkrb5ログイン・モジュールを変更します。

たとえば、keytabファイルが/scratch/myhome/krb5.keytabにインストールされているとします。キー・タブとプリンシパルのプロパティを次のように変更します。

- principal value=SOAP/myhost.example.com@example.com

- useKeyTab value=true

- storeKey value=true

- keyTab value=/scratch/myhome/krb5.keytab

- doNotPrompt value=true

サービス・プリンシパルに対応するユーザーの認証

Webサービス・ランタイムでは、Kerberosトークンの妥当性を確認できる必要があります。

トークンが有効の場合、Oracle Platform Security Services(OPSS)は、サービス・プリンシパルに対応するユーザーを、構成済のWebLogic Server認証プロバイダのいずれかに対して認証できる必要があります(認証プロバイダは、「WebLogic Serverへの認証プロバイダの構成」で説明されています)。

そのため、ユーザーは、認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。

たとえば、SOAP/myhost.example.com@example.comなどのサービス・プリンシパルについて考えます。この例では、SOAP/myhost.example.comという名前のユーザーがアイデンティティ・ストアに存在する必要があります。@domainは、ユーザー・エンティティに含めないでください。

Webサービス・クライアントのチケット・キャッシュの作成

Webサービス・クライアントのチケット・キャッシュを作成するには、次の手順を実行します。

1. クライアント用に作成したユーザー・プリンシパルを使用して、Kerberosシステムにログインします。

>kinit fmwadmin password

2. これにより、チケット認可チケットを含むファイルシステムにチケット・キャッシュが作成されます。このことを確認するには、次のコマンドを入力します。

>klist -e

次のような情報が表示されます。

Credentials cache: /tmp/krb5cc_36687
Default principal: fmwadmin@example.com, 1 entry found.
[1]  Service Principal:  krbtgt/example.com@example.com
Valid starting:  Sep 28, 2007 17:20
Expires:         Sep 29, 2007 17:20
Encryption type: DES3 CBC mode with SHA1-KD

暗号化タイプが前述の情報を反映していることを確認します。

3. Webサービス・クライアントを実行します。

また、最初にKerberosにログインすることなく、Webサービス・クライアントを実行できます。Kerberosユーザー名およびパスワードに対するプロンプトが表示されます。この場合、チケット・キャッシュはファイルシステムに作成されず、メモリーに保持されます。

SPNEGOネゴシエーションによるKerberosの構成

SPNEGO(Simple and Protected GSSAPI Negotiation Mechanism)は、クライアントおよびサービスが認証に使用する方法をネゴシエートすることを可能にする標準です。SPNEGOではネゴシエーションを実行するためにHTTPヘッダーを使用するので、HTTPを使用するSOAPおよびRESTのエンドポイントが一般的であるWebなどのクロス・プラットフォームのコンテキストで特に役立ちます。

SPNEGOネゴシエーションでKerberosが使用される場合、KerberosトークンはHTTPヘッダーのauth-scheme Negotiateの下でラップされます。次のようにして、クライアントとサービス間でSPNEGOトークンの通信のために、WWW-AuthenticateおよびAuthorizationヘッダーが使用されます。

1. Authorizationヘッダーなしでクライアント・リクエストがサーバーの保護されたサービスにアクセスします。

2. リクエストにAuthorizationヘッダーがないので、サーバーはステータス・コード401(未認可)およびWWW-Authenticate: Negotiateとともに応答します。

3. クライアントは、Kerberosトークンを取得するためにユーザー資格証明を使用し、新しいリクエストのAuthorizationヘッダーでサーバーにそのトークンを送信します。たとえば、Authorization: Negotiate a87421000000492aa874209....のようになります。

4. サーバーは、このトークンをacceptSecContext() GSS-APIに渡すことによりデコードします。コンテキストが完了していない場合(相互認証の場合)、サーバーはGSS-APIデータを含む401ステータス・コードおよびWWW-Authenticateヘッダーとともに応答します。たとえば、WWW-Authenticate: Negotiate 74900a2a....のようになります。

5. クライアントはこのデータをデコードし、新しいデータをサーバーに返信します。セキュリティ・コンテキストが確立されるまでこのサイクルが続行されます。

Oracle WSMは、SPNEGOネゴシエーションを使用して、クライアントおよびサービスで認証用にKerberosを使用できるようにするために、次のアサーション・テンプレートを提供します。

- oracle/http_spnego_token_client_template

- oracle/http_spnego_token_service_template

これらのアサーション・テンプレートは、SOAPまたはRESTのエンドポイントにアタッチされたポリシーによって使用できます。

Active DirectoryのKerberosおよびメッセージ保護との使用

Microsoft Active DirectoryをKey Distribution Center(KDC)とともに使用することもできます。この項では、Active DirectoryをKerberosとメッセージ保護とともに使用する場合のKDCの構成方法について説明します。

この項では、Active Directoryに習熟していることを前提として説明します。詳細については、Active Directoryのドキュメントを参照してください。

Webサービス・クライアントの設定

この項では、次のタスクについて説明します。

- ユーザー・アカウントの作成

- Keytabファイルの作成

- サービス・プリンシパル名の設定

ユーザー・アカウントの作成

Active Directoryを使用してユーザー・アカウントを新規作成します。DES暗号化は使用しないでください。デフォルトでは、ユーザー・アカウントはRC4-HMACを使用して作成されます。

たとえば、ユーザーtestpolをユーザー・ログオン名test/testpolで作成できます。

ユーザー・ログオン名は、container/nameの形式にする必要があります。アカウントは任意のコンテナに作成できます。

Keytabファイルの作成

ktpassを使用してkeytabファイルを作成します。

ktpass -princ test/testpol@{domain} -pass {...}  -mapuser testpol -out
testpol.keytab -ptype KRB5_NT_PRINCIPAL  -target {domain}

ここで、test/testpolはサービス・プリンシパル名で、ユーザーtestpolにマッピングされています。/desonlyを指定したり、cryptoにdes-cbc-crcは指定しないでください。

サービス・プリンシパル名の設定

setSpnを使用して、サービス・プリンシパル名をユーザーにマッピングします。

setSpn -A test/testpol testpol
setSpn -L testpol (this should display the availabel mapping)

ユーザーにマッピングするサービス・プリンシパル名は1つのみにする必要があります。ユーザーにマッピングされたサービス・プリンシパル名が複数ある場合は、setSpn -D <spname> <username>を使用して削除します。

Webサービスの設定

Webサービスを設定するには、次の手順を実行します。

1. KerberosポリシーをWebサービスに添付します。

2. 正しいKDCに対してWebサービスを認証するように構成します。
KDCの構成は、UNIXホストの場合は/etc/krb5.confに存在し、Windowsホストの場合はC:\windows\krb5.iniに存在します。

デフォルトのドメインとレルムをkrb5.confまたはkrb5.iniファイルで構成します。RC4-HMAC暗号化タイプを有効にします(JDK6で使用可能)。

[libdefaults]

default_tkt_enctypes = rc4-hmac
default_tgs_enctypes = rc4-hmac
permitted_enctypes = rc4-hmac

3. 「Keytabファイルの作成」で作成したkeytabファイルを、Webサービスのホストとなるシステムにエクスポートします。キー・タブはバイナリ・ファイルです。これをFTPで転送する場合は、バイナリ・モードを使用してください。

4. 次のように、kinitを使用してkeytabファイルを検証します。

kinit -k -t <absolute path the the keytab file> <Service Principal Name>

5. 「SAMLおよびKerberosログイン・モジュールの構成」の説明に従って、krb5ログイン・モジュールを変更し、keytabの場所とサービス・プリンシパル名を指定します。
keytabファイルへの絶対パスを使用してください。また、サービス・プリンシパル名には必ず@realmnameを追加してください。たとえば、次のようにします。

principal value=test/testpol@example.com

SAMLメッセージ保護のユースケース

Webサービス・クライアントをwss11_saml_token_with_message_protection_client_policy policyで保護し、対応するWebサービスをwss11_saml_token_with_message_protection_service_policy policyで保護すると仮定します。

この項では、この2つのポリシーを使用して手順を説明します。

次の項目について説明します。

- 必要知識

- wss11_saml_token_with_message_protection_service_policyの要件

- 対称鍵によるメッセージ保護の方法

- キーストアに必要なキー

- マルチドメインのユースケース(キーストアの強化)

- SAML発行者をオーバーライドするタイミング

- メイン手順

- WebLogic Serverユーザーの作成

- Javaキーストアの作成

- Web Services Managerキーストアの構成

- 復号化キーのパスワードを資格証明ストアに格納

- ポリシーをWebサービスに添付

- ポリシーをWebサービス・クライアントに添付

必要知識

この項では、このSAMLメッセージ保護のユースケースを構成するために必要となる知識について説明します。次の項目について説明します。

- wss11_saml_token_with_message_protection_service_policyの要件

- 対称鍵によるメッセージ保護の方法

- キーストアに必要なキー

- マルチドメインのユースケース(キーストアの強化)

- SAML発行者をオーバーライドするタイミング

wss11_saml_token_with_message_protection_service_policyの要件

wss11_saml_token_with_message_protection_service_policyは、WS-Security 1.1標準に従って、インバウンドSOAPリクエストに対して、メッセージ・レベルの保護(つまり、メッセージ整合性とメッセージの機密保護)とSAMLベースの認証を行います。

メッセージは、WS-Securityの対称鍵テクノロジのBasic 128スイートを使用して保護されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

そのため、キーツール(またはその他のツール)を使用してこのポリシーに必要な署名や暗号化キーを作成する場合は、必ずRSA鍵メカニズム、SHA-1アルゴリズム、そしてAES-128ビット暗号化を使用して、キーのポリシー要件を満たす必要があります。

対称鍵によるメッセージ保護の方法

このポリシーは対称鍵テクノロジを使用しています。対称鍵暗号は、次のような単一の共有の秘密鍵に依存します。

1. クライアントは、対称鍵を作成し、それを使用して署名してメッセージを暗号化し、そしてリクエスト・メッセージでWebサービスとそれを共有します。
対称鍵を保護するために、リクエスト・メッセージで送信された対称鍵は、サービスの証明書を使用して暗号化されます。

2. Webサービスはリクエスト・メッセージ内の対称鍵を使用して、リクエスト・メッセージの署名を検証してそれを復号化し、それからレスポンス・メッセージに署名して暗号化します。

次のプロセス・フローを考慮します。

リクエストを作成するために、Oracle WSMエージェントは次のことを行います。

1. 共有の対称鍵を生成し、それを使用してリクエスト・メッセージの署名と暗号化の両方を行います。

2. その独自の秘密鍵を使用して、リクエスト・メッセージの署名を裏書きします。

3. Webサービスの公開鍵を使用して、対称鍵を暗号化します。

4. 対称鍵をリクエストとともにWebサービスに送信します。クライアントはリクエストで公開鍵を送信して、Webサービスがその署名を検証できるようにします。

Webサービスがリクエストを受け取ると、次のことを行います。

1. 秘密鍵を使用して、対称鍵を復号化します。

2. 対称鍵を使用して、リクエスト・メッセージを復号化し、その署名を検証します。

3. リクエスト・メッセージ内のクライアントの公開鍵を使用して、その裏書署名を検証します。

クライアントにレスポンスを送信するために、Webサービスは次のことを行います。

1. リクエストとともに送信されたクライアントが生成した同じ対称鍵を使用して、レスポンス・メッセージに署名します。

2. クライアントが生成した同じ対称鍵を使用して、レスポンス・メッセージを暗号化します。

Oracle WSMエージェントはレスポンス・メッセージを受け取ると、次のことを行います。

1. 最初に生成した対称鍵を使用して、レスポンス・メッセージを復号化します。

2. 最初に生成した対称鍵を使用して、レスポンス・メッセージの署名を検証します。

キーストアに必要なキー

クライアントとWebサーバーが、同じキーストアにアクセスする同じドメインにある場合は、同じ秘密/公開鍵のペアを共有できます。

つまり、クライアントが秘密鍵"orakey"を使用してリクエスト・メッセージの署名を裏書きし、公開鍵"orakey"を使用して対称鍵を暗号化できます。次に、Webサービスが公開鍵"orakey"を使用して裏書きを検証し、秘密鍵"orakey"を使用して対称鍵を復号化します。

デモの目的で、このユースケースでは1つの鍵ペアを作成します。

マルチドメインのユースケース(キーストアの強化)

クライアントとWebサーバーが同じドメインになく、同じキーストアにアクセスしない場合は、クライアントとWebサービスは各自が秘密/公開鍵のペアを持つ必要があります。

表10-3に示すように、マルチドメインのユースケースで次の要件について考慮します。

表10-3 マルチドメインのユースケース要件

Webサービス・クライアント

Webサービス

クライアントのキーストアに独自の秘密/公開鍵のペアが必要です。

サービス・キーストアに独自の秘密/公開鍵のペアが必要です。

Webサービスの公開鍵が必要です。

クライアントのキーストア内の公開鍵に対応する中間証明書とルート証明書が必要です。

これらの証明書を使用して、信頼される証明チェーンを生成して署名を検証します。

実行時の対称鍵の生成

対称鍵が必要ですが、これはリクエスト・メッセージで送信されます。

クライアントが対称鍵を暗号化するために使用する公開鍵、つまりWebサービスの公開鍵については、次の2つのアプローチがあります。

- 「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。そのため、この使用方法では、Webサービスの公開鍵はクライアントのキーストアになくても構いません。

- 証明書がWSDLでパブリッシュされていない場合、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。この方法では、Webサービスの公開鍵はクライアントのキーストアにある必要があります。

SAML発行者をオーバーライドするタイミング

クライアント・ポリシーのsaml.issuer.nameプロパティは、SAMLトークンの発行者を特定し、そのデフォルトはwww.oracle.comという値です。このユースケースでは、www.oracle.comデフォルトを使用します。

オプションで、「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

ポリシーで別のSAML認証局(発行者)を使用する場合は、その発行者名をクライアントで構成し、SAMLログイン・モジュール内の使用可能な発行者のリストに含める必要があります。この方法については、「別のSAMLアサーション発行者名の追加」を参照してください。

メイン手順

この項では、SAMLメッセージ保護のユースケースを構成する手順について説明します。次の項目について説明します。

- WebLogic Serverユーザーの作成

- Javaキーストアの作成

- Web Services Managerキーストアの構成

- 復号化キーのパスワードを資格証明ストアに格納

- ポリシーをWebサービスに添付

- ポリシーをWebサービス・クライアントに添付

WebLogic Serverユーザーの作成

SAMLトークン内のユーザーは、WebLogic Serverアイデンティティ・ストアにすでに存在している必要があります。

Webサービスのランタイムは、WS-SecurityヘッダーからSAMLトークンを抽出し、SAMLトークン内の名前を使用してWebLogic Serverアイデンティティ・ストアに対してユーザーを検証します。

特に、SAMLログイン・モジュール(「SAMLおよびKerberosログイン・モジュールの構成」を参照)では、WebサービスのかわりにSAMLトークンが検証されます。次に、SAMLログイン・モジュールは認証を完了するために、検証されたトークンからユーザー名を抽出し、Oracle Platform Security Services(OPSS)に(間接的に)渡します。

デフォルトの認証プロバイダなど、構成済のWebLogic Server認証プロバイダをここで呼び出すことができます。

ユーザーの作成

Oracle WebLogic Server管理コンソールのヘルプで説明されているように、WebLogic Server管理コンソールを使用して、ユーザーをアイデンティティ・ストアに追加します。

便宜のために、ここにも手順を掲載します。

WebLogic Server管理コンソールでユーザーを作成する手順

1. 左側のペインで、「セキュリティ・レルム」を選択します。

2. 「セキュリティ・レルム」ページの「サマリー」で、レルムの名前を選択します(たとえば、myrealm)。

3. 「レルム名」ページの「設定」で、「ユーザーとグループ」→「ユーザー」を選択します。
「ユーザー」表に、管理プロバイダで定義されているすべてのユーザーの名前が表示されます。

4. 「新規」をクリックします。

5. 「新規ユーザーの作成」ページの「名前」フィールドに、ユーザーの名前を入力します。
ユーザー名は大文字と小文字が区別され、一意である必要があります。カンマ、タブ、および次の「、」で区切ったリストの文字は使用しないでください。<>、#、|、&、?、( )、{ }

6. (オプション)「説明」フィールドに説明を入力します。説明は、ユーザーの完全な名前にします。

7. 「プロバイダ」ドロップダウン・リストで、ユーザーの認証プロバイダを選択します。
セキュリティ・レルムに複数のWebLogic認証プロバイダが構成されている場合は、それらがリストに表示されます。新規ユーザーの情報を格納するWebLogic認証プロバイダのデータベースを選択します。

8. 「パスワード」フィールドに、ユーザーのパスワードを入力します。
WebLogic認証プロバイダで定義されるユーザーの最大パスワード長は8文字です。

9. 「パスワードの確認」フィールドにユーザーのパスワードを再入力します。

10. 「OK」をクリックして変更内容を保存します。
ユーザー名が「ユーザー」表に表示されます。

Javaキーストアの作成

この項では、keytoolユーティリィティによるJavaキーストアの作成および管理のアウトラインを示します。また、キーストアを作成し、秘密鍵および信頼できるCA証明書をロードする方法について説明します。

keytoolユーティリティのコマンドや引数の詳細は、Webサイト(http://download.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html)を参照してください。

注意:
-genkeyコマンドを使用してエンティティをキーストアに追加してキーペア(公開鍵と秘密鍵)を生成する場合、または-importコマンドを使用して証明書または証明書チェーンを信頼できる証明書のリストに追加する場合は、別名を指定します。
その後のkeytoolコマンドでは、この同じ別名を使用してエンティティを参照する必要があります。

1. 新しいキー・ペアと自己署名証明書を作成します。
genKeyコマンドを使用してキー・ペア(公開鍵と秘密鍵)を作成します。秘密鍵が存在しない場合、genKeyは新しい秘密鍵を作成します。

次のコマンドでは、署名アルゴリズムRSA-SHA1とdefault-keystore.jksキーストアの別名「orakey」を使用して、RSA鍵が生成されます。任意の別名を選択できます。別名を「orakey」にする必要はありません。

keytool -genkey -alias orakey -keyalg "RSA" -sigalg "SHA1withRSA" -dname "CN=test, C=US" -keystore default-keystore.jks

keytoolユーティリティから必要な鍵とキーストアのパスワードを要求するプロンプトが表示されます。これらのパスワードは後で必要になります。

2. 認証局への証明書リクエストを生成します。
リクエストの生成には、-certreqコマンドを使用します。次のコマンドでは、orakey別名の証明書リクエストが生成されます。

CAから証明書または証明書チェーンが返されます。

keytool -certreq -alias orakey -sigalg "SHA1withRSA" -file certreq_file -storetype jks -keystore default-keystore.jks

3. 自己署名証明書を信頼できるCA証明書で置き換えます(インポートします)。
既存の自己署名証明書をCAから返される証明書で置き換える必要があります。これを実行するには、-importコマンドを実行します。次のコマンドでは、default-keystore.jksキーストアの信頼できるCA証明書で置き換えます。keytoolユーティリティから必要なパスワードを要求するプロンプトが表示されます。

keytool -import -alias orakey -file certreq_file -keystore default-keystore.jks

Web Services Managerキーストアの構成

Oracle Web Services Managerキーストアを構成するには、次の手順を実行します。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、キーストアの構成が必要なドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「セキュリティ」→「セキュリティ・プロバイダ構成」をクリックします。
ページの下部近くにある「キーストア」コントロールのプラス記号(+)をクリックして開き、「構成」をクリックします。

図10-3に示すように、Web Services Managerの「キー・ストアの構成」ページが表示されます。

3. 「キーストア管理の構成」チェック・ボックスがまだ選択されていない場合は、選択します。

4. 作成するキーストアのパスと名前を入力します。デフォルトのキーストア名は、このユースケースで使用したように、default-keystore.jksです。キーストア・タイプはJKSにする必要があります。

5. キーストアのパスワードを入力して確認します。

6. 署名と暗号化キーの別名とパスワードを入力します。
このユースケースでは、orakeyは署名と暗号化キーの両方の別名です。

パスワードを確認します。

7. 「OK」をクリックして変更内容を送信します。
このページのフィールドを変更した場合、変更内容を反映するにはFusion Middleware Controlを再起動する必要があります。

復号化キーのパスワードを資格証明ストアに格納

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

ポリシーをWebサービスに添付

「単一のサブジェクトへのポリシーの添付」の説明に従って、wss11_saml_token_with_message_protection_service_policyをWebサービスに添付します。

ポリシー・アサーションを、メッセージの署名およびメッセージの暗号化に構成します。

デフォルトでは、リクエストおよびレスポンスの本体全体を署名および暗号化します。そのかわりに、特定の本体要素を指定して署名および暗号化する方法もあります。署名および暗号化するヘッダー要素を追加で指定することもできます。ここで設定したものは、クライアント・ポリシー設定と一致している必要があります。

注意:
ore.sig.csf.key and keystore.enc.csf.key, as described in 「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、keystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドできます。
これらの値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、これらのキーをキーストアに構成する必要がなくなるわけではありません。

ポリシーをWebサービス・クライアントに添付

「Webサービス・クライアントへのポリシーの添付」の説明に従って、wss11_saml_token_with_message_protection_client_policyをWebサービス・クライアントに添付します。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

デフォルトでは、本体全体を署名および暗号化します。そのかわりに、特定の本体要素を指定して署名および暗号化する方法もあります。署名および暗号化するヘッダー要素を追加で指定することもできます。ここで設定したものは、Webサービス・ポリシー設定と一致している必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。WSDLの証明書は、デフォルトではサービスの公開鍵です。これはWeb Services Managerキーストアを構成したときに指定した暗号化キー("orakey")によって決まります。

そのため、keystore.recipient.aliasを設定または変更する必要はありません。

オプションで、「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAML発行者をオーバーライドするタイミング」を参照してください。

「構成」ページでuser.roles.includeの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

WS-Trustポリシーと構成手順

ここでは、事前定義済WS-Trustポリシーおよびその構成と使用の方法について説明します。次の項目について説明します。

- WebサービスWS-Trustの概要

- STSの自動ポリシー構成の設定

- WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド

- サポートされるSTSサーバー

- 使用可能なWS-Trustポリシー

WebサービスWS-Trustの概要

WS-Trust 1.3仕様は、セキュリティ・トークンのリクエストおよび発行を行う際の枠組みを提供するWS-Securityへの拡張機能と、ブローカ・トラスト関係への拡張機能を定義します。WS-Trust拡張機能は、セキュリティ・トークンの発行、更新および検証を行う方法を提供しています。

Webサービス・クライアントとWebサービスとの間の通信を保護するには、両者がセキュリティ資格証明を交換する必要があります。WS-Trustの仕様で定義されているように、こうした資格証明は、信頼ブローカとして動作する信頼できるSecurityTokenService(STS)から取得できます。つまり、相互運用可能なセキュリティ・トークンを入手するには、Webサービス・クライアントとWebサービスの両者がそのSTSを信頼している必要があります。

この項の内容は次のとおりです。

- STS構成を取得する方法

- 一般的なトークン・リクエストおよびレスポンス

- WS-Trustのユースケースの例

- トークンの存続期間

- 交換されるトークン・タイプ

- WS-Trustでの送信者保証の概要

STS構成を取得する方法

一般的に、環境内には1つのSTSのみが存在します。数百の様々なWebサービスが存在し、そのすべてにこのSTS構成ポリシーがアタッチされていれば、ポリシーを変更することにより、異なるSTSを参照するようにすべてのWebサービスを簡単に変更できます。

このSTSもまた、Webサービスです。クライアント・アプリケーションは、STSと通信するために、port-uri、port-endpoint、wsdl-uri、さらに認証しようとするクライアントから受け入れることができるセキュリティ・トークンなど、STSの詳細を認識する必要があります。

2つのメカニズムにより、STS情報はクライアントで使用可能になります。

- 自動(クライアントSTS)ポリシー構成(「STSの自動ポリシー構成の設定」を参照してください)を使用する場合。自動ポリシー構成では、STS WSDLドキュメントを解析することにより、STSに関する情報を動的に生成します。
自動ポリシー構成は、STS構成ポリシーがクライアントではなくWebサービスにアタッチされたときにトリガーします。また、STS構成ポリシーで提供される情報は、ターゲットSTSのport-uriのみです。

このポリシーが発行済トークン・サービス・ポリシーとともにWebサービスにアタッチされた場合、STSのport-uriがWebサービスWSDLのIssuedTokenアサーションに発行者アドレスとして示されます。その結果として、STS WSDLにアクセスすることによって他のすべてのSTS情報(ターゲット・ネームスペース、サービス名、エンドポイントなど)が取得され、STS構成としてメモリー内に保存されます。この情報はメモリー内にのみ格納され、Oracle WSM Repository内で永続化されません。(リポジトリの詳細は、第17章「Oracle WSMリポジトリの管理」を参照してください)。

WebサービスSTS構成ポリシーでSTS URIを指定し、それをWebサービスにアタッチした場合、クライアントでそのSTSの使用が強制されます。オーバーライドはできません。

- 自動ポリシー構成を使用せず、かわりにWebサービスを起動する前に、クライアントにSTS構成ポリシーをアタッチし、STSに関連する情報(port-endpoint、port-uri、公開鍵別名、STSへの認証に使用されるOracle WSMクライアント・ポリシーへの参照)をすべて指定します。この場合、STS構成ポリシーからのすべての情報が実行時にすでに使用可能です。

一般的なトークン・リクエストおよびレスポンス

一般的なトークン・リクエスト/レスポンス・プロセスは、次のとおりです。この手順の詳細は、「WS-Trustのユースケースの例」に記載されているユースケースを参照してください。

1. Webサービス・クライアントでWebサービスを起動する必要があります。Oracle WSMエージェントは、WebサービスのWSDLをフェッチし、発行済トークン・サービス・ポリシーの抽出を試みます。Oracle WSMエージェントは、WSDLで識別されたSTSと対話するために、(必要に応じてオーバーライドされた)ローカル・クライアント・ポリシーを使用します。
Webサービス・ポリシーでは、特定のSTSから発行されるトークンを求めることができます。

2. Webサービス・クライアントは、STSにトークンの発行をリクエストします。Webサービス・クライアントは、特定のSTSにトークンをリクエストできます。
リクエスト・セキュリティ・トークン(RST)は、セキュリティ・トークンのリクエストです。RequestSecurityTokenResponse(RSTR)は、リクエスト・ユーザーの要求に伴って、STSによって生成されたRSTに対するレスポンスです。

3. Webサービス・クライアントは、STSによって送信されたRSTRを処理し、発行済トークンをWebサービスに伝播します。

4. Webサービスは、発行済トークンを処理および検証し、返信レスポンスを生成します。

WS-Trustのユースケースの例

ここでは、WS-Trustのユースケースの例について説明します。

1. Webサービス・クライアントは、Webサービスを起動します。WebサービスのWSDLは、Webサービスが特定のSTSからのセキュリティ・トークンを要求していることを示します。

2. Webサービス・クライアント(要求者)は、付随する資格証明とともに、認証リクエストをSTSに送信します。

3. STSは、クライアントによって提示された資格証明を検証した後、クライアントがSTSにより認証されたことを証明するセキュリティ・トークンをレスポンスで発行します。レスポンス・メッセージRSTRには、認証済ユーザーのトークンおよび(必要に応じて)要求が含まれます。

4. 要求者はRSTRを検証し、トークンを抽出し、Webサービスに渡します。

5. Webサービスは、発行されたトークンを受信し、トークンが信頼できるSTSによって発行されたことを確認します。これによって、クライアントがSTSにより正常に認証されたことが証明されます。
Webサービスは、トークンが検証されると、リクエストを処理し、応答を返信します。

図10-30に、要求者、STSおよびWebサービス間のメッセージ・フローを示します。

図10-30 STSユースケースのメッセージ・フロー

On Behalf Ofユースケース

「On Behalf Of」は、Webサービス・クライアントが別のエンティティに代わってSTSトークンをリクエストするアイデンティティ伝播ユースケースです。

次のシナリオを考えてみます。

1. Webサービス・クライアントは、別のエンティティのトークンを取得するためにSTSを起動します。このエンティティは、エンド・ユーザーまたはその他の外部エンティティでもかまいません。エンティティの資格証明は、onBehalfOf要素のRSTに含まれます。

2. STSは、Webサービス・クライアントによって提示された資格証明を検証し、onBehalfOf要素内で識別済エンティティのセキュリティ・トークンを発行します。

3. Webサービス・クライアントはRSTRを検証し、トークンを抽出し、Webサービスに渡します。

4. Webサービスは、エンド・ユーザーのSAMLアサーションを受信し、トークンが信頼できるSTSによって発行されたことを確認します。

「On Behalf Of」ユースケースは、表8-4に記載されているsts.auth.on.behalf.of.csf.keyプロパティおよびon.behalf.ofプロパティに依存します。サブジェクトから「On Behalf Of」ユーザー名が取得された場合、パスワードを持たないユーザー名です。

sts.auth.on.behalf.of.csf.keyで「On Behalf Of」ユーザー・エンティティのCSF鍵が識別された場合、CSF鍵を使用して確立されたアイデンティティが他のエンティティに代わって送信されます。この場合は、パスワードを持つユーザー名またはパスワードを持たないユーザー名です。

トークンの存続期間

STSからのRSTRレスポンス・メッセージには、返されたトークンの妥当性を示す存続期間要素(<trust:Lifetime>)が含まれる場合があります。存続期間要素が存在する場合、Oracle WSMはタイムスタンプを検証し、レスポンスが期限切れであればメッセージを拒否します。

交換されるトークン・タイプ

STSは、理論的にはクライアントから任意のトークンを受信でき、それを他の任意のトークンに交換できますが、実際には一般に次のいずれかのトークンを受け入れ、SAMLアサーションを返します。

- ユーザー名トークン。このトークン・タイプの場合:

1. Webサービス・クライアントは、ユーザー名とパスワードをSTSに送信します。

2. STSはパスワードを検証し、SAMLアサーションを返します。

3. クライアントは、WebサービスにSAMLアサーションを送信します。

このシナリオは、Webサービスにはパスワードを検証する機能がなく、したがってパスワードの検証をSTSに依存する場合に役立ちます。

- Kerberosトークン。このトークン・タイプの場合:

1. クライアントはユーザー名とパスワードをKDCに送信し、Kerberosトークンを取得します。

2. クライアントはKerberosトークンをSTSに送信し、SAMLアサーションを取得します。

3. クライアントは、WebサービスにSAMLアサーションを送信します。

このシナリオは、Windows環境で役立ちます。Windowsマシン上で実行するクライアントはログオン済ユーザー・コンテキストを持ち、このコンテキストを使用して該当ユーザーのSTSからSAMLアサーションを取得できます。

このシナリオでは、クライアントはパスワードを持たず、したがってユーザー名トークンは使用できません。Kerberosのみを使用できます。

- X509トークン - このトークン・タイプでは、クライアントは自身をSTSに対して認証するために秘密鍵を使用します。

これを受けてSTSは、一般に次のいずれかのトークンを返します。

- SAML対称鍵所有者。STSによって返されるSAMLアサーションは、自身のクライアント・トークン(ユーザー名トークン、Kerberos、X509など)をSTSに送信した特定のクライアントのみが対象になります。
ローグ・クライアントがこのSAMLアサーションを盗難し、使用することを許すべきではありません。このために、対称または非対称のいずれかの「証明鍵」を使用できます。

対称証明鍵は、「証明鍵の決定方法(SAML HOKのみ)」で説明されているように、STS側、クライアント側またはその両側の入力から生成されます。

STSは、Webサービスのみが復号化できる暗号化された形式でSAML HOKアサーションにこの対称証明鍵を格納します。次に、(暗号化された証明鍵を含む)SAMLアサーション全体に署名し、それをクライアントに送信します。

また、クライアントがサーバーにこのSAMLアサーションを送信する場合は、この証明鍵による署名も必要になります。Webサービスは、まずSAMLアサーションのSTS署名を検証し、SAMLアサーションから証明鍵を抽出した後に復号化し、クライアントの署名を検証します。このクライアントの署名は、クライアントが証明鍵を持つことをサーバーに「証明」します。

この証明鍵はクリア・テキストで送信されないので、ローグ・クライアントがネットワーク・スニッフィングによって取得することはできません。ローグ・クライアントがネットワーク・スニッフィングによってSAMLアサーションを取得しても、証明鍵を持たず、証明鍵で署名できないので、利用することはできません。したがって、ローグ・クライアントはSAMLアサーションの使用が許可されていることをサーバーに証明できません。

- SAML非対称鍵所有者。非対称証明鍵は、次のように動作します。

1. クライアントは公開鍵/秘密鍵ペアを生成します。

2. クライアントは秘密鍵を保存し、そのトークン(ユーザー名トークン、Kerberos、X509など)とともに公開鍵を安全にSTSに送信します。

3. STSはクライアントのトークンを検証し、公開鍵を含むSAMLアサーションを返します。(公開鍵を含む)SAMLアサーション全体がSTSによって署名され、クライアントに返されます。

4. 次に、クライアントはSAML HOK非対称アサーションをWebサービスに送信し、その公開鍵/秘密鍵ペアの秘密鍵により署名します。

5. Webサービスは、SAMLアサーションのSTSの署名を検証した後、SAMLアサーションから公開鍵を抽出し、その公開鍵を使用してクライアントの署名を検証します。
このクライアントの署名は、SAMLアサーションが正しく使用されており、盗難およびリプレイされていないことをWebサービスに証明します。

注意:
SAML HOK対称鍵の場合とは異なり、SAML HOK内のこの公開鍵は暗号化されません。これによって、STS側で必要な構成が軽減されます。
SAML HOK対称の場合、Webサービスの対称鍵を暗号化できるように、各Webサービスの証明書によりSTSを構成する必要があります。これは、非対称SAML HOKでは必要ありません。

また、特定のWebサービスの鍵により暗号化されないので、同じSAML HOK非対称トークンを任意のWebサービスに送信できます。

注意:
公開鍵/秘密鍵ペアが存在しても、関連する証明書はありません。つまり、証明書のリクエストのために公開鍵が認証局に送信されることはありません。
その代りに、STSはCAと同様に動作します。CAは公開鍵を取得し、証明書を返します。この場合、STSは公開鍵を取得し、SAMLアサーションを返します。

ただし、存続期間が通常は数年にわたる証明書とは異なり、STSによって発行されるSAMLアサーションの存続期間は通常は数時間であり、その後クライアントは新しい鍵ペアを生成し、新しいSAMLアサーションをリクエストする必要があります。

この短い存続期間のために、証明書で必要になる失効チェックは不要です。これは、クライアントの鍵を管理する必要がないので、クライアント側で魅力的になります。

- SAMLベアラー - SAMLベアラー鍵には、関連付けられた証明鍵はありません。したがって、ローグ・クライアントによる盗難およびリプレイを防止するために、SSL経由で使用する必要があります。

証明鍵の決定方法(SAML HOKのみ)

SAML鍵所有者(HOK)にとっては、クライアントとWebサービス間の通信を保護するために証明鍵が必要です。証明鍵は、リクエストされたセキュリティ・トークンに関連付けられたトークンを所有していることを証明します。

<sp:IssuedToken>ポリシー・アサーションの<key-type>エントリのoracle/wss11_sts_issued_saml_hok_with_message_protection_service_policyに、証明鍵タイプの要件を指定します。次に例を示します。

<orasp:request-security-token-templateorasp:key-type = "Symmetric"

または

orasp:key-type = "Public"

対称鍵および非対称鍵がサポートされます。また、証明鍵がなくてもかまいません(非定義)。

こうした<key-type>の可能値は、WS-Trust 1.3仕様に含まれています。

- http://docs.oasis-open.org/ws-sx/ws-trust/200512/PublicKey

- http://docs.oasis-open.org/ws-sx/ws-trust/200512/SymmetricKey

対称証明鍵の計算

Webサービスのセキュリティ・ポリシーによって対称証明鍵が求められる場合、要求者は証明鍵の計算に含めることができる鍵の内容の一部(エントロピ)を渡すことができます。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

ただし、証明鍵として何を使用するかはSTSが判断します。STSは、トークン・リクエストの処理時に次のことを実行できます。

- 証明鍵の単独鍵の内容としてクライアント・エントロピを受け入れます。この場合、RSTR内に<wst:RequestedProofToken>要素は存在しません。証明鍵は暗黙に示されます。
Oracle WSMエージェントは、署名および暗号化のための鍵の内容としてクライアント・エントロピを使用します。

- 鍵の部分的内容としてクライアント・エントロピを受け入れ、両鍵の部分的内容の関数として証明鍵を計算するために、鍵の部分的内容として追加STSサーバー側エントロピを提示します。
STSにより提供されたエントロピを含む<wst:Entropy>要素がRSTR内に存在します。また、RSTRには<wst:RequestedProofToken>要素があり、この要素には計算鍵のメカニズムが含まれます。アルゴリズムのデフォルト値は、http://docs.oasis-open.org/ws-sx/ws-trust/200512/CK/PSHA1です。

Oracle WSMエージェントおよびSTSは、指定された計算鍵メカニズムを使用して両方のエントロピを組み合せることにより、証明鍵を計算します。

- クライアント側エントロピを拒否し、単独鍵の内容としてSTSサーバー側エントロピを証明鍵に使用します。
証明鍵を含む<wst:RequestedProofToken>要素がRSTR内に存在します。Oracle WSMエージェントは、署名および暗号化のための鍵の内容としてSTSエントロピを使用します。

非対称証明鍵のリクエスト

非対称証明鍵は秘密鍵/公開鍵ペアを使用し、公開鍵と秘密鍵が異なるために「非対称」と呼ばれています。

非対称鍵のトークンをリクエストする場合、URIとしてhttp://docs.oasis-open.org/ws-sx/ws-trust/200512/PublicKey.を含むwst:KeyType要素がRSTに存在します。

WS-Trustでの送信者保証の概要

STSは一般に、SAML HOKまたはSAMLベアラー・トークンを返します。ただし、STSはSAML送信者保証トークンを返す場合もあります。

SAML送信者保証の信頼モデルは完全に異なります。HOKおよびベアラー内で、SAMLアサーションがSTSによって発行され、STSによって署名されます。この場合、Webサービスはクライアントを直接信頼せず、STSを信頼します。WebサービスがHOKまたはベアラーのトークンを受信した場合、信頼できるSTSに対して署名を検証します。

この間接的な信頼モデルにより、トラスト・ストアの管理が大幅に単純化されます。つまり、5つのクライアントがメッセージ保護を使用して5つのWebサービスと通信する場合、各Webサービスは5つのクライアントの公開鍵を認識する必要があります。したがって、中間にSTSが存在する場合、WebサービスはSTSの公開鍵のみを認識するだけで済みます。

SAML送信者保証では、Webサービスはクライアントを直接信頼します。SAML送信者保証トークンは一般的に、クライアントによって直接生成され、クライアントの秘密鍵によって署名されます。ただしクライアントは、トークンを生成するようにSTSに要求できます。この場合、STSはSAMLアサーションに署名せず、そのままクライアントに返します。クライアントは、前述と同様にSAML送信者保証トークンに署名し、それをWebサービスに送信します。Webサービスは、クライアントがSTSからSAML送信者保証トークンを取得したことを認識しておらず、クライアントの署名をチェックします。

STSの自動ポリシー構成の設定

自動ポリシー構成では、STS WSDLドキュメントを解析することにより、STSに関する情報を動的に生成します。

STS構成ポリシーが(クライアントではなく)Webサービスにアタッチされている場合、クライアントからサーバーへの最初の接続で実行時に自動ポリシー構成が行われます。

STS構成ポリシー(oracle/sts_trust_config_service_policy)で提供する情報は、ターゲットSTSのport-uriのみです。このポリシーが(発行済トークン・サービス・ポリシーとともに)Webサービスにアタッチされた場合、STSのport-uriがWebサービスWSDLのIssuedTokenアサーションに発行者アドレスとして示されます。

その結果としてOracle WSMは、STS WSDLにアクセスすることによって他のSTS情報(ターゲット・ネームスペース、サービス名、エンドポイントなど)を取得し、STS構成としてメモリー内に保存します。この情報はメモリー内に保存されますが、MDS内で永続化されません。

この項の内容は次のとおりです。

- 「自動ポリシー構成の要件」

- 自動ポリシー構成の設定: メイン手順

- Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順

自動ポリシー構成の要件

自動ポリシー構成を使用してSTSと正常に通信するには、次の要件があります。

- 自動ポリシー構成は、JSEクライアントでは動作しません。WS-TRUSTのシナリオでJSEクライアントを使用する場合は、sts_trust_config_client_policyポリシーおよび発行済トークン・クライアント・ポリシーの両方をアタッチすることにより、クライアントにすべてのSTS構成情報を提供する必要があります。

- oracle/sts_trust_config_service_policyポリシーは、Webサービスにアタッチする必要があります。そうしない場合は、自動ポリシー構成を使用できず、その代りに「Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順」の説明に従って、クライアントのoracle/sts_trust_config_client_policyポリシーを手動で構成する必要があります。

- 信頼はWebサービスとクライアント間に存在するために、SAML送信者保証確認に自動ポリシー構成は使用できません。WebサービスのWSDLには、STSに関する情報は含まれません。

- STSの証明書および公開鍵の別名がキーストアに存在する必要があります。デフォルトの別名はsts-csf-keyです。この方法の詳細は、「メッセージ保護に関するキーストアの構成」を参照してください。

- STSキーストアでクライアントの公開鍵が使用可能であることが必要です。

自動ポリシー構成の設定: メイン手順

自動ポリシー構成を使用するには、次の手順を実行します。

1. 自動ポリシー構成のためのポリシーの構成

2. 自動ポリシー構成のためのWebサービス・クライアントの構成

3. 自動ポリシー構成のためのWebサービスの構成

自動ポリシー構成のためのポリシーの構成

自動ポリシー構成のポリシーを構成するには、次の手順を実行します。

1. Webサービスが信頼するSTSを決定し、そのSTSの公開証明書をOracle WSMキーストアにインポートします。

2. 必要に応じて、「証明書の署名用の信頼できる発行者および信頼できるDNリストの定義」の説明に従って、信頼できるSTSリストにSTSのDNを追加します。

3. SAML HOK対称を使用する場合は、WebサービスおよびWebサービスの証明書のエントリをOracle OpenSSO STS構成に追加する必要があります。STSは、この証明書を使用して対称鍵を暗号化します。

4. sts_trust_config_service_policyポリシーのコピーを作成します。

5. orasp:port-uriフィールドを編集し、STSのport-uriを追加します。
STSは通常、様々な入出力トークン・タイプの複数のURIポイントを公開しているので、必要なトークンに対応するURIを使用します。Oracle OpenSSO STSでは、orasp:port-uriの可能な値は次のとおりです。

- http://<host:port>/openssosts/sts/wss10x509

- http://<host:port>/openssosts/sts/wss10un

- http://<host:port>/openssosts/sts/wss11kerberos

- https://<host:ssl_port>/openssosts/sts/tlswss10un

自動ポリシー構成のためのWebサービス・クライアントの構成

自動ポリシー構成のWebサービス・クライアントを構成するには、次の手順を実行します。

1. Webサービスで必要となるトークン・タイプに応じて、発行されたトークン・ポリシーをWebサービス・クライアントに添付します。
事前定義された次の発行済トークン・ポリシーが提供されています。

- SAML HOKではoracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy。

- SAMLベアラーではoracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy。

2. ユースケースに応じて、発行済トークン・ポリシーの次のプロパティを設定またはオーバーライドします。プロパティの説明は、表8-4を参照してください。

- sts.auth.user.csf.key

- sts.auth.x509.csf.key

- sts.keystore.recipient.alias

- sts.auth.keytab.location

- sts.auth.caller.principal.name

- sts.auth.service.principal.name

- sts.auth.on.behalf.of.csf.key

- on.behalf.of

sts.keystore.recipient.aliasは、メッセージ保護のためにSTS通信のクライアントにより使用されます。STS通信のクライアントがwss11メッセージ保護を使用している場合には、十分なものです。

ただし、wss10メッセージ保護を使用している場合、クライアントの署名鍵および暗号化鍵を追加設定した後、これらの鍵に対する信頼をSTS構成にインポートする必要があります。

3. STSの公開証明書および資格証明がキーストア内にあり、クライアントの公開鍵がSTSキーストア内で使用可能であることを確認します。この方法の詳細は、「メッセージ保護に関するキーストアの構成」を参照してください。

自動ポリシー構成のためのWebサービスの構成

1. 編集したsts_trust_config_service_policyをWebサービスにアタッチします。

注意:
sts_trust_config_service_policyポリシーおよびSTS発行済トークン・サービス・ポリシーの両方をアタッチする必要があります。ポリシーはペアとして動作します。

2. (クライアントにアタッチされたポリシーに対応する)発行済トークンのサービス・ポリシーをアタッチします。事前定義された2つの発行済トークン・ポリシーがあります。

- oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy - サービスで非対称または対称のSAML HOKを受け入れる場合に使用します。このポリシーに対してSSLを使用しないでください。
その他すべてのwss11メッセージ保護ポリシーの場合と同様に、暗号化鍵を設定する必要があります。

このポリシーでは、いくつかのオプションを変更できます。たとえば、SAML 1.1または2.0のいずれを要求するか、非対称鍵または対称鍵のいずれを要求するかなどです。

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy - SAMLベアラーが必要な場合に使用します。ただし、SSLでこのポリシーを使用するためにWebサービスを設定する必要があります。
SAML 1.1または2.0のいずれを要求するかを指定できます。

3. 必要に応じて、発行済トークン・サービス・ポリシーでkeystore.enc.csf.keyをオーバーライドします。

4. Oracle WSMキーストアでクライアントの公開鍵が使用可能であることを確認します。

Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順

「STSの自動ポリシー構成の設定」の説明に従って、WebサービスからSTS構成ポリシーを構成することをお薦めします。ただし、次の条件では、Webサービス・クライアントから構成する必要があります。

- WebサービスからSTS構成ポリシーを構成しなかった場合、または

- SAML送信者保証確認の方法を使用している場合、または

- JSEクライアントを使用している場合。自動ポリシー構成は、JSEクライアントでは動作しません。

Webサービス・クライアントからSTS構成ポリシーを構成するには、次の手順を実行します。

1. 必要に応じて、Fusion Middleware Controlを使用して、oracle/sts_trust_config_template(「新しいWebサービス・ポリシーの作成」を参照してください)または既存のoracle/sts_trust_config_client_policyポリシー(「既存のポリシーからのWebサービス・ポリシーの作成」を参照してください)から新しいポリシーを作成します。
一意のポリシーを使用することで、構成がより明確になる場合もあります。

2. Fusion Middleware Controlを使用して、選択したoracle/sts_trust_config_client_policyポリシーを編集します。

3. 例10-10に、事前定義済のoracle/sts_trust_config_client_policyポリシーを示します。少なくとも、次の情報を提供する必要があります。

- 発行者アドレス - Port-uriは、STSの実際のエンドポイントのURIです。

- Oracle WSMセキュリティ・ポリシー参照 - policy-reference-uriは、STSと通信するためにクライアントによって使用されるクライアント・ポリシーURIです。WSDLでの識別に従い、選択するポリシーはSTSの認証要件に応じて異なります。
このパラメータを設定する方法によって、発行済トークン・クライアント・ポリシーで後ほど設定またはオーバーライドする必要がある対象が決まります。

- policy-reference-uriポリシーを参照する場合、STSに対して認証し、ユーザー名トークンを作成するためのsts.auth.user.csf.keyパラメータの構成を行います。また、署名鍵および暗号化鍵の別名を指定するためのsts.auth.x509.csf.keyの構成を行います。

- policy-reference-uriでx509ベースのポリシーを参照する場合、STSに対する認証用のX509証明書を指定するためのsts.auth.x509.csf.keyパラメータの構成を行います。

- port-endpoint - target-namespace#wsdl.endpoint(service-name/port-name)として指定するWebサービスのエンドポイントです。

- STS証明書の別名 - sts-keystore-recipient-aliasは、キーストアに追加したSTS証明書の別名です。デフォルトの別名はsts-csf-keyです。

例10-10 oracle/sts_trust_config_client_policy

<orasp:sts-trust-config
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:policy-reference-uri="oracle/wss10_username_token_with_message_protection_client_policy"
orasp:port-endpoint="target-namespace#wsdl.endpoint(service-name/port-name)"
orasp:port-uri="http://host:port/sts-service" orasp:soap-version="12"
orasp:sts-keystore-recipient-alias="sts-csf-key"
orasp:wsdl-uri="http://host:port/sts?wsdl" orawsp:Enforced="true"
orawsp:Silent="true" orawsp:category="security/sts-config" orawsp:name="STS Trust Configuration">
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="StsTrustConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role" orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:sts-trust-config>

4. 変更を保存します。

5. 表10-4に示されたクライアント・ポリシーから、発行済トークン・クライアント・ポリシーを選択します(まだ選択していない場合)。次を選択できます。

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

- oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

- oracle/wss11_sts_issued_saml_with_message_protection_client_policy

6. 「オーバーライド可能なクライアント・ポリシーの添付」の説明に従って、Webサービス・クライアントに双方のWebサービス・クライアント・ポリシーをアタッチします。ポリシーは次の順序でアタッチする必要があります。

1. sts_trust_config_client_policy

2. 発行済トークン・クライアント・ポリシー

oracle/sts_trust_config_client_policyの複数のインスタンスをアタッチした場合に、エラーは生成されません。しかし、実行されるのは1つのインスタンスのみであり、それをどのインスタンスにするかを制御できません。

7. Fusion Middleware Controlを使用して、選択した発行済トークン・クライアント・ポリシーを編集します。

8. 変更を保存します。

WS TrustでのSAML送信者保証の使用

WS-TrustでSAML送信者保証を設定するには、発行済トークン・ポリシーを含めないでWebサービスを構成します。つまり、oracle/wss11_saml_token_with_message_protection_service_policyポリシーを使用します。

発行済トークン・ポリシーを使用してクライアントを構成します。SAML送信者保証用に想定されているoracle/wss11_sts_issued_saml_with_message_protection_client_policyに加えて、STS構成ポリシーも使用します。

WebサービスWSDLにはSTSに関する情報が含まれないので、SAML送信者保証に自動ポリシー構成機能は使用できません(「STSの自動ポリシー構成の設定」を参照してください)。

使用可能なWS-Trustポリシー

表10-4に、使用可能なWS-Trustポリシーを示します。

表10-4 使用可能なWS-Trustポリシー

名前

説明

oracle/sts_trust_config_service_policy

このポリシーを使用して、トークン交換のためにSTSの起動に使用されるSTS構成情報を指定します。このポリシーは、Webサービスで使用します。

oracle/sts_trust_config_client_policy

このポリシーを使用して、トークン交換のためにSTSの起動に使用されるSTS構成情報を指定します。自動ポリシー構成を使用しない場合にのみ、Webサービス・クライアントでこのポリシーを使用します。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

このポリシーは、信頼できるSTSによって発行されたSAMLベアラー・アサーションを挿入します。メッセージは、SSLを使用して保護されます。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

このポリシーは、WS-Security SOAPヘッダーの、確認方法がベアラーのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。SAMLトークンの資格証明は、SAMLログイン・モジュールに対して認証されます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、SOAPベースのすべてのエンドポイントに適用できます。

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

このポリシーは、信頼できるSTSによって発行されたSAML HOKアサーションを挿入します。メッセージは、STSによって提供される証明鍵の内容によって保護されます。

oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy

このポリシーは、信頼できるSTSによって発行されたSAML HOKアサーションを認証します。メッセージは、対称鍵テクノロジのWS-SecurityのBasic 128スイートを使用して保護されます。

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

このポリシーは、信頼できるSTSによって発行されたSAML送信者保証アサーションを挿入します。メッセージは、クライアントの秘密鍵を使用して保護されます。

WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド

表11-2に、プログラムによる構成のオーバーライドを利用して特定のポリシーに設定できるプロパティを示します。

表10-5は、STSプロパティをプログラムによってオーバーライドする方法を示す一連のサンプル・ユースケースを示しています。

表10-5 STSのプログラムによる構成のユースケース

ユースケース

サンプル・コード

トークン交換ユーザー名トークン - 対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_USER_CSF_KEY, "my-user-csf-key");

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_X509_CSF_KEY, "my-x509-csf-key");

トークン交換x509トークン - 対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_X509_CSF_KEY, "my-x509-csf-key");

トークン交換ユーザー名トークン - 非対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_USER_CSF_KEY, "my-user-csf-key");

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_X509_CSF_KEY, "my-x509-csf-key");

トークン交換x509トークン - 非対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_X509_CSF_KEY, "my-x509-csf-key");

サブジェクトからのOn Behalf Ofユーザー名と要求者トークン・ユーザー名のOn Behalf Ofトークンの交換 - 対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_USER_CSF_KEY, "my-user-csf-key");

on.behalf.ofをtrueに設定する必要があります。

On Behalf Ofユーザー名と要求者トークン・ユーザー名のOn Behalf Ofトークンの交換 - 対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_ON_BEHALF_OF_CSF_KEY, "my-on-behalf-of-csf-key");

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_X509_CSF_KEY, "my-x509-csf-key");

on.behalf.ofをtrueに設定する必要があります。

On Behalf Ofユーザー名と要求者トークンx509のOn Behalf Ofトークンの交換 - 対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_ON_BEHALF_OF_CSF_KEY, "my-on-behalf-of-csf-key");

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_X509_CSF_KEY, "my-x509-csf-key");

on.behalf.ofをtrueに設定する必要があります。

サブジェクトからのOn Behalf Ofユーザー名と要求者トークン・ユーザー名のOn Behalf Ofトークンの交換 - 非対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_USER_CSF_KEY, "my-user-csf-key");

on.behalf.ofをtrueに設定する必要があります。

On Behalf Ofユーザー名と要求者トークン・ユーザー名のOn Behalf Ofトークンの交換 - 非対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_ON_BEHALF_OF_CSF_KEY, "my-on-behalf-of-csf-key");

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_USER_CSF_KEY, "my-user-csf-key");

on.behalf.ofをtrueに設定する必要があります。

On Behalf Ofユーザー名と要求者トークンx509のOn Behalf Ofトークンの交換 - 非対称証明鍵によるSAML

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_ON_BEHALF_OF_CSF_KEY, "my-on-behalf-of-csf-key");

(BindingProvider) port).getRequestContext().put(SecurityConstants.ClientConstants.WSM_STS_AUTH_X509_CSF_KEY, "my-x509-csf-key");

on.behalf.ofをtrueに設定する必要があります。

サポートされるSTSサーバー

Oracle WSMでは、標準WS-Trustクライアントを提供しています。このクライアントは、OpenSSO STSサーバーと相互運用できることが認定されています。OpenSSO STSサーバーの使用例のシナリオの詳細は、「OpenSSO STSでのWS-Trustの使用例」を参照してください。

OpenSSO STSでのWS-Trustの使用例

次の項では、以降のセキュリティのシナリオを構成するためにOpen SSO Security Token Service (STS)サーバーでWS-Trustを使用したエンド・ツー・エンドの例を紹介しています。

- OpenSSO STSの構成

- メッセージ保護のシナリオでのSAML鍵所有者

- メッセージ保護のシナリオでのSAML送信者保証

- メッセージ保護のシナリオでのSAMLベアラー

OpenSSO STSの構成

次に、ここで説明する各例のシナリオで使用するためのOpenSSO STSの構成に必要な手順を示します。

1. OpenSSO STSインスタンスにログインします。

2. 「構成」→「グローバル」→「セキュリティ・トークン・サービス」に移動します。

3. 「セキュリティ」→セキュリティ・メカニズム→STSサービスによって受け入れられるセキュリティ・トークンで、すべてのオプションを有効にします。

4. ユーザー・トークンの資格証明セクションで必要に応じて、名前とパスワードのセットを含むトークンの新しい資格証明を追加します。

5. On Behalf ofトークンセクションで、On Behalf ofトークンの認証チェーンドロップダウンリストから「ldapService」eを選択します。

6. 「署名」セクションで、次のオプションを有効にします。
- リクエストの署名は検証済

- レスポンスの署名は有効(「本文」および「タイムスタンプ」を選択します)

7. 「暗号化」セクションで、次のオプションを有効にします。
- 「暗号化は必要」(「本文」および「ヘッダー」を選択します)

- レスポンスは暗号化済

8. 「暗号化アルゴリズム」ドロップダウン・リストから「AES」を選択し、暗号化強度ドロップダウン・リストから128を選択します。

9. メッセージ保護要求者トークンとともにWS-Security 1.1 Kerberosトークンをサポートするには、Kerberosの構成セクションで次の値を構成します。

表10-6 メッセージ保護構成を含むOpenSSO STS Kerberosトークン

構成するプロパティ

指定する目的

Kerberosドメイン・サーバー

ドメイン・サーバーの完全修飾ホスト名。

Kerberosドメイン

ドメイン名。

Kerberosサービス・プリンシパル

サービス・プリンシパル名(<ホスト>/<マシン名>@<REALM NAME>の形式)

Kerberosキー・タブ・ファイル

STS用に作成されたキー・タブ・ファイルの場所。

Kerberos署名を検証する

JDK6が使用されている場合にのみ有効です。

10. SSLをサポートするには、次の手順を実行します。

1. トークン発行属性セクションで、OpenSSOインスタンスに基づいてSSLエンドポイントを編集します。

2. 「署名」で、トランスポートがSSLにより保護されている場合に署名の検証を無効にするオプションを有効にします。

3. 「暗号化」で、トランスポートがSSLにより保護されている場合に復号化を無効にするオプションを有効にします。

11. OpenSSO STSをホストするサーバー上でSSLをサポートするには:

- OpenSSO STSをホストするWebLogic ServerでSSLを構成する場合は、「SSLに関するキーストアの構成」に記載されている手順を実行します。

- Open SSO STSをホストするGlassfishサーバーの場合は、次の手順を実行します。

1. 次のコマンドを発行することによりアプリケーション・サーバーのための新しい鍵ペアを生成します。
keytool -genkey -keyalg <algorithm for generating the key pair> -keystore keystore.jks -validity <days> -alias <alias_name>

たとえば、次のようにします。

keytool -genkey -keyalg RSA -keystore <glassfish_install_dir>/domains/<sts_deploy_domain>/config/keystore.jks -validity 365 -alias Oracle WSM

氏名の入力を求めるプロンプトが表示されたら、証明書を生成する対象のマシンのホスト名を入力します。また、他のプロンプトでも、該当する詳細を入力します。

2. 次のコマンドを発行することにより証明書署名リクエスト(CSR)を生成します。
keytool -certreq -alias Oracle WSM -file Oracle WSM.csr -keystore keystore.jks -storepass password

有効な証明書を取得するために、生成されてOracle WSM.csrファイルに書き込まれたリクエストを認証局に送信する必要があります。たとえば、OpenSSO QAチームによって維持されている証明書管理サーバー(https://mahogany.red.iplanet.com)に送信します。

3. 証明書管理サーバー(https://mahogany.red.iplanet.com)にアクセスし、左側のペインでSSLサーバーをクリックし、.csrファイルの「BEGIN CERTIFICATE REQUEST」から「END CERTIFICATE REQUEST」までの内容をPKCS # 10リクエストフィールドに貼り付けます。
必要に応じてその他のフィールドに入力し、リクエストを送信します。リクエストが承認されると、同じページの取得タブから証明書を取得できます。

4. BEGIN CERTIFICATEからEND CERTIFICATEの証明書の内容(PKCS # 7形式)を.cert拡張子のファイルにコピーし、次のkeytoolコマンドを使用することによりサーバー証明書を<glassfish_install_dir>/domains/<sts_deploy_domain>/config/keystore.jksファイルにインポートします。
keytool -import -v -alias Oracle WSM -file Oracle WSM.cert -keystore keystore.jks -storepass password

証明書を信頼する場合は、プロンプトが表示されたら「YES」を入力します。

5. 認証局のSSL証明書にアクセスします。https://mahogany.red.iplanet.comにアクセスし、SSLサーバー→取得タブ→証明書のリスト→「検索」に移動します。ページの最初の「詳細」ボタンをクリックし、BASE64でエンコードされた証明書を別の.certファイルにコピーします例: mahogany.cert

6. 次のコマンドを使用して、この証明書を別名「rootca」として<glassfish_install_dir>/domains/<sts_deploy_domain>/config/cacerts.jksファイルにインポートします。
keytool -import -v -alias rootca -file mahogany.cert -keystore cacerts.jks -storepass password

7. クライアント側のtruststore.jksファイルについても、前述の手順を繰り返すことが必要になる場合があります。該当ファイルから既存のrootca別名を削除し、前述のように新たにインポートします(キーストア・ファイルの場所を変更します)。

8. 新しい証明書でGlassFishを構成するために、http://hostname:admin-port/で管理コンソールにアクセスします。「構成」→HTTPサービス→http-listener2 (デフォルトSSL対応ポート)→「SSL」に移動し、証明書のニックネームをs1as(自己署名証明書)からOracle WSMに変更します。

9. Glassfishを再起動します。

メッセージ保護のシナリオでのSAML鍵所有者

次の手順では、OpenSSO STSでWS-Trustを使用してメッセージ保護付きでSAML鍵所有者を構成する方法について説明します。この例のシナリオでは、WebLogic WebサービスおよびSOAコンポジット・クライアントを使用します。

OpenSSO STSでWS-Trustを使用してメッセージ保護付きでSAML鍵所有者を構成するには:

1. 「OpenSSO STSの構成」の説明に従って、OpenSSO STSを構成します。

2. 「自動ポリシー構成のためのポリシーの構成」の手順に従ってSTSサービス・ポリシーを構成します。
後述するように、oracle/sts_trust_config_service_policyをコピーし、要求者トークン・タイプに基づいてポリシー構成を編集します。

メッセージ保護要求者トークンでWS-Security 1.0ユーザー名トークンをサポートするには:

- orasp:port-uri="http://<host>:<port>/openssosts/sts/wss10un"

- orasp:wsdl-uri="http://<host>:<port>/openssosts/sts/wss10un?wsdl"(オプション)

メッセージ保護要求者トークンでSSL経由でWS-Security 1.0ユーザー名トークンをサポートするには:

- orasp:port-uri="https://<host:ssl_port>/openssosts/sts/tlswss10un"

- orasp:wsdl-uri="https://<host:ssl_port>/openssosts/sts/tlswss10un?wsdl"(オプション)

メッセージ保護要求者トークンでWS-Security 1.0 X509トークンをサポートするには:

- orasp:port-uri="http://<host>:<port>/openssosts/sts/wss10x509"

- orasp:wsdl-uri="http://<host>:<port>/openssosts/sts/wss10x509?wsdl"(オプション)

メッセージ保護要求者トークンでWS-Security 1.1 Kerberosトークンをサポートするには:

- orasp:port-uri="http://<host>:<port>/openssosts/sts/wss11kerberos"

- orasp:wsdl-uri="http://<host>:<port>/openssosts/sts/wss11kerberos?wsdl"(オプション)

3. 「自動ポリシー構成のためのWebサービスの構成」の手順に従ってWebサービス・ポリシーを構成します。
手順2で作成したポリシー、その後でoracle/wss11_sts_issued_saml_hok_with_message_protection_service_policyをWebLogic Webサービスにアタッチします。詳細は、「単一のサブジェクトへのポリシーの添付」を参照してください。

注意:
デフォルトでは、oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policyポリシーはSAML 1.1トークン・タイプで構成されています。このトークン・タイプをSAML 2.0で構成する場合は、「既存のポリシーからのWebサービス・ポリシーの作成」の説明に従って、ポリシーをコピーして編集する必要があります(この値はクライアント・ポリシーに一致する必要があります)。

4. 「自動ポリシー構成のためのWebサービス・クライアントの構成」の手順に従ってWebサービス・クライアント・ポリシーを構成します。
SOAコンポジット・クライアントにoracle/wss11_sts_issued_saml_hok_with_message_protection_client_policyポリシーをアタッチし、要求者トークンの必要に応じて、表8-4に記載されているクライアント構成プロパティをオーバーライドします。

sts.auth.user.csf.keyには、デフォルトのOpenSSO STS構成で使用可能なユーザー資格証明を設定する必要があります。つまり、OpenSSO STSインスタンスの「ユーザー・トークン」セクションの「資格証明」で指定したユーザー名およびパスワードです。ただし、X509要求者トークンでは設定する必要はありません。

注意:
ポリシーをアタッチする場合のクライアント構成プロパティのオーバーライドの詳細は、「Webサービス・クライアントへのポリシーの添付」を参照してください。
デフォルトでは、 oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policyポリシーはトークン・タイプSAML 1.1により構成されています。このトークン・タイプをSAML 2.0で構成する場合は、「既存のポリシーからのWebサービス・ポリシーの作成」の説明に従って、ポリシーをコピーして編集する必要があります(この値はサービス・ポリシーに一致する必要があります)。

メッセージ保護のシナリオでのSAML送信者保証

注意:
手順を進める前に、「WS TrustでのSAML送信者保証の使用」を確認することをお薦めします。

次の手順では、OpenSSO STSでWS-Trustを使用してメッセージ保護付きでSAML送信者保証を構成する方法について説明します。この例のシナリオでは、WebLogic WebサービスおよびSOAコンポジット・クライアントを使用します。

OpenSSO STSでWS-Trustを使用してメッセージ保護付きでSAML送信者保証を構成するには:

1. 「OpenSSO STSの構成」の説明に従って、OpenSSO STSを構成します。

2. 「Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順」の手順に従って、クライアント側のSTSポリシーを構成します。

注意:
信頼はWebサービスとクライアント間に存在するために、SAML送信者保証確認に自動ポリシー構成は使用できません。詳細は、「WS TrustでのSAML送信者保証の使用」を参照してください。

oracle/sts_trust_config_client_policyをコピーし、要求者トークン・タイプに基づいてポリシー構成を編集します。

メッセージ保護要求者トークンでWS-Security 1.0ユーザー名トークンをサポートするには:

- orasp:policy-reference-uri="oracle/wss10_username_token_with_message_protection_client_policy"

- orasp:port-endpoint="http://<host>:<port>/openfm/SecurityTokenService/#wsdl.endpoint(SecurityTokenService/ISecurityTokenService_Port_UN_WSS10_SOAP12):

- orasp:port-uri="http://<host>:<port>/openssosts/sts/wss10un"

- orasp:sts-keystore-recipient-alias="test"

メッセージ保護要求者トークンでSSL経由でWS-Security 1.0ユーザー名トークンをサポートするには:

- orasp:policy-reference-uri="oracle/wss_username_token_over_ssl_client_policy"

- orasp:port-endpoint="http://localhost:8080/openfm/SecurityTokenService/#wsdl.endpoint(SecurityTokenService/ISecurityTokenService_Port_TLS_UN_WSS10_SOAP12)"

- orasp:port-uri="https://<host:ssl_port>/openssosts/sts/tlswss10un"

- orasp:sts-keystore-recipient-alias="test"

メッセージ保護要求者トークンでWS-Security 1.0 X509トークンをサポートするには:

- orasp:policy-reference-uri="oracle/wss10_x509_token_with_message_protection_client_policy"

- orasp:port-endpoint="http://localhost:8080/openfm/SecurityTokenService/#wsdl.endpoint(SecurityTokenService/ISecurityTokenService_Port_X509_WSS10_SOAP12)"

- orasp:port-uri="http://<host>:<port>/openssosts/sts/wss10x509"

- orasp:sts-keystore-recipient-alias="test"

3. WebLogic Webサービスにoracle/wss11_saml_token_with_message_protection_service_policyポリシーをアタッチし(SAML送信者保証のシナリオでは対応する発行済トークン・ポリシーはありません)、サービスの暗号化鍵の別名およびパスワードを指定するためにkeystore.enc.csf.keyをオーバーライドします。

注意:
デフォルトでは、oracle/wss11_saml_hok_with_message_protection_service_policyポリシーはトークン・タイプSAML 1.1により構成されています。このトークン・タイプをSAML 2.0で構成する場合は、「既存のポリシーからのWebサービス・ポリシーの作成」の説明に従って、ポリシーをコピーして編集する必要があります

4. 手順2で作成したポリシー、その後でoracle/ws11_sts_issued_saml_with_message_protection_client_policyポリシーをSOAコンポジット・クライアントにアタッチし、要求者トークンの必要に応じて、表8-4に記載されているクライアント構成プロパティをオーバーライドします。
「On Behalf Of」ユースケースは、表8-4に記載されているsts.auth.on.behalf.of.csf.keyプロパティおよびon.behalf.ofプロパティに依存します。詳細は、「On Behalf Ofユースケース」を参照してください。

on.behalf.ofプロパティをtrueに設定する必要があります。sts.auth.on.behalf.of.csf.keyには、「on behalf of」ユースケースをサポートするデフォルトのOpen SSO STS構成で使用可能なユーザー資格証明を設定する必要があります。つまり、demo、パスワードpasswordです。

注意:
ポリシーをアタッチする場合のクライアント構成プロパティのオーバーライドの詳細は、「Webサービス・クライアントへのポリシーの添付」を参照してください。

5. ユーザーに「代わって(on behalf of)」OpenSSO STSからのトークンをリクエストする権限をクライアント・アプリケーションに付与するために、<MW_HOME>/user_projects/domains/base_domain/config/fmwconfig/system-jazn-data.xmlファイルを編集して次のコードを含めます。

<grant>
<grantee>
<codesource>
<url>
file:${common.components.home}/modules/oracle.wsm.agent.common_${jrf.version}/wsm-agent-core.jar
</url>
</codesource>
</grantee>
<permissions>
<permission>
<class>oracle.wsm.security.WSIdentityPermission</class>
<name>resource=<Client App. Name></name>
<actions>assert</actions>
</permission>
</permissions>
</grant>

メッセージ保護のシナリオでのSAMLベアラー

次の手順では、OpenSSO STSでWS-Trustを使用してメッセージ保護付きでSAMLベアラーを構成する方法について説明します。この例のシナリオでは、WebLogic WebサービスおよびSOAコンポジット・クライアントを使用します。

OpenSSO STSでWS-Trustを使用してメッセージ保護付きでSAMLベアラーを構成するには:

1. 「OpenSSO STSの構成」の説明に従って、OpenSSO STSを構成します。

2. 「自動ポリシー構成のためのポリシーの構成」の手順に従ってSTSポリシーを構成します。
後述するように、oracle/sts_trust_config_service_policyをコピーし、要求者トークン・タイプに基づいてポリシー構成を編集します。

メッセージ保護要求者トークンでWS-Security 1.0ユーザー名トークンをサポートするには:

- orasp:port-uri="http://<host>:<port>/openssosts/sts/wss10un"

- orasp:wsdl-uri="http://<host>:<port>/openssosts/sts/wss10un?wsdl"(オプション)

メッセージ保護要求者トークンでSSL経由でWS-Security 1.0ユーザー名トークンをサポートするには:

- orasp:port-uri="https://<host:ssl_port>/openssosts/sts/tlswss10un"

- orasp:wsdl-uri="https://<host:ssl_port>/openssosts/sts/tlswss10un?wsdl"(オプション)

メッセージ保護要求者トークンでWS-Security 1.0 X509トークンをサポートするには:

- orasp:port-uri="http://<host>:<port>/openssosts/sts/wss10x509"

- orasp:wsdl-uri="http://<host>:<port>/openssosts/sts/wss10x509?wsdl"(オプション)

メッセージ保護要求者トークンでWS-Security 1.1 Kerberosトークンをサポートするには:

- orasp:port-uri="http://<host>:<port>/openssosts/sts/wss11kerberos"

- orasp:wsdl-uri="http://<host>:<port>/openssosts/sts/wss11kerberos?wsdl"(オプション)

3. 「自動ポリシー構成のためのWebサービスの構成」の手順に従ってWebサービス・ポリシーを構成します。
手順2で作成したポリシー、その後でoracle/wss11_sts_issued_saml_bearer_token_over_ssl_service_policyをアタッチします。詳細は、「単一のサブジェクトへのポリシーの添付」を参照してください。

4. 「自動ポリシー構成のためのWebサービス・クライアントの構成」の手順に従ってWebサービス・クライアント・ポリシーを構成します。
oracle/ws11_sts_issued_saml_bearer_token_over_ssl_client_policyポリシーをSOAコンポジット・クライアントにアタッチし、要求者トークンの必要に応じて、表8-4に記載されているクライアント構成プロパティをオーバーライドします。

sts.auth.user.csf.keyには、デフォルトのOpenSSO STS構成で使用可能なユーザー資格証明を設定する必要があります。つまり、OpenSSO STSインスタンスの「ユーザー・トークン」セクションの「資格証明」のユーザー名およびパスワードです。ただし、X509要求者トークンでは設定する必要はありません。

注意:
ポリシーをアタッチする場合のクライアント構成プロパティのオーバーライドの詳細は、「Webサービス・クライアントへのポリシーの添付」を参照してください。

Oracle Entitlements Serverを使用したファイングレイン認可の理解

Oracle Entitlements Server (OES)は、エンタープライズ全体のアプリケーションとサービスを保護するために使用できるファイングレイン認可サービスです。これは、複雑なアプリケーション権限の一元化した定義、およびこれらの権限の実行時における分散化された施行をサポートしています。OESを使用すると権限を外部化できるため、アプリケーションからセキュリティ決定の必要性を排除します。

Oracle WSM OES統合では、OESを使用する拡張認可ユースケースがサポートされ、次の機能を提供します。

- OES認可をSOAPベースのWebサービスに適用できます。OES認可ポリシーでは、あるサブジェクトが、指定されたリソースに対して特定のアクションを実行するための権限が付与または拒否されます

- OESでは、付与/拒否に関する決定がコンテキスト属性に基づいて行われます。コンテキスト属性は、XPath文を使用して抽出したSOAPリクエスト・メッセージからの情報、またはHTTPヘッダーに基づいたものにすることができます。

- データ・マスキング。Oracle WSM OESでは、Webサービスのリクエストに対するレスポンスで特定の情報を(任意の文字を使用して)マスクできます。

この項では、Oracle Entitlements Server (OES)をOracle WSMと統合し、ファイングレイン認可のためにOracle WSMとともにOESを使用する方法について説明します。

次の項目について説明します。

- 「事前に読む必要があるOESドキュメント」

- 「OES統合: 全体像」

- 「Oracle WSM OESポリシー」

- 「リソースのマッピングおよび命名」

- 「属性の処理方法」

- 「ガード要素の使用」

構成の詳細は、「Oracle Entitlements Serverを使用したファイングレイン認可の構成」を参照してください。

事前に読む必要があるOESドキュメント

この項では、多くのOESの概念と機能を参照しています。しかし、この項ではOracle WSMとの統合に重点がおかれ、OESの概念について掘り下げた議論を提供するように計画されていません。OESに精通していない場合は、まず次のOESドキュメントを参照してください。

注意:
Oracle WSMは、OESのバージョン11.1.2.2.0以降をサポートします。

- Oracle Entitlements Server管理者ガイド

- ファイングレイン認可: Oracle Entitlements Serverを使用するためのテクニカル・インサイト

OES統合: 全体像

Oracle WSMとOESを統合する場合は、次のようにします。

- WebサービスにOracle WSM認証ポリシーを割り当てます。

- この項で説明するように、Oracle WSMのoracle/binding_oes_authorization_policyポリシーまたはoracle/component_oes_authorization_policyポリシーを単体で、またはoracle/binding_oes_masking_policyポリシーと組み合せて割り当てます。

- OESコンソールを使用して認可ポリシーとデータ・マスキング・ポリシーを作成します。通常は「責任」に対して別個のポリシーを設定します。

注意:
Oracle WSMでは、OES関連の構成が公開されていません。そのために、OESコンソールを使用します。

Oracle WSMエージェントは、OESに定義されたポリシーに基づいて、保護されたWebサービスのSOAPリクエストの認可をチェックします。これを行うには、Oracle WSMからOESに、認証されたサブジェクト、ターゲット・リソースおよびリクエストされたアクション、さらに認可リクエストで常に渡される暗黙属性のセットが渡されます。

OESポリシーでは、SOAPリクエスト、HTTPヘッダー、メッセージ・コンテキストのプロパティからのコンテキスト属性、またはサブジェクト、ロール、グループなどのアイデンティティ情報に基づいて追加の必須値を定義できます。OESが許可または拒否の決定を行うために、これらのコンテキスト属性の追加が必要となるように構成されている場合は、これらのコンテキスト属性もOracle WSMから渡されます。

具体的には、OESに対して認可の決定を問い合せるための2つの方法があります(2ステップの方法と、1ステップの方法)。これらのどちらを選択するかは、oracle/binding_oes_authorization_policyおよびoracle/component_oes_authorization_policy内のuse.single.step属性を指定することによって決定します。

これらのメソッドは、次のように機能します。

- 2ステップのプロセスでは、OESコンソールでファイングレイン認可に必要な属性が事前に識別されている必要があり、ここではOracle WSMがそれらを使用します。
Oracle WSMは、最初にOESをコールして必要な属性を割り出し、リクエスト・ペイロードから属性を取得した後、OESを再度コールしてOES認可ポリシーを使用して実際の認可を実行します。これは、実際には2つのOESポリシー(必要な属性を取得するためのポリシーと認可自体のポリシー)を定義していることを意味します。

常に渡される暗黙属性、および時間、日付などのOESの定義済属性も使用できます。

この方法は、「OESのファイングレイン認可および大まかな認可」で説明されているように、ファイングレイン認可に使用されます。

- 1ステップのプロセスでは、Oracle WSMは、OESを1回のみコールしてOES認可ポリシーを使用して認可を実行します。1ステップのプロセスでは、属性を事前に識別しておく必要ありません。2ステップのプロセスと同様に、常に渡される暗黙属性、および時間、日付などのOESの定義済属性も使用できます。
この方法は、「OESのファイングレイン認可および大まかな認可」で説明されているように、大まかな認可に使用できます。

データ・マスキング

Oracle WSMとOESの統合では、Webサービスのコードを変更せずに、Webサービスからのレスポンス内の特定の情報を(アスタリスクで)マスクできます。

Webサービスのクライアント・リクエストに対するレスポンスで、機密データがネットワーク経由で渡されないようにすると仮定します。OESコンソールをoracle/binding_oes_masking_policyポリシーとともに使用して、図10-31に示すように、Webサービスからの機密データ(社会保障番号、会計情報など)をアスタリスクに置換します。

図10-31 機密データのマスキング

機密データのマスキングは、それを求める人、およびリクエストに存在するその他のコンテキスト属性に応じて実行されます。

図10-31に示すWebサービス・レスポンスに対する次のコードの流れについて、考えてみてください。

データ・マスキングのコードの流れ

1. Webサービス・クライアントがリクエストを送信します。

2. インバウンド・リクエストで、Oracle WSMは、リクエスト・ポリシーを実行し、ユーザーBob Doeに対する適切な認証および認可を実行します。

3. リクエストが許可されると、Oracle WSMからサービス・プロバイダにペイロードが渡されます。サービス・プロバイダはペイロードを操作し、コール元に返信するレスポンスを準備します。

4. レスポンスの処理中に、Oracle WSMは、oracle/binding_oes_masking_policyポリシーを呼び出してマスキングの必要な機密データがあるかどうかを確認します。
Oracle WSMは、コール元の情報と、レスポンス・ペイロードから抽出したユーザー定義属性を渡します。

5. OESで定義されたデータ・マスキングのルールは、(トランスポート属性を介した)クライアント情報、現在のサブジェクト、リソース、アクション、およびそのポリシーで構成されている任意のレスポンス属性を考慮します。

6. 各ペイロード属性について、OESは、その属性をそのまま渡すか、マスキングするかを指定する責任を使用して応答します。

7. Oracle WSMは、OESから返された責任を優先し、OESによって機密データとしてマークされた属性をマスキングします。

責任

OESでは、XACMLの概念である責任の機能がサポートされています。Oracle Entitlements Server管理者ガイドの「ポリシー・モデルの理解」で説明されているように、ポリシーで責任を使用することで、ポリシー施行コンポーネントに対して追加要件を要求することができます。

責任はOESコンソールで構成します。責任は、コール元(Oracle WSM)に返される属性名と値のペア(またはその他の簡単な名前と値のペア)です。Oracle WSMとOESの統合では、責任にはXPath問合せ、HTTPトランスポート・ヘッダー・プロパティまたはメッセージ・コンテキスト・プロパティがあります。

責任のもう1つの用途はデータ・マスキングです。データ・セキュリティのユースケースなどの一部のアプリケーションでは、「はい」または「いいえ」のような簡単な回答では不十分で、図10-31に示されているように、どのデータをどのような値でマスキングするかを指定する責任がOES認可ポリシーによって返される場合があります。

OESのファイングレイン認可および大まかな認可

Oracle WSMのOESポリシーによる認可には、ファイングレイン認可と大まかな認可の2通りの方法があります。認可タイプは次のように定義します。

- ファイン(責任): コンシューマのアイデンティティ、および責任内で指定されているトランスポート・ヘッダーまたはペイロードの特定のコンテンツに基づいてリソースへのアクセスを判断します。　これが一般的なユースケースです。
このユースケースでは、OESアクセス・ポリシーに属性を定義し、Oracle WSMがそれをリクエストから抽出し、認可時にOESに返します。つまり、OESアクセス・ポリシーは、アイデンティティ属性とリクエスト・ペイロードから抽出された属性の組合せに基づいています。

たとえば、「SOAP本文に特定の顧客IDが含まれている場合、および認証済ユーザーがTrustedPartnersグループに属している場合にアクセスを許可する」というOESのアクセス権チェックを実行できます。

図10-32に、ファイングレイン認可のユースケースを示します。

図10-32 ファイングレイン認可

図10-32に示すWebサービス・レスポンスに対する次のコードの流れについて、考えてみてください。

1. Webサービス・クライアントがSOAPリクエストを送信します。

2. Webサービスは、Oracle WSM認証ポリシーとOracle WSMのOES認可ポリシーにより保護されています。

3. Oracle WSMは、認証を実行し、認可のためにOESを起動します。

4. Oracle WSMは、サブジェクト、リソース、参照アクション、およびすべての事前定義済プロパティをOESに提供します。

5. OESは、保護されたリソース用に構成された参照アクションをコールし、構成された責任(存在する場合)をOracle WSMに返します。責任は、アクションに基づいて返される可能性があります。各アクションでは、異なるXPathsなどを定義できます。

6. Oracle WSMは、責任を評価し、SOAP/XMLペイロードのXPathを実行するか、トランスポート・ヘッダーまたはメッセージ・コンテキストからプロパティ値を検出します。

7. Oracle WSMは、サブジェクト、リソース、アクション、および手順6で評価されたたすべての属性をOESに再度提供します。

8. OESは、サブジェクト、リソース、アクションおよび属性に基づいてアクセスを決定します。

9. OESは、許可または拒否で応答します。

10. 許可の場合、Oracle WSMは、サービス・プロバイダにメッセージを渡します。

11. 拒否の場合、Oracle WSMは、認証失敗のフォルトによりリクエストを却下します。

- SAMLを使用したファイングレイン認可: コンシューマのアイデンティティ、およびSAMLトークンで渡された属性に基づいてリソースへのアクセスを決定します。
Oracle WSMは、SAMLアサーションから属性を渡します。SAML属性は、常に抽出されて(存在する場合)自動的に送信される暗黙属性の一部です。この属性名は、SAMLアサーション内の属性名で、値は文字列のリストです。OESでは、これらのSAML属性に加え、サブジェクト、リソース、アクションに基づいてアクセスを決定できます。

このユースケースには、2つの実装方法があります。最初の方法では、OESカスタム属性リトリーバを作成します。『Oracle Entitlements Server開発者ガイド』のカスタム属性リトリーバの作成に関する項を参照してください。2つ目の方法では、責任をSAML属性値を指すXPathと一緒に使用してOESを応答させます。

OESカスタム属性リトリーバを使用する方法に関する、次のコードの流れについて考えてみてください。

1. Webサービス・クライアントは、SOAPリクエストに属性文が指定されているSAMLトークンを送信します。

2. Webサービスは、oracle/wss10_saml_token_service_policyおよびOracle WSMのOES認可ポリシーにより保護されています。

3. Oracle WSMは、認証を実行し、SAMLアサーションのAttributeStatementを確認します。属性が存在する場合、Oracle WSMはそれらを抽出し、アクセス・リクエストのためにOESを起動するときにそれらを属性として渡します。

4. Oracle WSMは、サブジェクト、リソース、参照アクション、およびその他の事前定義された属性を提供します。

5. OESは、SAML属性、サブジェクト、リソースおよびアクションに基づいてアクセスを決定します。OESは、カスタム属性リトリーバを使用して、SAML属性を取得します。

6. OESは、許可または拒否で応答します。

7. 許可の場合、Oracle WSMは、サービス・プロバイダにメッセージを渡します。

8. 拒否の場合、Oracle WSMは、アクセス拒否フォルトによりリクエストを却下します。

- 大まかな認可: コンシューマのアイデンティティ、およびコールされたWebサービス操作に基づいてリソースへのアクセスを決定します。OESアクセス・チェックは、ユーザー名、グループおよびロールに限定されたアイデンティティ属性に基づいています。暗黙属性、および時間、日付などOESの定義済属性も使用できます。
このモードを使用するには、Oracle WSMのOESポリシーでuse.single.stepをtrueに設定する必要があります。

図10-33に、大まかな認可のユースケースを示します。このユースケースでは、コンシューマがサービスへのアクセスを許可されているかどうかを判断する認可ポリシーを使用して、サービスを保護することを前提としています。コンシューマのアイデンティティ(認証されたサブジェクト)および起動されたWebサービス操作に基づいてリソースへのアクセスを決定します。たとえば図10-33では、ユーザーBob Doeは顧客の詳細の取得は認可されていますが、顧客レコードの削除は認可されていません。

図10-33 大まかな認可

図10-33に示すWebサービス・レスポンスに対する次のコードの流れについて、考えてみてください。

1. Webサービス・クライアントがSOAPリクエストまたはXMLリクエストを送信します。

2. Webサービスは、Oracle WSM認証ポリシーとOracle WSMのOESポリシーにより保護されています。

3. Oracle WSMは、認証を実行し、アクセス・リクエストのためにOESを起動します。Oracle WSMは、サブジェクト、リソースおよびアクション情報をOESに提供します。

4. OESは、サブジェクト、リソースおよびアクション情報に基づいてアクセスを決定します。

5. OESは、許可または拒否で応答します。

6. 許可の場合、Oracle WSMは、サービス・プロバイダにメッセージを渡します。

7. 拒否の場合、Oracle WSMは、アクセス拒否フォルトによりリクエストを却下します。

Oracle WSM OESポリシー

Oracle WSMには、次のOES認可ポリシーとマスキング・ポリシーが含まれています。

- oracle/binding_oes_authorization_policy: このポリシーは、OESで定義されているポリシーに基づいてユーザー認可を実行します。認可は、属性、現在の認証されたサブジェクト、およびクライアントが起動したWebサービスのアクションに基づいています。
このポリシーは、use.single.step属性の設定に応じて、Webサービスの任意の操作における大まかな認可またはファイングレイン認可に使用されます。(「OESのファイングレイン認可および大まかな認可」を参照。)

Oracle WSM OESポリシーには認証済サブジェクトが必要であるため、認証ポリシーをOracle WSM OES認可ポリシーとともに使用する必要があります。

このポリシーでは、リソース、アクションおよび制約のmatch値を定義するためにguard要素(orawsp:guardを参照)も使用されます。これらの値によって、guardの結果がtrueの場合にのみ、アサーション実行が許可されるようになります。アクセスしたリソース名およびアクションが一致した場合にのみ、アサーションの実行が許可されます。デフォルトで、リソース名およびアクションでは、ワイルドカードのアスタリスク(*)が使用され、すべてが許可されます。

このポリシーは、SOAPベースのすべてのエンドポイントにアタッチできます。

- oracle/component_oes_authorization_policy: このポリシーは、OESで定義されているポリシーに基づいてユーザー認可を実行します。
このポリシーは、use.single.step属性の設定に応じて、SOAコンポーネントの任意の操作における大まかな認可またはファイングレイン認可に使用されます。(「OESのファイングレイン認可および大まかな認可」を参照。)

Oracle WSM OESポリシーには認証済サブジェクトが必要であるため、認証ポリシーをOracle WSM OES認可ポリシーとともに使用する必要があります。認可は、属性、現在の認証されたサブジェクト、およびクライアントが起動したWebサービスのアクションに基づいています。

このポリシーでは、リソース、アクションおよび制約のmatch値を定義するためにguard要素(orawsp:guardを参照)も使用されます。これらの値によって、guardの結果がtrueの場合にのみ、アサーション実行が許可されるようになります。アクセスしたリソース名およびアクションが一致した場合にのみ、アサーションの実行が許可されます。デフォルトで、リソース名およびアクションでは、ワイルドカードのアスタリスク(*)が使用され、すべてが許可されます。

このポリシーは、SOAコンポーネントのファイングレイン認可に使用されます。

- oracle/binding_oes_masking_policy: このポリシーは、OESで定義されているポリシーに基づいてレスポンスのマスキングを実行します。認証ポリシーを、Oracle WSMのOESマスキング・ポリシーとともに使用できます。(サブジェクトが存在しない場合、マスキング決定時にユーザーが考慮されない。)マスキングは、属性、現在の認証されたサブジェクト、およびクライアントが起動したWebサービスのアクションに基づいています。
このポリシーでは、リソース、アクションおよび制約のmatch値を定義するためにguard要素(orawsp:guardを参照)が使用されます。これらの値によって、guardの結果がtrueの場合にのみ、アサーション実行が許可されるようになります。アクセスしたリソース名およびアクションが一致した場合にのみ、アサーションの実行が許可されます。デフォルトで、リソース名およびアクションでは、ワイルドカードのアスタリスク(*)が使用され、すべてが許可されます。

このポリシーは、Webサービスの任意の操作におけるファイングレイン・マスキングに使用されます。

リソースのマッピングおよび命名

OESリソース名は、Oracle WSMリソース名にマップする必要があります。Oracle WSMから認可コールを実行すると、リソース名がOESに渡されます。この名前はOESポリシーで定義されている名前と正確に一致する必要があります。

表10-7に、OESポリシーのリソース文字列の構成方法を示します。

命名規則に従う場合は、Oracle WSMポリシーにリソース名を設定する必要はありません。Oracle WSMにより、リソース名が導出されます。

注意:
これがデフォルトのマッピングです。このマッピングを変更する必要がある場合は、構成オーバーライドを使用します(「構成プロパティおよびオーバーライド」を参照)。

表10-7 リソース文字列の決定

OESフィールド

使用する値

アプリケーション

デプロイされているアプリケーション名。

SOAの場合、コンポジット名がアプリケーション名として使用されます。

リソース・タイプ

サブジェクト・タイプに基づいて固定されます。

- SOAPの場合、WS_SERVICEである必要があります。

- SOAコンポーネントの場合、COMPONENTである必要があります。

リソース名

- SOAPおよびSOA参照の場合、web-service-name/port/web service operationの形式である必要があります。

- SOAコンポーネントの場合、SOA component name/web service operationの形式である必要があります。

アクション

デフォルトでは、次のいずれかになります。

request.lookup (認可に対応する責任ポリシー)
response.lookup (マスキングに対応する責任ポリシー)
mask (実際のマスキング・ポリシー)
authorize (実際の認可ポリシー)

OESポリシーの例

SOAコンポジット(SOA1)に2つのサービス・バインディング(Serv1とServ2)があるとします。

- Serv1にはport11があります。

- Serv2にはport21があります。

- port11にはoper11、oper12があります。

- port21にはoper21があります。

OESでは、表10-8に示すように、アプリケーション、リソース・タイプ、リソース名およびアクションを定義する必要があります。

表10-8 リソース文字列の例

OESフィールド

使用する値

アプリケーション

soa1

リソース・タイプ

WS_SERVICE

リソース名

Serv1/port11/oper11、

Serv1/port11/oper12、

Serv2/port21/oper21

アクション

次のうちの1つ:

request.lookup (認可に対応する責任ポリシー)
response.lookup (マスキングに対応する責任ポリシー)
mask (実際のマスキング・ポリシー)
authorize (実際の認可ポリシー)

表10-8に基づいた認可とマスキングのOESポリシーは、次のとおりです。

- 返される責任

- 任意の操作に対して責任を返す1つのポリシー:

GRANT (action: request.lookup; Resource: WS_SERVICE/Serv1/Port11, WS_SERVICE/Serv2/Port21; User: any) Obligation: XPath11

- 操作固有の責任を返す複数のポリシー:

GRANT (action: request.lookup; Resource: WS_SERVICE/Serv1/Port11/oper11;User:any) Obligation: XPath11
GRANT (action: request.lookup; Resource: WS_SERVICE/Serv1/Port11/oper12;User:any) Obligation: XPath12
GRANT (action: request.lookup; Resource: WS_SERVICE/Serv2/Port21/oper21;User:any) Obligation: XPath21

- 実際の認可

- リソースやアクションとは関係なく同じ認可を実行する１つのポリシー:

GRANT/DENY (action: authorize; Resource: WS_SERVICE/Serv1/Port11, WS_SERVICE/Serv2/Port21; User:<actual user>)

- 操作固有の認可を実行する複数のポリシー:

GRANT/DENY (action: authorize; Resource: WS_SERVICE/Serv1/Port11/oper11;User:<actual user>)
GRANT/DENY (action: authorize; Resource: WS_SERVICE/Serv1/Port11/oper12;User:<actual user>)

- 返されるマスキングの責任:

GRANT (action: response.lookup; Resource: WS_SERVICE/Serv1/Port11/oper11;User:any) Obligation: XPath11
GRANT (action: response.lookup; Resource: WS_SERVICE/Serv1/Port11/oper12;User:any) Obligation: XPath12
GRANT (action: response.lookup; Resource: WS_SERVICE/Serv2/Port21/oper21;User:any) Obligation: XPath21

- 実際のマスキング:

GRANT/DENY (action: mask; Resource: WS_SERVICE/Serv1/Port11/oper11;User:<actual user>)
GRANT/DENY (action: mask; Resource: WS_SERVICE/Serv2/Port21/oper21;User:<actual user>)

属性の処理方法

OES管理者がOESポリシーに属性を責任として定義し、Oracle WSMがそれをペイロードから抽出し、OESに返します。

具体的には、OESを使用すると、責任をOESコンソールで作成できます。また、複数の属性名/値のペアが提供されます。たとえば、Employeeという名前の責任を作成して、{Name=John, Age=21, SSN=123456}などの複数の属性を指定できます。

属性は、XPath、HTTPヘッダー、メッセージ・コンテキストおよに定数(名前/値)から取得できます。これらの属性は、表10-9で説明されているように、特定の命名規則に従う必要があります。

表10-9 OESポリシーでサポートされる属性タイプ

属性タイプ

説明

必要な形式

XPath問合せ

属性名と値は、OESコンソールでXPath問合せとして指定します。

Oracle WSMは、SOAPメッセージにこのXPath問合せを実行し、その値を属性値として使用します。XPath問合せの結果は、単一値であることも複数の値であることもあります。複数の値の場合、すべての値を渡すには文字列のリストを使用します。

いずれかのXPath問合せでSOAPメッセージの評価に失敗した場合、その問合せは無視され、警告メッセージがログ内に生成されます。Oracle WSMは、引き続き次のXPath問合せを評価します。

XPath (大/小文字を区別しない)を責任名として使用し、それがXPathであることを示します。

責任は、XPath問合せで使用されているすべてのネームスペースも返します。すべてのネームスペースはNAMESPACE (大/小文字を区別しない)という属性名と一緒に返され、その値はカンマ区切りのネームスペースになります。

たとえば、認可にSAML発行者名を使用する場合、次の責任形式を使用します。

Name = XPath, values = {saml_issuer=.//saml:Assertion/@Issuer, CC_Name=ns1:sayHello/arg0, NAMESPACE=ns1=http://...,wsse=http://...}

認可フェーズで、Oracle WSMは属性名saml_issuerを渡し、その値はXPath問合せの結果です。デフォルトのネームスペースは、接頭辞にマップする必要があります。(接頭辞名はアプリケーション内で一意である必要がある。)

たとえば、次のようにします。

saml=urn:oasis:names:tc:SAML:1.0:assertion,ns0=http://wsm.oracle.com,myPrefix=http://default_namespace

ネームスペースの定義はカンマで区切られています。

HTTPヘッダー

HTTPヘッダー名は、OESコンソールで指定します。

この値は、現在のリクエストHTTPヘッダーからフェッチされます。

HTTPヘッダーのプロパティを取得するには、「HTTPHeader」(大/小文字を区別しない)という名前の責任を定義します。これには、複数のHTTPヘッダー名が存在する可能性があります。

属性の名前には、値の割当て先の名前を指定する必要があります。つまり、値は実際のHTTPヘッダー名である必要があります。

たとえば、次のようにします。

Name = HTTPHeader, values = {AuthHeader=Authorization}

認可フェーズで、Oracle WSMはHTTPヘッダーを取得し、属性名に指定された名前をそれに割り当てます。

Message Context Properties

メッセージ・コンテキスト・プロパティ名は、OESコンソールで指定します。

この値は、現在のメッセージ・コンテキストからフェッチされます。

「MessageContext」(大/小文字を区別しない)という名前の責任を定義します。これには、複数のメッセージ・コンテキスト・プロパティ名が存在する可能性があります。

属性の名前には、値の割当て先の名前を指定する必要があります。つまり、値は実際のメッセージ・コンテキスト・プロパティ名である必要があります。

たとえば、次のようにします。

Name = MessageContext, values = {authMethod=oracle.wsm.internal.authentication.method, endpoint=oracle.j2ee.ws.runtime.endpoint-url}

認可フェーズで、Oracle WSMはメッセージ・コンテキスト・プロパティを取得し、属性名に指定された名前をそれに割り当てます。

たとえば、前述の例は次のように解決されます。

authMethod=USERNAME_TOKEN & endpoint=http://localhost:7001/myService

定数

定数は、Oracle WSMで認識されないユーザー定義属性であり、そのまま渡されます。

Employeeという名前の責任は、定数の一例です。

暗黙的

Oracle WSMは、すべての認可リクエストの暗黙属性を渡します。それらを渡すための構成を行う必要はありません。次の暗黙属性が常に渡されます。

- serviceURL: WebサービスのURL。

- serviceNS: Webサービスのネームスペース。

- clientIP: クライアントのIPアドレス。

- processingStage: リクエストまたはレスポンスのどちらであるか。使用可能な値は、request、responseおよびfaultです。

- isRequestOverSSL: ブール値。リクエストが一方向または双方向のSSLの場合はtrue。

- authenticationMethod: 認証方式。使用可能な値は、SAML_SV、KERBEROS、SAML_HOK、X509_TOKEN_AUTHENTICATION、SAML_BEARERおよびUSERNAME_TOKENです。

- requestOrigin: VIRTUAL_HOST_TYPEトランスポート・ヘッダーから判別される内部または外部のリクエスト元。

- clientSigningCertDN: 双方向SSLにおけるX509署名用証明書またはクライアント証明書。

- operationName: ユーザーが起動した操作名。

- samlIssuer: SAMLアサーションから抽出されたSAML発行者。

- type: OESへのリクエスト・タイプ。使用可能な値は、request.lookup、response.lookup、authorizeまたはmaskです。この属性は常に送信されます。

不要。これらは常に渡されます。

通常、これらの定数をOESコンソールの「条件」で使用します。

ガード要素の使用

Oracle WSMのOES認可ポリシーでは、orawsp:guard要素を使用します。これにより、ガードの結果がtrueの場合にのみアサーションが実行されるようにできます。つまり、アクセスしたリソース名とアクションが一致した場合にのみ、OES認可エンジンがコールされます。

デフォルトで、リソース名およびアクションでは、ワイルドカードのアスタリスク(*)が使用され、すべてが許可されます。ただし、特定のリソース名、アクションおよび制約を設定した場合は、いずれかの構成プロパティおよびOESポリシーを使用するには、その要件を満たしている必要があります。

ガードのリソース命名規則は、OESの標準命名規則とは異なります。ガードのリソース名は、<Webservice_NS>/<SERVICE_NAME>の形式にする必要があります。

11 ポリシーの構成

この章では、WebサービスおよびWebサービス・クライアントでポリシーを構成して、サービスのクオリティ(QoS)の要件を実現する方法を説明します。

事前定義済ポリシーは、付録B「事前定義済ポリシー」で説明されています。この付録は、ポリシーの形式に関する最も信頼性の高い情報源です。利便性を考慮して、この章でも付録の情報の一部を掲載しています。

この章では次の項について説明します。

- 使用するセキュリティ・ポリシーの決定

- メッセージの保護

- 認証のみのポリシーと構成手順

- メッセージ保護のみのポリシーと構成手順

- メッセージ保護および認証ポリシーと構成手順

- 認可ポリシーと構成手順

- WS-Addressingポリシーと構成手順

- WS-Trustポリシー

- MTOMアタッチメント・ポリシーと構成手順

- 信頼できるメッセージング・ポリシーと構成手順

- 管理ポリシーと構成手順

- Webサービスおよびクライアントへのポリシー・ファイルの添付

- クライアントのプログラムによる構成オーバーライドの使用

- ポリシーに対するローカルの最適化の構成

- Oracle Entitlements Serverを使用したファイングレイン認可の構成

使用するセキュリティ・ポリシーの決定

注意:
RESTfulサーブレットとして公開されるADFビジネス・コンポーネントなど、サーブレット・アプリケーションを保護するには、表8-1に示されているHTTPベースの認証または許可ポリシーを1つ以上添付できます。

次に示す一連の質問で、要件に最適なセキュリティ・ポリシーを確認できます。

1. セキュリティ・ポリシーの基本的な要件は何ですか。ユーザーのみを認証する必要があるのか、メッセージ保護のみが必要なのか、両方が必要なのかを決定してください。

1. 認証のみが必要ですか。その場合は、手順2に進みます。

2. 認可のみが必要ですか。その場合は、「認可ポリシーと構成手順」を参照してください。

3. 認証および認可が必要ですか。その場合は、手順3に進みます。

4. メッセージ保護のみが必要ですか。その場合は、「メッセージ保護のみのポリシーと構成手順」を参照してください。

5. 認証およびメッセージ保護の両方が必要ですか。その場合は、手順4に進みます。

2. 認証のみが必要な場合は、考慮する必要のある基本的な質問が2つあります。

1. トークンをどこに組み込みますか。トランスポート・レイヤーとSOAPヘッダーのどちらにトークンを組み込みますか。

2. 特定タイプのトークンを使用する必要がありますか。認証のみのポリシーでサポートされている資格証明は、ユーザー名/パスワード・トークン、SAMLトークン、JWTトークンおよびKerberosトークンです。

3. 認証および認可が必要な場合は、次の内容を考慮する必要があります。

1. 手順2で、認証に関して決定した内容を確認してください。

2. 認可ポリシーの詳細は、「認可ポリシーと構成手順」を参照してください。

4. 認証とメッセージ保護の両方が必要な場合は、次の内容を考慮する必要があります。

1. メッセージ保護をトランスポート・レイヤーで処理しますか。その場合は、Username over SSL、SAML over SSL(Sender-Vouches)、SAML over SSL(Token Bearer)、HTTP token over SSLの4つのポリシー・セットから選択します。
1つのポリシー・セット(wss_http_token_over_ssl_client_policyおよびwss_http_token_over_ssl_service_policy)では、認証もトランスポート・レイヤーで処理されます。その他3つのポリシーでは、認証はSOAPヘッダーで行われます。

WS-Security V1.0またはv1.1標準を使用している場合は、認証とメッセージ保護の両方がSOAPヘッダーで行われます。5組のポリシーで、ユーザー名/パスワード、SAMLおよびX.509証明書のトークンがサポートされています。

詳細は、「メッセージ保護および認証ポリシーと構成手順」を参照してください。

メッセージの保護

メッセージ保護では、メッセージ機密保護のためのメッセージの暗号化と、メッセージ整合性のためのメッセージへの署名が行われます。Oracle Fusion Middlewareの事前定義済ポリシーと、メッセージ保護アサーション・テンプレートのいずれかを使用して作成するポリシーには、メッセージ機密保護かメッセージ整合性、あるいはその両方のオプションがあります。

次の手順は、メッセージが保護されるよう、クライアントおよびサービスを構成するために実行が必要な操作をまとめたものです。

- 適切なメッセージ保護ポリシーをクライアントおよびサービスのそれぞれに添付します。

- メッセージ整合性が必要な場合には、メッセージに署名する必要があります。

- メッセージ機密保護が必要な場合には、メッセージを暗号化する必要があります。

- 必要な公開鍵と秘密鍵を、クライアントおよびサービスのキーストアに追加します。この手順を実行するには、「メッセージ保護に関するキーストアの構成」の説明に従って、キーストアを構成しておく必要があります。

メッセージ保護の基本

メッセージ保護には、メッセージ機密保護とメッセージ整合性の2つの概念があります。

メッセージの機密保護には、送信ユーザーおよび受信ユーザーのアイデンティティのみでなく、データの機密性も関係します。メッセージのコンテンツを暗号化し、送信ユーザーおよび受信ユーザーのアイデンティティを不明瞭化することで機密保護が実現されます。送信者は受信者の公開鍵を使用してメッセージを暗号化します。メッセージは受信者の秘密鍵でのみ正常に復号化できるため、送信中に第三者によってメッセージが読み取られることはありません。「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

メッセージ整合性は、認証局がメッセージにデジタルで署名することにより実現します。デジタル署名は、SOAPメッセージの送信者を認証したり、SOAPメッセージの整合性(SOAPメッセージが送信中に変更されていないこと)を保証したりするために使用されます。

デジタル署名がSOAPメッセージに適用されると、メッセージから一意のハッシュが生成されます。このハッシュは送信者の秘密鍵で暗号化されます。メッセージを受信すると、受信者は送信者の公開鍵を使用してハッシュを復号化します。

注意:
通常、証明書を検証するために受信者のキーストアに送信者の公開鍵を格納しておく必要はありません。キーストアにルート証明書があれば、証明書チェーンを検証できます。ただし、ThumbprintやSerialIssuerメカニズムなど、メッセージに送信者の公開鍵が存在しない場合は、送信者の公開鍵を受信者のキーストアに格納する必要があります。

送信者のみが秘密鍵を使用してハッシュを暗号化できるため、これで送信者を認証できます。受信者はメッセージとともに送信されるハッシュと、受信者側で生成するハッシュを比較できるため、SOAPメッセージが送信中に改ざんされていないことを確認できます。

次の内容を実行することで、メッセージ保護アサーション・テンプレートおよび事前定義済ポリシーを、リクエストやレスポンス・メッセージの保護に使用できます。

- メッセージの署名

- メッセージの暗号化

- メッセージの署名および暗号化

- メッセージの復号化

- 署名の検証

- メッセージの復号化と署名の検証

事前定義済メッセージ保護ポリシー用のFusion Middleware Controlユーザー・インタフェースでは、署名、暗号化またはその両方を行うメッセージ部分を簡単に指定できます。本文全体、アイデンティティ固有のヘッダー要素や本文要素に対して署名、暗号化またはその両方を行うことができます。次に、部分的な暗号化の例を示します。

部分的な暗号化の例

この例では、Fusion Middleware Controlを使用して、SOAPメッセージの一部が暗号化されます。

1. クレジット・カード番号(cardNr)を承認する簡単なWebサービスを作成します。サンプルのペイロードを例11-1に示します。

例11-1 ペイロードの例

<soapenv:Body     wsu:Id="Body-2grW1pYwjwsoskbLuMJZzg22"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-ws
security-utility-1.0.xsd">

<aaav:validateTheCard     xmlns:aaav="http://aaavalidatecred/">
<aaav:cardNr>string</aaav:cardNr>
<aaav:firstName>string</aaav:firstName>
<aaav:lastName>string</aaav:lastName>
<aaav:validUntilDate>string</aaav:validUntilDate>
</aaav:validateTheCard>

</soapenv:Body>

2. Fusion Middleware Controlで、メッセージ保護ポリシーを選択し、「編集」をクリックします。

3. 「設定」タブで、「リクエスト」タブを選択します。

4. 「メッセージの暗号化設定」セクションで、「本体全体を含める」の選択を解除します(図11-1)。

5. 「本体要素」を開き、「追加」をクリックします。

6. ネームスペースと要素名を入力します。この例では、カード番号のみが次のように暗号化されます。
ネームスペース = http://aaavalidatecred/

要素名 = cardNr

「ポリシーの編集」ページ内の他のフィールドの詳細は、表C-118を参照してください。例11-2は、ポリシーがどのようになるかを示しています。

例11-2 部分的な暗号化を使用するサンプル・ポリシー

<orasp:encrypted-elements>
<orasp:element orasp:namespace="http://aaavalidatecred/"
orasp:name="cardNr">n/a</orasp:element>
</orasp:encrypted-elements>

7. 「はい」をクリックして本体要素を追加し、「保存」をクリックして変更後のポリシーを保存します。

図11-1 メッセージ保護ポリシーの部分的な暗号化の例

セキュリティSwA添付ファイル

SOAPエンベロープ内に格納できないデータをSOAPメッセージの添付ファイルとしてパッケージングすることは、標準的なことになってきています。プライマリSOAPメッセージでは、添付ファイルまたはMIMEヘッダー付きの添付ファイルとして追加のエンティティを参照できます。

各SwA添付ファイルはMIME部分であり、MIMEヘッダーを含みます。SwA添付を含めるでは、添付ファイルは署名されますが、その添付ファイルに対応するMIMEヘッダーは署名されません。MIMEヘッダーを含めるでは、添付ファイルに加えて対応するMIMEヘッダーも署名されます。

メッセージ保護を行うポリシー

次のポリシーでメッセージ保護が行われます。この章の後半部分にあるポリシーごとの項では、各ポリシーでどのようにメッセージ保護が実装されるかについて説明しています。

- oracle/wss10_message_protection_client_policy

- oracle/wss10_message_protection_service_policy

- oracle/wss10_username_id_propagation_with_msg_protection_client_policy

- oracle/wss10_username_id_propagation_with_msg_protection_service_policy

- oracle/wss10_username_token_with_message_protection_client_policy

- oracle/wss10_username_token_with_message_protection_service_policy

- oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

- oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy

- oracle/wss10_x509_token_with_message_protection_client_policy

- oracle/wss10_x509_token_with_message_protection_service_policy

- oracle/wss10_saml_token_with_message_protection_client_policy

- oracle/wss10_saml_token_with_message_protection_service_policy

- oracle/wss10_saml20_token_with_message_protection_client_policy

- oracle/wss10_saml20_token_with_message_protection_service_policy

- oracle/wss10_saml_hok_token_with_message_protection_client_policy

- oracle/wss10_saml_hok_token_with_message_protection_service_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

- oracle/wss11_message_protection_client_policy

- oracle/wss11_message_protection_service_policy

- oracle/wss11_kerberos_token_with_message_protection_client_policy

- oracle/wss11_kerberos_token_with_message_protection_service_policy

- oracle/wss11_kerberos_token_with_message_protection_basic128_client_policy

- oracle/wss11_kerberos_token_with_message_protection_basic128_service_policy

- oracle/wss11_saml_token_with_message_protection_client_policy

- oracle/wss11_saml_token_identity_switch_with_message_protection_client_policy

- oracle/wss11_saml_token_with_message_protection_service_policy

- oracle/wss11_saml20_token_with_message_protection_client_policy

- oracle/wss11_saml20_token_with_message_protection_service_policy

- oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

- oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy

- oracle/wss11_sts_issued_saml_with_message_protection_client_policy

- oracle/wss11_username_token_with_message_protection_client_policy

- oracle/wss11_username_token_with_message_protection_service_policy

- oracle/wss11_x509_token_with_message_protection_client_policy

- oracle/wss11_x509_token_with_message_protection_service_policy

WS-Security 1.0およびWS-Security 1.1標準の両方がサポートされています。Webサービスとクライアントの両方が共通して共有する標準をサポートしているアサーション・テンプレートまたは事前定義済ポリシーを使用します。新たに開始する場合は、オプションの数が多く、必要なPKIデプロイメントが少ないため、WS-Security 1.1標準を使用します。

アサーション・テンプレートでは、メッセージ本文の完全な署名および暗号化だけでなく、部分的な署名および暗号化もサポートされています。SOAPメッセージ保護が可能なアサーション・テンプレートまたは事前定義済ポリシーの場合、デフォルトの動作はSOAPメッセージ本文全体を署名および暗号化して保護することです。必要な場合には、選択した要素を保護するように、アサーションおよびポリシーを構成できます。

認証のみのポリシーと構成手順

「認証のみのポリシー」に、認証のみを実行するセキュリティ・ポリシーをまとめ、トークンがトランスポート・レイヤーまたはヘッダーに組み込まれるかどうかを示します。

この項では、認証のみの事前定義済ポリシー、ポリシーが適用されるWebサービスのタイプ、およびポリシーを使用するために実行する必要がある構成手順へのリンクを示します。

oracle/http_jwt_token_client_policy

http_jwt_token_client_policyは、HTTPヘッダーにJWTトークンを含めます。ポリシーがクライアントにより使用される場合、Oracle WSMによってJWTトークンが自動的に作成されます。発行者名とサブジェクト名は、プログラムによって、またはポリシーを介して宣言的に提供されます。このポリシーにはオーディエンス制限条件を指定できます。

このポリシーは、HTTPベースのどのクライアント・エンドポイントにも適用できます。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_jwt_token_client_template」を参照してください。

デフォルトでは、oracle/http_jwt_token_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-jwt-security orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication"
orawsp:name="Http JWT Security">
<orasp:auth-header orasp:algorithm-suite="Basic128Sha256Rsa15"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:mechanism="jwt"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpJwtTokenConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.attributes" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional" orawsp:name="issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional" orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="audience.uri" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="propagate.identity.context" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.tenant.name" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-jwt-security>

設定

表C-2を参照してください。

構成プロパティ

表C-3

oracle/http_jwt_token_identity_switch_client_policy

認証済サブジェクトに基づいたアイデンティティではなく、別のアイデンティティを伝播して、動的なアイデンティティ切替えを実行します。このポリシーは、HTTPヘッダーにJWTトークンを含めます。ポリシーがクライアントにより使用される場合、Oracle WSMによってJWTトークンが自動的に作成されます。発行者名とサブジェクト名は、プログラムによって、またはポリシーを介して宣言的に提供されます。このポリシーにはオーディエンス制限条件を指定できます。

このポリシーは、HTTPベース、SOAPまたはRESTクライアント・エンドポイントで実行できます。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_jwt_token_client_template」を参照してください。

デフォルトでは、subject.precedenceプロパティがfalseに設定されていること以外は、 oracle/http_jwt_token_identity_switch_client_policyアサーション・コンテンツとoracle/http_jwt_token_client_policyは同じです。

<orawsp:Property orawsp:contentType="optional" orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>

設定

表C-2を参照してください。

構成プロパティ

表C-3

Webサービス・クライアントの設定方法

wss_saml_token_bearer_identity_switch_client_policyを任意のタイプのWebサービス・クライアントに割り当てます。

表C-33「wss_saml_token_bearer_client_templateの構成」に定義された構成プロパティをオーバーライドします。詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

認証されたサブジェクトのかわりにクライアント固有のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。(subject.precedenceがfalseの場合、SAMLアサーションを作成するユーザー名は、csf-keyのユーザー名プロパティからのみ取得されます。)wss_saml_token_bearer_identity_switch_client_policyポリシーでは、このポリシーをアタッチするアプリケーションにWSIdentityPermission権限が必要です。つまり、Oracle WSMが外部から提供されるアイデンティティをアプリケーションから受け入れるには、そのアプリケーションがWSIdentityPermission権限を持つ必要があります。これにより、Oracle WSMが潜在的に悪質なアプリケーションからアイデンティティを提供されるのを回避します。

このポリシーの使用方法の詳細は、「アイデンティティ切替えのためのWebサービス・クライアントの構成」を参照してください。また、クライアント側でのアイデンティティ切替えポリシーによるユーザー名の選択方法について学習し、「WSIdentityPermission権限の設定」に記載されているようにWSIdentityPermission権限を付与します。

JWTに関するその他の考慮事項は、「Oracle WSMでのJSON Web Token (JWT)の使用」を参照してください。

oracle/http_jwt_token_service_policy

http_jwt_token_service_policyは、HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証します。デフォルトのポリシー構成では、非対称署名を使用してJWTトークンが署名されます(algorithm-suite属性がBasic128Sha256Rsa15に設定されています)。

このポリシーはどのHTTPベース・エンドポイントにも添付できます。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_jwt_token_service_template」を参照してください。

デフォルトでは、oracle/http_jwt_token_service_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-jwt-security orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication" orawsp:name="Http JWT Security">
<orasp:auth-header orasp:algorithm-suite="Basic128Sha256Rsa15"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:mechanism="jwt"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpJwtConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="trusted.issuers" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="propagate.identity.context" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-jwt-security>

設定

表C-2を参照してください。

構成プロパティ

表C-4を参照してください。

oracle/http_oam_token_service_policy

このポリシーは、HTTPヘッダーの資格証明を抽出して、Oracle Platform Security Servicesのアイデンティティ・ストアに対してユーザーを認証し、その情報をOracle Access Manager (OAM)トークンを使用して伝搬します。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_oam_token_service_template」を参照してください。

デフォルトでは、oracle/http_oam_token_service_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-oam-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication" orawsp:name="Http OAM Security">
<orasp:auth-header orasp:mechanism="oam"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpOAMConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oam-security>

設定

表C-5を参照してください。

構成プロパティ

表C-6を参照してください。

OAMの設定方法

OAMはサーバー側で設定する必要があります。HTTP OAMセキュリティを実行するには、OAM Webgateを構成して、リクエストのインターセプト、ユーザーの認証およびOAM_REMOTE_USER HTTPヘッダーの設定を行います。Oracle WSMは、リクエストを許可する前に、OAM_REMOTE_USER_HTTPヘッダーの有無を確認します。詳細は、『Oracle Fusion Middleware Oracle Access Management管理者ガイド』を参照してください。

oracle/http_oauth2_token_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークン(AT)は、Mobile & Social OAuth2サーバーから取得します。このポリシーは、HTTPベースのSOAPまたはRESTクライアントに割り当てることができます。

「Oracle WSM OAuth2ポリシーを使用するための前提条件」を参照してください。

ポリシーを割り当てる場合、次のプロパティをオーバーライドできます。

- OAuth2トークン・リクエストの場合:

- scope

- authz.code (このリリースでは使用されません。)

- redirect.uri (このリリースでは使用されません。)

- ローカルにトークンを作成する場合:

- subject.precedence

- csf.map

- csf-key

- oauth2.client.csf.key

- federated.client.token

- user.attributes

- issuer.name

- oracle.oauth2.service

- user.roles.include

- keystore.sig.csf.key

- propagate.identity.context

- user.tenant.name

- include.certificate

- 一般:

- audience.uri

- reference.priority

- time.in.millis

ポリシー・ファイルは、WLSTを使用するか、手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_oauth2_token_client_template」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーとoracle/oauth2_config_client_policyをクライアント・アプリケーションに割り当てます。

oracle/oauth2_config_client_policyポリシーの必須プロパティtoken.uriは、OAuth2サーバーのトークン・エンドポイントを指定します。

次の任意のOracle WSM JWTサービス・ポリシーもWebサービスに割り当てます。Oracle WSMのサーバー側エージェントがアクセス・トークンを検証します。

- oracle/http_jwt_token_service_policy

- oracle/multi_token_rest_service_policy (REST)

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy (SOAP)

デフォルトでは、oracle/http_oauth2_token_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-oauth2-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication" orawsp:name="Http OAuth2">
<orasp:auth-header orasp:is-encrypted="false" orasp:is-signed="false"
orasp:mechanism="oauth2"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpOAuth2Config">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="subject.precedence">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf.map"/>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf-key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="federated.client.token">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="scope">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string"
orawsp:contentType="optional"
orawsp:name="authz.code">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string"
orawsp:contentType="optional" orawsp:name="redirect.uri">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.attributes">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="issuer.name">
<orawsp:Value/>
<orawsp:DefaultValue>www.oracle.com</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="oracle.oauth2.service">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="user.roles.include">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="reference.priority">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="propagate.identity.context" orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.tenant.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string"
orawsp:contentType="optional" orawsp:name="audience.uri">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="include.certificate">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="time.in.millis">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oauth2-security>

設定

表C-7を参照してください。

構成プロパティ

表C-8を参照してください。

oracle/http_oauth2_token_opc_oauth2_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークンは、OracleクラウドのOAuthサーバーから取得します。

oracle.oauth2.serviceプロパティはデフォルトでtrueに設定されているため、OAuth2サーバーのユーザーおよびJWTトークンの発行者としてクライアントIDが使用されます。scopeが空(デフォルト)の場合、Oracle WSMがサービスURLを自動的に取得し、address:port部分をスコープとして使用します。

このポリシーは、任意のHTTPベース、SOAPまたはRESTクライアントに割り当てることができます。

「Oracle WSM OAuth2ポリシーを使用するための前提条件」を参照してください。

ポリシーを割り当てる場合、次のプロパティをオーバーライドできます。

- OAuth2トークン・リクエストの場合:

- scope

- authz.code (このリリースでは使用されません。)

- redirect.uri (このリリースでは使用されません。)

- ローカルにトークンを作成する場合:

- subject.precedence

- csf.map

- csf-key

- oauth2.client.csf.key

- federated.client.token

- user.attributes

- issuer.name

- oracle.oauth2.service

- user.roles.include

- keystore.sig.csf.key

- propagate.identity.context

- user.tenant.name

- include.certificate

- 一般:

- audience.uri

- reference.priority

- time.in.millis

ポリシー・ファイルは、WLSTを使用するか、手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_oauth2_token_client_template」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーとoracle/oauth2_config_client_policyをクライアント・アプリケーションに割り当てます。oracle/oauth2_config_client_policyポリシーの必須プロパティtoken.uriは、OAuth2サーバーを指定します。

次の任意のOracle WSM JWTサービス・ポリシーもWebサービスに割り当てます。Oracle WSMのサーバー側エージェントがアクセス・トークンを検証します。

- oracle/http_jwt_token_service_policy

- oracle/multi_token_rest_service_policy (REST)

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy (SOAP)

デフォルトでは、oracle/http_oauth2_token_opc_oauth2_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-oauth2-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication" orawsp:name="Http OAuth2">
<orasp:auth-header orasp:is-encrypted="false" orasp:is-signed="false"
orasp:mechanism="oauth2"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpOAuth2Config">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="subject.precedence">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf.map"/>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf-key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="federated.client.token">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="scope">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string"
orawsp:contentType="optional" orawsp:name="authz.code">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string"
orawsp:contentType="optional" orawsp:name="redirect.uri">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.attributes">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="issuer.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="oracle.oauth2.service">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="user.roles.include">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="reference.priority">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="propagate.identity.context" orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.tenant.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string"
orawsp:contentType="optional" orawsp:name="audience.uri">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="include.certificate">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="time.in.millis">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oauth2-security>

設定

表C-7を参照してください。

構成プロパティ

表C-8を参照してください。

oracle/oauth2_config_client_policy

このポリシーは、クライアント側のOAuth2情報を提供します。この情報は、トークン交換でMobile and Social OAuth2サーバーを起動するために使用されます。

このポリシーは、OAuth2トークン・クライアント・ポリシーも割り当てる場合にのみ実行されます。それ以外の場合、この値は無視されます。通常、このポリシーはグローバルに、OAuth2トークン・クライアント・ポリシーはローカルに割り当てられます。

「Oracle WSM OAuth2ポリシーを使用するための前提条件」を参照してください。

ポリシー・ファイルは、WLSTを使用するか、手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/oauth2_config_client_template」を参照してください。

token.uriプロパティを設定またはオーバーライドする必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

デフォルトでは、oracle/oauth2_config_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:oauth2-config
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:token-uri="http://host:port/tokens" orawsp:Enforced="true"
orawsp:Silent="true" orawsp:category="security/oauth2-config"
orawsp:name="OAuth2 Configuration">
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="OAuth2Config">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="role" orawsp:type="string" orawsp:contentType="constant">
<orawsp:Value/>
<orawsp:DefaultValue>ultimateReceiver</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:name="token.uri" orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value/>
<orawsp:DefaultValue>http://host:port/tokens</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="required" orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>basic.client.credentials</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="reference.priority"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:oauth2-config>

設定

表C-9を参照してください。

構成プロパティ

表C-10を参照してください。

oracle/http_saml20_token_bearer_client_policy

http_saml20_token_bearer_client_policyポリシーは、HTTPヘッダーにSAML 2.0トークンを含めます。確認方法がBearerのSAMLトークンが自動的に作成されます。このポリシーは、HTTPベースのエンドポイントで実行できます。デフォルトでは、サブジェクト(ユーザー・プリンシパル)から認証されたユーザーを使用して、アイデンティティ伝搬用のSAMLアサーションが生成されます。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_saml20_token_bearer_client_template」を参照してください。

デフォルトでは、oracle/http_saml_bearer_token_service_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-saml20-bearer-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication" orawsp:name="Http SAML 2.0 Bearer
Security">
<orasp:auth-header orasp:mechanism="saml20-bearer"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpSaml20BearerConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.attributes" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.audience.uri" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="keystore.sig.csf.key" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.enveloped.signature.required"
orawsp:type="boolean">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
<orawsp:Property orawsp:name="propagate.identity.context"
orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-saml20-bearer-security>

設定

表C-11を参照してください。

構成プロパティ

表C-12を参照してください。

oracle/http_saml20_bearer_token_service_policy

このポリシーは、HTTPヘッダー内の、確認方法がBearerのSAML 2.0トークンに含まれる資格証明を使用して、ユーザーを認証します。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_saml20_token_bearer_service_template」を参照してください。

デフォルトでは、oracle/http_saml_bearer_token_over_ssl_service_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-saml20-bearer-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="true" '
orawsp:category="security/authentication" orawsp:name="Http SAML 2.0 Bearer
Security">
<orasp:auth-header orasp:mechanism="saml20-bearer"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpSaml20BearerConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.trusted.issuers" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.enveloped.signature.required"
orawsp:type="boolean">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
<orawsp:Property orawsp:name="propagate.identity.context"
orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-saml20-bearer-security>

設定

表C-11を参照してください。

構成プロパティ

表C-13を参照してください。

oracle/wss_http_token_client_policy

oracle/wss_http_token_client_policyポリシーは、アウトバウンド・クライアント・リクエストのHTTPヘッダーに資格証明を含めます。これは、oracle/wss_http_token_service_policyサービス・エンドポイント・ポリシーに類似したクライアント・ポリシーです。

このポリシーには、oracle/wss_http_token_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_http_token_client_template」を参照してください。

設定

表C-17を参照してください。

構成プロパティ

表C-18を参照してください。

Webサービス・クライアントの設定方法

「構成」ページでcsf-keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

この値は、ユーザー名/パスワードにマッピングされているキーを表しています。資格証明ストアにキーを追加する方法の詳細は、「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

設計時のWebサービス・クライアントの設定方法

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

クライアントは、HTTPヘッダーに資格証明を渡す必要があります。

サーブレット・アプリケーションのポリシーを添付および構成する方法

サーブレット・アプリケーションのポリシー・ファイルは、手動で添付および変更する必要があります。Fusion Middleware Controlを使用してポリシーを添付、表示または編集できません。

サーブレットにポリシーを添付するには、「サーブレット・アプリケーションへのポリシーの添付」を参照してください。

構成できるアサーション属性の詳細は、「orasp:http-security」を参照してください。

デフォルトでは、ポリシーは次のように定義されます。

<orasp:http-security orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication" orawsp:name="Http Security">
<orasp:auth-header orasp:mechanism="basic"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-security>

oracle/wss_http_token_service_policy

このwss_http_token_service_policyでは、HTTPヘッダーの資格証明を使用して、ユーザーを認証します。

このポリシーには、oracle/wss_http_token_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_http_token_service_template」を参照してください。

設定

表C-17を参照してください。

注意:
サーブレット・アプリケーションの詳細は、「サーブレット・アプリケーションのポリシーを添付および構成する方法」を参照してください。

構成プロパティ

表C-19を参照してください。

注意:
サーブレット・アプリケーションの詳細は、「サーブレット・アプリケーションのポリシーを添付および構成する方法」を参照してください。

WebLogic Serverの設定方法

Webサービスは、提供されたユーザー名とパスワードの資格証明を、構成済の認証ソースに対して認証する必要があります。

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに認証プロバイダを追加します。

相互SSL認証の場合、WebLogic Serverを構成する必要があります。「WebLogic ServerへのSSLの構成(双方向)」を参照してください。

サーブレット・アプリケーションのポリシーを添付および構成する方法

サーブレット・アプリケーションのポリシー・ファイルは、手動で添付および変更する必要があります。Fusion Middleware Controlを使用してポリシーを添付、表示または編集できません。

サーブレットにポリシーを添付するには、「サーブレット・アプリケーションへのポリシーの添付」を参照してください。

構成できるアサーション属性の詳細は、「orasp:http-security」を参照してください。

デフォルトでは、ポリシーは次のように定義されます。

<orasp:http-security orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication" orawsp:name="Http Security">
<orasp:auth-header orasp:mechanism="basic"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="realm"
orawsp:type="string">
<orawsp:Value>Oracle WSM</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
<orasp:http-security>

oracle/wss_username_token_client_policy

注意:
このポリシーは安全ではありません。パスワードをクリア・テキストで送信します。このポリシーは、セキュリティが低くても問題にならない場合のみ、または他のメカニズムでトランスポートが保護されていることがはっきりしている場合に使用してください。または、このポリシーのSSLバージョンであるoracle/wss_username_token_over_ssl_client_policyの使用を検討します。

このポリシーは、すべてのアウトバウンドSOAPリクエスト・メッセージにWS-Security UsernameTokenヘッダーの資格証明を含めます。パスワードが必須でないことに加えて、プレーン・テキスト・メカニズムがサポートされています。これは、oracle/wss_username_token_service_policyサービス・エンドポイント・ポリシーに類似したクライアント・ポリシーです。

このポリシーには、oracle/wss_username_token_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_username_token_client_template」を参照してください。

設定

表C-20を参照してください。

構成プロパティ

表C-21を参照してください。

Webサービス・クライアントの設定方法

「構成」ページでcsf-keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

この値は、ユーザー名/パスワードにマッピングされているキーを表しています。資格証明ストアにキーを追加する方法の詳細は、「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

「設定」ページでパスワード・タイプを「なし」に指定した場合、キーにパスワードを含める必要はありません。

設計時のWebサービス・クライアントの設定方法

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

クライアントは、SOAPリクエスト・メッセージにWS-Security UsernameToken要素(<wsse:UsernameToken/>)を含める必要があります。また、クライアントは、認証用にユーザー名とパスワードを提供します。

oracle/wss_username_token_service_policy

注意:
このポリシーは安全ではありません。パスワードをクリア・テキストで送信します。このポリシーは、セキュリティが低くても問題にならない場合のみ、または他のメカニズムでトランスポートが保護されていることがはっきりしている場合に使用してください。または、このポリシーのSSLバージョンであるoracle/wss_username_token_over_ssl_service_policyの使用を検討します。

このポリシーは、UsernameToken WS-Security SOAPヘッダーの資格証明を使用してユーザーを認証します。プレーン・テキスト・メカニズムがサポートされています。

このポリシーには、oracle/wss_username_token_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_username_token_service_template」を参照してください。

設定

表C-20を参照してください。

構成プロパティ

表C-22を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

oracle/wss10_saml_token_client_policy

注意:
このポリシーは安全ではなく、デモの目的でのみ提供されます。SAML発行者の名前は存在しますが、SAMLトークンは署名されません。そのため、メッセージの改ざんが可能です。

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。

このポリシーには、oracle/wss10_saml_token_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_client_template」を参照してください。

設定

表C-23を参照してください。

構成プロパティ

表C-24を参照してください。

Webサービス・クライアントの設定方法

「SAMLの構成」を参照してください。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

アウトバウンドSOAPメッセージに、SAMLトークンを挿入するWS-Securityヘッダー要素(<saml:Assertion>)を含めます。確認タイプは、常にsender-vouchesです。

oracle/wss10_saml_token_service_policy

注意:
このポリシーは安全ではなく、デモの目的でのみ提供されます。SAML発行者の名前は存在しますが、SAMLトークンは署名されません。そのため、メッセージの改ざんが可能です。

このポリシーは、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

このポリシーには、oracle/wss10_saml_token_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_service_template」を参照してください。

設定

表C-23を参照してください。

構成プロパティ

表C-25を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それをプロバイダに渡します。

oracle/wss10_saml20_token_client_policy

注意:
このポリシーは安全ではなく、デモの目的でのみ提供されます。SAML発行者の名前は存在しますが、SAMLトークンは署名されません。そのため、メッセージの改ざんが可能です。

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。

このポリシーには、oracle/wss10_saml20_token_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_client_template」を参照してください。

設定

表C-26を参照してください。

構成プロパティ

表C-27を参照してください。

Webサービス・クライアントの設定方法

「SAMLの構成」を参照してください。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

アウトバウンドSOAPメッセージに、SAMLトークンを挿入するWS-Securityヘッダー要素(<saml:Assertion>)を含めます。確認タイプは、常にsender-vouchesです。

oracle/wss10_saml20_token_service_policy

注意:
このポリシーは安全ではなく、デモの目的でのみ提供されます。SAML発行者の名前は存在しますが、SAMLトークンは署名されません。そのため、メッセージの改ざんが可能です。

このポリシーは、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

このポリシーには、oracle/wss10_saml20_token_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_service_template」を参照してください。

設定

表C-26を参照してください。

構成プロパティ

表C-28を参照してください。

「構成」ページでpropagate.identity.contextの値も指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml2.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それをプロバイダに渡します。

oracle/wss11_kerberos_token_client_policy

このポリシーでは、WS-Security Kerberos Token Profile v1.1標準に従い、WS-SecurityヘッダーにKerberosトークンが含まれます。

サービス・プリンシパル名(SPN)は、Kerberos認証のキー・コンポーネントです。SPNは、サーバー上で動作するサービスの一意の識別子です。Kerberos認証を使用するすべてのサービスにSPNを設定し、クライアントがネットワーク上のサービスを識別できるようにする必要があります。サービスにSPNが設定されていない場合、クライアントではそのサービスを特定できないため、Kerberos認証を使用できなくなります。

このポリシーには、oracle/wss11_kerberos_token_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_client_template」を参照してください。

設定

表C-81を参照してください。

構成プロパティ

表C-82を参照してください。

Webサービス・クライアントの設定方法

「Kerberosトークンの使用」を参照。

Kerberosクライアント側ポリシーを実行するWebサービス・クライアントは、アクセスを試行するサービスのサービス・プリンシパル名を認識している必要があります。「構成」ページでservice.principal.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。デフォルト値(プレースホルダ)は、HOST/localhost@oracle.comです。

設計時のWebサービス・クライアントの設定方法

「Kerberosトークンの使用」を参照。

サービス・プリンシパル名を設定する必要があります。サービス・プリンシパル名は、クライアントがKDCにリクエストするチケットに対応するサービス・プリンシパルの名前を指定します。

Kerberos認証が成功した場合、取得されたKerberosチケットと認証プロバイダを、SOAPセキュリティ・ヘッダーのBinarySecurityToken要素で囲まれたWebサービスに送信します。

oracle/wss11_kerberos_token_service_policy

このポリシーは、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。

サービス・プリンシパル名(SPN)は、Kerberos認証のキー・コンポーネントです。SPNは、サーバー上で動作するサービスの一意の識別子です。Kerberos認証を使用するすべてのサービスにSPNを設定し、クライアントがネットワーク上のサービスを識別できるようにする必要があります。サービスにSPNが設定されていない場合、クライアントではそのサービスを特定できないため、Kerberos認証を使用できなくなります。

このポリシーには、oracle/wss11_kerberos_token_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_service_template」を参照してください。

設定

表C-81を参照してください。

構成プロパティ

不要。

ログイン・モジュールの構成

krb5.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

WebLogic Serverの構成方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

oracle/wss_saml_token_bearer_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。確認方法がBearerのSAMLトークンが自動的に作成されます。

このポリシーには、oracle/wss_saml_token_bearer_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_bearer_client_template」を参照してください。

設定

表C-32を参照してください

構成プロパティ

表C-33を参照してください

Webサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

メッセージ保護のみのポリシーと構成手順

事前定義済ポリシーによるメッセージ保護の実装方法については、「メッセージの保護」を参照してください。

表B-3に、メッセージ保護のみを実行するポリシーをまとめ、ポリシーがトランスポート・レイヤーまたはSOAPヘッダーで実行されるかどうかを示します。

メッセージ保護のみのポリシーは、リクエスタの認証または認可を行いません。

ポリシー・サブジェクトに添付されるセキュリティ・ポリシーは1つまたは2つです。セキュリティ・ポリシーに含めることができるのは、(このケースでは)認証またはメッセージ保護のサブタイプ・カテゴリに属するアサーションか、両方のサブタイプ・カテゴリに属する1つのアサーションです。また、認可サブタイプに属するアサーションを使用して、リクエスタを認可できます。

oracle/wss10_message_protection_client_policy

このポリシーは、WS-Security 1.0標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性と機密保護)を行います。

このポリシーには、oracle/wss10_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_message_protection_client_policy」を参照してください。

設定

表C-35を参照してください。

構成プロパティ

表C-36を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。keystore.recipient.aliasは、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-3 SOAPメッセージのWS-Security 1.0メッセージ整合性

<dsig:Signature xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">
<dsig:SignedInfo>
<dsig:CanonicalizationMethod
Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<dsig:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<dsig:Reference URI="#Timestamp-...">
<dsig:Transforms>
<dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<dsig:DigestValue>...</dsig:DigestValue>
</dsig:Reference>
<dsig:Reference URI="#Body-...">
<dsig:Transforms>
<dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<dsig:DigestValue>...</dsig:DigestValue>
</dsig:Reference>
<dsig:Reference URI="#KeyInfo-...">
<dsig:Transforms>
<dsig:Transform
Algorithm="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform">
<TransformationParameters xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns="http://www.w3.org/2000/09/xmldsig#"/>
</TransformationParameters>
</dsig:Transform>
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<dsig:DigestValue>...</dsig:DigestValue>
</dsig:Reference>
</dsig:SignedInfo>
<dsig:SignatureValue>....</dsig:SignatureValue>
<dsig:KeyInfo Id="KeyInfo-...">
<wsse:SecurityTokenReference xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:KeyIdentifier ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509SubjectKeyIdentifier"
EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">
...</wsse:KeyIdentifier>
</wsse:SecurityTokenReference>
</dsig:KeyInfo>
</dsig:Signature>

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

例11-4 SOAPメッセージのWS-Security 1.0メッセージ機密保護

<env:Body xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="Body-JA9fsCRnqbFJ0ocBAMKb7g22">
<xenc:EncryptedData xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" Type="http://www.w3.org/2001/04/xmlenc#Content" Id="...">
<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes256-cbc"/>
<xenc:CipherData>
<xenc:CipherValue>...</xenc:CipherValue>
</xenc:CipherData>
</xenc:EncryptedData>
</env:Body>

oracle/wss10_message_protection_service_policy

このポリシーは、WS-Security 1.0標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性と機密保護)を実行します。

メッセージは、WS-Securityの非対称鍵テクノロジのBasic 128スイートを使用して保護されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。このポリシーは、リクエスタの認証または認可を行いません。

このポリシーには、oracle/wss10_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_message_protection_service_template」を参照してください。

設定

表C-35を参照してください。

構成プロパティ

表C-37を参照してください。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

oracle/wss11_message_protection_client_policy

このポリシーは、WS-Security 1.1標準に従って、アウトバウンドSOAPリクエストのメッセージの整合性と機密保護を提供します。

このポリシーには、oracle/wss11_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_message_protection_client_template」を参照してください。

設定

表C-38を参照してください。

構成プロパティ

表C-39を参照してください。

Webサービス・クライアントの構成方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの構成方法

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

このポリシーは対称鍵テクノロジを使用します。このテクノロジは、データの暗号化と復号化に同じ共有鍵を使用する暗号化メソッドです。対称鍵は、メッセージへの署名に使用されます。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-5に、WS-Security 1.1標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

例11-5 SOAPメッセージのWS-Security 1.1メッセージ機密保護

<xenc:EncryptedKey xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" Id="EK-...">
<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p">
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" />
</xenc:EncryptionMethod>
<dsig:KeyInfo xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:KeyIdentifier ValueType="http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#ThumbprintSHA1"
EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">...</wsse:KeyIdentifier>
</wsse:SecurityTokenReference>
</dsig:KeyInfo>
<xenc:CipherData>
<xenc:CipherValue>...</xenc:CipherValue>
</xenc:CipherData>
<xenc:ReferenceList>
<xenc:DataReference URI="#_..." />
</xenc:ReferenceList>
</xenc:EncryptedKey>
<env:Body xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="Body-...">
<xenc:EncryptedData xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" Type="http://www.w3.org/2001/04/xmlenc#Content" Id="...">
<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes256-cbc" />
<dsig:KeyInfo xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:Reference URI="#EK-..." ValueType="http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#EncryptedKey" />
</wsse:SecurityTokenReference>
</dsig:KeyInfo>
<xenc:CipherData>
<xenc:CipherValue>...</xenc:CipherValue>
</xenc:CipherData>
</xenc:EncryptedData>
</env:Body>

oracle/wss11_message_protection_service_policy

このポリシーは、WS-Security 1.1標準に従って、インバウンドSOAPリクエストのメッセージの整合性と機密保護を保証します。

このポリシーには、oracle/wss11_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_message_protection_service_template」を参照してください。

設定

表C-38を参照してください。

構成プロパティ

表C-40を参照してください。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

メッセージ保護および認証ポリシーと構成手順

表B-4に、メッセージ保護および認証の両方を実行するポリシーをまとめ、ポリシーがトランスポート・レイヤーまたはSOAPヘッダーで実行されるかどうかを示します。これらのポリシーは、後続の項で説明されています。

事前定義済ポリシーによるメッセージ保護の実装方法については、「メッセージの保護」を参照してください。

ORグループを含むポリシーの構成

次のポリシーには、アサーションがORグループとして含まれています。つまり、クライアントはどちらのタイプのアサーションも実行できます。

- oracle/multi_token_rest_service_policy

- oracle/multi_token_over_ssl_rest_service_policy

- oracle/wss_saml_or_username_token_over_ssl_service_policy

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy

さらに、「ポリシーへのORグループの追加」で説明されているように、選択したポリシーにORグループを追加できます。

oracle/multi_token_rest_service_policyポリシーには、次のアサーション・テンプレートが含まれています。

- oracle/wss_http_token_service_template。ポリシーの構成の詳細は、「oracle/wss_http_token_service_policy」を参照してください。

- oracle/http_saml20_token_bearer_service_template.ポリシーの構成の詳細は、「oracle/http_saml20_bearer_token_service_policy」を参照してください。

- oracle/http_oam_token_service_template。ポリシーの構成の詳細は、「oracle/http_oam_token_service_policy」を参照してください。

- oracle/http_spnego_token_service_template。このアサーション・テンプレートを使用して生成されるポリシーの構成の詳細は、「SPNEGOネゴシエーションによるKerberosの構成」を参照してください。

- oracle/http_jwt_token_service_template。ポリシーの構成の詳細は、「oracle/http_jwt_token_service_policy」を参照してください。

oracle/multi_token_over_ssl_rest_service_policyポリシーには、次のアサーション・テンプレートが含まれています。

- oracle/http_basic_auth_over_ssl_service_template。ポリシーの構成の詳細は、「oracle/http_basic_auth_over_ssl_service_policy」を参照してください。

- oracle/http_saml20_token_bearer_over_ssl_service_template.ポリシーの構成の詳細は、「oracle/http_saml20_bearer_token_over_ssl_service_policy」を参照してください。

- oracle/http_oam_token_service_template。ポリシーの構成の詳細は、「oracle/http_oam_token_service_policy」を参照してください。

- oracle/http_spnego_token_service_template。このアサーション・テンプレートを使用して生成されるポリシーの構成の詳細は、「SPNEGOネゴシエーションによるKerberosの構成」を参照してください。

- oracle/http_jwt_token_over_ssl_service_template。ポリシーの構成の詳細は、「oracle/http_jwt_token_over_ssl_service_policy」を参照してください。

oracle/wss_saml_or_username_token_over_ssl_service_policyポリシーには、次のアサーション・テンプレートが含まれています。

- oracle/wss_saml_token_over_ssl_service_template。ポリシーの構成の詳細は、「oracle/wss_saml_token_over_ssl_service_policy」を参照してください。

- oracle/wss_username_token_over_ssl_service_template。ポリシーの構成の詳細は、「oracle/wss_username_token_over_ssl_service_policy」を参照してください。

oracle/wss11_saml_or_username_token_with_message_protection_service_policyには、次のアサーション・テンプレートが含まれています。

- oracle/wss11_saml_token_with_message_protection_service_template。ポリシーの構成の詳細は、「oracle/wss11_saml_token_with_message_protection_service_policy」を参照してください。

- oracle/wss11_username_token_with_message_protection_service_template。ポリシーの構成の詳細は、「oracle/wss11_username_token_with_message_protection_service_policy」を参照してください。

- oracle/wss_saml_token_bearer_over_ssl_service_template。ポリシーの構成の詳細は、「oracle/wss_saml_token_bearer_over_ssl_service_policy」を参照してください。

- oracle/wss_username_token_over_ssl_service_template。ポリシーの構成の詳細は、「oracle/wss_username_token_over_ssl_service_policy」を参照してください。

- oracle/wss_http_token_over_ssl_service_template。ポリシーの構成の詳細は、「oracle/wss_http_token_over_ssl_service_policy」を参照してください。

- oracle/http_jwt_token_over_ssl_service_template。ポリシーの構成の詳細は、「oracle/http_jwt_token_over_ssl_service_policy」を参照してください。

oracle/http_basic_auth_over_ssl_client_policy

http_basic_auth_over_ssl_client_policyポリシーは、アウトバウンド・クライアント・リクエストのHTTPヘッダーに資格証明を含めます。

また、このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのすべてのエンドポイントに適用できます。

注意:
現在サポートされているのはHTTP Basic認証のみです。

設定

表C-46を参照してください。

構成プロパティ

表C-47を参照してください。

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」または「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

サーブレット・アプリケーションのポリシーを添付および構成する方法

サーブレット・アプリケーションのポリシー・ファイルは、手動で添付および変更する必要があります。Fusion Middleware Controlを使用してポリシーを添付、表示または編集できません。

サーブレットにポリシーを添付するには、「サーブレット・アプリケーションへのポリシーの添付」を参照してください。

構成できるアサーション属性の詳細は、「orasp:http-security」を参照してください。

デフォルトでは、ポリシーは次のように定義されます。

<orasp:http-security orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="Http over SSL Security">
<orasp:auth-header orasp:mechanism="basic"/>
<orasp:require-tls orasp:include-timestamp="false"
orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-security>

oracle/http_basic_auth_over_ssl_service_policy

http_basic_auth_over_ssl_service_policyポリシーは、HTTPヘッダーの資格証明を抽出し、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのエンドポイントで実行できます。

注意:
現在サポートされているのはHTTP Basic認証のみです。

設定

表C-46を参照してください。

構成プロパティ

表C-48を参照してください。

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」または「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

サーブレット・アプリケーションのポリシーを添付および構成する方法

サーブレット・アプリケーションのポリシー・ファイルは、手動で添付および変更する必要があります。Fusion Middleware Controlを使用してポリシーを添付、表示または編集できません。

サーブレットにポリシーを添付するには、「サーブレット・アプリケーションへのポリシーの添付」を参照してください。

構成できるアサーション属性の詳細は、「orasp:http-security」を参照してください。

デフォルトでは、ポリシーは次のように定義されます。

<orasp:http-security orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="Http over SSL Security">
<orasp:auth-header orasp:mechanism="basic"/>
<orasp:require-tls orasp:include-timestamp="false"
orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-security>

oracle/http_jwt_token_over_ssl_client_policy

http_jwt_token_over_ssl_client_policyは、HTTPヘッダーにJWTトークンを含めます。ポリシーがクライアントにより使用される場合、Oracle WSMによってJWTトークンが自動的に作成されます。発行者名とサブジェクト名は、プログラムによって、またはポリシーを介して宣言的に提供されます。このポリシーにはオーディエンス制限条件を指定できます。

このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。

このポリシーは、HTTPベースのどのクライアント・エンドポイントにも適用できます。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_jwt_token_over_ssl_client_template」を参照してください。

デフォルトでは、oracle/http_jwt_token_over_ssl_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-jwt-security orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication" orawsp:name="Http JWT Security">
<orasp:auth-header orasp:algorithm-suite="Basic128Sha256Rsa15"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:mechanism="jwt"/>
<orasp:require-tls orasp:include-timestamp="false" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpJwtTokenConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.attributes" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional" orawsp:name="issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional" orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="audience.uri" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="propagate.identity.context" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.tenant.name" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-jwt-security>

設定

表C-42を参照してください。

構成プロパティ

表C-43

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」または「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

oracle/http_jwt_token_over_ssl_service_policy

http_jwt_token_service_policyは、HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証します。デフォルトのポリシー構成では、非対称署名を使用してJWTトークンが署名されます(algorithm-suite属性がBasic128Sha256Rsa15に設定されています)。

また、このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのすべてのエンドポイントに適用できます。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_jwt_token_over_ssl_service_template」を参照してください。

デフォルトでは、oracle/http_jwt_token_over_ssl_service_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-jwt-security orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication" orawsp:name="Http JWT Security">
<orasp:auth-header orasp:algorithm-suite="Basic128Sha256Rsa15"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:mechanism="jwt"/>
<orasp:require-tls orasp:include-timestamp="false" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpJwtConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="trusted.issuers" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="propagate.identity.context" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-jwt-security>

設定

表C-42を参照してください。

構成プロパティ

表C-44を参照してください。

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」または「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

oracle/http_oauth2_token_over_ssl_client_policy

このポリシーは、ATが一方向SSLでリソースに伝播される以外は、http_oauth2_token_client_policyと同じです。このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。ATは、Mobile and Social OAuth2サーバーから取得します。

ポリシーは、アウトバウンド・トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを使用した場合、リクエストは拒否されます。このポリシーは、任意のHTTPベースのクライアントに割り当てることができます。

「Oracle WSM OAuth2ポリシーを使用するための前提条件」を参照してください。

ポリシーを割り当てる場合、次のプロパティをオーバーライドできます。

- OAuth2トークン・リクエストの場合:

- scope

- authz.code (このリリースでは使用されません。)

- redirect.uri (このリリースでは使用されません。)

- ローカルにトークンを作成する場合:

- subject.precedence

- csf.map

- csf-key

- oauth2.client.csf.key

- federated.client.token

- user.attributes

- issuer.name

- oracle.oauth2.service

- user.roles.include

- keystore.sig.csf.key

- propagate.identity.context

- user.tenant.name

- include.certificate

- 一般:

- audience.uri

- reference.priority

- time.in.millis

ポリシー・ファイルは、WLSTを使用するか、手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_oauth2_token_over_ssl_client_template」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーとoracle/oauth2_config_client_policyをクライアント・アプリケーションに割り当てます。oracle/oauth2_config_client_policyポリシーの必須プロパティtoken.uriは、OAuth2サーバーを指定します。

次の任意のOracle WSM JWTサービス・ポリシーもWebサービスに割り当てます。Oracle WSMのサーバー側エージェントがATを検証します。

- oracle/http_jwt_token_over_ssl_service_policy

- oracle/multi_token_over_ssl_rest_service_policy (REST)

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy (SOAP)

デフォルトでは、oracle/http_oauth2_token_over_ssl_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-oauth2-security xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="Http OAuth2 Over SSL ">
<orasp:auth-header orasp:is-encrypted="false" orasp:is-signed="false" orasp:mechanism="oauth2"/>
<orasp:require-tls orasp:algorithm-suite="Basic128" orasp:include-timestamp="false" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpOAuth2OverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="subject.precedence">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf.map"/>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf-key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="federated.client.token">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="scope">
<orawsp:Value/>
</orawsp:Property>
orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="authz.code">
<orawsp:Value/>
</orawsp:Property>
orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="redirect.uri">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.attributes">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="issuer.name">
<orawsp:Value/>
<orawsp:DefaultValue>www.oracle.com</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="oracle.oauth2.service">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="user.roles.include">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="reference.priority">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="propagate.identity.context" orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.tenant.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="audience.uri">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="include.certificate">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="time.in.millis">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oauth2-security>
<oralgp:Logging orawsp:Silent="true" orawsp:name="Log Message2" orawsp:Enforced="false" orawsp:category="security/logging">
<oralgp:msg-log>
<oralgp:request>all</oralgp:request>
<oralgp:response>all</oralgp:response>
<oralgp:fault>all</oralgp:fault>
</oralgp:msg-log>
<orawsp:bindings>
<orawsp:Config orawsp:name="Log Message2_properties">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="reference.priority"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oauth2-security>

設定

表C-45を参照してください。

構成プロパティ

表C-8を参照してください。

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」または「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

oracle/http_oauth2_token_identity_switch_over_ssl_client_policy

このポリシーは、oracle/ http_oauth2_token_over_ssl_client_policyポリシーに類似しており、subject.precedenceプロパティがデフォルトでfalseに設定されています。

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。)アクセス・トークンは、Mobile and Social OAuth2サーバーから取得します。)また、アウトバウンド・トランスポート・プロトコルがHTTPSであることも検証します。HTTPS以外のトランスポート・プロトコルを使用した場合、リクエストは拒否されます。

このポリシーは、認証されたサブジェクトに基づいたものとは異なるアイデンティティを伝播することにより、動的なアイデンティティ切替えを実行します。このポリシーは、任意のHTTPベース、SOAPまたはRESTクライアントに割り当てることができます。

「Oracle WSM OAuth2ポリシーを使用するための前提条件」を参照してください。

ポリシーを割り当てる場合、次のプロパティをオーバーライドできます。

- OAuth2トークン・リクエストの場合:

- scope

- authz.code (このリリースでは使用されません。)

- redirect.uri (このリリースでは使用されません。)

- ローカルにトークンを作成する場合:

- subject.precedence

- csf.map

- csf-key

- oauth2.client.csf.key

- federated.client.token

- user.attributes

- issuer.name

- oracle.oauth2.service

- user.roles.include

- keystore.sig.csf.key

- propagate.identity.context

- user.tenant.name

- include.certificate

- 一般:

- audience.uri

- reference.priority

- time.in.millis

ポリシー・ファイルは、WLSTを使用するか、手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_oauth2_token_over_ssl_client_template」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーとoracle/oauth2_config_client_policyをクライアント・アプリケーションに割り当てます。必要なoracle/oauth2_config_client_policyポリシーのtoken.uriプロパティは、OAuth2サーバーを指定します。

次の任意のOracle WSM JWTサービス・ポリシーもWebサービスに割り当てます。Oracle WSMのサーバー側エージェントがATを検証します。

- oracle/http_jwt_token_over_ssl_service_policy

- oracle/multi_token_over_ssl_rest_service_policy (REST)

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy (SOAP)

認証されたサブジェクトのかわりにクライアント固有のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。ユーザー名は、csf-keyのユーザー名プロパティからのみ取得されます。

subject.precedenceがfalseに設定され、csf-keyとユーザー名が構成されている場合、Webサービス・クライアント・アプリケーションにはoracle.wsm.security.WSIdentityPermission権限が必要です。つまり、Oracle WSMが外部から提供されるアイデンティティをアプリケーションから受け入れるには、そのアプリケーションがWSIdentityPermission権限を持つ必要があります。これにより、Oracle WSMが潜在的に悪質なアプリケーションからアイデンティティを提供されるのを回避します。「WSIdentityPermission権限の設定」のWSIdentityPermission権限の付与の説明を参照してください。

デフォルトでは、oracle/http_oauth2_token_identity_switch_over_ssl_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-oauth2-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="Http OAuth2 Over SSL ">
<orasp:auth-header orasp:is-encrypted="false" orasp:is-signed="false"
orasp:mechanism="oauth2"/>
<orasp:require-tls orasp:algorithm-suite="Basic128"
orasp:include-timestamp="false" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpOAuth2OverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="subject.precedence">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf.map"/>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf-key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="federated.client.token">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="scope">
<orawsp:Value/>
</orawsp:Property>
orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="authz.code">
<orawsp:Value/>
</orawsp:Property>
orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="redirect.uri">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.attributes">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="issuer.name">
<orawsp:Value/>
<orawsp:DefaultValue>www.oracle.com</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="oracle.oauth2.service">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="user.roles.include">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="reference.priority">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="propagate.identity.context" orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.tenant.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="audience.uri">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="include.certificate">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="time.in.millis">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oauth2-security>

設定

表C-45を参照してください。

構成プロパティ

表C-8を参照してください。

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」または「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

oracle/http_oauth2_token_opc_oauth2_over_ssl_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークンは、OracleクラウドのOAuth2サーバーから取得します。

oracle.oauth2.serviceプロパティはデフォルトでtrueに設定されているため、OAuth2サーバーのユーザーおよびJWTトークンの発行者としてクライアントIDが使用されます。scopeが空(デフォルト)の場合、Oracle WSMがサービスURLを自動的に取得し、address:port部分をスコープとして使用します。

ポリシーは、アウトバウンド・トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを使用した場合、リクエストは拒否されます。このポリシーは、HTTPベースのSOAPまたはRESTクライアントに割り当てることができます。

「Oracle WSM OAuth2ポリシーを使用するための前提条件」を参照してください。

ポリシーを割り当てる場合、次のプロパティをオーバーライドできます。

- OAuth2トークン・リクエストの場合:

- scope

- authz.code (このリリースでは使用されません。)

- redirect.uri (このリリースでは使用されません。)

- ローカルにトークンを作成する場合:

- subject.precedence

- csf.map

- csf-key

- oauth2.client.csf.key

- federated.client.token

- user.attributes

- issuer.name

- oracle.oauth2.service

- user.roles.include

- keystore.sig.csf.key

- propagate.identity.context

- user.tenant.name

- include.certificate

- 一般:

- audience.uri

- reference.priority

- time.in.millis

ポリシー・ファイルは、WLSTを使用するか、手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_oauth2_token_over_ssl_client_template」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーとoracle/oauth2_config_client_policyをクライアント・アプリケーションに割り当てます。oracle/oauth2_config_client_policyポリシーの必須プロパティtoken.uriは、OAuth2サーバーを指定します。

次の任意のOracle WSM JWTサービス・ポリシーもWebサービスに割り当てます。Oracle WSMのサーバー側エージェントがATを検証します。

- oracle/http_jwt_token_over_ssl_service_policy

- oracle/multi_token_over_ssl_rest_service_policy (REST)

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy (SOAP)

デフォルトでは、oracle/http_oauth2_token_opc_oauth2_over_ssl_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-oauth2-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="Http OAuth2 Over SSL ">
<orasp:auth-header orasp:is-encrypted="false" orasp:is-signed="false"
orasp:mechanism="oauth2"/>
<orasp:require-tls orasp:algorithm-suite="Basic128"
orasp:include-timestamp="false" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpOAuth2OverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="subject.precedence">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf.map"/>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf-key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="federated.client.token">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="scope">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="authz.code">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="redirect.uri">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.attributes">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="issuer.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="oracle.oauth2.service">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="user.roles.include">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="reference.priority">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="propagate.identity.context" orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.tenant.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="audience.uri">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="include.certificate">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="time.in.millis">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oauth2-security>

設定

表C-45を参照してください。

構成プロパティ

表C-8を参照してください。

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」または「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

oracle/http_oauth2_token_identity_switch_opc_oauth2_over_ssl_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークンは、OracleクラウドのOAuthサーバーから取得します。

oracle.oauth2.serviceプロパティはデフォルトでtrueに設定されているため、OAuth2サーバーのユーザーおよびJWTトークンの発行者としてクライアントIDが使用されます。scopeが空(デフォルト)の場合、Oracle WSMがサービスURLを自動的に取得し、address:port部分をスコープとして使用します。

また、アウトバウンド・トランスポート・プロトコルがHTTPSであることも検証します。HTTPS以外のトランスポート・プロトコルを使用した場合、リクエストは拒否されます。このポリシーは、SSLを通じてサービスを呼び出す任意のHTTPベース、SOAPまたはRESTクライアントに割り当てることができます。

このポリシーは、認証されたサブジェクトに基づいたものとは異なるアイデンティティを伝播することにより、動的なアイデンティティ切替えも実行します。

「Oracle WSM OAuth2ポリシーを使用するための前提条件」を参照してください。

ポリシーを割り当てる場合、次のプロパティをオーバーライドできます。

- OAuth2トークン・リクエストの場合:

- scope

- authz.code (このリリースでは使用されません。)

- redirect.uri (このリリースでは使用されません。)

- ローカルにトークンを作成する場合:

- subject.precedence

- csf.map

- csf-key

- oauth2.client.csf.key

- federated.client.token

- user.attributes

- issuer.name

- oracle.oauth2.service

- user.roles.include

- keystore.sig.csf.key

- propagate.identity.context

- user.tenant.name

- include.certificate

- 一般:

- audience.uri

- reference.priority

- time.in.millis

ポリシー・ファイルは、WLSTを使用するか、手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_oauth2_token_over_ssl_client_template」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーとoracle/oauth2_config_client_policyをクライアント・アプリケーションに割り当てます。必要なoracle/oauth2_config_client_policyポリシーのtoken.uriプロパティは、OAuth2サーバーを指定します。

次の任意のOracle WSM JWTサービス・ポリシーもWebサービスに割り当てます。Oracle WSMのサーバー側エージェントがATを検証します。

- oracle/http_jwt_token_over_ssl_service_policy

- oracle/multi_token_over_ssl_rest_service_policy (REST)

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy (SOAP)

認証されたサブジェクトのかわりにクライアント固有のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。ユーザー名は、csf-keyのユーザー名プロパティからのみ取得されます。

subject.precedenceがfalseに設定され、csf-keyとユーザー名が構成されている場合、Webサービス・クライアント・アプリケーションにはoracle.wsm.security.WSIdentityPermission権限が必要です。つまり、Oracle WSMが外部から提供されるアイデンティティをアプリケーションから受け入れるには、そのアプリケーションがWSIdentityPermission権限を持つ必要があります。これにより、Oracle WSMが潜在的に悪質なアプリケーションからアイデンティティを提供されるのを回避します。「WSIdentityPermission権限の設定」のWSIdentityPermission権限の付与の説明を参照してください。

デフォルトでは、oracle/http_oauth2_token_identity_switch_opc_oauth2_over_ssl_client_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-oauth2-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="Http OAuth2 Over SSL ">
<orasp:auth-header orasp:is-encrypted="false" orasp:is-signed="false"
orasp:mechanism="oauth2"/>
<orasp:require-tls orasp:algorithm-suite="Basic128"
orasp:include-timestamp="false" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpOAuth2OverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="subject.precedence">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf.map"/>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="csf-key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="federated.client.token">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="scope">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="authz.code">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string"
orawsp:contentType="optional" orawsp:name="redirect.uri">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.attributes">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="issuer.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="oracle.oauth2.service">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="user.roles.include">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="reference.priority">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="propagate.identity.context" orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional" orawsp:name="user.tenant.name">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:type="string" orawsp:contentType="optional"
orawsp:name="audience.uri">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="include.certificate">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:type="boolean" orawsp:contentType="optional" orawsp:name="time.in.millis">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oauth2-security>

設定

表C-45を参照してください。

構成プロパティ

表C-8を参照してください。

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」または「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

oracle/http_saml20_bearer_token_over_ssl_client_policy

このポリシーは、HTTPリクエスト・メッセージにSAML 2.0トークンを含めます。確認方法がBearerのSAMLトークンが自動的に作成されます。デフォルトでは、サブジェクト(ユーザー・プリンシパル)から認証されたユーザーを使用して、アイデンティティ伝搬用のSAMLアサーションが生成されます。

ポリシー・ファイルは手動で編集する必要があります。Fusion Middleware Controlを使用してポリシーを編集することはできません。構成できるアサーション属性の詳細は、「oracle/http_saml20_token_bearer_client_template」を参照してください。

デフォルトでは、oracle/http_saml_bearer_token_over_ssl_service_policyアサーション・コンテンツは、次のように定義されています。

<orasp:http-saml20-bearer-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="Http SAML 2.0 Bearer Security Over SSL ">
<orasp:auth-header orasp:mechanism="saml20-bearer"/>
<orasp:require-tls orasp:include-timestamp="false"
orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpSaml20BearerOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.attributes" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.audience.uri" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="keystore.sig.csf.key" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.enveloped.signature.required"
orawsp:type="boolean">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
<orawsp:Property orawsp:name="propagate.identity.context"
orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-saml20-bearer-security>

設定

表C-11を参照してください。

構成プロパティ

表C-12を参照してください。

oracle/http_saml20_bearer_token_over_ssl_service_policy

このポリシーは、HTTPヘッダー内の、確認方法がBearerのSAML 2.0トークンに含まれる資格証明を使用して、ユーザーを認証します。

ポリシー・ファイルは、手動で変更する必要があります。Fusion Middleware Controlを使用してポリシーを表示、編集または添付できません。構成できるアサーション属性の詳細は、「oracle/http_saml20_token_bearer_service_template」を参照してください。

デフォルトでは、oracle/http_saml_bearer_token_over_ssl_service_policyポリシーは、次のように定義されています。

<orasp:http-saml20-bearer-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication"
orawsp:name="Http SAML 2.0 Bearer Security Over SSL">
<orasp:auth-header orasp:mechanism="saml20-bearer"/>
<orasp:require-tls orasp:include-timestamp="false"
orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpSaml20BearerOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.trusted.issuers" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.enveloped.signature.required"
orawsp:type="boolean">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
<orawsp:Property orawsp:name="propagate.identity.context"
orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-saml20-bearer-security>

設定

表C-11を参照してください。

構成プロパティ

表C-13を参照してください。

oracle/wss_http_token_over_ssl_client_policy

このポリシーは、アウトバウンド・クライアント・リクエストのHTTPヘッダーに資格証明を含めます。

また、このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのすべてのエンドポイントに適用できます。

注意:
現在サポートされているのはHTTP Basic認証のみです。

このポリシーには、oracle/wss_http_token_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_http_token_over_ssl_client_template」を参照してください。

設定

表C-46を参照してください。

構成プロパティ

表C-47を参照してください。

Webサービス・クライアントの設定方法

「構成」ページでcsf-keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

この値は、ユーザー名/パスワードにマッピングされているキーを表しています。資格証明ストアにキーを追加する方法の詳細は、「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。「Webサービス・クライアントに関するSSLの構成」を参照してください。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

設計時のWebサービス・クライアントの設定方法

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

クライアントは、HTTPヘッダーに資格証明を渡す必要があります。

「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。「Webサービス・クライアントに関するSSLの構成」を参照してください。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

oracle/wss_http_token_over_ssl_service_policy

このポリシーは、HTTPヘッダーの資格証明を抽出し、ユーザーを認証します。

このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのすべてのエンドポイントに適用できます。

注意:
現在サポートされているのはHTTP Basic認証のみです。

このポリシーには、oracle/wss_http_token_over_ssl_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_http_token_over_ssl_service_template」を参照してください。

設定

表C-46を参照してください。

構成プロパティ

表C-48を参照してください。

WebLogic Serverの設定方法

「WebLogic ServerへのSSLの構成(一方向)」の説明に従ってSSLを構成します。ただし、「相互認証を許可」がオンの場合は、「WebLogic ServerへのSSLの構成(双方向)」の説明に従ってSSLを構成します。

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

oracle/wss_saml_token_bearer_identity_switch_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。確認方法がBearerのSAMLトークンが自動的に作成されます。また、このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることも検証します。このポリシーは、SOAPベースのすべてのクライアントにアタッチできます。

このポリシーには、oracle/wss_saml_token_bearer_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_bearer_client_template」を参照してください。

設定

表C-32を参照してください

構成プロパティ

表C-33を参照してください

Webサービス・クライアントの設定方法

wss_saml_token_bearer_identity_switch_client_policyを任意のSOAPベースのWebサービス・クライアントに割り当てます。

表C-33「wss_saml_token_bearer_client_templateの構成」に定義された構成プロパティをオーバーライドします。詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

認証されたサブジェクトのかわりにクライアント固有のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。(subject.precedenceがfalseの場合、SAMLアサーションを作成するユーザー名は、csf-keyのユーザー名プロパティからのみ取得されます。)wss_saml_token_bearer_identity_switch_client_policyポリシーでは、このポリシーをアタッチするアプリケーションにWSIdentityPermission権限が必要です。つまり、Oracle WSMが外部から提供されるアイデンティティをアプリケーションから受け入れるには、そのアプリケーションがWSIdentityPermission権限を持つ必要があります。これにより、Oracle WSMが潜在的に悪質なアプリケーションからアイデンティティを提供されるのを回避します。

このポリシーの使用方法の詳細は、「アイデンティティ切替えのためのWebサービス・クライアントの構成」を参照してください。また、クライアント側でのアイデンティティ切替えポリシーによるユーザー名の選択方法について学習し、「WSIdentityPermission権限の設定」に記載されているようにWSIdentityPermission権限を付与します。

SAMLの詳細は、「設計時のSAML Webサービス・クライアントの構成方法」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

oracle/wss_saml_token_bearer_over_ssl_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。確認方法がBearerのSAMLトークンが自動的に作成されます。

このポリシーには、oracle/wss_saml_token_bearer_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_bearer_over_ssl_client_template」を参照してください。

設定

表C-51を参照してください。

構成プロパティ

表C-52を参照してください。

Webサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

oracle/wss_saml_token_bearer_over_ssl_service_policy

このポリシーは、WS-Security SOAPヘッダーの、確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

このポリシーには、oracle/wss_saml_token_bearer_over_ssl_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_bearer_over_ssl_service_template」を参照してください。

設定

表C-51を参照してください。

構成プロパティ

表C-53を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

SSLを構成するには、「WebLogic ServerへのSSLの構成(一方向)」を参照してください。ただし、「相互認証が必要」がオンの場合は、「WebLogic ServerへのSSLの構成(双方向)」を参照してください。

oracle/wss_saml20_token_bearer_over_ssl_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。確認方法がBearerのSAMLトークンが自動的に作成されます。

このポリシーには、oracle/wss_saml20_token_bearer_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml20_token_bearer_over_ssl_client_template」を参照してください。

設定

表C-54を参照してください。

構成プロパティ

表C-55を参照してください。

Webサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

oracle/wss_saml20_token_bearer_over_ssl_service_policy

このポリシーは、WS-Security SOAPヘッダーの、確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

このポリシーには、oracle/wss_saml20_token_bearer_over_ssl_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml20_token_bearer_over_ssl_service_template」を参照してください。

設定

表C-54を参照してください。

構成プロパティ

表C-56を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml2.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

SSLを構成するには、「WebLogic ServerへのSSLの構成(一方向)」を参照してください。ただし、「相互認証が必要」がオンの場合は、「WebLogic ServerへのSSLの構成(双方向)」を参照してください。

oracle/wss_saml_token_over_ssl_client_policy

このポリシーは、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を可能にします。

このポリシーには、oracle/wss_saml_token_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_over_ssl_client_template」を参照してください。

設定

表C-57を参照してください。

構成プロパティ

表C-58を参照してください。

Webサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

oracle/wss_saml_token_over_ssl_service_policy

このポリシーは、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を実行します。

このポリシーには、oracle/wss_saml_token_over_ssl_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_over_ssl_service_template」を参照してください。

設定

表C-57を参照してください。

構成プロパティ

表C-59を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

SSLを構成するには、「WebLogic ServerへのSSLの構成(一方向)」を参照してください。ただし、「相互認証が必要」がオンの場合は、「WebLogic ServerへのSSLの構成(双方向)」を参照してください。

oracle/wss_saml20_token_over_ssl_client_policy

このポリシーは、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を可能にします。

このポリシーには、oracle/wss_saml20_token_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml20_token_over_ssl_client_template」を参照してください。

設定

表C-60を参照してください。

構成プロパティ

表C-61を参照してください。

Webサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

oracle/wss_saml20_token_over_ssl_service_policy

このポリシーは、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を実行します。

このポリシーには、oracle/wss_saml_token_over_ssl_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_saml20_token_over_ssl_service_template」を参照してください。

設定

表C-60を参照してください。

構成プロパティ

表C-62を参照してください。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml2.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

SSLを構成するには、「WebLogic ServerへのSSLの構成(一方向)」を参照してください。ただし、「相互認証が必要」がオンの場合は、「WebLogic ServerへのSSLの構成(双方向)」を参照してください。

oracle/wss_username_token_over_ssl_client_policy

このポリシーは、アウトバウンドSOAPリクエスト・メッセージにWS-Security UsernameTokenヘッダーの資格証明を含めます。プレーン・テキスト・メカニズムがサポートされています。また、このポリシーは、トランスポート・レイヤー・セキュリティを実現するためにSSLを使用します。

このポリシーには、oracle/wss_username_token_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_username_token_over_ssl_client_template」を参照してください。

設定

表C-63を参照してください。

構成プロパティ

表C-64を参照してください。

Webサービス・クライアントの設定方法

「Webサービス・クライアントに関するSSLの構成」で説明されているように、「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

「構成」ページでcsf-keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

この値は、ユーザー名/パスワードにマッピングされているキーを表しています。資格証明ストアにキーを追加する方法の詳細は、「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

「設定」ページでパスワード・タイプを「なし」に指定した場合、キーにパスワードを含める必要はありません。

設計時のWebサービス・クライアントの設定方法

クライアントは、SOAPリクエスト・メッセージにWS-Security UsernameToken要素(<wsse:UsernameToken/>)を含める必要があります。また、クライアントは、認証用にユーザー名とパスワードを提供します。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

「相互認証が必要」コントロールを設定しない場合、一方向SSLが含まれます。「Webサービス・クライアントに関するSSLの構成」を参照してください。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

oracle/wss_username_token_over_ssl_service_policy

このポリシーは、UsernameToken WS-Security SOAPヘッダーの資格証明を使用してユーザーを認証します。プレーン・テキスト・メカニズムがサポートされています。

このポリシーには、oracle/wss_username_token_over_ssl_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss_username_token_over_ssl_service_template」を参照してください。

設定

表C-63を参照してください。

構成プロパティ

表C-65を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

ユーザー名とパスワードが存在し、有効になっている必要があります。

SSLを構成するには、「WebLogic ServerへのSSLの構成(一方向)」を参照してください。ただし、「相互認証が必要」がオンの場合は、「WebLogic ServerへのSSLの構成(双方向)」を参照してください。

oracle/wss10_saml_hok_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAML鍵所有者ベースの認証を行います。

このポリシーには、oracle/wss10_saml_hok_token_with_message_integrity_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_hok_token_with_message_protection_service_template」を参照してください。

設定

表C-66を参照してください。

構成プロパティ

表C-67を参照してください。

Webサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

鍵所有者アサーションを含むファイルを指し示すように、saml.assertion.filenameプロパティをオーバーライドします。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

鍵所有者アサーションを含むファイルを指し示すように、saml.assertion.filenameプロパティをオーバーライドします。オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_saml_hok_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAML鍵所有者ベースの認証を行います。

このポリシーには、oracle/wss10_saml_hok_token_with_message_integrity_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_hok_token_with_message_protection_service_template」を参照してください。

ログイン・モジュールの構成

saml.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

注意:
期限切れの証明書が存在する場合は、この証明書が参照されるかどうかに関係なく、CertificateExpiredExceptionが返されます。この例外を解決するには、期限切れの証明書をキーストアから削除します。

SAML認証局の信頼できる証明書をキーストアに格納します。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

oracle/wss10_saml_token_with_message_integrity_client_policy

このポリシーは、メッセージ・レベルの整合性と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAMLベースの認証を実現します。

このポリシーには、oracle/wss10_saml_token_with_message_integrity_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_with_message_protection_client_template」を参照してください。

設定

表C-72を参照してください。

構成プロパティ

表C-73を参照してください。

Webサービス・クライアントの設定方法

「SAMLの構成」を参照してください。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでuser.roles.includeの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

アウトバウンドSOAPメッセージに、SAMLトークンを挿入するWS-Securityヘッダー要素(<saml:Assertion>)を含めます。確認タイプは、常にsender-vouchesです。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_saml_token_with_message_integrity_service_policy

このポリシーは、メッセージ・レベルの整合性の保護と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。

このポリシーには、oracle/wss10_saml_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_service_template」を参照してください。

設定

表C-72を参照してください。

構成プロパティ

表C-74を参照してください。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

oracle/wss10_saml_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAMLベースの認証を行います。

このポリシーには、oracle/wss10_saml_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_client_template」を参照してください。

設定

表C-69を参照してください。

構成プロパティ

表C-70を参照してください。

Webサービス・クライアントの設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでuser.roles.includeの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_saml_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。

このポリシーには、oracle/wss10_saml_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_service_template」を参照してください。

設定

表C-69を参照してください。

構成プロパティ

表C-71を参照してください。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

oracle/wss10_saml20_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAMLベースの認証を行います。

このポリシーには、oracle/wss10_saml20_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_with_message_protection_client_template」を参照してください。

設定

表C-72を参照してください。

構成プロパティ

表C-73を参照してください。

Webサービス・クライアントの設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでuser.roles.includeの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_saml20_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。

このポリシーには、oracle/wss10_sam20l_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_with_message_protection_service_template」を参照してください。

設定

表C-72を参照してください。

構成プロパティ

表C-74を参照してください。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

「構成」ページでpropagate.identity.contextの値も指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml2.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAMLベースの認証を行います。

このポリシーは、リクエスト内の暗号化キーと、レスポンス内の署名と暗号化キーの両方に対して、サブジェクト・キー識別子(ski)参照メカニズムを使用します。

このポリシーには、oracle/wss10_saml_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_client_template」を参照してください。

注意:
一部の国の輸入制限により、JDK 5.0ソフトウェアとともに配布されるJurisdiction Policy Filesには、使用可能な暗号化強度において制限が組み込まれています。
デフォルトでは、Basic192以上のアルゴリズムを使用するポリシーは、バンドルされたJRE/JDKでは動作しません。これらのアルゴリズムを使用するには、http://www.oracle.com/technetwork/java/javase/downloads/index-jdk5-jsp-142662.htmlからJCE Extension jar (Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0)をダウンロードする必要があります。

これらのポリシー・ファイルを使用するには、$JAVA_HOME/jre/lib/security内の次のJARファイルを、対応するJCE ExtensionのJARに置き換える必要があります。

- US_export_policy.jar

- local_policy.jar

JARファイルを置き換える前に、既存のJARファイルをバックアップする必要があります。

設定

表C-69を参照してください。

構成プロパティ

表C-70を参照してください。

Webサービス・クライアントの設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでuser.roles.includeの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。

このポリシーは、リクエスト内の暗号化キーと、レスポンス内の署名と暗号化キーの両方に対して、サブジェクト・キー識別子(ski)参照メカニズムを使用します。

このポリシーには、oracle/wss10_saml_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_service_template」を参照してください。

注意:
一部の国の輸入制限により、JDK 5.0ソフトウェアとともに配布されるJurisdiction Policy Filesには、使用可能な暗号化強度において制限が組み込まれています。
デフォルトでは、Basic192以上のアルゴリズムを使用するポリシーは、バンドルされたJRE/JDKでは動作しません。これらのアルゴリズムを使用するには、http://www.oracle.com/technetwork/java/javase/downloads/index-jdk5-jsp-142662.htmlからJCE Extension jar (Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0)をダウンロードする必要があります。

これらのポリシー・ファイルを使用するには、$JAVA_HOME/jre/lib/security内の次のJARファイルを、対応するJCE ExtensionのJARに置き換える必要があります。

- US_export_policy.jar

- local_policy.jar

JARファイルを置き換える前に、既存のJARファイルをバックアップする必要があります。

設定

表C-69を参照してください。

構成プロパティ

表C-71を参照してください。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml.loginmoduleログイン・モジュールを構成します。詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、キーストアを設定する必要があります。ski参照メカニズムを使用するときは、OpenSSLなどのユーティリティを使用して証明書を作成します。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

oracle/wss10_username_id_propagation_with_msg_protection_client_policy

このポリシーは、メッセージ・レベルの保護(整合性と機密保護)、およびWS-Security 1.0標準に従ったアウトバウンドSOAPリクエストのアイデンティティ伝播を行います。

このポリシーには、oracle/wss10_username_id_propagation_with_msg_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_client_template」を参照してください。

設定

表C-75を参照してください。

構成プロパティ

表C-76を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

クライアントは、SOAPリクエスト・メッセージにWS-Security UsernameToken要素(<wsse:UsernameToken/>)を含める必要があります。また、クライアントは、認証用にユーザー名とパスワードを提供します。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_username_id_propagation_with_msg_protection_service_policy

このポリシーは、メッセージ・レベルの保護(整合性と機密保護)、およびWS-Security 1.0で記述されるメカニズムを使用してインバウンドSOAPリクエストへのアイデンティティ伝播を行います。

このポリシーには、oracle/wss10_username_id_propagation_with_msg_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_service_template」を参照してください。

設定

表C-76を参照してください。

構成プロパティ

表C-78を参照してください。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

oracle/wss10_username_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護(メッセージの整合性と機密保護)、およびWS-Security 1.0標準に従ったアウトバウンドSOAPリクエストの認証を行います。

このポリシーには、oracle/wss10_username_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_client_template」を参照してください。

設定

表C-75を参照してください。

構成プロパティ

表C-76を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでcsf-keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

この値は、ユーザー名/パスワードにマッピングされているキーを表しています。資格証明ストアにキーを追加する方法の詳細は、「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

設計時のWebサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_username_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの保護(メッセージの整合性と機密保護)、およびWS-Security 1.0標準に従ったインバウンドSOAPリクエストの認証を行います。

このポリシーには、oracle/wss10_username_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_service_template」を参照してください。

設定

表C-75を参照してください。

構成プロパティ

表C-77を参照してください。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

このポリシーは、メッセージ・レベルの保護(メッセージの整合性と機密保護)、およびWS-Security 1.0標準に従ったアウトバウンドSOAPリクエストの認証を行います。

このポリシーは、リクエスト内の暗号化キーと、レスポンス内の署名と暗号化キーの両方に対して、サブジェクト・キー識別子(ski)参照メカニズムを使用します。

このポリシーには、oracle/wss10_username_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_client_template」を参照してください。

注意:
一部の国の輸入制限により、JDK 5.0ソフトウェアとともに配布されるJurisdiction Policy Filesには、使用可能な暗号化強度において制限が組み込まれています。
デフォルトでは、Basic192以上のアルゴリズムを使用するポリシーは、バンドルされたJRE/JDKでは動作しません。これらのアルゴリズムを使用するには、http://www.oracle.com/technetwork/java/javase/downloads/index-jdk5-jsp-142662.htmlからJCE Extension jar (Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0)をダウンロードする必要があります。

これらのポリシー・ファイルを使用するには、$JAVA_HOME/jre/lib/security内の次のJARファイルを、対応するJCE ExtensionのJARに置き換える必要があります。

- US_export_policy.jar

- local_policy.jar

JARファイルを置き換える前に、既存のJARファイルをバックアップする必要があります。

設定

表C-75を参照してください。

構成プロパティ

表C-76を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでcsf-keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

この値は、ユーザー名/パスワードにマッピングされているキーを表しています。資格証明ストアにキーを追加する方法の詳細は、「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

設計時のWebサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy

このポリシーは、メッセージ・レベルの保護(メッセージの整合性と機密保護)、およびWS-Security 1.0標準に従ったインバウンドSOAPリクエストの認証を行います。

このポリシーは、リクエスト内の暗号化キーと、レスポンス内の署名と暗号化キーの両方に対して、サブジェクト・キー識別子(ski)参照メカニズムを使用します。

このポリシーには、oracle/wss10_username_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_service_template」を参照してください。

注意:
一部の国の輸入制限により、JDK 5.0ソフトウェアとともに配布されるJurisdiction Policy Filesには、使用可能な暗号化強度において制限が組み込まれています。
デフォルトでは、Basic192以上のアルゴリズムを使用するポリシーは、バンドルされたJRE/JDKでは動作しません。これらのアルゴリズムを使用するには、http://www.oracle.com/technetwork/java/javase/downloads/index-jdk5-jsp-142662.htmlからJCE Extension jar (Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0)をダウンロードする必要があります。

これらのポリシー・ファイルを使用するには、$JAVA_HOME/jre/lib/security内の次のJARファイルを、対応するJCE ExtensionのJARに置き換える必要があります。

- US_export_policy.jar

- local_policy.jar

JARファイルを置き換える前に、既存のJARファイルをバックアップする必要があります。

設定

表C-75を参照してください。

構成プロパティ

表C-77を参照してください。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、キーストアを設定する必要があります。ski参照メカニズムを使用するときは、OpenSSLなどのユーティリティを使用して証明書を作成します。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

oracle/wss10_x509_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったアウトバウンドSOAPリクエストへの資格証明移入の認証を行います。

このポリシーには、oracle/wss10_x509_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_x509_token_with_message_protection_client_template」を参照してください。

設定

表C-78を参照してください。

構成プロパティ

表C-79を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

Webサービス・クライアントは、WS-Securityバイナリ・セキュリティ・トークンを介してSOAPメッセージに有効なX.509認証資格証明を提供する必要があります。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-3に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている署名の一般的な構造を示します。この例では、SOAPメッセージの本体要素が署名されています。

例11-4に、WS-Security 1.0標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss10_x509_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストへの証明書ベースの認証を行います。

このポリシーには、oracle/wss10_x509_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss10_x509_token_with_message_protection_service_template」を参照してください。

設定

表C-78を参照してください。

構成可能な属性

表C-80を参照してください。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.sig.csf.keyおよびkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」の説明に従って、認証プロバイダを構成する必要があります。

oracle/wss11_kerberos_token_with_message_protection_client_policy

このポリシーにはWS-SecurityヘッダーのKerberosトークンが含まれ、WS-Security Kerberos Token Profile v1.1標準に従い、Kerberosキーを使用してメッセージの整合性と機密保護を保証します。

このポリシーには、oracle/wss11_kerberos_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_client_template」を参照してください。

設定

表C-81を参照してください。

構成プロパティ

表C-82を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「Kerberosトークンの使用」も参照してください。

設計時のWebサービス・クライアントの設定方法

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。

「Kerberosトークンの使用」も参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-5に、WS-Security 1.1標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss11_kerberos_token_with_message_protection_service_policy

このポリシーは、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。

このポリシーには、oracle/wss11_kerberos_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_service_template」を参照してください。

設定

表C-81を参照してください。

構成プロパティ

「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドできます。

ログイン・モジュールの構成

krb5.loginmoduleログイン・モジュールを構成します。「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、キーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

「Kerberosトークンの使用」の説明に従って、Kerberosを構成します。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

oracle/wss11_kerberos_token_with_message_protection_basic128_client_policy

このポリシーにはWS-SecurityヘッダーのKerberosトークンが含まれ、WS-Security Kerberos Token Profile v1.1標準に従い、Kerberosキーを使用してメッセージの整合性と機密保護を保証します。

ポリシーでは、Basic128をアルゴリズム・スイートとして使用します。

このポリシーには、oracle/wss11_kerberos_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_client_template」を参照してください。

設定

表C-81を参照してください。

構成プロパティ

表C-82を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「Kerberosトークンの使用」も参照してください。

設計時のWebサービス・クライアントの設定方法

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。

「Kerberosトークンの使用」も参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-5に、WS-Security 1.1標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss11_kerberos_token_with_message_protection_basic128_service_policy

このポリシーは、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。

ポリシーでは、Basic128をアルゴリズム・スイートとして使用します。

このポリシーには、oracle/wss11_kerberos_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_service_template」を参照してください。

設定

表C-81を参照してください。

構成プロパティ

「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドできます。

ログイン・モジュールの構成

krb5.loginmoduleログイン・モジュールを構成します。「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、キーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

「Kerberosトークンの使用」の説明に従って、Kerberosを構成します。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

oracle/wss11_saml_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.1で記述されたメカニズムを使用したアウトバウンドSOAPリクエストへのSAMLトークンの移入を行います。

このポリシーには、oracle/wss11_saml_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_saml_token_with_message_protection_client_template」を参照してください。

設定

表C-83を参照してください。

構成プロパティ

表C-84を参照してください。

Webサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでuser.roles.includeの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-5に、WS-Security 1.1標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss11_saml_token_identity_switch_with_message_protection_client_policy

このポリシーにより、アイデンティティ切替えが可能になります。アイデンティティ切替えとは、ポリシーが、認証されたサブジェクトに基づいたアイデンティティとは異なるアイデンティティを伝播することを意味します。このポリシーを使用すれば、サブジェクトから取得したユーザー名を使用するかわりに、SAML Webサービス・リクエストを送信するときに新しいユーザー名を設定できます。

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.1で記述されたメカニズムを使用したアウトバウンドSOAPリクエストへのSAMLトークンの移入を行います。

このポリシーには、oracle/wss11_saml_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_saml_token_with_message_protection_client_template」を参照してください。

設定

表C-83を参照してください。

構成プロパティ

表C-84を参照してください。

Webサービス・クライアントの設定方法

wss11_saml_token_identity_switch_with_message_protection_client_policyを任意のタイプのWebサービス・クライアントに添付します。

表C-33「wss_saml_token_bearer_client_templateの構成」に定義された構成プロパティをオーバーライドします。詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

認証されたサブジェクトのかわりにクライアント固有のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。(subject.precedenceがfalseの場合、SAMLアサーションを作成するユーザー名は、csf-keyのユーザー名プロパティからのみ取得されます。)wss11_saml_token_identity_switch_with_message_protection_client_policyポリシーでは、このポリシーを添付するアプリケーションがWSIdentityPermission権限を持つことが要求されます。つまり、Oracle WSMが外部から提供されるアイデンティティをアプリケーションから受け入れるには、そのアプリケーションがWSIdentityPermission権限を持つ必要があります。これにより、Oracle WSMが潜在的に悪質なアプリケーションからアイデンティティを提供されるのを回避します。

このポリシーの使用方法の詳細は、「アイデンティティ切替えのためのWebサービス・クライアントの構成」を参照してください。また、クライアント側でのアイデンティティ切替えポリシーによるユーザー名の選択方法について学習し、「WSIdentityPermission権限の設定」に記載されているようにWSIdentityPermission権限を付与します。

SAMLの詳細は、「設計時のSAML Webサービス・クライアントの設定」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでsaml.audience.uriの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでuser.roles.includeの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-5に、WS-Security 1.1標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss11_saml_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの整合性の保護と、WS-Security 1.1標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。

このポリシーには、oracle/wss11_saml_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_saml_token_with_message_protection_service_template」を参照してください。

設定

表C-83を参照してください。

構成プロパティ

表C-85を参照してください。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml.loginmoduleログイン・モジュールを構成します。「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、キーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

oracle/wss11_saml20_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.1で記述されたメカニズムを使用したアウトバウンドSOAPリクエストへのSAMLトークンの移入を行います。

このポリシーには、oracle/wss11_saml20_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_saml20_token_with_message_protection_client_template」を参照してください。

設定

表C-86を参照してください。

構成プロパティ

表C-87を参照してください。

Webサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでsaml.issuer.nameの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。saml.issuer.nameプロパティのデフォルトは、www.oracle.comという値です。詳細は、「SAMLアサーション発行者名の追加」を参照してください。

「構成」ページでuser.roles.includeの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

設計時のWebサービス・クライアントの設定方法

「設計時のSAML Webサービス・クライアントの設定」を参照してください。

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-5に、WS-Security 1.1標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss11_saml20_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの整合性の保護と、WS-Security 1.1標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。

このポリシーには、oracle/wss11_saml20_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_saml20_token_with_message_protection_service_template」を参照してください。

設定

表C-86を参照してください。

構成プロパティ

表C-88を参照してください。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

「構成」ページでpropagate.identity.contextの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、この値をオーバーライドできます。propagate.identity.contextプロパティのデフォルトは、空白値です。詳細は、「Oracle WSMによるアイデンティティ・コンテキストの伝播」を参照してください。

ログイン・モジュールの構成

saml2.loginmoduleログイン・モジュールを構成します。「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

Oracle Platform Security Services(OPSS)の設定方法

「SAMLの構成」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、キーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

SAMLログイン・モジュールは、検証されたトークンからユーザー名を抽出し、それを認証プロバイダに渡します。

oracle/wss11_username_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.1標準に従ったアウトバウンドSOAPリクエストの認証を行います。

このポリシーには、oracle/wss11_username_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_username_token_with_message_protection_client_template」を参照してください。

設定

表C-89を参照してください。

構成プロパティ

表C-90を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

このポリシーは対称鍵テクノロジを使用します。このテクノロジは、データの暗号化と復号化に同じ共有鍵を使用する暗号化メソッドです。対称鍵は、メッセージへの署名に使用されます。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

例11-5に、WS-Security 1.1標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss11_username_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの保護(メッセージ整合性とメッセージ機密保護)、およびWS-Security 1.1標準に従ったインバウンドSOAPリクエストの認証を行います。

このポリシーには、oracle/wss11_username_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_username_token_with_message_protection_service_template」を参照してください。

設定

表C-89を参照してください。

構成プロパティ

表C-91を参照してください。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、キーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」で説明されているように、WebLogic Server管理コンソールを使用して、認証プロバイダを、WebサービスがデプロイされているWebLogicドメインのアクティブなセキュリティ・レルムに追加します。

oracle/wss11_x509_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.1標準に従ったアウトバウンドSOAPリクエストの証明書ベースの認証を行います。

このポリシーには、oracle/wss11_x509_token_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_x509_token_with_message_protection_client_template」を参照してください。

設定

表C-92を参照してください。

構成プロパティ

表C-93を参照してください。

Webサービス・クライアントの設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、Oracle WSMキーストアを設定しておく必要があります。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、「構成」ページでkeystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

「構成」ページでkeystore.sig.csf.keyとkeystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときに「セキュリティ構成の詳細」コントロールを使用して、クライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

このポリシーでは、「Webサービス・クライアント・キーストアの設定」の説明に従って、Webサービス・クライアント・キーストアを設定する必要があります。このポリシーでは特に、クライアントとWebサービスそれぞれのキーストアに、お互いの公開鍵を含むデジタル証明書がすでに含まれている必要があります。

Webサービス・クライアントは、WS-Securityバイナリ・セキュリティ・トークンを介してSOAPメッセージに有効なX.509認証資格証明を提供する必要があります。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

例11-5に、WS-Security 1.1標準に準拠し、セキュリティ・ヘッダーに含まれている暗号化要素の一般的な構造の例を示します。この例では、本体要素が暗号化されています。

oracle/wss11_x509_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.1標準に従ったインバウンドSOAPリクエストへの証明書ベースの認証を行います。

このポリシーには、oracle/wss11_x509_token_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/wss11_x509_token_with_message_protection_service_template」を参照してください。

設定

表C-92を参照してください。

構成プロパティ

表C-94を参照してください。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

Oracle Platform Security Services(OPSS)の設定方法

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

このポリシーでは、「メッセージ保護に関するキーストアの構成」の説明に従って、キーストアを設定しておく必要があります。

(メッセージへの署名に使用される)クライアントの公開鍵に対応する信頼できる証明書をキーストアに格納します。また、メッセージを復号化するためにキーストアにサービスの公開鍵を格納し、さらにCAルート証明書も格納する必要があります。

「資格証明ストアへの鍵およびユーザー資格証明の追加」で説明されているように、復号化キーのパスワードは資格証明ストアに格納する必要があります。キー名としてkeystore.enc.csf.keyを使用します。

また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

WebLogic Serverの設定方法

「WebLogic Serverへの認証プロバイダの構成」の説明に従って、認証プロバイダを構成する必要があります。

認可ポリシーと構成手順

多くの場合、ユーザーにWebサービスへのアクセスを許可するかどうかを決定する最初の手順は認証です。ユーザーが認証されたら、2番目の手順は、ユーザーがWebサービスへのアクセスを認可されていることを検証することです。これは、認可ポリシーを使用して実行されます。binding_authorization_template または component_authorization_template アサーション・テンプレートを使用して、認可ポリシーを作成できます。

これらのテンプレートを使用して作成されたポリシーでは、ロール・ベースまたは権限ベースのアクセス制御(RBAC)が実行され、認証されたユーザーにWebサービスへのアクセスが許可されたいずれかのロールまたは権限が付与されていることが確認されます。

付録B「事前定義済ポリシー」に、認可を実行するセキュリティ・ポリシーをまとめ、ポリシーがトランスポート・レイヤーまたはSOAPヘッダーで実行されるかどうかを示します。

注意:
認可ポリシーは、サブジェクトが作成されている任意の認証ポリシーの後に続けることができます。
permitallおよびdenyallポリシーの両方を同じWebサービスに添付することはできません。

保護するリソースの決定

認可ポリシーには、ポリシーで保護するリソースを指定するために使用できる次のプロパティがあります。すべての事前定義済ポリシーにすべてのプロパティを設定できるとはかぎりません。

- 制約パターン -- 認可チェックが実行される制約を表す式。制約式は、次の2つのmessageContextプロパティを使用して指定します。

- messageContext.authenticationMethod: ユーザーの認証に使用する認証方法を決定します。有効な値は、SAML_SVのみです。

- messageContext.requestOrigin: リクエストが内部ネットワークまたは外部ネットワークから発行されたかどうかを決定します。このプロパティは、Oracle HTTP Serverを使用しており、Oracle HTTP Server管理者がカスタムのVIRTUAL_HOST_TYPEヘッダーをリクエストに追加した場合のみ有効です。リクエストへのこのヘッダーの追加の詳細は、「リクエスト元を指定するためのOracle HTTP Serverの構成」を参照してください。

次の事項に注意してください。

- 制約パターン・プロパティとその値では、大文字と小文字が区別されます。

- 制約式では、サポートされている標準的な演算子(==、!=、&&、||、!)を使用します。

次の例では、現在のメッセージにSAML_SVトークンが含まれない場合またはリクエスト元が内部でない場合のみ、ロールベースの認可アサーションが実行されます。

${!(messageContext.authenticationMethod =='SAML_SV'|| messageContext.requestOrigin == 'internal')}

注意:
このプロパティは、binding_authorization_templateに基づく認可ポリシーでのみ有効です。他の認可アサーション・テンプレートに基づくポリシーの場合、このプロパティは今後の使用のために予約されています。

- アクション・パターン -- 権限ベースの確認が実行されるWebサービス操作。この値は、値のカンマ区切りのリストにすることもできます。このフィールドではワイルドカードを使用できます。*は、すべてのWebサービス操作を意味します。
「アクション・パターン」の有効な値は、Webサービス・メソッドで決まります。たとえば、Webサービス・メソッドがvalidate(amountAvailable)の場合は、アクション・パターンをvalidateと入力します。

- リソース・パターン -- 権限ベースの確認が実行されるリソースの名前。このフィールドではワイルドカードを使用できます。デフォルトは*で、ポリシーによって保護されるWebサービスのすべてのリソースに対応します。
表記規則により、リソース・パターンを(Webサービスの名前空間+ Webサービス名)として入力します。

たとえば、Webサービスの名前空間がhttp://project11で、Webサービス名がCreditValidationの場合、リソース名をhttp://project11/CreditValidationと入力します。

特定のリソース・パターンを指定した場合、ポリシーは、基準と一致するWebサービスに対してのみ実行されます。つまり、特定のリソース・パターンを入力すると、認可ポリシーのスコープが制限されます。この条件は、この認可ポリシーを複数のサブジェクトに一括添付した場合にも適用されます。デフォルトの*により、一括添付されたWebサービスのすべてのリソース(Webサービスの名前空間+ Webサービス名)が保護されます。

- 権限チェック・クラス -- デフォルトでは、oracle.wsm.security.WSFunctionPermissionになっています。クラスは、クラスパスに存在する必要があります。

- 認証設定 -- 使用可能な値は、「すべてを許可」、「すべてを拒否」および「選択したロール」です。「選択したロール」を選択した場合、WebLogic Serverで定義されたエンタープライズ(グローバル)ロールのいずれかを選択する必要があります。このロールには、次のものがあります。

- AdminChannelUser

- Anonymous

- AppTester

- CrossDomainConnector

- Deployer

- Monitor

- Operator

- OracleSystemRole

認証権限の決定方法

概念的には、認証されたサブジェクトがWebサービス・ポリシーによって保護された特定のリソースへのアクセスを許可されるかどうかの決定には、連携して機能する2つの部分が関与します。

- 図11-2に示すように、ポリシーの「ポリシー設定」ページの「リソース・パターン」および「アクション・パターン」パラメータにより、そのポリシーによって保護されるリソースを定義します。(「認可ポリシーのサーバー側オーバーライド・プロパティの構成」で説明されているように、「リソース・パターン」および「アクション・パターン」プロパティをオーバーライドすることもできます。)
そのポリシーの構成プロパティ「権限チェック・クラス」を変更する方法もあります。このプロパティは権限クラスをJAAS標準に従って識別します。権限クラスは、アプリケーションまたはサーバーのクラスパスに存在する必要があります。

カスタムの権限クラスは、抽象的な権限クラスを拡張し、シリアライズ可能なインタフェースを実装する必要があります。http://java.sun.com/j2se/1.5.0/docs/api/java/security/Permission.htmlにあるJavadocを参照してください。デフォルトはoracle.wsm.security.WSFunctionPermissionです。

図11-2 ポリシーの権限設定

- OPSSアプリケーション・ポリシーページでは、図11-3に示すように、認証されたサブジェクトがそこにリストされている「リソース名」への起動アクセスを持つかどうかを指定します。

図11-3 OPSS作成アプリケーション付与ページでの権限の追加

OPSSは、Webサービスの「ポリシー設定」ページを使用して、許可チェックが必要なリソースを決定します。認証されたサブジェクトがそのリソースに対してOPSSを介してWSFunctionPermission(または他の権限)を付与されている場合は、そのリソースへのアクセスが許可されます。

注意:
そのポリシーの構成プロパティ「権限チェック・クラス」を変更する場合は、ここでもカスタム・クラスを使用してください。

図11-2と図11-3に示す例をさらに検討します。

「ポリシー設定」ページで、Webサービスhttp://project11/CreditValidationのvalidateメソッドを保護するために、次のように指定すると仮定します。

Action pattern:        validate
Resource pattern:       http://project11/CreditValidation
Permission Check Class  oracle.wsm.security.WSFunctionPermission

次に、OPSSアプリケーション・ポリシーページで、「リソース名」にhttp://project11/CreditValidation#validateを使用して、認証されたサブジェクトがこのリソースを起動する権限を持つように指定します。

Permission Class: oracle.wsm.security.WSFunctionPermission
Resource Name:    http://project11/CreditValidation#validate
Permissions Action:  invoke

WSFunctionPermission権限を、ユーザー、グループまたはアプリケーション・ロールに付与できます。WSFunctionPermissionをユーザーまたはグループに付与した場合、この権限は、ドメインにデプロイされているすべてのアプリケーションに適用されます。

OPSSリソース名にオペレーション名を組込み可能

前のリリースのFusion Middleware Controlでは、OPSSアプリケーション・ポリシーページの「リソース名」は、name-space-of-webservice/ServiceNameによって決められていました。たとえば、Webサービスの名前空間がhttp://project1/で、サービス名がCreditValidationの場合、「リソース名」はhttp://project1/CreditValidationでした。アスタリスク(*)ワイルドカードを使用して、すべてのアクションまたはすべてのリソースに権限を与えることもできました。

このリリースでは、WSFunctionPermissionのリソース・ターゲットに実際のWebサービス・オペレーションの名前を含めるように機能強化されました。「リソース名」の構文は、name-space-of-webservice/servicename#[オペレーション名]です。(コンポーネントの場合はcompositename/componentname#[オペレーション名])

少なくともname-space-of-webservice/service nameを含める必要があります。つまり、アスタリスク(*)ワイルドカードを使用して、すべてのアクションまたはすべてのリソースに権限を与えることはできなくなりました。

そのかわりに、単にオペレーション名を空白のままにしておくだけで、Webサービスのすべてのオペレーションを指定できます。たとえば、name-space-of-webservice/servicename#のようにします。

「権限アクション」は常にinvokeです。

oracle/binding_authorization_denyall_policy

このポリシーは、認証されたサブジェクトに基づき、簡単なロールベースの認可ポリシーを提供します。

このポリシーは、ロールを持つすべてのユーザーを拒否します。

このポリシーは、サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SOAPベースの任意のエンドポイントに添付できます。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項で説明されているように、WebLogic認証プロバイダがすでに構成されている必要があります。

このポリシーには、oracle/binding_authorization_templateアサーション・テンプレートが含まれています。

このアサーションの詳細は、「oracle/binding_authorization_template」を参照してください。

設定

表C-109を参照してください。

ロールを追加するには、次のようにします。

1. 「選択したロール」をクリックします。

2. 「追加」をクリックします。

3. ロールを追加するには、「使用可能なロール」列の追加する各ロールの隣にあるチェック・ボックスをクリックし、「移動」をクリックします。すべてのロールを追加するには、「すべて移動」をクリックします。
ロールを削除するには、「追加対象として選択したロール」列の削除する各ロールの隣にあるチェック・ボックスをクリックし、「削除」をクリックします。すべてのロールを削除するには、「すべて削除」をクリックします。

ロールを検索するには、「ロール名」検索ボックスに検索文字列を入力して、実行の矢印をクリックします。検索文字列に一致するロールのみが含まれるように、「使用可能なロール」列が更新されます。

4. 「OK」をクリックします。

ロールを削除するには、次のようにします。

1. 「選択したロール」リストで削除するロールを選択します。

2. 「削除」をクリックします。

構成プロパティ

定義されていません。

Oracle Platform Security Services(OPSS)の設定方法

1つ以上のWebLogic Serverエンタープライズ・ロールを指定する場合、認証されたサブジェクトにそのロールがすでに付与されている必要があります。Oracle WebLogic Server管理コンソールのヘルプで説明されているように、WebLogic Server管理コンソールを使用して、ロールをユーザーまたはグループに付与します。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、WebLogic認証プロバイダを構成する必要があります。

oracle/binding_authorization_permitall_policy

このポリシーは、認証されたサブジェクトに基づき、簡単なロールベースの認可ポリシーを提供します。

このポリシーは、ロールを持つすべてのユーザーを許可します。

このポリシーは、サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SOAPベースの任意のエンドポイントに添付できます。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項で説明されているように、WebLogic認証プロバイダがすでに構成されている必要があります。

このポリシーには、oracle/binding_authorization_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/binding_authorization_template」を参照してください。

設定

表C-109を参照してください。

ロールを追加するには、次のようにします。

1. 「選択したロール」をクリックします。

2. 「追加」をクリックします。

3. ロールを追加するには、「使用可能なロール」列の追加する各ロールの隣にあるチェック・ボックスをクリックし、「移動」をクリックします。すべてのロールを追加するには、「すべて移動」をクリックします。
ロールを削除するには、「追加対象として選択したロール」列の削除する各ロールの隣にあるチェック・ボックスをクリックし、「削除」をクリックします。すべてのロールを削除するには、「すべて削除」をクリックします。

ロールを検索するには、「ロール名」検索ボックスに検索文字列を入力して、実行の矢印をクリックします。検索文字列に一致するロールのみが含まれるように、「使用可能なロール」列が更新されます。

4. 「OK」をクリックします。

ロールを削除するには、次のようにします。

1. 「選択したロール」リストで削除するロールを選択します。

2. 「削除」をクリックします。

構成プロパティ

定義されていません。

Oracle Platform Security Services(OPSS)の設定方法

1つ以上のWebLogic Serverエンタープライズ・ロールを指定する場合、認証されたサブジェクトにそのロールがすでに付与されている必要があります。Oracle WebLogic Server管理コンソールのヘルプで説明されているように、WebLogic Server管理コンソールを使用して、ロールをユーザーまたはグループに付与します。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、WebLogic認証プロバイダを構成する必要があります。

oracle/binding_permission_authorization_policy

このポリシーは、認証されたサブジェクトに基づき、権限ベースの認可ポリシーを提供します。

このポリシーは、サブジェクトに操作を実行する権限があることを保証します。このため、認可ポリシー・エグゼキュータはOPSSを利用し、認証されたサブジェクトに、パラメータとして「リソース・パターン」と「アクション・パターン」を使用してoracle.wsm.security.WSFunctionPermission(または「権限チェック・クラス」で指定された任意の権限クラス)が付与されているかどうかを確認します。

このポリシーは、サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SOAPベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/binding_permission_authorization_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/binding_permission_authorization_template」を参照してください。

設定

表C-110を参照してください。

構成可能な属性

そのポリシーの構成プロパティpermission_classを変更する方法もあります。これはJAAS標準によって権限クラスを識別します。権限クラスは、アプリケーションまたはサーバーのクラスパスに存在する必要があります。

カスタムの権限クラスは、抽象的な権限クラスを拡張し、シリアライズ可能なインタフェースを実装する必要があります。http://java.sun.com/j2se/1.5.0/docs/api/java/security/Permission.htmlにあるJavadocを参照してください。

デフォルトはoracle.wsm.security.WSFunctionPermissionです。

Oracle Platform Security Services(OPSS)の設定方法

Fusion Middleware Controlを使用して、Webサービスに対する認証を試行するユーザー、グループまたはアプリケーションにWSFunctionPermission権限を付与します。

そのポリシーの構成プロパティpermission_classを変更する方法もあります。これはJAAS標準によって権限クラスを識別します。クラスは、サーバー・クラスパスに存在する必要があります。デフォルトはoracle.wsm.security.WSFunctionPermissionです。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、WebLogic認証プロバイダを構成する必要があります。

oracle/component_authorization_denyall_policy

このポリシーは、認証されたサブジェクトに基づき、簡単なロールベースの認可ポリシーを提供します。

このポリシーは、ロールを持つすべてのユーザーを拒否します。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項で説明されているように、WebLogic認証プロバイダがすでに構成されている必要があります。

このポリシーは、サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SCAベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/component_authorization_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/component_authorization_template」を参照してください。

設定

表C-112を参照してください。

ロールを追加するには、次のようにします。

1. 「追加」をクリックします。

2. ロールを追加するには、「使用可能なロール」列の追加する各ロールの隣にあるチェック・ボックスをクリックし、「移動」をクリックします。すべてのロールを追加するには、「すべて移動」をクリックします。
ロールを削除するには、「追加対象として選択したロール」列の削除する各ロールの隣にあるチェック・ボックスをクリックし、「削除」をクリックします。すべてのロールを削除するには、「すべて削除」をクリックします。

ロールを検索するには、「ロール名」検索ボックスに検索文字列を入力して、実行の矢印をクリックします。検索文字列に一致するロールのみが含まれるように、「使用可能なロール」列が更新されます。

3. 「OK」をクリックします。

ロールを削除するには、次のようにします。

1. 「選択したロール」リストで削除するロールを選択します。

2. 「削除」をクリックします。

構成プロパティ

定義されていません。

Oracle Platform Security Services(OPSS)の設定方法

1つ以上のWebLogic Serverエンタープライズ・ロールを指定する場合、認証されたサブジェクトにそのロールがすでに付与されている必要があります。Oracle WebLogic Server管理コンソールのヘルプで説明されているように、WebLogic Server管理コンソールを使用して、ロールをユーザーまたはグループに付与します。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、WebLogic認証プロバイダを構成する必要があります。

oracle/component_authorization_permitall_policy

このポリシーは、認証されたサブジェクトに基づき、簡単なロールベースの認可ポリシーを提供します。

このポリシーは、ロールを持つすべてのユーザーを許可します。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項で説明されているように、WebLogic認証プロバイダがすでに構成されている必要があります。

サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SCAベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/component_authorization_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/component_authorization_template」を参照してください。

設定

表C-112を参照してください。

ロールを追加するには、次のようにします。

1. 「追加」をクリックします。

2. ロールを追加するには、「使用可能なロール」列の追加する各ロールの隣にあるチェック・ボックスをクリックし、「移動」をクリックします。すべてのロールを追加するには、「すべて移動」をクリックします。
ロールを削除するには、「追加対象として選択したロール」列の削除する各ロールの隣にあるチェック・ボックスをクリックし、「削除」をクリックします。すべてのロールを削除するには、「すべて削除」をクリックします。

ロールを検索するには、「ロール名」検索ボックスに検索文字列を入力して、実行の矢印をクリックします。検索文字列に一致するロールのみが含まれるように、「使用可能なロール」列が更新されます。

3. 「OK」をクリックします。

ロールを削除するには、次のようにします。

1. 「選択したロール」リストで削除するロールを選択します。

2. 「削除」をクリックします。

構成プロパティ

定義されていません。

Oracle Platform Security Services(OPSS)の設定方法

1つ以上のWebLogic Serverエンタープライズ・ロールを指定する場合、認証されたサブジェクトにそのロールがすでに付与されている必要があります。Oracle WebLogic Server管理コンソールのヘルプで説明されているように、WebLogic Server管理コンソールを使用して、ロールをユーザーまたはグループに付与します。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、WebLogic認証プロバイダを構成する必要があります。

oracle/component_permission_authorization_policy

このポリシーは、認証されたサブジェクトに基づき、権限ベースの認可ポリシーを提供します。

このポリシーは、サブジェクトに操作を実行する権限があることを保証します。このため、認可ポリシー・エグゼキュータはOPSSを利用し、認証されたサブジェクトに、パラメータとして「リソース・パターン」と「アクション・パターン」を使用してoracle.wsm.security.WSFunctionPermission(または「権限チェック・クラス」で指定された任意の権限クラス)が付与されているかどうかを確認します。「リソース・パターン」と「アクション・パターン」は、認可アサーションがこの特定のリクエストに対して実行されるかどうかを識別するために使用されます。認証されたサブジェクトにWSFunctionPermissionが付与されている場合、アクセスは許可されます。

WSFunctionPermission権限を、ユーザー、グループまたはアプリケーション・ロールに付与できます。WSFunctionPermissionをユーザーまたはグループに付与した場合、この権限は、ドメインにデプロイされているすべてのアプリケーションに適用されます。

このポリシーは、サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SCAベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/component_permission_authorization_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/component_permission_authorization_template」を参照してください。

設定

表C-113を参照してください。

構成プロパティ

定義されていません。

Oracle Platform Security Services(OPSS)の設定方法

Fusion Middleware Controlを使用して、Webサービスに対する認証を試行するユーザー、グループまたはアプリケーションにWSFunctionPermission権限を付与します。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、WebLogic認証プロバイダを構成する必要があります。

oracle/whitelist_authorization_policy

このポリシーは、認証されたサブジェクトに基づくロールベースの認可ポリシーの特別なケースです。

このポリシーでは、次のいずれかの条件が該当する場合のみ、リクエストを受け取ります。

- 認証されたトークンがSAML送信者保証の場合。

- ユーザーが特定のロールの場合(デフォルトはtrustedEnterpriseRoleであり、ユーザーを信頼できるエンティティとして確立します

- リクエストがプライベート・ネットワークから届いている場合。

このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

このポリシーには、oracle/binding_authorization_templateアサーション・テンプレートが含まれています。

このアサーションの詳細は、「oracle/binding_authorization_template」を参照してください。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、WebLogic認証プロバイダを構成する必要があります。

設定

表C-109を参照してください。

ロールを追加するには、次のようにします。

1. 「追加」をクリックします。

2. ロールを追加するには、「使用可能なロール」列の追加する各ロールの隣にあるチェック・ボックスをクリックし、「移動」をクリックします。すべてのロールを追加するには、「すべて移動」をクリックします。
ロールを削除するには、「追加対象として選択したロール」列の削除する各ロールの隣にあるチェック・ボックスをクリックし、「削除」をクリックします。すべてのロールを削除するには、「すべて削除」をクリックします。

ロールを検索するには、「ロール名」検索ボックスに検索文字列を入力して、実行の矢印をクリックします。検索文字列に一致するロールのみが含まれるように、「使用可能なロール」列が更新されます。

3. 「OK」をクリックします。

ロールを削除するには、次のようにします。

1. 「選択したロール」リストで削除するロールを選択します。

2. 「削除」をクリックします。

構成プロパティ

定義されていません。

Oracle Platform Security Services(OPSS)の設定方法

1つ以上のWebLogic Serverエンタープライズ・ロールを指定する場合、認証されたサブジェクトにそのロールがすでに付与されている必要があります。Oracle WebLogic Server管理コンソールのヘルプで説明されているように、WebLogic Server管理コンソールを使用して、ロールをユーザーまたはグループに付与します。

Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、WebLogic認証プロバイダを構成する必要があります。

このポリシーを使用してサービスを正常に起動する方法

whitelist_authorization_policyが添付されたサービスを正常に起動するには、次のいずれかの操作を行う必要があります。

- サービスが認証でSAML送信者保証を受け入れる場合(たとえば、SAMLトークン・サービス・ポリシーがサービスに添付されている場合)、対応するSAMLトークン・クライアント・ポリシーをクライアントに添付する必要があります。

- サービスが認証でユーザー名/パスワードを受け入れる場合(たとえば、ユーザー名トークン・サービス・ポリシーがサービスに添付されている場合)、対応するユーザー名トークン・クライアント・ポリシーをクライアントに添付し、クライアントが、ポリシーで定義される信頼できるロールであることを確認する必要があります。(デフォルトでは、事前定義済ポリシーで定義されるロールはtrustedEnterpriseRoleです。事前定義済ポリシー内のこのロールを変更する必要があります。)

- Oracle HTTP Serverを使用してサービスが起動され、プライベート内部ネットワークからのリクエストであることを示すよう構成されている場合(「リクエスト元を指定するためのOracle HTTP Serverの構成」を参照)、内部ネットワーク上のクライアントのみが、対応するユーザー名トークン・クライアント・ポリシーをクライアント側で添付する必要があります。

リクエスト元を指定するためのOracle HTTP Serverの構成

「制約パターン」プロパティ設定には、リクエストが内部ネットワークまたは外部ネットワークから発行されたかどうかを指定するrequestOriginフィールドが含まれています。このプロパティは、Oracle HTTP Serverを使用しており、Oracle HTTP Server管理者がカスタムのVIRTUAL_HOST_TYPEヘッダーをリクエストに追加した場合のみ有効です。

これを行うには、管理者が次の手順に従ってhttpd.confファイルを変更する必要があります。

1. mod_headersモジュールがロードされていることを確認します。

2. RequestHeader内でVIRTUAL_HOST_TYPEヘッダー名を設定します。有効な値は、internalおよびexternalです。次のコマンド構文を使用します。

RequestHeader set|append|add|unset header [value [env=[!]variable]]

たとえば、内部リクエストの仮想ホストを構成するには、次のように指定します。

<VirtualHost *:7777>
RequestHeader set VIRTUAL_HOST_TYPE  "internal"
</VirtualHost>

外部リクエストの仮想ホストを構成するには、次のように指定します。

<VirtualHost *:8888>
RequestHeader set VIRTUAL_HOST_TYPE "external"
</VirtualHost>

これらの例で、プライベート・ネットワークの外部からのすべてのリクエストは、virtual host:8888を経由してルーティングされ、内部プライベート・ネットワークからのすべてのリクエストは、virtual host:7777を経由してルーティングされます。

アプリケーションを外部のポートでも使用できるように、これらのポートをリスニング・ポートとしてhttpd.confファイルに追加する必要もあります。

3. Oracle HTTP Serverを再起動します。

WS-Addressingポリシーと構成手順

Webサービス・アドレス(WS-Addressing)の仕様(http://www.w3.org/TR/ws-addr-core/)は、Webサービスおよびメッセージに対応する、特定のトランスポートに依存しないメカニズムを提供します。特に、仕様では、Webサービス・エンドポイントの識別とメッセージ内のエンドツーエンドのエンドポイント・アイデンティティの保護に使用されるXML要素の数が定義されます。

この項では、事前定義済のWS-Addressingポリシーについて説明します。

oracle/wsaddr_policy

このポリシーを使用すると、プラットフォームにより、W3C 2005の最終版のWS-Addressingポリシー標準に準拠したWS-Addressingヘッダーがインバウンド・メッセージに存在するかどうかが確認されます。また、プラットフォームにより、WS-AddressingヘッダーがアウトバウンドSOAPメッセージに組み込まれます。

Webサービス・クライアントの設定方法

構成は必要ありません。

設計時のWebサービス・クライアントの設定方法

Web Services Addressing 1.0 - SOAP Bindingの仕様(http://www.w3.org/TR/ws-addr-soap/)で説明されているように、Webサービス・クライアントのWS-Addressingを構成します。

Oracle Platform Security Services(OPSS)の設定方法

構成は必要ありません。

WS-Trustポリシー

この項では、事前定義済のWS-Trustポリシーについて説明します。事前定義済ポリシーは、WS-Trust 1.3仕様に準拠します。

oracle/sts_trust_config_service_policy

このポリシーを使用して、トークン交換のためにSTSの起動に使用されるSTS構成情報を指定します。

このポリシーには、oracle/sts_trust_config_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/sts_trust_config_service_template」を参照してください。

ポリシー・アサーション

oracle/sts_trust_config_service_policyポリシー・アサーションは、次のとおりです。

<?xml version = '1.0' encoding = 'UTF-8'?>
<wsp:Policy
xmlns:oralgp = "http://schemas.oracle.com/ws/2006/01/loggingpolicy"
xmlns:orasp = "http://schemas.oracle.com/ws/2006/01/securitypolicy"
orawsp:description = "i18n:oracle.wsm.resources.policydescription.PolicyDescriptionBundle_oracle/sts_
trust_config_service_policy_PolyDescKey"
orawsp:displayName = "i18n:oracle.wsm.resources.policydescription.PolicyDescriptionBundle_oracle/sts_
trust_config_service_policy_PolyDispNameKey"
wsu:Id = "sts_trust_config_service_policy"
orawsp:attachTo = "binding.server"
orawsp:status = "enabled"
xmlns:orawsp = "http://schemas.oracle.com/ws/2006/01/policy"
Name = "oracle/sts_trust_config_service_policy"
xmlns:wsp = "http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wsu = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
orawsp:category = "security"
orawsp:local-optimization = "off">

<orasp:sts-trust-config
orawsp:Silent = "true"
orawsp:Enforced = "true"
orawsp:name = "STS Trust Configuration"
orawsp:category = "security/sts-config"
orasp:wsdl-uri = "http://host:port/sts?wsdl"
orasp:port-uri = "http://host:port/sts-service"
orasp:soap-version="12">
<orawsp:bindings>
<orawsp:Config orawsp:name = "StsTrustConfig" orawsp:configType = "declarative">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="role" orawsp:type="string" orawsp:contentType="constant">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:sts-trust-config>
</wsp:Policy>

設定

表C-98に示されている設定を変更できます。

構成プロパティ

表C-99に示されているプロパティを構成できます。

Webサービスの設定方法

実行する手順については、「STSの自動ポリシー構成の設定」を参照してください。

oracle/sts_trust_config_client_policy

このポリシーを使用して、トークン交換用のSTS呼出しに使用されるSTSクライアント構成情報を指定します。

このポリシーを使用するのは、「STSの自動ポリシー構成の設定」で説明されている自動(クライアントSTS)ポリシー構成を使用していない場合のみです。

oracle/sts_trust_config_client_policyの複数のインスタンスをアタッチした場合に、エラーは生成されません。しかし、実行されるのは1つのインスタンスのみであり、それをどのインスタンスにするかを制御できません。

このポリシーには、oracle/sts_trust_config_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/sts_trust_config_client_template」を参照してください。

ポリシー・アサーション

oracle/sts_trust_config_client_policyポリシー・アサーションは、次のとおりです。

<?xml version = '1.0' encoding = 'UTF-8'?>
<wsp:Policy
xmlns:oralgp = "http://schemas.oracle.com/ws/2006/01/loggingpolicy"
xmlns:orasp = "http://schemas.oracle.com/ws/2006/01/securitypolicy"
orawsp:description =
"i18n:oracle.wsm.resources.policydescription.PolicyDescriptionBundle_oracle/sts_trust_config_client_policy_PolyDescKey"
orawsp:displayName =
"i18n:oracle.wsm.resources.policydescription.PolicyDescriptionBundle_oracle/sts_trust_config_client_policy_PolyDispNameKey"
wsu:Id = "sts_trust_config_client_policy"
orawsp:attachTo = "binding.client"
orawsp:status = "enabled"
xmlns:orawsp = "http://schemas.oracle.com/ws/2006/01/policy"
Name = "oracle/sts_trust_config_client_policy"
xmlns:wsp = "http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wsu = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
orawsp:category = "security"
orawsp:local-optimization = "off">

<orasp:sts-trust-config
orawsp:Silent = "true"
orawsp:Enforced = "true"
orawsp:name = "STS Trust Configuration"
orawsp:category = "security/sts-config"
orasp:wsdl-uri = "http://host:port/sts?wsdl"
orasp:port-uri = "http://host:port/sts-service"
orasp:port-endpoint="target-namespace#wsdl.endpoint(service-name/port-name)"
orasp:policy-reference-uri="oracle/policy-name"
orasp:soap-version="12"
orasp:sts-keystore-recipient-alias="sts-csf-key">
<orawsp:bindings>
<orawsp:Config orawsp:name = "StsTrustConfig" orawsp:configType = "declarative">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="role" orawsp:type="string" orawsp:contentType="constant">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:sts-trust-config>
</wsp:Policy>

設定

表C-96に示されている設定を変更できます。

構成プロパティ

表C-97に示されているプロパティを構成できます。

Webサービス・クライアントの設定方法

「STSの自動ポリシー構成の設定」の説明に従って、WebサービスからSTS構成ポリシーを構成することをお薦めします。

ただし、WebサービスからSTS構成ポリシーを構成しなかった場合またはSAML送信者保証による確認方法を使用している場合は、後でWebサービス・クライアントから構成する必要があります。Webサービス・クライアントの設定方法の詳細は、「Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順」を参照してください。

設計時のWebサービス・クライアントの設定方法

「STSの自動ポリシー構成の設定」の説明に従って、WebサービスからSTS構成ポリシーを構成することをお薦めします。

ただし、WebサービスからSTS構成ポリシーを構成しなかった場合またはSAML送信者保証による確認方法を使用している場合は、この項の説明に従って、後でWebサービス・クライアントから構成する必要があります。

Webサービス・クライアントの設定方法の詳細は、「Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順」を参照してください。

例11-6および例11-7に示すように、oracle/sts_trust_config_client_policyポリシーをプログラムによって設定し、添付できます。

例11-6 JSEプロキシ・クライアントのサンプル

URL endpointUrl = new URL(getWebConnectionString() + "/jaxws-test-service/jaxws-test-port");

ServiceDelegateImpl client = new ServiceDelegateImpl(
new  URL(endpointUrl.toString() + "?WSDL"),
new QName("http://jaxws.oracle.com/targetNamespace/JaxwsService", "JaxwsService"),
OracleService.class);

JaxwsService port = client.getPort(
new  QName("http://jaxws.oracle.com/targetNamespace/JaxwsService", "JaxwsServicePort"),
test.jaxws.client.JaxwsService.class);

((BindingProvider)port).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,endpointUrl.toExternalForm());
((BindingProvider)port).getRequestContext().put(ClientConstants.CLIENT_CONFIG,
fileToElement(new File("./jaxws/client/dat/oracle-webservice-client.xml")));

例11-7は、STS構成ポリシーおよびSTS発行ポリシーに関連するoracle-webservice-client.xmlファイルを示しています。

例11-7 oracle-webservice-client.xmlのサンプル

<?xml version="1.0" encoding="UTF-8"?>
<oracle-webservice-clients>
<webservice-client>
<port-info>
<policy-references>
<policy-reference uri="oracle/sts_trust_config_client_policy" category="security"/>
<policy-reference uri="oracle/wss11_sts_issue_saml_hok_with_message_protection_client_policy " category="security"/>
</policy-references>
</port-info>
</webservice-client>
</oracle-webservice-clients>

Webサービスの設定方法

実行する手順については、「STSの自動ポリシー構成の設定」を参照してください。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

このポリシーは、信頼できるSTSが発行したSAML Bearerアサーションを挿入します。メッセージは、SSLを使用して保護されます。

このポリシーには、oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「WS-Trustアサーション・テンプレート」を参照してください。

ポリシー・アサーション

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policyアサーションは、次のとおりです。

<orasp:wss-sts-issued-token-over-ssl
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:require-applies-to="true" orasp:require-client-entropy="true"
orasp:require-server-entropy="true" orasp:trust-version="13"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.1, issued token over ssl">
<orasp:issued-token orasp:require-external-reference="true"
orasp:require-internal-reference="true" orasp:use-derived-keys="false">
<orasp:request-security-token-template orasp:key-type="Bearer" orasp:token-type="SAML11"/>
</orasp:issued-token>
<orasp:require-tls orasp:include-timestamp="true" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="WssStsIssuedTokenOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.user.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.x509.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="on.behalf.of" orawsp:type="boolean">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.on.behalf.of.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.service.principal.name" orawsp:type="string">
<orawsp:Value>HOST/localhost@EXAMPLE.COM</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.keytab.location" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.caller.principal.name" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss-sts-issued-token-over-ssl>

設定

表C-100に示されている設定を変更できます。

構成プロパティ

表C-101に示されているプロパティを構成できます。

Webサービス・クライアントの設定方法

Webサービス・クライアントの設定方法の詳細は、「自動ポリシー構成の設定: メイン手順」を参照してください。

このポリシーでは、Oracle WSMキーストアを設定して、STSに対する認証用のキー(ユーザー名/パスワードまたはX.509)を指定する必要があります。「メッセージ保護に関するキーストアの構成」を参照してください。

オーバーライド可能な構成設定については、「WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド」を参照してください。

「相互認証が必要」を設定しない場合、一方向SSLが行われます。「Webサービス・クライアントに関するSSLの構成」を参照してください。

「相互認証が必要」を設定する場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

設計時のWebサービス・クライアントの設定方法

Webサービス・クライアントの設定方法の詳細は、「自動ポリシー構成の設定: メイン手順」を参照してください。

このポリシーでは、Oracle WSMキーストアを設定して、STSに対する認証用のキー(ユーザー名/パスワードまたはX.509)を指定する必要があります。「メッセージ保護に関するキーストアの構成」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。STS構成設定のオーバーライドの例については、「WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド」を参照してください。

「相互認証が必要」を設定しない場合、一方向SSLが行われます。「Webサービス・クライアントに関するSSLの構成」を参照してください。

「相互認証が必要」コントロールを設定しない場合、クライアントは資格証明を提供し、Webサービスから返される資格証明を受信する必要があります。「Webサービス・クライアントに関する双方向SSLの構成」を参照してください。

oracle/wss_saml_bearer_or_username_token_service_policy

このポリシーは、クライアントがSAMLトークンとユーザー名トークンのどちらを使用するかに基づいて、次の認証ポリシーのいずれかを実行します。

- Bearer確認タイプを使用するWS-Security SOAPヘッダー内のSAMLトークン。

- 構成済のアイデンティティ・ストアに対してユーザーを認証するWS-Security UsernameToken SOAPヘッダー。

このポリシーには、次のアサーションがORグループとして含まれます。つまり、クライアントはどちらのタイプのポリシーでも実行できます。

- oracle/wss_saml_token_bearer_template。このアサーションの詳細は、「oracle/wss_saml_token_bearer_service_template」を参照してください。

- oracle/wss_username_token_template。このアサーションの詳細は、「oracle/wss_username_token_service_template」を参照してください。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

このポリシーは、信頼できるSTSが発行したSAML Bearerアサーションを認証します。メッセージは、SSLを使用して保護されます。

このポリシーには、oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「WS-Trustアサーション・テンプレート」を参照してください。

ポリシー・アサーション

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policyアサーションは、次のとおりです。

<orasp:wss-sts-issued-token-over-ssl
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:require-applies-to="true" orasp:require-client-entropy="true"
orasp:require-server-entropy="true" orasp:trust-version="13"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.1, issued token over ssl">
<orasp:issued-token orasp:require-external-reference="true"
orasp:require-internal-reference="true" orasp:use-derived-keys="false">
<orasp:request-security-token-template orasp:key-type="Bearer" orasp:token-type="SAML11"/>
</orasp:issued-token>
<orasp:require-tls orasp:include-timestamp="true" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="WssStsIssuedTokenOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role" orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss-sts-issued-token-over-ssl>

設定

表C-100を参照してください。

構成プロパティ

表C-102に示されているプロパティを構成できます。

Webサービスの設定方法

Webサービスの設定方法の詳細は、「自動ポリシー構成の設定: メイン手順」を参照してください。

SSLを構成するには、「WebLogic ServerへのSSLの構成(一方向)」を参照してください。ただし、「相互認証が必要」がオンの場合は、「WebLogic ServerへのSSLの構成(双方向)」を参照してください。

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

このポリシーは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML HOKアサーションを挿入します。メッセージは、STSで提供される証明鍵マテリアルを使用して保護されます。

このポリシーには、oracle/wss11_sts_issued_saml_hok_with_message_protection_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「WS-Trustアサーション・テンプレート」を参照してください。

ポリシー・アサーション

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policyアサーションは、次のとおりです。

<orasp:wss11-sts-issued-token-with-certificates
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:require-applies-to="true" orasp:require-client-entropy="true"
orasp:require-server-entropy="true" orasp:trust-version="13"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.1, issued tokee">
<orasp:issued-token orasp:require-external-reference="true"
orasp:require-internal-reference="true" orasp:use-derived-keys="false">
<orasp:request-security-token-template orasp:algorithm-suite="Basic128"
orasp:key-type="Symmetric" orasp:token-type="SAML11"/>
</orasp:issued-token>
<orasp:x509-token orasp:enc-key-ref-mech="thumbprint" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:sign-key-ref-mech="thumbprint"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:confirm-signature="true" orasp:encrypt-signature="false"
orasp:include-timestamp="true" orasp:sign-then-encrypt="true"
orasp:use-derived-keys="false">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
<orasp:header orasp:namespace="http://www.w3.org/2005/08/addressing"/>
<orasp:header orasp:namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
<orasp:header orasp:name="fmw-context" orasp:namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
<orasp:header orasp:name="fmw-context" orasp:namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="Wss11StsIssuedTokenWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.user.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.x509.csf.key" orawsp:type="string">
<orawsp:Value>enc-csf-key</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:name="on.behalf.of" orawsp:type="boolean">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.on.behalf.of.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="keystore.recipient.alias" orawsp:type="string">
<orawsp:Value>orakey</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.enc.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.service.principal.name" orawsp:type="string">
<orawsp:Value>HOST/localhost@EXAMPLE.COM</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.keytab.location" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.caller.principal.name" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss11-sts-issued-token-with-certificates>

設定

表C-103に示されている設定を変更できます。

構成プロパティ

表C-104に示されているプロパティを構成できます。

Webサービス・クライアントの設定方法

Webサービス・クライアントの設定方法の詳細は、「自動ポリシー構成の設定: メイン手順」を参照してください。

このポリシーでは、Oracle WSMキーストアを設定して、STSに対する認証用のキー(ユーザー名/パスワードまたはX.509)を指定する必要があります。「メッセージ保護に関するキーストアの構成」を参照してください。

オーバーライド可能な構成設定については、「WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、keystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときにクライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

keystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときにクライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

Webサービス・クライアントの設定方法の詳細は、「自動ポリシー構成の設定: メイン手順」を参照してください。

このポリシーでは、Oracle WSMキーストアを設定して、STSに対する認証用のキー(ユーザー名/パスワードまたはX.509)を指定する必要があります。「メッセージ保護に関するキーストアの構成」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。STS構成設定のオーバーライドの例については、「WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、keystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときにクライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

keystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときにクライアントごとにこの値をオーバーライドできます。

oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy

このポリシーは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML HOKアサーションを認証します。メッセージは、対称鍵テクノロジのWS-SecurityのBasic 128スイートを使用して保護されます。

このポリシーには、oracle/wss11_sts_issued_saml_hok_with_message_protection_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「WS-Trustアサーション・テンプレート」を参照してください。

ポリシー・アサーション

oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policyアサーションは、次のとおりです。

<orasp:wss11-sts-issued-token-with-certificates
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:require-applies-to="true" orasp:require-client-entropy="true"
orasp:require-server-entropy="true" orasp:trust-version="13"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.1, issued tokee">
<orasp:issued-token orasp:require-external-reference="true"
orasp:require-internal-reference="true" orasp:use-derived-keys="false">
<orasp:request-security-token-template orasp:algorithm-suite="Basic128"
orasp:key-type="Symmetric" orasp:token-type="SAML11"/>
</orasp:issued-token>
<orasp:x509-token orasp:enc-key-ref-mech="thumbprint" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:sign-key-ref-mech="thumbprint"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:confirm-signature="true" orasp:encrypt-signature="false"
orasp:include-timestamp="true" orasp:sign-then-encrypt="true"
orasp:use-derived-keys="false">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
<orasp:header orasp:namespace="http://www.w3.org/2005/08/addressing"/>
<orasp:header orasp:namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
<orasp:header orasp:name="fmw-context" orasp:namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
<orasp:header orasp:name="fmw-context" orasp:namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="Wss11StsIssuedTokenWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.enc.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="constant" orawsp:name="role" orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss11-sts-issued-token-with-certificates>

設定

表C-103に示されている設定を変更できます。

構成プロパティ

表C-105に示されているプロパティを構成できます。また、「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、サーバー側の構成プロパティkeystore.enc.csf.keyをオーバーライドすることもできます。

Webサービスの設定方法

Webサービスの設定方法の詳細は、「自動ポリシー構成の設定: メイン手順」を参照してください。

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

このポリシーは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML送信者保証アサーションを挿入します。メッセージは、クライアントの秘密鍵を使用して保護されます。

このポリシーには、oracle/wss11_sts_issued_saml_with_message_protection_client_policyアサーション・テンプレートが含まれています。このアサーションの詳細は、「WS-Trustアサーション・テンプレート」を参照してください。

ポリシー・アサーション

oracle/wss11_sts_issued_saml_with_message_protection_client_policyポリシー・アサーションは、次のとおりです。

<orasp:wss11-sts-issued-token-with-certificates
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:require-applies-to="true" orasp:require-client-entropy="true"
orasp:require-server-entropy="true" orasp:trust-version="13"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.1, issued token">
<orasp:issued-token orasp:require-external-reference="true"
orasp:require-internal-reference="true" orasp:use-derived-keys="false">
<orasp:request-security-token-template orasp:algorithm-suite="Basic128"
orasp:token-type="SAML11"/>
</orasp:issued-token>
<orasp:x509-token orasp:enc-key-ref-mech="thumbprint" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:confirm-signature="true" orasp:encrypt-signature="false"
orasp:include-timestamp="true" orasp:sign-then-encrypt="true"
orasp:use-derived-keys="false">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
<orasp:header orasp:namespace="http://www.w3.org/2005/08/addressing"/>
<orasp:header orasp:namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
<orasp:header orasp:name="fmw-context" orasp:namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
<orasp:header orasp:name="fmw-context" orasp:namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="Wss11StsIssuedTokenWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.user.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.x509.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="on.behalf.of" orawsp:type="boolean">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.on.behalf.of.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.recipient.alias" orawsp:type="string">
<orawsp:Value>orakey</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.enc.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss11-sts-issued-token-with-certificates>

設定

表C-106に示されている設定を変更できます。

構成プロパティ

表C-107に示されているプロパティを構成できます。

Webサービス・クライアントの設定方法

Webサービス・クライアントの設定方法の詳細は、「自動ポリシー構成の設定: メイン手順」を参照してください。

このポリシーでは、Oracle WSMキーストアを設定して、STSに対する認証用のキー(ユーザー名/パスワードまたはX.509)を指定する必要があります。「メッセージ保護に関するキーストアの構成」を参照してください。

オーバーライド可能な構成設定については、「WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド」を参照してください。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、keystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときにクライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

keystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときにクライアントごとにこの値をオーバーライドできます。

設計時のWebサービス・クライアントの設定方法

Webサービス・クライアントの設定方法の詳細は、「自動ポリシー構成の設定: メイン手順」を参照してください。

このポリシーでは、Oracle WSMキーストアを設定して、STSに対する認証用のキー(ユーザー名/パスワードまたはX.509)を指定する必要があります。「メッセージ保護に関するキーストアの構成」を参照してください。

オーバーライド可能な構成設定については、「クライアントのプログラムによる構成オーバーライドの使用」を参照してください。STS構成設定のオーバーライドの例については、「WS-Trustクライアント・ポリシーのプログラムによる構成オーバーライド」を参照してください。

「サービス・アイデンティティ証明拡張の使用」で説明されているように、Webサービスのbase64エンコードされた公開証明書は、Webサービス・クライアントが使用するためにWSDLでパブリッシュされます。

別の方法として、keystore.recipient.aliasの値を指定できます。または、ポリシーを添付するときにクライアントごとにこの値をオーバーライドできます。キーストア受信者の別名は、アウトバウンドSOAPメッセージの暗号化用のキーを取得するときにキーストア内の公開鍵を検索するために使用される別名を指定します。

keystore.enc.csf.keyの値を指定できます。または、ポリシーを添付するときにクライアントごとにこの値をオーバーライドできます。

ポリシー・アサーションを、メッセージの署名、メッセージの暗号化またはその両方用に構成します。

MTOMアタッチメント・ポリシーと構成手順

この項では、事前定義済のMTOMポリシーについて説明します。

Oracle Infrastructure WebサービスでMTOMを使用する場合、MTOMの構成方法に応じて、2つの動作が考えられます。

- (ローカルまたはグローバル・ポリシー添付を介して) oracle/wsmtom_policyポリシーを添付することによって、Fusion Middleware ControlからMTOMを構成する場合、リクエストがMTOMエンコードされていないと、エンドポイントはフォルトをスローします。MTOMポリシーは、MTOM形式ではないインバウンド・メッセージを拒否し、アウトバウンド・メッセージがMTOM形式であるかどうかを検証します。この使用方法の場合、リクエストはMTOM対応である必要があります。

- oracle-webservices.xml内のMTOM対応スイッチを編集したり、@MTOM注釈をWebサービスに直接追加するなどして、Fusion Middleware Controlの外部でADF BC Webサービスに対してMTOMを構成する場合、エンドポイントはMTOMリクエストを受信できますが、リクエストがMTOMエンコードされていない場合にフォルトを返しません。この使用方法の場合、リクエストはMTOM対応の可能性がありますが、MTOM対応である必要はありません。

oracle/wsmtom_policy

SOAP Message Transmission Optimization Mechanism/XML-binary Optimized Packaging(MTOM/XOP)は、SOAPメッセージ内のxs:base64Binaryまたはxs:hexBinaryタイプのXMLデータの転送を最適化するためのメソッドを定義します。

Message Transmission Optimization Mechanism(MTOM)ポリシーは、MTOM形式ではないインバウンド・メッセージを拒否し、アウトバウンド・メッセージがMTOM形式であるかどうかを検証します。

MTOMはhttp://www.w3.org/TR/2005/REC-soap12-mtom-20050125の仕様書と、SOAP 1.2およびSOAP1.1バインディングに関してはhttp://www.w3.org/Submission/2006/SUBM-soap11mtom10-20060405を参照します。

Webサービス・クライアントの設定方法

構成は必要ありません。

設計時のWebサービス・クライアントの設定方法

WebサービスのクライアントでMTOMを有効にするには、次の例に示されているように、Webサービス・プロキシまたはディスパッチの作成時にパラメータとしてjavax.xml.ws.soap.MTOMFeatureを渡します。

package examples.webservices.mtom.client;
import javax.xml.ws.soap.MTOMFeature;
public class Main {
public static void main(String[] args) {
String FOO = "FOO";
MtomService service = new MtomService()
MtomPortType port = service.getMtomPortTypePort(new MTOMFeature());
String result = null;
result = port.echoBinaryAsString(FOO.getBytes());
System.out.println( "Got result: " + result );
}
}

Oracle Platform Security Services(OPSS)の設定方法

構成は必要ありません。

信頼できるメッセージング・ポリシーと構成手順

WS-ReliableMessagingによって、信頼性のあるメッセージ交換が行われます。ソフトウェア・コンポーネント、システムまたはネットワークの障害に関係なく、分散アプリケーション間でメッセージの信頼性のある配信が確実に行われる必要があります。順序付き配信が保証されているため、クライアント・アプリケーションごとに、失敗したメッセージの自動再送信をコーディングする必要はありません。

Webサービスで次の問題が発生している場合は、信頼できるメッセージングの使用を検討してください。

- ネットワーク障害や接続の切断

- メッセージの転送中の消失

- メッセージの順不同での宛先への到着

WS-ReliableMessagingでは、メッセージの送信元と宛先はクライアント・サーバー・モデルに依存しないものとみなされます。つまり、クライアントとサーバーはそれぞれ、通信パスでメッセージの送信元および宛先の両方として同時に機能できます。

この項では、事前定義済の信頼できるメッセージング・ポリシーについて説明します。

WS-RMポリシーのプロパティ

表11-1は、WS-RMポリシーに設定できるプロパティを示しています。

表11-1 WS-RMポリシーのプロパティ

プロパティ名

説明

ポリシーで使用されるデフォルト値

使用可能な値

DeliveryAssurance

配信の保証。次のように配信の保証タイプを定義します。

- At Most Once: メッセージが最大1回配信されます。メッセージが重複することはありません。

- At Least Once: すべてのメッセージが、少なくとも1回配信されます。メッセージによっては、2回以上配信されることもあります。

- Exactly Once: すべてのメッセージが1回のみ配信されます。メッセージが重複することはありません。

- メッセージは送信時の順序で配信されます。この配信の保証は、前述の3つの保証のいずれかと組合せることができます。

InOrder

InOrder

AtLeastOnce

AtLeastOnceInOrder

ExactlyOnce

ExactlyOnceInOrder

AtMostOnce

AtMostOnceInOrder

StoreType

メッセージ・ストアのタイプ。

InMemory

InMemory

FileSystem(完全にはサポートされていません)

JDBC

StoreName

メッセージ・ストアの名前。

oracle

文字列値

jdbc-connection-name

JDBCデータ・ソースへのJNDI参照。このフィールドは、StoreTypeがJDBCに設定されている場合のみ有効です。この値は、jdbc-connection-urlより優先されます。ユーザー名とパスワードは、両方存在する場合に使用されます。

jdbc/MessagesStore

有効なJDBCストア

InactivityTimeout

特定のWS-ReliableMessagingシーケンスに関連付けられたメッセージ交換の間隔の許容時間(ミリ秒単位)。この値に達すると、シーケンスは自動的に終了し、破棄されます。

600000

時間(ミリ秒単位)

BaseRetransmissionInterval

メッセージを送信してからメッセージの確認を受信しない場合にメッセージを再送するまでのソース・エンドポイントの待機時間(ミリ秒単位)。

3000

時間(ミリ秒単位)

oracle/wsrm10_policy

このポリシーは、Webサービスの信頼できるメッセージング・プロトコルのバージョン1.0のサポートを提供します。このポリシーは、SOAPベースのすべてのクライアントまたはエンドポイントに添付できます。

Webサービス・クライアントの設定方法

Webサービス・クライアントは、実行時にWSDLポリシー・アサーションを自動的に検出して使用し、クライアントで通知済バージョンのWS-RMを有効にします。

設計時のWebサービス・クライアントの設定方法

マルチメッセージ・シーケンスの場合、クライアント・コードには、シーケンス境界を区切るメソッドの明示的な呼び出しが含まれている必要があります。含まれていない場合、各メッセージは独自のシーケンスでラップされます。

クライアントを編集して、サービスに送信されるメッセージの信頼できるメッセージング・セッションを有効にします。oracle.webservices.rm.client.RMSessionLifecycleインタフェースは、WS-RMシーケンス境界を区切るメカニズムをクライアントに提供します。

例11-8に、サンプルのWS-RMクライアント・コードを示します。このコードでは、新しいTestServiceが作成されます。クライアントがサービスと通信するときに使用されるTestPortが取得されます。ポート・オブジェクトがRMSessionLifecycleオブジェクトにキャストされ、信頼できるメッセージング・セッションがそのオブジェクト上で開かれます(openSession)。メッセージがサービスに送信されると、セッションは終了します(closeSession)。

例11-8 サンプルのWS-Rmクライアント・コード

public class ClientServlet extends HttpServlet {

public void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {

int num1 =  Integer.parseInt(request.getParameter("num1"));
int num2 =  Integer.parseInt(request.getParameter("num2"));
String outputStr = null;

TestService service = new TestService();
Test port = service.getTestPort();

try {
((RMSessionLifecycle) port).openSession();
outputStr = port.hello(inputStr);
} catch (Exception e) {
e.printStackTrace();
outputStr = e.getMessage();
} finally {
((RMSessionLifecycle) port).closeSession();
response.getOutputStream().write(outputStr.getBytes());
}
}
}

Oracle Platform Security Services(OPSS)の設定方法

追加の構成は必要ありません。

oracle/wsrm11_policy

このポリシーは、Webサービスの信頼できるメッセージング・プロトコルのバージョン1.1のサポートを提供します。このポリシーは、SOAPベースのすべてのクライアントまたはエンドポイントに添付できます。

Webサービス・クライアントの設定方法

Webサービス・クライアントは、実行時にWSDLポリシー・アサーションを自動的に検出して使用し、クライアントで通知済バージョンのWS-RMを有効にします。

設計時のWebサービス・クライアントの設定方法

マルチメッセージ・シーケンスの場合、クライアント・コードには、シーケンス境界を区切るメソッドの明示的な呼び出しが含まれている必要があります。含まれていない場合、各メッセージは独自のシーケンスでラップされます。

クライアントを編集して、サービスに送信されるメッセージの信頼できるメッセージング・セッションを有効にします。oracle.webservices.rm.client.RMSessionLifecycleインタフェースは、WS-RMシーケンス境界を区切るメカニズムをクライアントに提供します。

例11-8に、サーブレット・クライアントを示します。このコードでは、新しいTestServiceが作成されます。クライアントがサービスと通信するときに使用されるTestPortが取得されます。ポート・オブジェクトがRMSessionLifecycleオブジェクトにキャストされ、信頼できるメッセージング・セッションがそのオブジェクト上で開かれます(openSession)。メッセージがサービスに送信されると、セッションは終了します(closeSession)。

Oracle Platform Security Services(OPSS)の設定方法

追加の構成は必要ありません。

管理ポリシーと構成手順

この項では、事前定義済の管理ポリシーについて説明します。

oracle/log_policy

このポリシーを使用すると、メッセージ・ログにリクエスト、レスポンスおよびフォルト・メッセージが送信されます。

このポリシーには、oracle/log_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/security_log_template」を参照してください。

設定

表C-120を参照してください。

構成プロパティ

定義されていません。

Webサービスまたはクライアントの設定方法

次のカテゴリに基づいて、リクエストとレスポンスのメッセージを記録するかどうかを決定します。

- すべて

- ヘッダー

- SOAP本文

- SOAPエンベロープ

Oracle Platform Security Services(OPSS)の設定方法

メッセージは、ドメインのメッセージ・ログに記録されます。

メッセージ・ログを表示する手順

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、記録されたメッセージを表示するドメインを表示します。ドメインを選択します。

2. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「ログ」→「ログ・メッセージの表示」をクリックします。

Webサービスおよびクライアントへのポリシー・ファイルの添付

Webサービス・クライアントとWebサービスにポリシーを添付する方法には、クライアントおよびサービスの設計時に行う方法と、デプロイ後に行う方法の2つがあります。

デプロイ後、Oracle Enterprise Manager Fusion Middleware Controlを使用して、SOAコンポジット、ADF、WebCenterアプリケーションにセキュリティ・ポリシーと管理ポリシーを添付します。この方法は、Webサービス・セキュリティをセキュリティ管理者の制御に移行するため、最も強力で柔軟性があります。

設計時は、Oracle JDeveloperにより、ADFおよびSOAクライアント・ポリシー添付が自動化されます。また、プログラムによってOracle WSMセキュリティおよび管理ポリシーをアプリケーションに添付することもできます。これを行うには、通常、Oracle JDeveloperなどの任意のIDEを使用します。

どちらの方法でも、クライアント側ポリシーは、Webサービスに関連付けられたポリシーと同等のものである必要があります。2つのファイルが異なり、各ファイルに含まれるアサーションの競合が発生している場合、Webサービスの操作を起動すると、エラーが返されます。

たとえば、oracle/wss_http_token_over_ssl_service_policyポリシーで相互認証が必要になる場合、クライアント・ポリシーを相互認証用に設定する必要もあります。

事前定義済ポリシーの場合、クライアントとWebサービス・ポリシーの両方が含まれます。新しいポリシーを作成する場合、「Webサービス・ポリシーの作成」の説明に従ってポリシーを生成すると、クライアント・ポリシーがサービス・ポリシーと連携する可能性が高くなります。

クライアントのプログラムによる構成オーバーライドの使用

「オーバーライド可能なクライアント・ポリシーの添付」では、ポリシー構成のオーバーライド機能について説明しています。この機能では、ポリシーを添付するときに特定のWebサービス・クライアントの構成情報を指定できます。ただし、この構成情報を設計時にプログラムによってオーバーライドすることもできます。この項では、クライアントのプログラムによるオーバーライドについて説明します。

表11-2に、プログラムによる構成のオーバーライドを利用して特定のポリシーに設定できるプロパティを示します。例11-9に、プログラムからこれらのプロパティを設定する例を示します。

表11-2 プログラムによる構成のオーバーライドを利用して設定されるプロパティ

プロパティのリスト

説明

適用対象のポリシー

oracle.wsm.security.util.SecurityConstants.ClientConstants.CALLER_PRINCIPAL_NAME

ktpassコマンドを使用して生成されたクライアントのプリンシパル名で、kerberosトークンの生成先のユーザー名にマップされます。<username>@<REALM NAME>の形式を使用します。

注意: keytab.locationとcaller.principal.nameは、Java EEアプリケーションのクライアント・アイデンティティの伝搬で必要です。

wss11_kerberos_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_CSF_KEY

クライアントで資格証明ストアが使用可能な場合に、資格証明ストアで指定されたcsf-keyに対応するユーザー名とパスワードを取得します。

このプロパティを使用するかわりに、例11-9に示すように、ユーザー名とパスワードを明示的に設定することもできます。

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss11_username_token_with_message_protection_client_policy

oracle/wss_username_token_client_policy

oracle/wss_username_token_over_ssl_client_policy

oracle/wss10_username_id_propagation_with_msg_protection_client_policy

oracle/wss_http_token_client_policy

oracle/wss_http_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_KEYSTORE_LOCATION

このプロパティは、キーストア・ファイルの場所を設定します。この値を指定すると、静的に構成された値がオーバーライドされます。タイプ: java.lang.String

oracle/wss10_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_x509_token_with_message_protection_client_policy

oracle/wss11_kerberos_token_with_message_protection_client_policy

oracle/wss11_message_protection_client_policy

oracle/wss11_saml_token_with_message_protection_client_policy

oracle/wss11_username_token_with_message_protection_client_policy

oracle/wss11_x509_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_KEYSTORE_TYPE

このプロパティは、キーストア・ファイルのタイプを設定します。この値を指定すると、静的に構成された値がオーバーライドされます。タイプ: java.lang.String デフォルトはJKSです。KSSも使用できます。

oracle/wss10_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_x509_token_with_message_protection_client_policy

oracle/wss11_kerberos_token_with_message_protection_client_policy

oracle/wss11_message_protection_client_policy

oracle/wss11_saml_token_with_message_protection_client_policy

oracle/wss11_username_token_with_message_protection_client_policy

oracle/wss11_x509_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_KEYSTORE_PASSWORD

このプロパティは、キーストア・ファイルのパスワードを設定します。この値を指定すると、静的に構成された値がオーバーライドされます。タイプ: java.lang.String

oracle/wss10_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_x509_token_with_message_protection_client_policy

oracle/wss11_kerberos_token_with_message_protection_client_policy

oracle/wss11_message_protection_client_policy

oracle/wss11_saml_token_with_message_protection_client_policy

oracle/wss11_username_token_with_message_protection_client_policy

oracle/wss11_x509_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_SIG_KEY_ALIAS

このプロパティは、デジタル署名に使用されるキーストア内のキーの別名を設定します。この値を指定すると、静的に構成された値がオーバーライドされます。タイプ: java.lang.String

WSS11ポリシーの場合、このプロパティは相互認証の場合にのみ使用されます。

oracle/wss10_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_x509_token_with_message_protection_client_policy

oracle/wss11_kerberos_token_with_message_protection_client_policy

oracle/wss11_message_protection_client_policy

oracle/wss11_saml_token_with_message_protection_client_policy

oracle/wss11_username_token_with_message_protection_client_policy

oracle/wss11_x509_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_SIG_KEY_PASSWORD

このプロパティは、デジタル署名に使用されるキーストア内のキーの別名に対応するパスワードを設定します。この値を指定すると、静的に構成された値がオーバーライドされます。タイプ: java.lang.String

WSS11ポリシーの場合、このプロパティは相互認証の場合にのみ使用されます。

oracle/wss10_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_x509_token_with_message_protection_client_policy

oracle/wss11_kerberos_token_with_message_protection_client_policy

oracle/wss11_message_protection_client_policy

oracle/wss11_saml_token_with_message_protection_client_policy

oracle/wss11_username_token_with_message_protection_client_policy

oracle/wss11_x509_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_ENC_KEY_ALIAS

このプロパティは、サービスからのレスポンスの復号化に使用されるキーストア内のキーの別名を設定します。この値を指定すると、静的に構成された値がオーバーライドされます。タイプ: java.lang.String

WSS11ポリシーでは使用されません。

oracle/wss10_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_x509_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_ENC_KEY_PASSWORD

このプロパティは、復号化に使用されるキーストア内のキーのパスワードを設定します。この値を指定すると、静的に構成された値がオーバーライドされます。タイプ: java.lang.String

WSS11ポリシーでは使用されません。

oracle/wss10_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_x509_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_RECIPIENT_KEY_ALIAS

このプロパティは、アウトバウンド・メッセージ・タイプの暗号化に使用される受信者の公開鍵の別名を設定します。この値を指定すると、静的な構成値がオーバーライドされます。タイプ: java.lang.String

oracle/wss10_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_x509_token_with_message_protection_client_policy

oracle/wss11_kerberos_token_with_message_protection_client_policy

oracle/wss11_message_protection_client_policy

oracle/wss11_saml_token_with_message_protection_client_policy

oracle/wss11_username_token_with_message_protection_client_policy

oracle/wss11_x509_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_SUBJECT_PRECEDENCE

SAMLクライアント・ポリシーの場合、サブジェクトではなく、クライアント指定のユーザー名を使用する必要があるときは、このプロパティをfalseに設定します。

「SAMLの構成」に示されているすべてのSAMLクライアント・ポリシーに適用されます。

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_SAML_ISSUER_NAME

このプロパティは、SAMLメカニズムを使用して保護されているサービスにアクセスしようとする場合に、SAML発行者名を設定します。この値を指定すると、静的な構成値がオーバーライドされます。タイプ: java.lang.String

「SAMLの構成」に示されているすべてのSAMLクライアント・ポリシーに適用されます。

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_INCLUDE_USER_ROLES

このプロパティは、SAMLアサーションのユーザー・ロールを設定します。

「SAMLの構成」に示されているすべてのSAMLクライアント・ポリシーに適用されます。

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_SAML_ASSERTION_FILE_NAME

SAML HOKポリシーの場合、このファイルにはアサーションが含まれます。

「SAMLの構成」に示されているすべてのSAMLクライアント・ポリシーに適用されます。

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_KERBEROS_SERVICE_PRINCIPAL

このプロパティは、Kerberosメカニズムを使用して保護されているサービスにアクセスしようとする場合の、サービス・プリンシパル名を設定します。この値を指定すると、静的な構成値がオーバーライドされます。タイプ: java.lang.String

oracle/wss11_kerberos_token_with_message_protection_client_policy

BindingProvider.USERNAME_PROPERTY (javax.xml.ws.security.auth.username)

認証のユーザー名

ユーザー名ポリシー、およびアイデンティティ切替えポリシーを含むSAMLポリシーによって使用されます。

ユーザー名クライアント・ポリシーの場合は、次の2つのオプションがあります。

- csf-key

- BindingProvider.USERNAME_PROPERTYおよびBindingProvider.PASSWORDproperty。

アイデンティティ切替えポリシーを含むSAMLクライアント・ポリシーの場合は、BindingProvider.USERNAME_PROPERTYを使用します。

BindingProvider.PASSWORD_PROPERTY (javax.xml.ws.security.auth.password)

認証のパスワード。

ユーザー名クライアント・ポリシーによって使用されます。

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_STS_AUTH_X509_CSF_KEY

STSに対する認証用のX509証明書を構成する場合に使用します。

STS構成ポリシー内のpolicy-reference-uriがx509ベースのポリシーを指している場合は、sts.auth.x509.csf.keyプロパティを構成して、STSに対する認証用のX509証明書を指定します。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_STS_AUTH_USER_CSF_KEY

STSに対する認証用のユーザー名/パスワードを構成する場合に使用します。

STS構成ポリシー内のpolicy-reference-uriがユーザー名ベースのポリシーを指している場合は、sts.auth.user.csf.keyプロパティを構成して、STSに対する認証用のユーザー名/パスワードを指定します。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_STS_AUTH_ON_BEHALF_OF_CSF_KEY

オプションのプロパティ。代理エンティティの構成で使用します。存在する場合、サブジェクト(存在する場合)より優先されます。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.ON_BEHALF_OF

オプションのプロパティ。リクエストが別のエンティティの代理かどうかを指定するには、このプロパティをオーバーライドします。このフラグのデフォルト値はtrueです。trueに設定され、sts.auth.on.behalf.of.csf.keyが構成されている場合、これが優先されて、CSFキーを使用して確立されたアイデンティティがかわりに送信されます。

それ以外の場合、サブジェクトがすでに確立されていれば、サブジェクトのユーザー名がonBehalfOfトークンとして送信されます。

sts.auth.on.behalf.of.csf.keyが設定されておらず、サブジェクトも存在しない場合、on.behalf.ofは、他のエンティティではなくリクエスタのトークン交換として処理されます。リクエスト内のonBehalfOf要素には含まれません。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.STS_KEYSTORE_RECIPIENT_ALIAS

STSの公開鍵の別名。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.ATTESTING_MAPPING_ATTRIBUTE

アテスト・エンティティの表現で使用されるマッピング属性。現在サポートされているのはDNのみです。この属性は、送信者保証およびメッセージ保護ユースケースにのみ適用されます。SAML over SSLポリシーには適用されません。

wss10_saml20_token_with_message_protection_client_policy

wss11_saml20_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.SAML_AUDIENCE_URI

リライイング・パーティをカンマ区切りのURIで表します。このフィールドではワイルドカードを使用できます。

wss10_saml_token_client_policy

wss10_saml20_token_client_policy

wss_saml_token_bearer_over_ssl_client_policy

wss_saml20_token_bearer_over_ssl_client_policy

wss_saml_token_over_ssl_client_policy

wss_saml20_token_over_ssl_client_policy

wss10_saml_token_with_message_protection_client_policy

wss10_saml20_token_with_message_protection_client_policy

wss11_saml_token_with_message_protection_client_policy

wss11_saml20_token_with_message_protection_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_OAUTH2_CLIENT_CSF_KEY

クライアントのユーザー名とパスワードを取得するために使用するキーを指定する必須プロパティ。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_AUDIENCE_URI

オーディエンス制限。次の条件がサポートされています。

- このプロパティを設定しない場合、サービスURLがオーディエンスURIとして使用されます。

- このプロパティをNONE(大/小文字の区別なし)に設定した場合、オーディエンスURIはnullに設定されます。

- このプロパティをNONE以外の値に設定した場合、オーディエンスURIはこの値に設定されます。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_AUTHORIZATION_CODE

3-legged OAuth2ユースケースの認可コードを渡すためのオプションのプロパティ。(このリリースではサポートされていません。)

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_FEDERATED_CLIENT_TOKEN

オプションのプロパティです。デフォルトでは、oauth2.client.csf.keyおよびkeystore.sig.csf.keyプロパティを使用してクライアントのJWTトークンが生成されます。

falseに設定すると、oauth2.client.csf.keyを使用してOAuth2サーバーへのクライアント・リクエストで送信する認可ヘッダーが生成されます。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_INCLUDE_CERTIFICATE

trueの場合、署名証明書と信頼できる証明書チェーン(CAにより発行された証明書の場合)をJWTトークン要求に含めます。JWTトークンのサイズが大きくなりますが、サービス側キーストアに証明書および証明書チェーンをインポートする必要はありません。

falseの場合、証明書の拇印および別名のみをJWTトークンに含めます。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_ISSUER_NAME

ローカルに生成されるJWTトークン(iss:claim)で使用される発行者名を指定するオプションのプロパティ。デフォルトは、www.oracle.comです。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_INCLUDE_USER_ROLES

サブジェクトからのユーザー・ロールを要求としてJWTトークンに含めるかどうかを指定するオプションのプロパティ。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_PROPAGATE_IDENTITY_CONTEXT

アイデンティティ・コンテキスト情報をJWTトークンで要求として伝播するかどうかを指定するオプションのプロパティ。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_REDIRECT_URI

アクセス権が付与または拒否された後、ユーザー・エージェントをクライアントにリダイレクトするためにOAuthサーバーが使用するリダイレクトURIを指定するオプションのプロパティ。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_SCOPE

OAuth2リクエストのスコープ(現状のまま)を指定するオプションのプロパティ。存在する場合、OAuth2トークン・リクエストにスコープとこの値を含めます。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_TOKEN_URI

OAuth2サーバーのトークン・エンドポイントを指定する必須プロパティ。

oauth2_config_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_USER_ATTRIBUTES

ユーザー属性を要求としてJWTトークンに挿入するかどうかを指定するオプションのプロパティ。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_USER_TENANT_NAME

Oracle Cloud用に予約済。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_CSF_MAP

CSF別名を含む資格証明ストア内のOracle WSMマップ。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

oracle.wsm.security.util.SecurityConstants.ClientConstants.WSM_SIG_CSF_KEY

ローカルに作成されるJWTトークンの署名のためのOracle WSMキーストアからのテナント・キーを指定するオプションのプロパティ。

http_oauth2_token_client_policy

http_oauth2_token_over_ssl_client_policy

構成のオーバーライドの例

例11-9に、キーストアとユーザー名またはパスワードをオーバーライドするWebサービス・クライアントの例を示します。

オーバーライドした構成プロパティをクリアするには、空の文字列を設定します。

クリアする前に、他のポリシーで同じプロパティを使用している可能性がないかを確認します。プロパティはクライアント固有ですが、同じプロパティを使用する同一クライアントに複数のポリシーが添付されている場合があります。

例11-9 キーストアとユーザー名またはパスワードのオーバーライド

package example;
import oracle.wsm.security.utils.SecurityConstants;
public class MyClientJaxWs {
public static void main(String[] args) {
try {
URL serviceWsdl = new URL("http://localhost/myApp/myPort?WSDL");
QName serviceName = new QName("MyNamespace", "MyService");
Service service = Service.create(serviceWsdl, serviceName);
MyInterface proxy = service.getPort(MyInterface.class);
RequestContext context = ((BindingProvider)proxy).getRequestContext();
context.put(oracle.webservices.ClientConstants.CLIENT_CONFIG, new File( "c:/dat/client-pdd.xml" ) );
context.put(BindingProvider.USERNAME_PROPERTY, getCurrentUsername() );
context.put(BindingProvider.PASSWORD_PROPERTY, getCurrentPassword() );
context.put(SecurityConstants.ClientConstants.WSS_KEYSTORE_LOCATION, "c:/mykeystore.jks");
context.put(SecurityConstants.ClientConstants.WSS_KEYSTORE_PASSWORD, "keystorepassword" );
context.put(SecurityConstants.ClientConstants.WSS_KEYSTORE_TYPE, "JKS" );
context.put(SecurityConstants.ClientConstants.WSS_SIG_KEY_ALIAS, "your signature alias" );
context.put(SecurityConstants.ClientConstants.WSS_SIG_KEY_PASSWORD, "your signature password" );
context.put(SecurityConstants.ClientConstants.WSS_ENC_KEY_ALIAS, "your encryption alias" );
context.put(SecurityConstants.ClientConstants.WSS_ENC_KEY_PASSWORD, "your encryption password" );
System.out.println(proxy.myOperation("MyInput"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

例11-9では、参照されているc:/dat/client-pdd.xmlの内容は次のようになる場合があります。

! -- The contents of c:/dat/client-pdd.xml file mentioned above -- >
<oracle-webservice-clients>
<webservice-client>
<port-info>
<policy-references>
<policy-reference uri="management/Log_Msg_Policy" category="management"/>
<policy-reference uri="oracle/wss10_username_token_with_message_protection_client_policy" category="security"/>
</policy-references>
</port-info>
</webservice-client>
</oracle-webservice-clients>

ポリシーに対するローカルの最適化の構成

Oracle WSMでは、コンポジットからコンポジットを起動できるようにするSOAのローカルの最適化機能がサポートされています。この機能では、一方のコンポジットの参照で同じコンテナで実行しているもう一方のコンポジットにバインディングするWebサービスを指定します。ローカルの最適化により、ランタイム時のHTTPスタックおよびSOAPと正規化されたメッセージの変換を回避できるようになります。

このSOAのローカルの最適化機能については、Oracle Fusion Middleware管理者ガイド for Oracle SOA SuiteおよびOracle Business Process Management Suiteのコンポジット間の起動でのポリシー添付とローカルの最適化に関する項で説明されており、ここには要約を記載します。

ローカルの最適化を使用する場合のコントロール

ローカルの最適化機能をコントロールするには次の2通りの方法があり、それぞれが異なるスコープを持ちます。

- composite.xmlファイルのバインディング・セクションにoracle.webservices.local.optimizationプロパティを追加する方法。使用可能な値は、trueとfalseの2つです。

- true -- 表11-3に示すように、ローカルの最適化はポリシーでサポートされる場合に使用され、「ポリシー・レベルの最適化コントロールの構成」で説明されているように、ポリシー・レベルのコントロールを構成して使用されます。
最適化が使用される場合、ポリシーは適用されません。

- false -- ポリシー・レベルのコントロールの構成方法や表11-3に示すローカルの最適化プロパティのデフォルトのポリシー設定に関係なく、ローカルの最適化は使用されません。
この設定ではポリシーが強制的に適用されます。

コンポジット・レベルのプロパティは、ポリシー・レベルの構成とは無関係です。つまり、ポリシーが添付されているかどうかに関係なく最適化を無効にする場合は、コンポジット・レベルのプロパティをfalseに設定します。

composite.xmlファイルのバインディング・セクションでoracle.webservices.local.optimizationプロパティを追加して、ポリシーのローカルの最適化設定をオーバーライドする方法の詳細は、「コンポジット間の起動でのポリシー添付とローカルの最適化」を参照してください。

- 「ポリシー・レベルの最適化コントロールの構成」で説明されているように、ポリシーの最適化コントロールを構成する方法。ポリシー・レベルのプロパティは、コンポジット・レベルのプロパティによってオーバーライドされる場合を除いて、ポリシーが使用されるときには必ず最適化をコントロールします。

ポリシー・レベルの最適化コントロールの構成

注意:
Webサービスに添付されたポリシーがある場合、この最適化を使用すると、そのポリシーは起動されないことがあります。そのため、ポリシーごとに、ローカルの最適化を使用するかどうかを決定する必要があります。
事前定義済のポリシーの最適化設定は、変更しないことをお薦めします。これは、変更すると、ポリシーが起動せず、予期しない動作が発生する可能性があるためです。

図11-4に示すように、最適化のコントロールは、ポリシーを作成または編集するときに使用できます。

図11-4 ポリシー作成時のローカルの最適化コントロール

「ローカルの最適化」コントロールには、「オン」、「オフ」、「アイデンティティの確認」の3つの設定があります。

- オン -- 最適化が有効になり、ポリシーは適用されません。

- オフ」 -- 最適化は無効になり、ポリシーが適用されます。リクエストは通常のWS/SOAP/HTTPプロセスに従って処理されます。

- アイデンティティの確認 -- JAASサブジェクトが現在のスレッドにすでに存在し、認証がすでに成功したことを示している場合にのみ最適化します。存在しない場合は、通常のWS/SOAP/HTTPプロセスが実行されます。

表11-3に、事前定義済ポリシーを示し、各ポリシーがローカルの最適化機能を実装する方法について説明します。

表11-3 事前定義済ポリシーのデフォルトの最適化設定

ポリシー名

デフォルトの最適化設定

oracle/wsaddr10_policy

オン

oracle/binding_authorization_denyall_policy

常に「オフ」

oracle/binding_authorization_permitall_policy

常に「オフ」

oracle/binding_permission_authorization_policy

常に「オフ」

oracle/component_authorization_all_policy

バインディングには適用されません

oracle/log_policy

オン

oracle/no_addressing_policy

オフ

oracle/no_authentication_client_policy

オフ

oracle/no_authentication_service_policy

オフ

oracle/no_authorization_component_policy

オフ

oracle/no_authorization_service_policy

オフ

oracle/no_messageprotection_client_policy

オフ

oracle/no_messageprotection_service_policy

オフ

oracle/no_mtom_policy

オフ

oracle/no_wsrm_policy

オフ

oracle/sts_trust_config_client_policy

オフ

oracle/sts_trust_config_service_policy

オフ

oracle/whitelist_authorization_policy

常に「オフ」

oracle/wsaddr_policy

オン

oracle/wsmtom_policy

オン

oracle/wsrm10_policy

オン

oracle/wsrm11_policy

オン

oracle/wss_http_token_client_policy

オフ

oracle/wss_http_token_service_policy

オフ

oracle/wss_http_token_over_ssl_client_policy

オフ

oracle/wss_http_token_over_ssl_service_policy

オフ

oracle/wss11_kerberos_token_client_policy

オフ

oracle/wss11_kerberos_token_service_policy

オフ

oracle/wss_username_token_client_policy

オフ

oracle/wss_username_token_service_policy

オフ

oracle/wss_username_token_over_ssl_client_policy

オフ

oracle/wss_username_token_over_ssl_service_policy

オフ

oracle/wss10_message_protection_client_policy

オン

oracle/wss10_message_protection_service_policy

オン

oracle/wss10_username_token_with_message_protection_client_policy

オフ

oracle/wss10_username_token_with_message_protection_service_policy

オフ

oracle/wss10_x509_token_with_message_protection_client_policy

オフ

oracle/wss10_x509_token_with_message_protection_service_policy

オフ

oracle/wss10_saml_token_with_message_protection_client_policy

アイデンティティの確認

oracle/wss10_saml_token_with_message_protection_service_policy

アイデンティティの確認

oracle/wss11_saml_token_with_message_protection_client_policy

アイデンティティの確認

oracle/wss11_saml_token_with_message_protection_service_policy

アイデンティティの確認

oracle/wss11_saml20_token_with_message_protection_client_policy

アイデンティティの確認

oracle/wss11_saml20_token_with_message_protection_service_policy

アイデンティティの確認

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

オフ

oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy

オフ

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

オフ

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

オフ

oracle/wss10_saml_token_with_message_integrity_client_policy

アイデンティティの確認

oracle/wss10_saml_token_with_message_integrity_service_policy

アイデンティティの確認

oracle/wss10_saml20_token_with_message_protection_client_policy

アイデンティティの確認

oracle/wss10_saml20_token_with_message_protection_service_policy

アイデンティティの確認

oracle/wss10_saml_token_client_policy

アイデンティティの確認

oracle/wss10_saml_token_service_policy

アイデンティティの確認

oracle/wss10_saml20_token_client_policy

アイデンティティの確認

oracle/wss10_saml20_token_service_policy

アイデンティティの確認

oracle/wss10_username_id_propagation_with_msg_protection_client_policy

アイデンティティの確認

oracle/wss10_username_id_propagation_with_msg_protection_service_policy

アイデンティティの確認

oracle/wss11_message_protection_client_policy

オン

oracle/wss11_message_protection_service_policy

オン

oracle/wss11_username_token_with_message_protection_client_policy

オフ

oracle/wss11_username_token_with_message_protection_service_policy

オフ

oracle/wss11_x509_token_with_message_protection_client_policy

オフ

oracle/wss11_x509_token_with_message_protection_service_policy

オフ

oracle/wsrm10_policy

オン

oracle/wsrm11_policy

オン

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

オフ

oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy

オフ

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

アイデンティティの確認

oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

アイデンティティの確認

wss11_saml_or_username_token_with_message_protection_client_policy

アイデンティティの確認

wss11_saml_or_username_token_with_message_protection_service_policy

アイデンティティの確認

wss11_saml_token_identity_switch_with_message_protection_client_policy

オフ

wss10_saml_hok_token_with_message_protection_client_policy

オフ

wss10_saml_hok_token_with_message_protection_service_policy

オフ

oracle/wss_saml_or_username_token_over_ssl_service_policy

アイデンティティの確認

oracle/wss_saml_or_username_token_service_policy

アイデンティティの確認

wss_saml_token_over_ssl_client_policy

アイデンティティの確認

wss_saml_token_over_ssl_service_policy

アイデンティティの確認

wss_saml20_token_over_ssl_client_policy

アイデンティティの確認

wss_saml20_token_over_ssl_service_policy

アイデンティティの確認

wss_saml_token_bearer_over_ssl_client_policy

アイデンティティの確認

wss_saml_token_bearer_over_ssl_service_policy

アイデンティティの確認

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

オフ

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

オフ

wss_saml20_token_bearer_over_ssl_client_policy

アイデンティティの確認

wss_saml20_token_bearer_over_ssl_service_policy

アイデンティティの確認

wss11_kerberos_token_with_message_protection_client_policy

オフ

wss11_kerberos_token_with_message_protection_service_policy

オフ

wss11_kerberos_token_with_message_protection_basic128_client_policy

オフ

wss11_kerberos_token_with_message_protection_basic128_service_policy

オフ

Oracle Entitlements Serverを使用したファイングレイン認可の構成

「Oracle Entitlements Serverでのファイングレイン認可の理解に記載されているように、Oracle Entitlements Server (OES)は、エンタープライズ全体のアプリケーションおよびサービスをエンドツーエンドで保護するために使用できるファイングレイン認可サービスです。OESをOracle WSMと統合し、ファイングレイン認可のためにOracle WSMとともにOESを使用できます。

「Oracle Entitlements Serverでのファイングレイン認可の理解」には、リソースの処理方法の説明も含めてOESの統合を構成するために必要な概要情報が記載されています。また、その項では作業の分担についても説明しています。OESコンソールでOESポリシーおよび責任を構成し、Fusion Middleware Control、WLSTまたはJDeveloperなどのツールでOracle WSM OESポリシーを構成します。まだ読んでいない場合は、まずその項を読んでください。

この項では、OES統合の構成方法を説明しており、内容は次のとおりです。

- 「OES統合構成の前提条件」

- 「責任の属性の決定」

- 「ファイングレイン認可のためのOESポリシーの構成」

- 「大まかな認可のためのOESポリシーの構成」

- 「マスキングのためのOESポリシーの構成」

- 「Oracle WSM OESポリシーの添付」

OES統合構成の前提条件

Oracle WSMインストールに加えて、既存のOESコンソール(バージョン11.1.2.2.0以上)が構成されている必要があります。OESは、Oracle WSMと同じマシン上の同じOracle Middlewareホームにインストールする必要があります。

OESはOracle Identity and Access Management Suiteの一部で、次のドキュメントで説明されています。この項は、これらの内容と、OESの構成および管理を理解していることを前提としています。

- インストール方法の詳細は、『Oracle Identity and Access Managementインストレーション・ガイド』のOracle Entitlements Serverのインストールおよび構成に関する項を参照してください。

- 構成および管理の詳細は、『Oracle Entitlements Server管理者ガイド』を参照してください。

責任の属性の決定

属性の処理方法に関する項で説明されているように、OESではOESコンソールで責任を作成し、複数の属性名と値のペアを設定できます。属性は、XPath、HTTPヘッダー、メッセージ・コンテキスト、定数(名前/値)、さらに認可リクエストで常に渡される静的属性のセット(serviceURLなど)から取得できます。

属性の情報を決定する最も簡単な方法は、アプリケーションをデプロイすることです。その後、SOAPリクエストまたはWSDLを確認し、必要な属性を決定します。2つの方法があります。

- アプリケーションをデプロイし、JDeveloper (または別のメカニズム)を使用してSOAPメッセージを確認して必要なものを決定します。

- アプリケーションをデプロイし、デプロイしたアプリケーションのWSDLを確認して必要なものを決定します。
「WebサービスWSDLドキュメントの表示」に記載されているように、Webサービス・エンドポイントのWSDLドキュメントを表示できます。

ファイングレイン認可のためのOESポリシーの構成

「OESの統合: 全体像」で説明しているように、OESに対して認可の決定を問い合せるには、2段階の方法(ファイングレイン)と1段階の方法(大まか)の2通りがあります。この項では、ファイングレイン認可用にOESポリシーを構成する方法を説明します。

使用する方法は、後でOracle WSMポリシーを割り当てるときに、oracle/binding_oes_authorization_policyおよびoracle/component_oes_authorization_policyポリシーのuse.single.step属性で指定します(「Oracle WSM OESポリシーの添付」を参照)。ただし、OES認可ポリシーを適切に構成できるよう、使用する方法を決定する必要があります。

2段階方式の方がよく使用されるシナリオのため、通常、責任定義用の認可ポリシーと実際の認可決定用の認可ポリシーという、2つのOES認可ポリシーを構成することになります。

OESコンソールを使用して、基本的なアーティファクト(アプリケーション、リソース・タイプなど)を作成し、リソース・タイプにアクションを追加し、リソースを定義します。

この節では、以下のトピックについて説明します。

- 「OESリソースの構成」

- 「責任を返す認可ポリシーの作成」

- 「実際のOES認可ポリシーの作成」

OESリソースの構成

OESリソース名は、「リソースのマッピングと命名」で説明しているように、Oracle WSMリソース名にマップする必要があります。Oracle WSMから認可コールを実行すると、リソース名がOESに渡されます。この名前はOESポリシーで定義されている名前と正確に一致する必要があります。

例として、次の特性を持つSOAP Webサービスをデプロイしたと仮定します。

- デプロイしたアプリケーションの名前はHelloWorldServiceEarです。

- リソース・タイプはWS_SERVICEです。

- Webサービス名はHelloWorldServiceです。

- Webサービスのポート名はSayHelloPortです。

- Webサービス内の操作はsayHelloおよびsayHelloBytesです。

OESリソースを構成するには、次の手順を実行します。

1. OESアプリケーション名を作成します。アプリケーション名は、デプロイしたアプリケーション名と一致する必要があります。たとえば、HelloWorldServiceEarです。

図11-5 OESアプリケーションの作成

2. OESリソース・タイプを作成します。リソース・タイプはWS_SERVICEである必要があります。

3. WS_SERVICEリソース・タイプにアクションを追加します。アクションはrequest.lookupおよびauthorizeである必要があります。

4. 「リソース階層のサポート」コントロールを設定します。
階層を使用することにより、ポリシーをリソース・レベルまたはサブリソース(操作)レベルで定義できます。

Oracle WSMリソース名には、サービス名/ポート名/操作名が含まれます。ただし、OESコンソールでリソースをこれだけ細かいレベルまで定義する必要はありません。たとえば、サービス名を持つポリシーを定義すると、そのサービスで始まるすべてのリソースに適用されます。または、サービス名とポート名が含まれるリソース名のポリシーを定義すると、このポリシーはそのサービスのすべての操作に適用されます。

「リソース階層のサポート」コントロールの設定方法は、『Oracle Entitlements Server管理者ガイド』のリソース・タイプの作成に関する項で説明されています。

5. リソースを作成します。リソース名には、サービス名、ポート名または操作名を含めることができます。

責任を返す認可ポリシーの作成

1. 「OESリソースの構成」で作成したアプリケーション用に、新規のOES認可ポリシーを作成します。
リソースにアクセスを許可するプリンシパル(ロールおよびユーザー)を追加します。

このポリシーによって保護するターゲット(アクションを含む)を追加します。

図11-6に、画面の例を示します。

図11-6 責任の認可ポリシーの追加

2. 「責任」タブで、責任を追加します。
属性の処理方法に関する項で説明されているように、OESではOESコンソールで責任を作成し、複数の属性名と値のペアを設定できます。

属性は、XPath、HTTPヘッダー、メッセージ・コンテキスト、定数(名前/値)、さらに認可リクエストで常に渡される静的属性のセット(serviceURLなど)から取得できます。これらの属性は、特定の命名規則に従う必要があります(「属性の処理方法」を参照)。

例として、表11-4の責任のサンプルから、図11-7がどのように導出され、責任が反映されているかを検討してください。

これらの特定の責任名を使用する必要があり、大/小文字の区別がある点に注意してください。属性名は自分で選択できます。属性の値はリクエストの値と一致する必要があります。

注意:
OESコンソールでは、責任名はアプリケーション全体で一意である必要があります。同じアプリケーションで同じタイプの責任を返すOESポリシーを複数定義する場合、同じ名前を使用できません。たとえば、xpath責任をpolicy1に追加した場合、同じアプリケーション内のpolicy2には追加できません。
責任名を一意にするために、次の命名規則を使用してください。

<attribute_type>:<obligation_name>

attribute_typeは、XPath、HTTPHeaderまたはMessageContextなどのサポートされているタイプのいずれかです。obligation_nameは一意になる任意の名前を使用できます。

アプリケーション内に、責任を返すOESポリシーが1つしか存在せず、競合の可能性がない場合は、属性タイプをそのまま責任名として使用できます。

表11-4 ポリシーの責任のサンプル

責任名

属性名

属性値

xpath

input

//env:Envelope//env:Body/ns3:sayHello/arg0/text()

namespace

saml=urn:oasis:names:tc:SAML:1.0:assertion

env=http://schemas.xmlsoap.org/soap/envelope/

ns3=http://helloworldservice.jaxws.wsmtest/

各属性名をカンマ(,)で区切ります。例: saml=...,env=..,ns3=

saml_issuer

//saml:Assertion/@Issuer

Httpheader

proxy_auth

Proxy-Authorization

authHeader

認可

messageContext

authMethod

oracle.wsm.internal.authentication.method

endpoint

oracle.j2ee.ws.runtime.endpoint-url

MyStaticOb

org

oracle

country

US

図11-7 認可ポリシーの責任のサンプル

実際のOES認可ポリシーの作成

実際の認可を実行するOES認可ポリシーを作成します。

このポリシーは、Oracle WSMによって提供された責任を使用して、実際の認可決定を行います。

さらに、Oracle WSMは、認証されたサブジェクト、ターゲット・リソースおよびリクエストされたアクション、および認可リクエストで常に渡される暗黙属性のセット(「表10-9 OESポリシーでサポートされる属性タイプ」を参照)をOESに渡します。認可ポリシーでは、認可決定にこれらの値を使用できます。時間、日付などのOESの定義済属性も使用できます。

実際の認可用のOES認可ポリシーを作成するには、次の手順を実行します。

1. 認可条件で使用する属性を追加します。これらは、「責任を返す認可ポリシーの作成」で作成した責任に一致する必要があります。

たとえば、「責任を返す認可ポリシーの作成」で作成した責任に一致させるには、次の属性を追加する必要があります。

- saml_issuer

- input

- authHeader

- endpoint

- country

注意:
暗黙属性を使用する場合(「表10-9 OESポリシーでサポートされる属性タイプ」を参照)、これらも追加する必要があります。
すべての属性と関数(カスタムおよび事前定義済の両方)は、アプリケーションの「拡張」ノードの下で、作成、収集、およびさらに管理されます。詳細は、『Oracle Entitlements Server管理者ガイド』の属性および関数の拡張としての管理に関する項を参照してください。

OESのナビゲーション・ペインで、認可ポリシーを作成しているアプリケーションを開きます。「拡張」を開き、「属性」を選択してアイコンをクリックし、新規属性を作成します。

ドロップダウン・コントロールから「保存して次を作成」を選択すると、1つのページから複数の属性を作成できます。

図11-8 新規属性の作成

2. すべての新規属性をリソース・タイプに追加します。

3. 「OESリソースの構成」で作成したアプリケーション用に、新規のOES認可ポリシーを作成します。
リソースにアクセスを許可するプリンシパル(ロールおよびユーザー)を追加します。

このポリシーによって保護するターゲット(アクションを含む)を追加します。

図11-9に、画面の例を示します。このポリシーは、ユーザーweblogicがHelloWorldServiceのsayHelloおよびsayHelloBytesリソースにアクセスする際に、認可を評価するように設定されています。

図11-9 実際の認可ポリシーの追加

4. このポリシーの「条件」タブで、「編集」をクリックして新規条件を作成します。
図11-10に示すように、手順1で追加した属性に基づいて条件を完成させます。

図11-10 条件の作成

この例では、次の場合、ポリシーはPERMITを返します。

- ユーザーがweblogicである。

- リソースがHelloWorldServiceEar/ HelloWorldService/SayHelloPortである。

- SAML発行者がwww.oracle.comである。

- リクエストSOAPメッセージの「Oracle WSM」は、//env:Body/ns3:sayHello/arg0です。

- 他の条件が満たされている。

5. 「Oracle WSM OESポリシーの添付」で説明しているように、Oracle WSM OESポリシーを割り当てます。

大まかな認可のためのOESポリシーの構成

「OESの統合: 全体像」で説明しているように、OESに対して認可の決定を問い合せるには、2段階の方法(ファイングレイン)と1段階の方法(大まか)の2通りがあります。この項では、大まかな認可用にOESポリシーを構成する方法を説明します。

使用する方法は、後でOracle WSMポリシーを割り当てるときに、oracle/binding_oes_authorization_policyおよびoracle/component_oes_authorization_policyポリシーのuse.single.step属性で指定します(「Oracle WSM OESポリシーの添付」を参照)。ただし、OES認可ポリシーを適切に構成できるよう、使用する方法を決定する必要があります。

この項では、大まかな認可について次のトピックを説明します。

- 「OESリソースの構成」

- 「実際のOES認可ポリシーの作成」

OESリソースの構成

OESリソース名は、「リソースのマッピングと命名」で説明しているように、Oracle WSMリソース名にマップする必要があります。Oracle WSMから認可コールを実行すると、リソース名がOESに渡されます。この名前はOESポリシーで定義されている名前と正確に一致する必要があります。

例として、次の特性を持つSOAP Webサービスをデプロイしたと仮定します。

- デプロイしたアプリケーションの名前はHelloWorldServiceEarです。

- リソース・タイプは常にWS_SERVICEです。

- Webサービス名はHelloWorldServiceです。

- Webサービスのポート名はSayHelloPortです。

- Webサービス内の操作はsayHelloおよびsayHelloBytesです。

OESリソースを構成するには、次の手順を実行します。

1. OESアプリケーション名を作成します。アプリケーション名は、デプロイしたアプリケーション名と一致する必要があります。たとえば、HelloWorldServiceEarです。

図11-11 OESアプリケーションの作成

2. OESリソース・タイプを作成します。リソース・タイプはWS_SERVICEである必要があります。

3. リソース・タイプにアクションを追加します。アクションはauthorizeである必要があります。

4. 「リソース階層のサポート」コントロールを設定します。
階層を使用することにより、ポリシーをリソース・レベルまたはサブリソース(操作)レベルで定義できます。

Oracle WSMリソース名には、サービス名/ポート名/操作名が含まれます。ただし、OESコンソールでリソースをこれだけ細かいレベルまで定義する必要はありません。たとえば、サービス名を持つポリシーを定義すると、そのサービスで始まるすべてのリソースに適用されます。または、サービス名とポート名が含まれるリソース名のポリシーを定義すると、このポリシーはそのサービスのすべての操作に適用されます。

「リソース階層のサポート」コントロールの設定方法は、『Oracle Entitlements Server管理者ガイド』のリソース・タイプの作成に関する項で説明されています。

5. リソースを作成します。リソース名は、リソース階層をどのように活用するかに合せ、service name/port name/operation nameの形式である必要があります。

実際のOES認可ポリシーの作成

実際の認可を実行するOES認可ポリシーを作成します。

Oracle WSMは、認証されたサブジェクト、ターゲット・リソースおよびリクエストされたアクション、および認可リクエストで常に渡される暗黙属性のセット(「表10-9 OESポリシーでサポートされる属性タイプ」を参照)をOESに渡します。

認可ポリシーでは、認可決定にこれらの値を使用できます。時間、日付などのOESの定義済属性も使用できます。

実際の認可用のOES認可ポリシーを作成するには、次の手順を実行します。

1. 暗黙属性を使用する場合(「表10-9 OESポリシーでサポートされる属性タイプ」を参照)、これらも追加する必要があります。

注意:
すべての属性と関数(カスタムおよび事前定義済の両方)は、アプリケーションの「拡張」ノードの下で、作成、収集、およびさらに管理されます。詳細は、『Oracle Entitlements Server管理者ガイド』の属性および関数の拡張としての管理に関する項を参照してください。

OESのナビゲーション・ペインで、認可ポリシーを作成しているアプリケーションを開きます。「拡張」を開き、「属性」を選択してアイコンをクリックし、新規属性を作成します。

ドロップダウン・コントロールから「保存して次を作成」を選択すると、1つのページから複数の属性を作成できます。

2. 図11-12で示されているように、リソース・タイプで使用するすべての暗黙属性を追加します。

図11-12 条件で必要な暗黙属性の追加

3. 「OESリソースの構成」で作成したアプリケーション用に、新規のOES認可ポリシーを作成します。
リソースにアクセスを許可するプリンシパル(ロールおよびユーザー)を追加します。

このポリシーによって保護するターゲット(アクションを含む)を追加します。

図11-13に、画面の例を示します。

図11-13 実際の認可ポリシーの追加

4. 「Oracle WSM OESポリシーの添付」で説明しているように、Oracle WSM OESポリシーを割り当てます。

マスキングのためのOESポリシーの構成

この節では、以下のトピックについて説明します。

- 「OESリソースの構成」

- 「責任を返すマスキング・ポリシーの作成」

- 「実際のOESマスキング・ポリシーの作成」

OESリソースの構成

OESリソース名は、「リソースのマッピングと命名」で説明しているように、Oracle WSMリソース名にマップする必要があります。Oracle WSMからマスキング・コールを実行すると、リソース名がOESに渡されます。この名前はOESポリシーで定義されている名前と正確に一致する必要があります。

例として、次の特性を持つSOAP Webサービスをデプロイしたと仮定します。

- デプロイしたアプリケーションの名前はHelloWorldServiceEarです。

- リソース・タイプは常にWS_SERVICEです。

- Webサービス名はHelloWorldServiceです。

- Webサービスのポート名はSayHelloPortです。

- Webサービス内の操作はsayHelloおよびsayHelloBytesです。

OESリソースを構成するには、次の手順を実行します。

1. まだOESアプリケーション名を作成していない場合は、ここで作成します。アプリケーション名は、デプロイしたアプリケーション名と一致する必要があります。たとえば、HelloWorldServiceEarです。

図11-14 OESアプリケーションの作成

2. まだOESリソース・タイプを作成していない場合は、ここで作成します。リソース・タイプはWS_SERVICEである必要があります。

3. まだリソース・タイプにアクションを追加していない場合は、ここで追加します。アクションはresponse.lookupおよびmaskである必要があります。

4. まだ「リソース階層のサポート」コントロールを設定していない場合は、ここで設定します。
「リソース階層のサポート」コントロールの設定方法は、『Oracle Entitlements Server管理者ガイド』のリソース・タイプの作成に関する項で説明されています。

5. まだリソースを作成していない場合は、ここで作成します。リソース名は、リソース階層をどのように活用するかに合せ、service name/port name/operation nameの形式である必要があります。

責任を返すマスキング・ポリシーの作成

1. 「OESリソースの構成」で作成したアプリケーション用に、新規のOESポリシーを作成します。
リソースにアクセスを許可するプリンシパル(ロールおよびユーザー)を追加します。

このポリシーによって保護するターゲット(アクションresponse.lookupを含む)を追加します。

2. 「責任」タブで、責任を追加します。
属性の処理方法に関する項で説明されているように、OESではOESコンソールで責任を作成し、複数の属性名と値のペアを設定できます。

このマスキングのユースケースの場合は、マスキングする属性を取得するXPath問合せのセットを作成します。

これらの責任の結果、Oracle WSMはすべての定義済属性およびXpath問合せを取得し、それらを現在のレスポンスSOAPメッセージで実行します。(このコールで何も返されなかった場合は、実行が停止され、マスキングは実行されません。)Oracle WSMは、この問合せの結果を使用して、「実際のOESマスキング・ポリシーの作成」で説明している実際のマスキング・ポリシーを呼び出します。

実際のマスキング・ポリシーの責任を作成する際には、この責任の属性名を使用します。

実際のOESマスキング・ポリシーの作成

実際のマスキングを実行するOES認可ポリシーを作成します。

このポリシーは、Oracle WSMによって提供された責任を使用して、実際のマスキングを決定します。

実際のマスキング用のOESポリシーを作成するには、次の手順を実行します。

1. 条件で使用する属性を追加します。
暗黙属性を使用する場合(「表10-9 OESポリシーでサポートされる属性タイプ」を参照)、これらも追加する必要があります。

注意:
すべての属性と関数(カスタムおよび事前定義済の両方)は、アプリケーションの「拡張」ノードの下で、作成、収集、およびさらに管理されます。詳細は、『Oracle Entitlements Server管理者ガイド』の属性および関数の拡張としての管理に関する項を参照してください。

OESのナビゲーション・ペインで、認可ポリシーを作成しているアプリケーションを開きます。「拡張」を開き、「属性」を選択してアイコンをクリックし、新規属性を作成します。

ドロップダウン・コントロールから「保存して次を作成」を選択すると、1つのページから複数の属性を作成できます。

2. すべての新規属性をリソース・タイプに追加します。

3. 「OESリソースの構成」で作成したアプリケーション用に、新規のOES認可ポリシーを作成します。
リソースにアクセスを許可するプリンシパル(ロールおよびユーザー)を追加します。

このポリシーによって保護するターゲット(アクションmaskを含む)を追加します。

4. 「責任」タブで、責任を追加します。
これらの責任により、属性がそのまま渡されるかマスキングされるかが指定されます。Oracle WSMは、OESが返す責任を受け付け、OESによって機密データとマークされている属性をマスキングします。

属性と置換する値を返します。

たとえば、責任ポリシーでXPathをname=//env:Envelope//env:Body/ns3:sayHelloResponse/return/text()として追加した場合、マスキング・ポリシーではXPathの責任をname=xxxxxまたはname=****として追加します。ここで、nameは両方のポリシーで一致しています。

5. 「Oracle WSM OESポリシーの添付」で説明しているように、Oracle WSM OESポリシーを割り当てます。

Oracle WSM OESポリシーの添付

事前定義済のoracle/binding_oes_authorization_policy、oracle/component_oes_authorization_policyまたはoracle/binding_oes_masking_policyのコピーを作成し、そのコピーをWebサービスにアタッチします。次のステップを実行します:

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、OES統合の構成が必要なドメインを表示します。ドメインを選択します。

2. コンテンツ・ペインで、「WebLogicドメイン」→「Webサービス」→「ポリシー」の順にクリックします。

3. oracle/binding_oes_authorization_policy、oracle/component_oes_authorization_policyまたはoracle/binding_oes_masking_policyポリシーを選択してコピーを作成します。

4. コピーの属性を編集します。(かわりに、後の手順で説明するように属性をオーバーライドすることも可能です。)
use.single.step属性により、認可決定のためにOESにアクセスする方法が制御されます。2段階(ファイングレイン)方式または1段階(大まかな)方式です。デフォルトはfalseで、2段階(ファイングレイン)方式を使用します。一段階方式では責任を使用しませんが、条件で暗黙属性を使用できます。

この属性は、oracle/binding_oes_authorization_policyおよびoracle/component_oes_authorization_policyポリシーで設定できます。oracle/binding_oes_masking_policyは常に2段階方式です。

OESに基づいた認可設定では、リソース、アクションおよび制約のmatch値を定義するためにguard要素(orawsp:guardを参照)が使用されます。これらの値によって、guardの結果がtrueの場合にのみ、アサーション実行が許可されるようになります。つまり、アクセスしたリソース名およびアクションが一致した場合にのみ、アサーションの実行が許可されます。デフォルトで、リソース名およびアクションでは、ワイルドカードのアスタリスク(*)が使用され、すべてが許可されます。

OESポリシーの作成時にリソースの命名規則に従った場合は、リソース名を明示的に設定する必要はありません。

5. 第8章「Webサービスへのポリシーの添付」で説明しているように、設計時またはデプロイ後にポリシーを割り当てます。
Oracle WSM oracle/binding_oes_authorization_policyポリシーまたはoracle/component_oes_authorization_policyポリシーを単体で、またはoracle/binding_oes_masking_policyポリシーと組み合せて割り当てます。

6. オプションで、Fusion Middleware Control、WLSTまたはJDeveloper (または他のメカニズム)を使用して属性をオーバーライドします。OESポリシーの作成時にリソースの命名規則に従った場合、リソース・プロパティのオーバーライドは必須ではありません。
オーバーライド可能な属性の説明は、「構成プロパティおよびオーバーライド」を参照してください。

構成ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

7. 第8章「Webサービスへのポリシーの添付」で説明しているように、設計時またはデプロイ後に認証ポリシーも割り当てます。

構成のプロパティおよびオーバーライド

表11-5に示されているポリシーの構成プロパティは、ポリシーをアタッチする際に設定するか、オーバーライドできます。

OESポリシーの作成時にリソースの命名規則に従った場合、リソース名は導出され、プロパティのオーバーライドは必須ではありません。

一部の値のみオーバーライドし、残りはしなかった場合、残りは導出されます。

表11-5 Oracle WSM OESの構成プロパティ

名前

説明

application.name

OESに定義されたデプロイされたアプリケーション名。(SOAの場合、コンポジット名がアプリケーション名として使用されます。)

${}表記法を使用した値は、静的にも動的にもできます。

resource.type

OESに定義されたリソース・タイプ。${}表記法を使用した値は、静的にも動的にもできます。

- SOAPアプリケーションの場合、WS_SERVICEである必要があります。

- SOAコンポーネントの場合、COMPONENTである必要があります。

resource.name

OESに定義されたリソース名。${}表記法を使用した値は、静的にも動的にもできます。

- SOAPおよびSOA参照の場合、web-service-name/port/web service operationの形式である必要があります。

- SOAコンポーネントの場合、SOA component name/web service operationの形式である必要があります。

lookup.action

属性の参照時に使用されるアクションです。request.lookupまたはresponse.lookupを使用できます。

${}表記法を使用した値は、静的にも動的にもできます。

execute.action

実際の認可またはマスキングで使用されるアクションです。デフォルト値は、認可ユースケースではauthorize、マスキング・ユースケースではmaskです。

${}表記法を使用した値は、静的にも動的にもできます。

use.single.step

参照フェーズを省略するには、値をtrueに設定します。マスキング・ポリシーには適用されません。

reference.prioroty

ポリシー添付の優先順位を指定するオプションのプロパティ。

これらのプロパティでは、静的および動的値の両方を使用できます。動的値は1つ以上の${}演算子を使用し、ピリオドまたはスラッシュなどのセパレータ文字を使用できます。たとえば、resource.nameの値を${PORT}/${OPERATION}と指定した場合、それはmyPort/operationと解決されます。別の例として、${MODULE}.${SERVICE}はmyModule.myServiceと解決されます。

指定可能な動的値は次のとおりです。

- APPLICATION

- MODULE

- SERVICE (SOAPおよびSOA参照の場合はWSDL Webサービス名です。

- PORT (WSDLサービスのポート名)

- OPERATION (SOAPのWebサービス操作。)

- COMPOSITE (SOAコンポジット名)

- COMPONENT (SOAコンポーネント名)

- NAMESPACE

12 Webサービスのテスト

この章では次の項について説明します。

- Webサービスのテスト

- 入力引数のXMLソースとしての編集

- セキュリティ・テストの有効化

- サービスのクオリティ・テストの有効化

- HTTPトランスポート・オプションの有効化

- Webサービス操作のストレス・テスト

- Webサービスのテスト・ページの無効化

Webサービスのテスト

この項では、Fusion Middleware Controlの「Webサービスのテスト」ページを使用して、Webサービスから想定どおりの結果を受信できるかどうかを確認する方法について説明します。

「Webサービスのテスト」ページでは、Webサービスで公開されている任意の操作をテストすることができます。任意のアクセス可能なホストにデプロイされたWebサービスをテストできます。Webサービスをこのホストにデプロイする必要はありません。

注意:
「Webサービスのテスト」ページでは、ASCII文字のみを含むWSDL URLを解析できます。URLに非ASCII文字が含まれている場合、解析操作は失敗します。URLに非ASCII文字が含まれているWebサービスをテストするには、ブラウザでWSDL URLを変換できるようにし、エンコードされたWSDL URLを「Webサービスのテスト」ページで使用します。
ポリシーを使用するWebサービスをテストする場合、Fusion Middleware Controlを実行しているドメインと同じドメインにOracle WSMコンポーネントをインストールする必要があります。そうしないと、無効なポリシー例外が返されます。

様々な方法で「Webサービスのテスト」ページに移動できます。この項では、一般的な2つの方法について説明します。

Webサービスをテストする手順

1. 一般的な次のどちらかの方法を使用して、「Webサービスのテスト」ページにアクセスします。

- Oracle WebLogic Serverドメインのホーム・ページから操作を行う場合

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスをテストするドメインを表示します。

2. ドメインを選択します。

3. 「WebLogicドメイン」メニューから、「Webサービス」→「Webサービスのテスト」を選択します。「Webサービスのテスト」入力ページが表示されます。

4. テストするWebサービスのWSDLを入力します。WSDLがわからない場合、検索アイコンをクリックし、登録されているWebサービス(存在する場合)から選択します。

5. 「WSDL解析」をクリックします。
WSDLがHTTP Basic認証で保護されている場合は、「WSDLアクセスのためのHTTP Basic認証オプション」をクリックし、WSDL解析の前にユーザー名とパスワードを入力します。

図12-1に示すような完全な「Webサービスのテスト」ページが表示されます。

- Webサービス・アプリケーションのホーム・ページから操作を行う場合

1. ナビゲータ・ペインで、「アプリケーションのデプロイ」を開き、ドメイン内のアプリケーションを表示します。

2. Webサービスがテストされるアプリケーションを選択します。

3. ページの「Webサービス」セクションで、テストするWebサービス・エンドポイントの「テスト」をクリックします。
図12-1に示すように、Webサービスのテスト・ページが表示されます。WSDLフィールドには、エンドポイントのWSDLが自動的に移入されます。

4. 「WSDL解析」をクリックします。
WSDLがHTTP Basic認証で保護されている場合は、「WSDLアクセスのためのHTTP Basic認証オプション」をクリックし、WSDL解析の前にユーザー名とパスワードを入力します。

「Webサービスのテスト」ページを図12-1に示します。デフォルトでは、テスト・オプションのセクションは折りたたまれて表示されます。

図12-1 「Webサービスのテスト」ページ(折りたたんだ表示)

2. テストするサービスとポートを選択します。WSDLに複数のサービスとポートがある場合は、これらのフィールドがドロップダウン・メニューとして表示されます。WSDLのサービスとポートが1つのみの場合は、図12-1に示すように、これらのフィールドは読取り専用です。

3. 「操作」メニューからテストする操作を選択します。使用可能なオプションはWSDLにより決定されます。
RESTful Webサービスをテストするには、GETまたはPOSTサービス・ポート操作を選択します。

4. テストのエンド・ポイントURLを変更する場合は、「エンドポイントURLの編集」をクリックして変更を行います。

5. 選択されていない場合は、「リクエスト」タブを選択します。

6. セクション名の横のプラス記号(+)をクリックして、テスト・オプションのセクションを開きます。展開表示の「Webサービスのテスト」ページを図12-2に示します。

図12-2 「Webサービスのテスト」ページの下部(展開表示)

7. 「セキュリティ」セクションで、WebサービスのテストでOracle WSMセキュリティ・ポリシー、HTTP Basic認証またはカスタム・ポリシーの認証を使用するか、あるいは資格証明を使用しないかを指定します。WSDLのポリシーではセキュリティ設定は決定されないため、テストするセキュリティのタイプを指定できます。デフォルトは「なし」です。選択したオプションに応じて、追加のフィールドが表示されます。使用可能なオプションの詳細は、「セキュリティ・テストの有効化」を参照してください。
RESTful Webサービスのテスト時には、SOAPプロトコルは使用されないため、セキュリティ・オプションはHTTP Basic認証またはなしのみです。

8. 「サービスのクオリティ」セクションで、信頼できるメッセージング(WS-RM)、WS-AddressingまたはMTOMポリシーを明示的にテストするかどうかを指定します。使用可能なオプションの詳細は、「サービスのクオリティ・テストの有効化」を参照してください。

注意:
この項の内容は、RESTful Webサービスのテスト時には使用できません。

9. HTTPトランスポートセクションでは、テスト・メカニズムはWSDLを使用して、テストでSOAPアクションを使用可能にするかどうかを決定します。使用可能な場合は、SOAPアクションHTTPヘッダーを使用してリクエストを送信するかどうかを指定します。詳細は、「HTTPトランスポート・オプションの有効化」を参照してください。

注意:
この項の内容は、RESTful Webサービスのテスト時には使用できません。

10. Webサービスを同時に複数回起動する場合は、「追加テスト・オプション」セクションでストレス・テストの有効化オプションを選択します。このオプションを設定すると、ストレス・テストのオプションに値を入力することも、デフォルトをそのまま使用することもできるようになります。詳細は、「Webサービス操作のストレス・テスト」を参照してください。

11. 「引数の入力」セクションでは、Webサービスの入力引数を「値」フィールドに入力します。パラメータとタイプおよび要求される入力値は、WSDLにより決定されます。
「ツリー表示」または「XML表示」を選択して、入力パラメータの階層リストとXMLコンテンツの階層リストを切り替えます。

12. 「Webサービスのテスト」をクリックしてテストを開始します。
テストを終了すると、「レスポンス」タブに結果が表示されます。

テストが成功すると、図12-3に示すように、「テストのステータス」フィールドに「リクエストは正常に受信されました。」と表示され、レスポンス時間が表示されます。

注意:
SOAコンポジット・テストを実行すると、新規コンポジットが生成されたかどうかが「レスポンス」タブに示されます。「フロー・トレースの起動」ボタンをクリックして、「フローのトレース」ウィンドウを開くこともできます。このウィンドウでは、様々なコンポジットおよびコンポーネント・インスタンスを介したメッセージのフローを表示できます。

図12-3 テストの成功

テストが失敗すると、エラー・メッセージが表示されます。たとえば、図12-4には、var-Intパラメータのタイプ・エラーが原因のエラーが表示されています。この例の場合には、intが必要な状況でstringデータが入力されました。

注意:
レスポンスタブの結果は、標準Webサービス結果の簡易バージョンです。

13. 図12-4 データ検証エラー

入力引数のXMLソースとしての編集
入力引数は、ユーザーにわかりやすい形式で表示できます。また、XMLソース・コードを直接編集できます。XMLソースを直接編集する場合は、有効なXMLを入力する必要があります。ツリー表示とXML表示を切り替えるには、ページの「引数を入力」セクションのドロップダウン・リストを使用します。

セキュリティ・テストの有効化

「Webサービスのテスト」ページでは、Oracle WSMセキュリティ・ポリシー、HTTP Basic認証またはカスタム・ポリシーを使用してWebサービスのセキュリティをテストできます。ページの「セキュリティ」セクション内のいずれかのオプションを選択することによって、テストのタイプを選択できます。

WSDLのポリシーではセキュリティ設定は決定されないため、テストするセキュリティのタイプを指定できます。デフォルトは「なし」です。

使用できるオプションは次のとおりです。以降の項で、その詳細を説明します。

- OWSMセキュリティ・ポリシー: Oracle WSMセキュリティ・ポリシーによる認証およびメッセージ保護に必要な資格証明やその他のセキュリティ・オプションを使用します。

- HTTP Basic認証: ユーザー名およびパスワードの資格証明をHTTPトランスポート・ヘッダーに挿入します。ユーザー名およびパスワードの両方が必須です。
ユーザー名とパスワードを指定する場合は、存在していて有効なものを指定する必要があります)。

- 拡張: カスタム・ポリシーを使用してユーザーを認証します。ポリシーのURIを指定する必要があります。構成のオーバーライドも指定できます。

- なし - 資格証明は含まれません。

注意:
RESTful Webサービスのテスト時には、SOAPプロトコルは使用されないため、セキュリティ・オプションはHTTP Basic認証またはなしのみです。

OWSMセキュリティ・ポリシー

「OWSMセキュリティ・ポリシー」を選択すると表示されるオプションを、図12-5に示します。この図では、「拡張オプション」フィールドが選択されているために、使用可能なすべてのフィールドが表示されています。

図12-5 OWSMセキュリティ・ポリシーのテスト・オプション

Oracle WSMセキュリティ・ポリシーを使用してWebサービスのセキュリティをテストする手順は、次のとおりです。

1. WSDLで指定されている、互換性があるクライアント・ポリシーの一覧が表示される「互換性のあるクライアント・ポリシー」で、テストするクライアント・ポリシーを選択します。
または、エンドポイントでネガティブ・テストを実行するには、「その他のクライアント・ポリシー」リストから、互換性のないポリシーまたは「すべて」を選択します。

注意:
セキュリティ・ポリシーでないもの、およびテスト機能でサポートされていないポリシーは、読取り専用で表示され、選択できません。テスト機能でサポートされるクライアント・ポリシーのリストについては、「サポートされるクライアント・セキュリティ・ポリシー」を参照してください。
複数のセキュリティ・ポリシーをサポートするサービス・ポリシーは、テスト機能でサポートされません。

選択したポリシーで必須の構成プロパティは、アスタリスク(*)付きで表示されます。たとえば、次のようにします。

- username_tokenおよびhttp_tokenポリシーの場合、「ユーザー名」と「パスワード」フィールドは必須です。SAMLポリシーの場合、「ユーザー名」フィールドのみ必須です。

- メッセージ保護ポリシーおよび双方向SSLポリシーの場合、「JKSキーストア・ロケーション」フィールドと「JKSキーストア・パスワード」フィールドは必須です。(一方向SSLポリシーの場合は、これらのフィールドを設定する必要はありません。)

2. ポリシーが必須と判断したフィールドに値を入力します。
「JKSキーストア・ロケーション」フィールドおよび「JKSキーストア・パスワード」フィールドがポリシーによって要求される場合、NFSがアクセス可能な一時ユーザーが作成したキーストアの場所とパスワードを入力し、「キーのロード」をクリックします。「拡張オプション」の下にある関連するキーストア・フィールドに、キーストアで指定されている別名が移入されます。

キーストアの作成の詳細は、「秘密鍵の生成およびJavaキーストアの作成」を参照してください。

3. 「拡張オプション」をクリックします。追加のキーストア別名およびSAMLプロパティのフィールドが表示されます。選択したポリシーで必須のプロパティは、アスタリスク付きで表示されます。該当のフィールドに必要な値を入力するか、オーバーライド値を入力します。

HTTP Basic認証

このオプションでは、HTTPトランスポート・ヘッダーに挿入されたユーザー名およびパスワード資格証明が必要です。ユーザー名とパスワードは存在していて、WebLogic Serverで有効である必要があります。

拡張

「拡張」を選択すると表示されるオプションを、図12-6に示します。

図12-6 「拡張」テスト・オプション

「拡張」オプションでは、カスタム・ポリシーを使用してWebサービスのセキュリティをテストできます。これを行うには、次の手順を実行します。

1. カスタム・ポリシーのURIは、「ポリシーURI」フィールドで指定します。このフィールドは必須です。

2. 「名前」と「値」フィールドに、ポリシー構成のオーバーライドを指定します。プロパティを追加するには、「追加」をクリックして、構成をオーバーライドする名前と値のペアを指定します。プロパティを削除するには、表内のプロパティを選択して、「削除」をクリックします。

注意:
プロパティの指定には、各プロパティの完全名を使用する必要があります。たとえば、oracle.wsm.security.util.SecurityConstants.ClientConstants.WSS_KEYSTORE_LOCATIONのように指定します。オーバーライド可能なプロパティのプロパティ名のリストについては、「クライアントのプログラムによる構成オーバーライドの使用」の表11-2を参照してください。

サポートされるクライアント・セキュリティ・ポリシー

テスト機能では次のOracle WSMクライアント・セキュリティ・ポリシーがサポートされます。

- oracle/wss_http_token_client_policy

- oracle/wss_http_token_over_ssl_client_policy

- oracle/wss_saml_token_bearer_over_ssl_client_policy

- oracle/wss_saml_token_over_ssl_client_policy

- oracle/wss_saml20_token_bearer_over_ssl_client_policy

- oracle/wss_saml20_token_over_ssl_client_policy

- oracle/wss_username_token_client_policy

- oracle/wss_username_token_over_ssl_client_policy

- oracle/wss10_message_protection_client_policy

- oracle/wss10_saml_token_with_message_integrity_client_policy

- oracle/wss10_saml_token_with_message_protection_client_policy

- oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

- oracle/wss10_saml20_token_with_message_protection_client_policy

- oracle/wss10_username_id_propagation_with_msg_protection_client_policy

- oracle/wss10_username_token_with_message_protection_client_policy

- oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

- oracle/wss10_x509_token_with_message_protection_client_policy

- oracle/wss11_message_protection_client_policy

- oracle/wss11_saml_token_identity_switch_with_message_protection_client_policy

- oracle/wss11_saml_token_with_message_protection_client_policy

- oracle/wss11_saml20_token_with_message_protection_client_policy

- oracle/wss11_username_token_with_message_protection_client_policy

- oracle/wss11_x509_token_with_message_protection_client_policy

サービスのクオリティ・テストの有効化

注意:
この項の内容は、RESTful Webサービスのテスト時には適用されません。

「Webサービスのテスト」ページの「サービスのクオリティ」セクション(図12-7)では、サービスのクオリティ(QoS)の信頼できるメッセージング(WS-RM)、WS-AddressingおよびMessage Transmission Optimization Mechanism(MTOM)という3つの特性をテストできます。サービスのクオリティの各タイプには、3つのオプションがあります。

- WSDLデフォルト: WSDLのデフォルト動作を実行します。たとえば、「MTOM」に「WSDLデフォルト」が選択され、WSDLにMTOMポリシーへの参照が含まれている場合は、そのポリシーが実行されます。WSDLにMTOMポリシーへの参照が含まれない場合は、MTOMポリシーは実行されません。

- なし - WSDLに含まれている場合でも、特定のQoSのポリシーは実行されません。たとえば、WS-RMに「なし」が選択されている場合、信頼できるメッセージング・ポリシーは実行されません。WSDLに信頼できるメッセージング・ポリシーへの参照が含まれている場合は、無視されます。

- カスタム - カスタム・ポリシーが実行されます。たとえば、WS-AddressingポリシーがWSDL内で参照されている場合、このポリシーは無視され、かわりに「URI」フィールドで指定されたポリシーが使用されます。

- URI: ポリシーが実行される場所を指定します。

図12-7 「Webサービスのテスト」ページのサービスのクオリティのパラメータ

HTTPトランスポート・オプションの有効化

注意:
この項の内容は、RESTful Webサービスのテスト時には適用されません。

テスト・メカニズムはWSDLを使用して、テストでSOAPアクションを使用可能にするかどうかを決定します。WSDLのsoap:operationにsoapAction属性が指定されている場合、これが表示され、「SOAPアクションの有効化」が有効にされています。

「SOAPアクションの有効化」が選択された状態でリクエストが送信されると、SOAPアクションHTTPヘッダーが送信されます。

この動作を変更するには、「SOAPアクションの有効化」ボックスの選択を解除します。その場合、HTTPヘッダーは送信されません。または、「SOAPアクション」フィールドに異なる値を入力することによって、この動作をオーバーライドできます。(必ず、テスト対象のSOAPアクションとその構文を把握しておく必要があります)。

図12-8 「Webサービスのテスト」ページのHTTPトランスポート・オプション

Webサービス操作のストレス・テスト

Webサービス操作の連続した呼出しを起動するには(図12-9)、ストレス・テストの有効化チェック・ボックスを選択します(図12-9)。次のオプションがあります。

- 同時スレッド: 起動を送信する同時スレッド数。デフォルトは5スレッドです。

- スレッドごとのループ: 操作を起動する回数。デフォルトは10回です。

- ミリ秒単位の遅延 - ある操作から次の操作を起動するまでに待機する時間(ミリ秒数)。デフォルトは1000ミリ秒(1秒)です。

図12-9 「Webサービスのテスト」ページのストレス・テストのパラメータ

テストを起動すると、進捗ボックスにテストのステータスが表示されます。ストレス・テストが完了すると、確認ページにテストの結果が表示されます。

「レスポンス」タブには、エラーが発生したテスト数、レスポンス時間の平均値、最小値および最大値など、ストレス・テストに関する追加情報が表示されます。各テストの詳細は、表形式で示されます。各テストについて、スレッド数、ループ数、テスト時間、テストの開示時刻と終了時刻、および呼出しステータスを表示できます。表に表示されたフィールドは、「表示」メニューを使用してフィルタリングできます。

図12-10 「Webサービスのテスト」ページのストレス・テストの結果

Webサービスのテスト・ページの無効化

注意:
この項の内容は、Java EE Webサービスには該当しません。

Webサービスのテスト・ページを無効化すると、Webサービスを公開するアプリケーションの、外部から参照可能な詳細が少なくなり、セキュリティが強化されます。

注意:
「エンドポイント・テストの有効化」コントロールの無効化は、Webサービスの外部から参照可能なテスト・ページにのみ影響します。この章で説明されているWebサービス・テストの機能には影響しません。

Fusion Middleware Controlを使用してテスト・ページを無効化する方法

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」の説明に従って、Webサービスのサマリー・ページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・ポートを表示するWebサービスのプラス記号(+)をクリックします。

3. ポート名をクリックして「Webサービス・エンドポイント」ページに移動します。

4. 「構成」タブをクリックします。

5. 「エンドポイント・テストの有効化」フィールドで、リストから「False」を選択します。

6. 「適用」をクリックします。

13 Webサービスのパフォーマンスの監視

この章では、Fusion Middleware Controlを使用してWebサービスのパフォーマンスを監視する方法について説明します。この章では次の項について説明します。

- パフォーマンス監視の概要

- Webサービス統計の開始またはリセットのタイミング

- アプリケーションのWebサービス統計の表示

- サーバー・インスタンスのWebサービス統計の表示

- 個々のWebサービスのWebサービス統計の表示

- Webサービス・エンドポイントの操作統計の表示

- Java EE Webサービス・クライアントのWebサービス統計の表示

- Webサービスのセキュリティ違反の表示

この章で説明する監視機能に加えて、1つ以上のWebサービスによるポリシーの使用状況を分析するには、「ポリシーの使用状況分析」を参照してください。

パフォーマンス監視の概要

注意:
この章で説明する監視機能には、Java EE Webサービスに適用されないものもあります。

Fusion Middleware ControlのWebサービスのホーム・ページから、次の操作を実行できます。

- セキュリティ、信頼できるメッセージング、MTOM、管理およびサービス・フォルトなどの、Webサービス・フォルトを監視できます。

- 認証、認可、メッセージ整合性およびメッセージ機密保護の問題などの、セキュリティの問題を監視できます。

- ポートの有効化や無効化、Webサービスへのポリシーの添付、ポリシーの有効化や無効化など、Webサービス・ポートを構成できます。

アプリケーションにWebサービスが含まれている場合、「アプリケーション」ホームページには選択したWebサービスの詳細も表示されます。

Webサービス統計の開始またはリセットのタイミング

この章で説明する統計は、次のイベントのいずれかが発生すると開始またはリセットされます。

- アプリケーションが初めてデプロイされたとき。

- アプリケーションが再デプロイされたとき。

- アプリケーションがすでにデプロイされていて、ホストするサーバーが再起動されたとき。

アプリケーションのWebサービス統計の表示

Fusion Middleware Controlでは、アプリケーションのWebサービスのサマリー・ページに、アプリケーション内のすべてのWebサービスについて、全体の「サマリー」と、フォルト/違反情報が表示されます(図13-1を参照)。

「グラフ」セクションには、Webサービスのすべてのセキュリティ・フォルトがグラフで表示されます。

Webサービスの「Webサービスのサマリー」ページに移動する手順

1. ナビゲータ・ペインで、「アプリケーションのデプロイ」フォルダのプラス記号(+)をクリックしてドメイン内のアプリケーションを表示し、アプリケーションを選択します。
「アプリケーションのデプロイ」ホームページが表示されます。

2. Fusion Middleware Controlを使用して、「アプリケーションのデプロイ」→「Webサービス」をクリックします。
このアプリケーションの「Webサービスのサマリー」ページが表示されます。

ページに、Webサービスのエンドポイントとアプリケーションレベルのメトリックが表示されます。

Oracle Infrastructure Webサービスの場合、次のWebサービス全体の統計が表示されます。

- Webサービス(アプリケーション内のWebサービス数)

- Webサービス・エンドポイント

- Webサービス・エンドポイント無効

- ポリシー違反の合計

- フォルトの合計

- 完了した呼出し

図13-1 Webサービス・パフォーマンスの「サマリー」と「グラフ」

WebLogic Java EE Webサービスの場合、次のWebサービス全体の統計が表示されます。

- サーバー名(アプリケーションが実行されているサーバー)

- Webサービス(アプリケーション内のWebサービス数)

- Webサービス・エンドポイント

- Java EE Webサービス・クライアント(アプリケーション内のランタイム・クライアント・インスタンス数)

- Java EE Webサービス・クライアント・ポート(Oracle WSMポリシーを添付できるアプリケーション内のWebサービス・クライアント・ポート数)

図13-2 Java EE Webサービスのサマリー

サーバー・インスタンスのWebサービス統計の表示

サーバー側の「Webサービス」ページには、サーバー上のすべてのWebサービスの統計が表示されます。

サーバーのすべてのWebサービス統計を表示する手順

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、ポリシーを表示するドメインを表示し、ドメインを選択します。

2. ドメインを開き、そのドメインのサーバーを表示します。統計を表示するサーバーを選択します。

3. Fusion Middleware Controlを使用して、「WebLogicサーバー」→「Webサービス」をクリックします。

4. 図13-3に示すように、サーバーのWebサービス統計ページが表示されます。
デプロイしたWebサービスのタイプに応じて、使用可能なWebサービス・タイプのタブ(「Java EE」、「Oracle Infrastructure Web Services」、「SOA」)が表示されます。

図13-3 サーバーのWebサービス

個々のWebサービスのWebサービス統計の表示

「Webサービスのサマリー」ページの「Webサービスの詳細」セクションには、図13-4に示すように、Webサービス単位の統計が表示されます。次の統計が表示されます。

- Webサービスの名前。Webサービスのプラス記号(+)をクリックすると、Webサービス・エンドポイントが表示されます。

- エンドポイント有効: Webサービスが有効か無効かを指定するフラグ。Oracle Infrastructure Webサービス・プロバイダの場合、このフィールドには「N/A」が表示されます。

- 開始時間: Webサービスが開始した時間。

- 完了した呼出し: このエンドポイントへの完了済リクエスト数。

- 平均呼出し時間: すべてのWebサービス呼出しが処理される平均時間。

- ポリシーの障害: ポリシーが正常に実行されなかったため失敗したリクエストの数。

- フォルトの合計: 失敗したリクエストの合計数。

図13-4 Webサービス固有の統計

Webサービス・エンドポイントの操作統計の表示

特定のWebサービス・エンドポイントの操作統計を表示する手順は、次のとおりです。

1. Webサービスのサマリー・ページの「Webサービスの詳細」セクションで、「Webサービス・エンドポイント」タブを選択します。

2. 統計を表示するエンドポイントを選択します。
「Webサービス・エンドポイント」ページが表示されます。

3. 「操作」タブを選択します(まだ選択していない場合)。
Oracle Infrastructure Webサービスについて次の統計が表示されます。

- 操作名: 操作の名前。

- 一方向: 操作がコールに対して値を戻すかどうかを指定するフラグ。

- アクション: アクションのURI。

- 入力エンコーディング: 入力メッセージのエンコーディング・スタイル。

- 出力エンコーディング: 出力メッセージのエンコーディング・スタイル。

- 完了した呼出し: このエンドポイントへの完了済リクエスト数。

- 平均呼出し時間: すべてのWebサービス呼出しが処理される平均時間。

- フォルト: エンドポイントに対するフォルトの合計数。

WebLogic Java EE Webサービスについて次の統計が表示されます。

- 名前: 操作の名前。

- 呼出し数: Webサービスが呼び出された回数。

- 平均ディスパッチ時間: すべてのWebサービス呼出しが処理される平均時間。

- 平均実行時間: すべてのWebサービス実行の平均時間。

- 平均レスポンス時間: 生成されたすべてのレスポンスの平均時間。

- レスポンス数: Webサービス呼出しから生成されるレスポンスの合計数。

- レスポンス・エラー数: Webサービス呼出しから生成されるレスポンスのエラーの合計数。

Java EE Webサービス・クライアントのWebサービス統計の表示

Java EEアプリケーション内のランタイム・クライアント・インスタンスのWebサービス統計を表示する手順は、次のとおりです。

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、Java EE Webサービスのホームページに移動します。

2. 「Java EE Webサービス・クライアント」タブを選択して、アプリケーション内でクライアントを表示します。

注意:
このタブは、アプリケーションにJava EE Webサービス・クライアントが含まれている場合のみ使用できます。

3. 「監視」タブが選択されていない場合はこのタブを選択して、アプリケーション内のすべてのランタイム・クライアント・インスタンスの統計を表示します。

注意:
JAX-WS Webサービスでは、Webサービス・ランタイムによってWebサービス・エンドポイント内にシステム定義のクライアント・インスタンスが作成されます。このインスタンスは、エンドポイントでプロトコル固有のメッセージを送信する際に使用されます。これらのクライアント・インスタンスには、クライアント・インスタンスが属するWebサービス・エンドポイントに基づいて名前が付けられ、接尾辞に-SystemClientが付けられます。システム定義のクライアント・インスタンスに関する監視情報が提供され、アプリケーション・パフォーマンスの評価に役立てることができます。

4. 「クライアント」列内のクライアントを選択して、そのクライアントのWebサービス統計を表示します。
図13-5に示すような、「Java EE Webサービス・クライアント」ページが表示されます。

図13-5 Java EE Webサービス・クライアントの統計

ランタイム・クライアント・インスタンスについて、次のサマリー情報が表示されます。

- アプリケーション名: クライアントが関連付けられているアプリケーションの名前。

- モジュール名: エンドポイントで実行中のJava EEモジュールの名前。

- Webサービス・エンドポイント: クライアントが呼び出すポートの名前。

- トランスポート・プロトコル・タイプ: サービスが要求するトランスポート・プロトコル。

5. 「呼出し」タブを選択して、クライアントの呼出し統計を表示します。
ランタイム・クライアント・インスタンスについて表示される呼出し統計を、表13-1に示します。

表13-1 Java EE Webサービス・クライアントの呼出し統計

要素

説明

エラー

エラー数

セキュリティ・フォルトおよびセキュリティ違反の合計数。

レスポンス・エラー数

このクライアント・インスタンスの呼出しから生成されたレスポンスにおけるエラーの合計数。

呼出し統計

呼出し数

現在の測定期間中にクライアント・インスタンスがサービス側の操作を呼び出した合計回数。

平均ディスパッチ時間(ミリ秒)

現在の測定期間における平均のディスパッチ時間。

合計ディスパッチ時間(ミリ秒)

現在の測定期間内の、この操作の全ディスパッチの合計時間。

平均実行時間(ミリ秒)

この操作の平均実行時間。

合計実行時間(ミリ秒)

この操作のすべての実行にかかる合計時間。

レスポンス統計

レスポンス数

この操作の呼出しから生成されたレスポンスの合計数。

平均レスポンス時間(ミリ秒)

この操作の呼出しから生成されたレスポンスの平均レスポンス時間。

合計レスポンス時間(ミリ秒)

この操作の呼出しから生成された全レスポンスの合計時間。

6. このランタイム・クライアント・インスタンスのポリシー違反統計に対して、「WebLogicポリシー違反」タブを選択します。
ランタイム・クライアント・インスタンスについて表示されるポリシー違反を示します。

表13-2 Java EE Webサービス・クライアントのWebLogicポリシー違反

要素

説明

サマリー

フォルトの合計

失敗したリクエストの合計数。

ポリシーの障害

ポリシー・フォルトの合計数。

セキュリティ・フォルトの合計数

セキュリティ・フォルトおよびセキュリティ違反の合計数。

違反

認証違反

このポートに対して生成された認証違反の合計数。違反数には受信メッセージ処理のみ追加できます。

機密保持違反

このポートに対して生成された機密保持違反の合計数。違反数には送信および受信メッセージ処理を追加できます。

整合性違反

このポートに対して生成された整合性違反の合計数。違反数には送信および受信メッセージ処理を追加できます。

成功

認証の成功

このポートに対して検出された認証成功の合計数。成功数には受信メッセージ処理のみ追加できます。

機密性成功

このポートに対して生成された機密保持成功の合計数。成功数には送信および受信メッセージ処理を追加できます。

整合性の成功

このポートに対して生成された整合性成功の合計数。成功数には送信および受信メッセージ処理を追加できます。

Webサービスのセキュリティ違反の表示

Webサービスのセキュリティ違反を表示するには、次の手順に従ってください。

Oracle Infrastructure Webサービスのセキュリティ違反を表示する手順は、次のとおりです。

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、「Webサービスのサマリー」ページに移動します。

2. ページの「グラフ」 セクションで、「セキュリティ違反」タブを選択します。
アプリケーションのすべてのWebサービスに関する認証、認可、機密保護および整合性のフォルトのグラフ表現が、円グラフで表示されます。

3. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

4. エンドポイント名をクリックして「Webサービス・エンドポイント」ページに移動します。

5. 「グラフ」タブをクリックして、エンドポイントのすべてのフォルトおよびすべてのセキュリティ違反のグラフ表示を参照します。

6. 「OWSMポリシー」タブをクリックします。
次の2つの表が表示されます。

「グローバルにアタッチされたポリシー」表には、ポリシーの名前およびそれを参照するポリシー・セットが表示されます。

「直接アタッチされたポリシー」表には、ポリシーの名前およびポリシーのステータス(ポリシーが有効または無効)が表示されます。

どちらの表にも、ポリシーが属するカテゴリ(「セキュリティ」、「MTOMアタッチメント」、「信頼できるメッセージング」、「WSアドレス」および「管理」)が示されます。

各タイプのポリシー添付について表示される違反情報を、表13-3に示します。

表13-3 エンドポイントのポリシー違反情報

違反のタイプ

説明

合計違反

ポリシーに対するフォルトの合計数。

注意: 合計違反は、次に示されているセキュリティ違反(たとえば、認証、認可、機密保護、完全性)の合計に等しくない可能性があります。合計違反数には、これらの主要なカテゴリに属さない他のセキュリティ違反およびセキュリティ以外の違反も含まれています。

セキュリティ違反

認証

サーバーが再起動してから認証が失敗した回数。

認可

サーバーが再起動してから認可が失敗した回数。

機密保護

サーバーが再起動してから秘密保護に失敗したメッセージの数。

完全性

サーバーが再起動してから整合性がとれなかったメッセージの数。

WebLogic JAX-WS Webサービスのセキュリティ違反を表示する手順は、次のとおりです。

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」で説明されているように、「Webサービスのサマリー」ページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

3. エンドポイント名をクリックして「Webサービス・エンドポイント」ページに移動します。

4. エンドポイントに添付されているポリシーのタイプに応じて、次のいずれかの操作を行います。

- Oracle WSMポリシーがエンドポイントに添付されている場合は、「OWSMポリシー」タブをクリックします。
エンドポイントに添付されているポリシーのリストが表示されます。ポリシーごとに、表にはポリシーの名前、ポリシーのカテゴリ(「セキュリティ」、「MTOMアタッチメント」、「信頼できるメッセージング」、「WSアドレス」および「管理」)、およびポリシーのステータス(ポリシーが有効または無効)が表示されます。表13-3は、エンドポイントに添付された各Oracle WSMポリシーについて表示される違反情報を説明しています。

- WebLogicポリシーがエンドポイントに添付されている場合は、「WebLogicポリシー違反」タブをクリックします。
このタブには、JAX-WSエンドポイントに添付されたWebLogicポリシーについて、ポリシー違反の詳細が表示されます。表13-4は、このページに表示される情報を説明しています。

表13-4 WebLogicポリシー違反データ

要素

説明

サマリー

フォルトの合計

失敗したリクエストの合計数。

ポリシーの障害

ポリシーが正常に実行されなかったため失敗したリクエストの数。

合計違反

ポリシーに対するフォルトの合計数。

違反

認証違反

サーバーが再起動してから認証が失敗した回数。

機密保持違反

サーバーが再起動してから秘密保護に失敗したメッセージの数。

整合性違反

サーバーが再起動してから整合性がとれなかったメッセージの数。

成功

認証の成功

サーバーが再起動してから認証が成功した回数。

機密性成功

サーバーが再起動してから機密保護に成功したメッセージの数。

整合性の成功

サーバーが再起動してから整合性がとれたメッセージの数。

WebLogic JAX-RPC Webサービスのセキュリティ違反を表示する手順は、次のとおりです。

1. アプリケーションの「Webサービスのサマリー」ページに移動します。

2. ページの「Webサービスの詳細」セクションで、まだ表示されていない場合は、Webサービス・エンドポイントを表示するWebサービスのプラス記号(+)をクリックします。

3. エンドポイント名をクリックして「Webサービス・エンドポイント」ページに移動します。

4. 「WebLogicポリシー違反」タブをクリックします。
図13-6に示すように、このタブには、JAX-RPCエンドポイントに添付されたWebLogicポリシーについて、ポリシー違反の詳細が表示されます。このタブに表示される情報の詳細は、表13-4を参照してください。

図13-6 WebLogic JAX-RPC Webサービス・エンドポイントのセキュリティ違反

第III部

高度な管理

第III部の内容は次のとおりです。

- 第14章「高度な管理」

- 第15章「環境間のアプリケーション移行の管理」

- 第16章「問題の診断」

- 第17章「Oracle WSMリポジトリの管理」

14 高度な管理

この章では次の項について説明します。

- Webサービスとソースの登録

- WebサービスのUDDIへのパブリッシュ

- Webサービスの監査

- WSDLの管理

- 実行中のクライアントへのセキュリティの追加

- プラットフォーム・ポリシー・プロパティの構成

- ポリシー・マネージャの接続の構成およびポリシー・キャッシュのチューニング

- Webサービス・ポリシー取得の構成

- WSMリポジトリ接続のチューニング

- Webサービス・セキュリティ・ポリシー強制のチューニング

- アイデンティティ拡張プロパティの定義

- 署名証明書の信頼できる発行者および信頼できるDNリストの定義

- クライアント・アイデンティティ・マッピングのトークン属性ルールの使用

- ドメイン全体の管理ポートでのOracle WSMの構成

- Javaオブジェクト・キャッシュの設定

- デフォルト・ユーザーの変更

- 非同期WebサービスのJMSシステム・ユーザーの変更

Webサービスとソースの登録

Webサービス・モデルの主要な機能は、Webサービスを幅広く使用可能かつ検出可能にする機能です。UDDIは、ビジネスとレジストリ内のサービスの情報を集中管理するWebサービスをパブリッシュおよび検出する方法の1つです。新しい別の標準として、Web Services Inspection Language(WSIL)仕様があります。

Oracle Enterprise Manager Fusion Middleware Controlは、WSILドキュメントおよびUDDI v3レジストリでパブリッシュされたWebサービスの登録をサポートします。WSILドキュメントまたはUDDI v3レジストリで使用できる任意のサービスをEnterprise Manager内に登録できます。

Enterprise Manager内の登録済サービスをサービスのソースで管理しやすくするために、メタ情報またはプロファイルを登録することもできます。ソースを登録してそれに論理名を割り当てておくと、その後はWSDLのURLなどの接続情報を指定する必要がなくなります。ドメインは複数の登録済ソースを持つことができ、各登録済ソースが複数の登録済サービスを持つことができます。ソースを登録しておくと、そのソースに登録できるサービスを簡単に検索できるようになります。

サービス名と対応するWSDLは、単一の登録済ソース内で一意である必要があります。あるサービスを登録すると、それと同じ名前の別のサービス、または名前は異なるが同じWSDL URLの別のサービスを登録しようとすると無効になります。

Webサービスを登録しておくと、Enterprise Manager内の選択リストから簡単にサービスを参照できるようになります。たとえば、「Webサービスのテスト」の説明に従ってWebサービスをテストする場合、WSDLを指定するかわりに「検索」アイコンをクリックして、図14-1に示すような登録済サービスのリストからWSDLを選択できます。

図14-1 登録済サービスからの選択

UDDIの基本

Universal Description Discovery & Integration(UDDI)は、ビジネスを迅速、簡単、かつ動的に検索し、そして相互の取引を実行可能にすることを目指す業界イニシアティブです。組み込まれるUDDIレジストリには、ビジネスに関するカタログ化された情報、その企業が提供するサービス、および取引の際に使用する通信規格とインタフェースが格納されます。

Webサービスのオーナーは、それらをUDDIレジストリにパブリッシュします。パブリッシュされると、Webサービスの説明およびサービスに対するポインタがUDDIレジストリに保持されます。UDDIにより、クライアントはこのレジストリを検索し、目的のサービスを見つけてその詳細を取得できます。これらの詳細には、サービスの起動ポイントを始め、サービスやその機能性を確認するための情報が含まれます。

WSILの基本

WSILでは、Webサービスの説明の参照にExtensible Markup Language(XML)形式が定義されます。これらの参照はWSILドキュメントに含まれ、Webサービスの説明(WSDLファイルなど)およびWebサービスの他の集合(別のWSILドキュメントまたはUDDIレジストリなど)を参照します。

WSILドキュメントは、通常Webサービス・プロバイダによって配布されます。これらのドキュメントには、プロバイダのWebサイトで使用できるWebサービスを調べる方法が記載されています。このため、WSIL標準ではWebサービス・コンシューマ向けにWSILドキュメントを使用可能にするルールも定義されます。

WSILモデルは、Webサービスの検出を分散化します。複数のビジネス・エンティティおよびサービスに関する情報を集中管理するUDDIレジストリとは対照的に、WSILはWebサービスの記述情報をどの場所からでも提供できるようにします。UDDIとは異なり、WSILはビジネス・エンティティ情報には関係せず、特定のサービス記述形式を必要としません。ユーザーがサービス・プロバイダを理解していることが前提であり、WSDLなど、他の規格のWebサービス記述を使用します。

登録済ソースとWebサービスの表示

この項の手順に従って登録済ソースとWebサービスを表示および編集します。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、登録済ソースとWebサービスを表示するドメインを表示します。

2. ドメインを選択します。

3. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図14-2に示すように、登録済ソースとサービスページが表示されます。

図14-2 登録済ソースとサービスの表示

「ソース」表には、各登録済ソースに関する次の情報が表示されます。

- 名前: ソースの論理名

- 説明: ソースの説明

- ソースURL: URL形式のソースの場所

- タイプ - ソース・タイプ: UDDI v3レジストリ・インポート、ファイルからのWSILインポート、URLからのWSILインポート

- ユーザーID: 外部ソースのユーザーID

「表示」メニューを使用して、表示される情報をカスタマイズできます。ページのこのセクションから、新しいソースの追加および編集、ソースの削除、ソースのWebサービスの登録、そしてソースから事前定義済UDDIレジストリへのWebサービスのパブリッシュを行うこともできます。

4. 「ソース」表でソースを選択します。
各登録済ソースは複数の登録済サービスを持つことができます。「サービス」表には、選択したソース場所からインポートされた登録済サービスに関する次の情報が表示されます。

- 名前: 登録済サービスの名前

- 説明: サービスの説明

- サービス場所: URL形式でのサービスの場所

「表示」メニューを使用して、表示される情報をカスタマイズできます。選択したサービスのWSDLを表示して、選択したWebサービスをテストすることもできます。

ソースの登録

次のタイプのWebサービス・ソースを登録できます。

- UDDI v3レジストリ・インポート

- URLからのWSILインポート

- ファイルからのWSILインポート

この項の手順に従ってソースを登録します。

ソースを登録する手順

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスのソースを登録するドメインを表示します。

2. ドメインを選択します。

3. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図14-2に示すように、登録済ソースとサービスページが表示されます。

4. 「追加」をクリックして新しいソースを登録します。図14-3に示すように、「新規ソースの登録」ページが表示されます。

図14-3 「新規ソースの登録」ページ

5. 新しいソースに関する次の情報を入力します。

- 名前: ソースの論理名。

- 説明: ソースの説明。

- タイプ: UDDI v3レジストリ・インポート、URLからのWSILインポート、ファイルからのWSILインポートの3つのオプションからいずれかを選択します。
入力する必要がある追加情報は、選択したオプションによって異なります。

6. UDDI v3レジストリ・インポートを選択した場合は、次の情報を入力します。

- 「ソースURL」フィールドに、UDDI照会URL、たとえばhttp://somehost/uddi/inquiryを入力します。

- サービスをUDDIソース(外部UDDIレジストリ)にパブリッシュできるようにするには、「有効化」ボックスを選択してフィールドに次のように入力します。

- パブリッシュURLフィールドで、サービスのパブリッシュ先となるレジストリのURLロケーションを入力します。

- 「セキュリティURL」フィールドに、レジストリにアクセスするために必要なセキュリティ・ポートのURLロケーションを入力します。

- 「ユーザーID」および「パスワード」フィールドに、レジストリにアクセスするために必要なセキュリティ資格証明を入力します。

7. 「URLからのWSILインポート」を選択した場合は、次の情報を入力します。

- 「ソースURL」フィールドに、WSILの場所をURL形式で入力します。

- WSILにアクセスするためにユーザー名とパスワードが必要な場合は、Basic認証フィールドで「有効化」ボックスを選択します。「ユーザーID」および「パスワード」フィールドに、ユーザー名とパスワードを入力します。

8. 「ファイルからのWSILインポート」を選択した場合は、「参照」(「WSILファイル」フィールドの横)をクリックしてインポートするWSILファイルを選択します。

9. 「OK」をクリックしてソースを登録します。

UDDIソースからのWebサービスの登録

登録済UDDIソースからWebサービスを登録するには、この項の手順に従います。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスを登録するドメインを表示します。

2. ドメインを選択します。

3. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図14-1に示すように、「登録済ソース」ページが表示されます。

4. サービスの登録元となるUDDIソースを選択します。UDDIソースの「タイプ」は、UDDI v3レジストリ・インポートとして指定することに注意してください。

5. Webサービスの登録を選択します。
図14-4に示すように、「新規サービスの登録」ページが表示されます。

図14-4 UDDIソースからの新規サービスの登録

「新規サービスの登録」ページには、読取り専用形式のソース情報、および登録できるUDDIで使用可能なサービスのリストが表示されます。

サービス名および「サービス・キー」フィールドを使用して、表示される使用可能なサービスのリストをフィルタできます。たとえば、電卓(calculator)サービスを検索するには、サービス名フィールドにcalcと入力します。電卓(calculator)サービスなど、文字列calcを含むサービスのみが表示されます。検索では大文字と小文字は区別されません。

ページのUDDIで使用可能なサービスセクションで、サービス詳細の表示アイコンをクリックして、表内の各サービスのサービス詳細をUDDIから表示できます。UDDIからのサービス詳細ウィンドウには、特にサービス名、サービスの説明、サービスのWSDL、サービス・キー、ビジネス・キー、およびサービス場所などのサービスに関する情報が表示されます。

「編集」アイコンをクリックして、サービスの詳細を編集できます。これにより、選択したサービスの名前と説明を変更できます。

6. ページのUDDIで使用可能なサービスセクションで、ソースから登録する1つ以上のサービスを選択し、「登録」をクリックします。
サービスが正常に登録されたことを示す確認メッセージが表示されます。

WSILソースからのWebサービスの登録

登録済WSILソースからWebサービスを登録するには、この項の手順に従います。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスを登録するドメインを表示します。

2. ドメインを選択します。

3. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図14-1に示すように、登録済ソースとサービスページが表示されます。

4. サービスの登録元となるWSILソースを選択します。WSILソースの「タイプ」は、「ファイルからのWSILインポート」または「URLからのWSILインポート」として指定することに注意してください。

5. Webサービスの登録を選択します。
図14-5に示すように、「新規サービスの登録」ページが表示されます。

図14-5 WSILソースからの新規サービスの登録

「新規サービスの登録」ページには、読取り専用形式のソース情報、およびWSILで使用可能なサービス表に示すように、登録できるWSILで使用可能なサービスのリスト(あれば)が表示されます。WSILにWSIL参照がある場合は、それらが「WSILで使用可能な参照」表にリストされます。

WSILで使用可能なサービス表で、「編集」アイコンをクリックして、サービスの詳細を編集できます。これにより、選択したサービスの名前と説明を変更できます。

6. 現在のWSILから使用可能なサービスを登録するには、WSILで使用可能名サービス表でサービスを選択して、「登録」をクリックします。
サービスが正常に登録されたことを示す確認メッセージが表示されます。

7. 現在のWSILが別のWSIL URLや参照も参照している場合は、「WSILで使用可能な参照」を開いて表示します。参照されているWebサービスも登録できます。
現在のWSILのかわりに参照されているWSILからサービスを登録するには、「WSILで使用可能な参照」表でその参照の「プロセス」アイコンをクリックします。

WSILが正常に解析されると、新しいソースが登録され、現在のWSILソースが参照されているWSILに置き換えられます。参照されているWSILソースで使用可能なサービスが、WSILで使用可能なサービス表にリストされます。これで参照されているWSILからサービスを登録できます。

注意:
作成された各新規ソースには、親ソース名に_nを付加した名前が付けられます。たとえば、親ソース名がwsil_file_1の場合、参照されている新規ソースの名前は、ソース・タイプWSIL URLを含むwsil_file_1_1、wsil_file_1_2)になります。新しいソースは、登録済ソースとサービスページの「ソース」表にリストされます。

WSILが正常に解析されなかった場合は、エラー・メッセージが表示されます。通常そのような場合でも、選択されたWSIL参照に対して新しいソースは正常に登録されます。ただし、システムがWSILドキュメントを解析できなかったために、エラー・メッセージが表示されます。エラー・ダイアログを閉じて、「OK」をクリックして登録済ソースとサービスページに戻ります。

WSIL解析は、参照が不適切であるか認可証明書が必要な場合には失敗します。[ソースの登録]で説明されているように、WSILソースの認可を有効化できます。

注意:

接続やその他の不具合が原因で、システムが登録済ソースからのWebサービスの取得に失敗した場合は、「新規サービスの登録」ページにソースの読取り専用情報が表示されますが、Webサービスは表示されません。このような場合は、エラー・ダイアログが表示されている場合は、エラー・ダイアログで「OK」をクリックし、それから「新規サービスの登録」ページで「OK」をクリックして、ソースとサービスの登録ページに戻ります。問題解決方法として、他の方法により登録済ソースを表示します。たとえば、ソースのタイプに応じて、次の方法を実行します。

- WSIL URLソース: URLをブラウザのアドレス・バーにコピーしてその内容を表示します。

- WSILファイル・ソース: XMLエディタを使用してWSILファイルを調べます。

- UDDIソース: UDDIレジストリに直接アクセスして調べます。

また、関連するEnterprise Managerエラー・ログを確認することもできます。

WebサービスまたはWebサービス・ソースの削除

この項の手順に従ってWebサービスまたはWebサービス・ソースを削除します。

1. ナビゲータ・ペインで「WebLogicドメイン」を開き、Webサービスを削除するドメインを表示します。

2. ドメインを選択します。

3. Fusion Middleware Controlを使用して、「WebLogicドメイン」→「Webサービス」→「登録済サービス」を選択します。図14-2に示すように、登録済ソースとサービスページが表示されます。

4. 次のいずれかを実行します。

- ソースを削除するには、「ソース」表からソースを選択し、「削除」をクリックします。
確認メッセージが表示されます。「OK」をクリックしてソースを削除します。

- サービスをソースから削除するには、「ソース」表からソースを選択します。
「サービス」表に登録済Webサービスが表示されます。

削除するサービスを「サービス」表から選択し、「削除」をクリックします。

確認メッセージが表示されます。「OK」をクリックしてサービスを削除します。

WebサービスのUDDIへのパブリッシュ

登録済のUDDIソースから、あるいはADF、WebCenter、Java EEの各アプリケーションのWebサービスのサマリー・ページから、UDDIにWebサービスをパブリッシュできます。登録済UDDIソースは、登録済ソースとサービスページにリストされます。これにはドメインに登録されているすべてのソースとサービスが含まれます。「Webサービスのサマリー」ページには、アプリケーション内のWebサービスがリストされます。

注意:
サービスをUDDIにパブリッシュするには、プロキシを使用する必要があります。これはファイアウォールより外側のURLにアクセスする必要があるためです。必要なプロキシ設定の詳細は、「UDDIのプロキシ・サーバーの構成」を参照してください。
サービスがすでにOracle Enterprise Repository(OER)に存在する場合、OER交換ユーティリティを使用してそれらのサービスをOracle Service Registryにパブリッシュする必要があります。

次の手順では、WebサービスをUDDIにパブリッシュする方法について説明します。

- 「登録済ソースからUDDIへのWebサービスのパブリッシュ」

- 「アプリケーションからUDDIへのWebサービスのパブリッシュ」

- 「UDDIのプロキシ・サーバーの構成」

登録済ソースからUDDIへのWebサービスのパブリッシュ

Webサービスを登録済ソースからUDDIにパブリッシュする手順

1. 「登録済ソースとWebサービスの表示」の説明に従って、登録済ソースとサービスページに移動します。

2. 「ソース」表でソース行を選択してから、「UDDIにパブリッシュ」を選択します。

図14-6 「UDDIにパブリッシュ」が選択された登録済ソースとサービスページ

3. サービスをUDDIにパブリッシュウィンドウで、パブリッシュするサービスに関する情報を入力します。

- 「サービス名」は、UDDIレジストリにパブリッシュされるWebサービスの名前です。これは必須フィールドです。

- 「サービスの説明」は、選択したWebサービスの説明です。

- サービス定義の場所は、サービス定義のURLロケーションです。これは必須フィールドです。

- UDDIソースは、サービスの登録元となるUDDIソースの名前です。これは読取り専用フィールドです。

- 「ビジネス名」は、UDDIレジストリ内のデータ構造の名前です。ビジネスがすでにUDDIに登録されていることが前提です。リストからビジネス名を選択します。これは必須フィールドです。

図14-7 サービスをUDDIソースからUDDIウィンドウにパブリッシュ

4. サービスをUDDIにパブリッシュウィンドウで「OK」をクリックします。
システムにより、指定されたサービスが有効なWSDLを持つこと、そしてUDDIレジストリが新しいエントリを受け入れたか既存のエントリを更新したことが検証されます。正常であれば、確認メッセージが表示され、サービスがレジストリにパブリッシュされます。サービスがUDDIにパブリッシュされると、「UDDIソースからのWebサービスの登録」の説明に従って、そのサービスをソースに登録できるようになります

操作中にエラーが発生すると、エラー・メッセージが出力されます。

ソースに登録できるのは、一意のWSDLを使用しているサービスのみであることに注意してください。

アプリケーションからUDDIへのWebサービスのパブリッシュ

WebサービスをアプリケーションからUDDIにパブリッシュする手順

1. 「アプリケーションの「Webサービスのサマリー」ページへの移動」の説明に従って、「Webサービスのサマリー」ページに移動します。

2. ページの「Webサービスの詳細」セクションで、パブリッシュするサービスを選択します。

3. 「アクション」→「UDDIにパブリッシュ」を選択します。図14-8を参照してください。

図14-8 「UDDIにパブリッシュ」が選択された「Webサービスのサマリー」ページ

4. サービスをUDDIにパブリッシュダイアログ・ボックス(図14-9)で、パブリッシュするサービスに関する情報を入力します。

- 「サービス名」は、UDDIレジストリにパブリッシュされるWebサービスの名前です。これは必須フィールドです。

- 「サービスの説明」は、選択したWebサービスの説明です。

- サービス定義の場所は、サービス定義のURLロケーションにより事前に入力されています(これは読取り専用フィールドです)。

- UDDIソースは、UDDIレジストリ・ソースの論理名です。リストからUDDIソースを選択します。これは必須フィールドです。

注意:
リストには、ドメインに登録済のパブリッシュを有効化されたUDDIソースが含まれます。登録済ソースの詳細は、「Webサービスとソースの登録」を参照してください。

- 「ビジネス名」は、UDDIレジストリ内のデータ構造の名前です。ビジネスがすでにUDDIに登録されていることが前提です。リストからビジネス名を選択します。これは必須フィールドです。

図14-9 サービスをUDDIにパブリッシュダイアログ・ボックス

5. 「OK」をクリックして外部のUDDIレジストリに接続し、Webサービスを登録します。
サービスが正常に登録されると、確認メッセージが表示されます。操作中にエラーが発生すると、エラー・メッセージが出力されます。

UDDIのプロキシ・サーバーの構成

サービスをUDDIにパブリッシュするには、ファイアウォールより外側のURLにアクセスするため、プロキシを使用する必要があります。

Oracle WebLogicを起動する前に、表14-1に定義されているJavaシステム・プロパティを設定する必要があります。これらは環境変数として設定するか、Oracle WebLogic起動ファイルの中で設定します。

表14-1 UDDIのプロキシ・サーバーを指定するために使用されるJavaシステム・プロパティ

プロパティ

説明

proxySet=true

WebLogicプロキシ・プロパティを使用するかどうかを指定するフラグ。

http.proxyHost=proxyHost

プロキシ・サーバーを実行しているホスト・コンピュータの名前。

http.proxyPort=proxyPort

プロキシ・サーバーがリスニングしているポート。

http.nonProxyHosts=hostname | hostname | ...

プロキシを回避して直接到達する必要のあるホストのリスト。各ホスト名を「|」記号で区切ります。

たとえば、次のようにします。

set PROXY_SETTINGS="-DproxySet=true -Dhttp.proxyHost=www-proxy.example.com -Dhttp.proxyPort=80 -Dhttp.nonProxyHosts=localhost|${HOST}|*.example.com"

Webサービスの監査

監査は、セキュリティ・イベントおよびそれらのイベントの結果に関する情報の収集および格納のプロセスを説明します。監査では、選択したシステムのアクティビティに関する電子的証跡が提供されます。

監査ポリシーでは、実行時に取得されるイベントのタイプおよびスコープが定義されます。操作中は非常に大きなシステムおよびユーザー・イベントの配列が発生しますが、実際に監査されるイベントは、実行時に有効な監査ポリシーによって異なります。コンポーネント固有またはアプリケーション固有のポリシーを定義するか、個々のユーザーを監査できます。

監査ポリシーページを使用して、Webサービスおよびドメイン・レベルのアプリケーションなどの、システム・コンポーネントの監査を構成できます。SOA、ADFおよびWebCenterサービスを監査できます。

図14-10 監査ポリシーページ

ページ中央の監査ポリシーの表には、現在有効な監査が表示されます。表には、次の情報が含まれます。

- 名前: 監査できるシステム・コンポーネントおよびアプリケーションの名前。

- 監査の有効化: 現在監査が有効にされているコンポーネントおよびアプリケーションを識別します。

- フィルタ: 現在有効な任意のフィルタを指定します。

次の表では、Webサービスおよび関連するコンポーネントで監査できるイベントがまとめられています。

表14-2 Webサービスのイベントの監査

監査を有効にするWebサービスのイベント

使用するシステム・コンポーネント

- ユーザー認証。

- ユーザー認可。

- メッセージ機密保護、メッセージ整合性およびセキュリティ・ポリシーを含むポリシー強制。

Oracle Web Services Manager: エージェント

- Webサービス・リクエストの送信と、レスポンスの受信。

- SOAPフォルトの発生。

Oracle Webサービス

- Oracle WSMアサーション・テンプレートの作成、削除または変更。

- Oracle WSMポリシーの作成、削除または変更。

- Oracle WSMポリシー・セットのオーサリング作成、削除または変更。

Oracle Web Services Manager: ポリシー・マネージャ

注意: ポリシー・マネージャは、直接ポリシー添付とポリシー・セットのグローバル・ポリシー添付の両方を監査します。

- Oracle WSMポリシー添付。

Oracle Web Services Manager: ポリシー添付

注意: ポリシー添付は、直接ポリシー添付のみを監査します。

また、管理者によるすべてのイベントを監査するなど、特定ユーザーのイベントを監査できます。

監査ポリシーの構成の詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドの監査の構成および管理に関する項を参照してください。

次の項では、監査ポリシーを定義し監査データを表示する方法を説明します。

- 監査ポリシーの構成

- 監査データの収集および格納の管理

- 監査レポートの表示

監査ポリシーの構成

この項の手順に従って監査ポリシーを構成します。

1. ナビゲータ・ペインで「WebLogicドメイン」を開きます。

2. アサーション・テンプレートを管理するドメインをクリックします。

3. 「WebLogicドメイン」メニューから、「セキュリティ」→「監査ポリシー」を選択します。
「監査ポリシー設定」ページが表示されます。

4. 「監査レベル」メニューから監査レベルを選択します。
有効な監査レベルは次のとおりです。

- なし: 監査を無効にします。

- 低: 小さいスコープのイベントを監査します。イベントのサブセットは、各コンポーネントについて個別に事前定義されます。たとえば、あるコンポーネントに「低」を指定すると、認証および認可イベントのみが収集されます。

- 中: 中程度のスコープのイベント(「低」レベルで収集されたイベントのスーパーセット)を監査します。たとえば、あるコンポーネントに「中」を指定すると、認証、認可およびポリシー認可イベントが収集されます。

- カスタム: カスタム監査ポリシーを使用できるようになります。

監査ポリシー・リストの各レベルで、監査に対して選択したコンポーネントおよびアプリケーションを表示できます。「カスタム」以外のすべての監査レベルで、監査ポリシー・リストの情報はグレーで表示され、他の監査レベル設定はカスタマイズできなくなっています。

5. 「カスタム」監査レベルを選択した場合は、次のいずれかの手順を実行します。

- 「監査の有効化」列で、関連するチェック・ボックスを選択して、監査する情報を選択します。
コンポーネントのすべてのイベント、コンポーネント・イベント・グループ内のすべてのイベント、個々のイベント、または個々のイベントの特定の結果(成功または失敗など)などの粒度のレベルで監査できます。

イベントの結果レベルで編集フィルタを指定できます。フィルタはルールベースの式で、戻りイベントを制御するように定義できます。たとえば、ポリシーが特定のユーザーによって作成、変更または削除された場合に、ポリシー管理操作を追跡するフィルタとしてイニシエータを指定できます。結果レベルでフィルタを定義するには、適切な列で「フィルタの編集」アイコンをクリックし、フィルタ属性を指定して「OK」をクリックします。フィルタ定義は「フィルタ」列に表示されます。

サブコンポーネントの監査をカスタマイズするには、より高いレベルのコンポーネントのチェック・ボックスを選択解除します。すべてのコンポーネントとアプリケーションを選択するには、列名に隣接するチェック・ボックスを選択します。

- すべてのシステム・コンポーネントおよびアプリケーションの障害のみを監査するには、「障害のみ選択」を使用します。
選択すると、「監査の有効化」列のすべてのチェック・ボックスが選択解除されます。

6. 必要に応じて、常に監査するユーザーボックスに、ユーザーをカンマで区切って入力します。
指定されたユーザーは、監査が有効または無効にされているか、またはどのレベルの監査が設定されているかにかかわらず常に監査されます。

7. 「適用」をクリックします。
現在のセッション中に行ったすべての変更を戻すには、「元に戻す」をクリックします。

監査データの収集および格納の管理

監査情報のデータの収集および格納を管理するには、次のタスクを実行する必要があります。

- 監査データ・リポジトリの設定および管理。
ファイルまたはデータベースのいずれかのリポジトリ・モードを使用して、レコードを格納できます。データベース・リポジトリ・モードの使用をお薦めします。Oracle Business Intelligence Publisherベースの監査レポートは、データベース・リポジトリ・モードでのみ機能します。

- 監査イベント収集の設定。

詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドの監査ストアの管理に関する項を参照してください。

監査レポートの表示

データベース・リポジトリの場合、データはOracle Business Intelligence Publisherで事前定義されたレポートを介して公開されます。

認証および認可の履歴、Oracle WSMポリシー強制および管理など、多くの事前定義済レポートを使用できます。Oracle Business Intelligence Publisherによる監査レポートの生成および表示の詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドの監査分析の使用およびレポートに関する項を参照してください。

ファイルベース・リポジトリの場合、テキスト・エディタを使用してバスストップ・ファイルを表示し、独自のカスタム問合せを作成できます。

WSDLの管理

WebサービスWSDLを一般に公開したくない場合もあります。「Webサービス・エンドポイント」ページから、WSDLへのパブリック・アクセスを有効または無効にできます。

注意:
起動中に、Webサービス・クライアントからWSDLへのアクセスが必要な場合もあります。WSDLへのパブリック・アクセスを無効にすると、クライアントにはWSDLのローカル・コピーが必要になります。

WSDLを管理する手順

1. 「Webサービス・エンドポイントの構成」で説明されているように、Webサービスのエンドポイント構成ページに移動します。

2. 「構成」タブで、「WSDL対応」フィールドを「TRUE」または「FALSE」に設定して、WSDLへのパブリック・アクセスを有効または無効にします。

3. 「適用」をクリックします。

実行中のクライアントへのセキュリティの追加

セキュリティ・ポリシーは、Oracle Enterprise Manager Fusion Middleware Controlを使用して、実行中のクライアントに添付できます。クライアントへのポリシーの添付または解除を実行するために、クライアント・アプリケーションを再デプロイする必要はありません。Fusion Middleware Controlを使用したポリシーの添付方法の詳細は、第8章「Webサービスへのポリシーの添付」を参照してください。

プラットフォーム・ポリシー・プロパティの構成

次のコンポーネントのプロパティは、「プラットフォーム・ポリシー構成」ページから管理できます。

- ポリシー・アクセッサ

- ポリシー・キャッシュ

- ポリシー・インターセプタ

- アイデンティティ拡張

- 信頼できるSAMLクライアント

- 信頼できるSTSサーバー

ポリシー・アクセッサ、ポリシー・キャッシュ、ポリシー・インターセプタ、およびアイデンティティ拡張プロパティを管理する手順

1. ナビゲータ・ペインで「WebLogicドメイン」を開いてドメインを表示します。

2. プロパティを管理するドメインを選択します。

3. 「WebLogicドメイン」→「Webサービス」→「プラットフォーム・ポリシー構成」を選択します。
図14-11に示すように、「プラットフォーム・ポリシー構成」ページが表示されます。

図14-11 「プラットフォーム・ポリシー構成」ページ

4. プロパティを定義するコンポーネントに対応するタブを選択します。

- ポリシー・マネージャの接続の構成およびポリシー・キャッシュのチューニング

- Webサービス・ポリシー取得の構成

- Webサービス・セキュリティ・ポリシー強制のチューニング

- アイデンティティ拡張プロパティの定義

- 署名証明書の信頼できる発行者および信頼できるDNリストの定義

ポリシー・マネージャの接続の構成およびポリシー・キャッシュのチューニング

デフォルトでは、Oracle Web Services Manager (WSM)は自動検出機能をサポートしており、この機能を使用して同じWebLogicドメイン内のOracle WSM Policy Managerを検索してこれに接続します。シナリオによっては、自動検出が期待通りに機能しない場合があります。

注意:
SSLを使用するよう構成されているサーバーにOracle WSM Policy Managerがデプロイされると、自動検出メカニズムは、他のSSL構成サーバー上のポリシー・マネージャへの接続のみを試みます。安全な接続を保持するために、SSLに対応するよう構成されていないサーバーにデプロイされたポリシー・マネージャは無視されます。

たとえば次の場合には、自動検出機能を無効にできます。

- ドメインのネットワークが2つ以上に分割されている場合(特に、ファイアウォールがネットワーク間に存在する場合)。

- WebSphere Application Serverなど、自動検出機能をサポートしないWebLogic以外のアプリケーション・サーバーで実行中の場合。

- デフォルト設定をオーバーライドする場合。

Oracle Infrastructure Webサービス・ポリシーの場合、「プラットフォーム・ポリシー構成」ページで、次の操作を行えます。

- 「ポリシー・アクセッサ」タブでは、ポリシー・マネージャにアクセスするための代替ポリシー・マネージャURLおよび対応する資格証明を指定できます。

- 「ポリシー・キャッシュ」タブでは、Webサービス・エンドポイントのポリシー・キャッシュ遅延の動作をチューニングすることにより、ネットワーク・コールを回避し、ポリシー・マネージャからポリシーをフェッチする際のパフォーマンスを向上できます。

ポリシー・マネージャの接続を構成し、ポリシー・キャッシュをチューニングする手順は、次のとおりです。

1. 「プラットフォーム・ポリシー・プロパティの構成」で説明されているように、「プラットフォーム・ポリシー構成」ページにアクセスします。

2. 「ポリシー・アクセッサ」タブを選択します。

3. 「追加」をクリックして、JNDIプロバイダを定義します。
「プロパティの追加」ウィンドウで、次の値を指定します。

1. 「名前」フィールドで、JNDIプロバイダURLプロパティをjava.naming.provider.urlとして入力します。

2. 「値」フィールドに、JNDIプロバイダのURL (例: t3://host:port)を入力します。

3. 「OK」をクリックします。

4. 「追加」をクリックして、対応するcsf-key資格証明プロパティを定義します。「プロパティの追加」ウィンドウで、次の値を指定します。

1. 「名前」フィールドで、JNDIプロバイダのcsf-key資格証明プロパティの名前をjndi.lookup.csf.keyとして入力します。

2. 「値」フィールドで、csf-key資格証明を入力します。
Policy Managerはセキュリティが有効なため、JNDI URLを使用してPolicy Managerを検索するときに、csf-keyはjava.naming.security.principalおよびjava.naming.security.credentialsを指定します。

3. 「OK」をクリックします。

資格証明の格納、取得および削除の詳細は、「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

5. 「ポリシー・キャッシュ」タブを選択します。

6. Webサービス・エンドポイントのポリシー・キャッシュ・プロパティを変更するには、目的のプロパティを選択して「編集」をクリックします。「プロパティの編集」ウィンドウで、「値」フィールドを編集して各プロパティのデフォルト値を変更できます。

1. cache.tolerance: ポリシー・キャッシュのリフレッシュ間隔(ミリ秒単位)。この設定により、Webサービス・エンドポイント・ポリシー・キャッシュから最新バージョンのポリシー・セットが取得されるようになります(つまり、cache.tolerance値を超えません)。ポリシー・セットが失効していると判断された場合は、Oracle WSM Policy Managerから最新のポリシー・セットがWebサービス・エンドポイント・ポリシー・キャッシュに取得され、リフレッシュされます。デフォルトは60000ミリ秒(1分)です。
注意: Webサービスのエンドポイントのリフレッシュ間隔の遅延時間は、Oracle WSM Policy Managerの「ポリシー・アクセッサ」タブのcache.refresh.repeatプロパティの値とともに集計されます。したがって、cache.refresh.repeatの時間と組み合せた場合に、この追加の値によって必要なリフレッシュの遅延が発生するかどうかを検証する必要があります。詳細は、「WSMリポジトリ接続のチューニング」を参照してください。

2. 別のプロパティを追加するには、「追加」をクリックし、「プロパティの追加」ウィンドウで、必要な値を指定します。

3. 「OK」をクリックします。

7. 既存のプロパティを変更するには、それを選択してから「編集」をクリックします。

8. 既存のプロパティを削除するには、それを選択してから「削除」をクリックします。

9. 「適用」をクリックしてプロパティの更新を適用します。

Webサービス・ポリシー取得の構成

「ポリシー・アクセッサ」タブでは、リポジトリからのOracle WebLogic Webサービス・ポリシーの取得を構成することもできます。これには、リポジトリの場所(JAR、ディレクトリ、またはホストとポート)およびアカウント情報の指定が含まれます。

1. 「プラットフォーム・ポリシー・プロパティの構成」で説明されているように、「プラットフォーム・ポリシー構成」ページにアクセスします。

2. 「ポリシー・アクセッサ」タブを選択します。

3. 「追加」をクリックして、ポリシー取得のプロパティを追加します。

4. 次の表を使用して、「新規構成プロパティの追加」ウィンドウでプロパティの名前と値を指定します。

表14-3 「プロパティの追加」ウィンドウのプロパティ

要素

説明

java.naming.provider.url

実行中のOracle WSM Policy Managerの場所を指定するJNDI URL(例: t3://host:port)。デフォルトでは、このプロパティは指定されていません。このプロパティを指定しないと、Oracle WSM自動検出は同じドメイン内でポリシー・マネージャの検出を試みます。

jndi.lookup.csf.key

Oracle WSMポリシー・マネージャの場所をjava.naming.provider.urlプロパティで指定する場合は、jndi.lookup.csf.keyで資格証明の構成を指定します。Oracle WSMポリシー・マネージャはセキュリティが有効になっているため、JNDI URLを使用してOracle WSMポリシー・マネージャを探す場合は、jndi.lookup.csf.keyでjava.naming.security.principalとjava.naming.security.credentialsを指定します。デフォルトでは、このプロパティは指定されていません。

次の場合には、このプロパティを構成する必要があります。

- Oracle WSM Policy Managerに接続するために、デフォルトでOracle WSMが使用するシステム・アカウントOracleSystemUserではなく、明示的にアカウントを指定する場合。

- 構成される認証プロバイダおよびLDAPディレクトリは、Oracle WebLogicで使用されるシステム・アカウントをサポートしませんが、Oracle WSMはデフォルトでこれを使用します。そのために、LDAPディレクトリ内の別のアカウントを使用する必要がある場合。

- 特定のアプリケーション・サーバーにデフォルトのシステム・アカウントの概念がなく、システムがシステム・アカウントに依存できない場合。

デフォルト・ユーザーの変更の詳細は、「デフォルト・ユーザーの変更」を参照してください。

5. 既存のプロパティを変更するには、それを選択してから「編集」をクリックします。

6. 既存のプロパティを削除するには、それを選択してから「削除」をクリックします。

7. 「適用」をクリックしてプロパティの更新を適用します。

WSMリポジトリ接続のチューニング

「ポリシー・アクセッサ」タブのプロパティを使用すると、(高可用性のための)再試行ロジックやキャッシュ・リフレッシュ率など、エージェントとOracle WSM Policy Managerの間の接続を構成することもできます。

構成管理システムは、ポリシー・マネージャに定期的に接続します(たとえば、接続情報が変化する状況に対処するため)。ランタイムが再接続を試みたときにポリシー・マネージャが停止している場合は、connect.retry.delayプロパティの値を使用して、再試行のタイミングが決まります。

初期接続が行われてもOracle WSMリポジトリが正常に動作していない場合、サービスは非操作状態で開始します。failure.retry.countプロパティおよびfailure.retry.delayプロパティの値を調整して、エージェントがポリシー・マネージャとの通信を試みてリポジトリにアクセスする回数と、再試行の間隔を決定できます。リポジトリが使用可能になると、サービスは操作可能になります。

cache.refresh.initialプロパティおよびcache.refresh.repeatプロパティを調整して、エージェントがキャッシュ済のドキュメントをリフレッシュするためにポリシー・マネージャへのアクセスを試みる頻度を変更できます。missing.retry.delayプロパティは、エージェントが取得できなかったドキュメントを取得するためにポリシー・マネージャへの接続を試みる頻度を指定します。ポリシー・マネージャとの通信が失敗したために(たとえば、ポリシー・マネージャの停止が原因)、ドキュメントまたは関連ドキュメントのグループ(ポリシー・セットなど)を取得できなかった場合、missing.retry.delayプロパティは、ポリシー・マネージャが修正されるまで、ポリシー・マネージャとの通信を試みる頻度に引き続き影響します。

これらのプロパティの設定を表示および変更する手順は、次のとおりです。

1. 「プラットフォーム・ポリシー・プロパティの構成」で説明されているように、「プラットフォーム・ポリシー構成」ページにアクセスします。

2. 「ポリシー・アクセッサ」タブを選択します。

3. 表内のプロパティを選択して、「編集」をクリックします。
表14-4は、使用可能なプロパティとそのデフォルト設定を示しています。

表14-4 WSMリポジトリ接続のチューニング・プロパティ

プロパティ

説明

デフォルト

connect.retry.delay

ポリシー・マネージャへの接続が失敗した後に接続を再試行するまでの待機時間(ミリ秒数)。

600000ミリ秒(10分)

cache.refresh.initial

最初のキャッシュ・リフレッシュまでの待機時間(ミリ秒数)。

600000ミリ秒(10分)

cache.refresh.repeat

次のキャッシュ・リフレッシュまでの待機時間(ミリ秒数)。

600000ミリ秒(10分)

missing.retry.delay

不足ドキュメントの取得を試行するまでの待機時間(ミリ秒数)。

15000ミリ秒

usage.record.delay

使用状況データを送信するまでの待機時間(ミリ秒数)。

30000ミリ秒

failure.retry.count

通信失敗後に再試行する回数。

2 (再試行回数)

failure.retry.delay

次の再試行までの待機時間(ミリ秒数)。デフォルトは5000ミリ秒です。

4. 必要な変更を入力して、「OK」をクリックします。

5. 必要に応じて残りのプロパティを編集し、「適用」をクリックしてプロパティの更新を適用します。

Webサービス・セキュリティ・ポリシー強制のチューニング

「ポリシー・インターセプタ」タブのBindingSecurityInterceptorプロパティを使用して、システム・クロック間のデフォルト・メッセージ・タイムスタンプの時間差、ポリシー・キャッシュ内のnonceメッセージの存続時間、およびメッセージの有効期限を調整することにより、セキュリティ・ポリシー強制をチューニングできます。

セキュリティ・ポリシー強制をチューニングする手順は、次のとおりです。

1. 「プラットフォーム・ポリシー・プロパティの構成」で説明されているように、「プラットフォーム・ポリシー構成」ページにアクセスします。

2. 「ポリシー・インターセプタ」タブを選択します。

3. リストでBindingSecurityInterceptorセキュリティ・プロパティを選択します。

4. 表14-5は、Webサービス・セキュリティ・ポリシー強制をチューニングするために設定できるプロパティを示しています。
BindingSecurityInterceptorセキュリティ・プロパティを変更するには、それを選択してから「編集」をクリックします。「プロパティの編集」ウィンドウで、「値」フィールドを編集して各プロパティのデフォルト値を変更し、「OK」をクリックします。

表14-5 Webサービス・セキュリティ・ポリシー強制のチューニング・プロパティ

プロパティ

説明

デフォルト

agent.clock.skew

クライアント・マシンとサーバー・マシンの間での時間差の許容範囲(秒単位)。たとえば、メッセージのタイムスタンプがタイムゾーンの異なるサービスに送信された場合に、このプロパティで指定された許容時間が許容されます。

次の場合にagent.clock.skewを増加します。

- サーバーのクロックがクライアントのクロックより進んでいる場合。サーバーのクロックがクライアントのクロックより進んでいる場合は、agent.clock.skewを増加します。たとえば、サーバーのクロックがクライアントのクロックより10分進んでいる場合は、サーバーのagent.clock.skewを10分に増加します。

- クライアントのクロックがサーバーのクロックより進んでいる場合。クライアントのクロックがサーバーのクロックより進んでいる場合は、agent.clock.skewを増加します。たとえば、クライアントのクロックがサーバーのクロックより10分進んでいる場合は、サーバーのagent.clock.skewを10分に増加します。

360秒(6分)

agent.client.clock.skew

SAMLまたはJWTトークンを生成するためのNotBefore条件およびNotOnOrAfter条件の計算で使用される許容時間(秒単位)。これらの条件はともに、トークンの有効性を制限する下限と上限を定義します。

注意: デフォルトでは、このプロパティはBindingSecurityInterceptorインターセプタ・プロパティの表に表示されません。プロパティ値を変更するには、表にプロパティを追加します。そのためには、「追加」をクリックし、「名前」フィールドにagent.client.clock.skewを設定し、「値」フィールドに目的の値を設定して、「OK」をクリックします。

0秒

agent.nonce.ttl

Nonceがメッセージで送信されるときの、キャッシュ内でのNonceの合計存続時間(秒単位)。このプロパティにより、Nonceはキャッシュされ、この時間を超えるとキャッシュから削除されます。

注意: ユーザー名トークンの設定では、リプレイ攻撃を避けるために、「必要な作成時間」および「必要なNonce」の両方のプロパティを有効にする必要があります。「必要なNonce」のみが有効な場合、Nonceはリプレイ攻撃を避けるために永久にキャッシュされます。また、agent.nonce.ttlの値をagent.expire.timeに設定された値以上に設定する必要があります。

28800秒(8時間)

agent.expire.time

メッセージが作成されてから期限切れになるまでの時間(秒単位)。このプロパティは、タイムスタンプがSOAPヘッダーで送信される場合に、タイプスタンプが期限切れかどうかを検証するために使用されます。

クライアントとサービスのクロックの間に時間差がない場合でも、サービスが受信したときにメッセージが期限切れの場合は、メッセージの有効期限を増加する必要があります。メッセージの有効期限は、agent.expire.timeおよび受信メッセージ内の有効期限の値に基づき、2つのうちの小さい方の値になります。たとえば、サーバーのagent.expire.timeが5分に設定されていて、受信メッセージの有効期限が6分の場合、サービス側のagent.expire.timeを大きくする必要があります。これに対し、サーバーのagent.expire.timeが5分で、受信メッセージの有効期限が3分の場合は、受信メッセージ(つまり、クライアント側)の有効期限を大きくする必要があります。agent.expire.timeの値が高いほど、セキュリティが脆弱になる可能性があります。

300秒(5分)

agent.allow.all.xpaths

Oracle WSMがすべてのタイプのXPath変換を許容するかどうかを指定するプロパティ。デフォルトでは、Oracle WSMが(受信soapメッセージ内の)署名内で許容するXPath変換はancestor-or-self::*[namespace-uri()='<namespace>'およびlocal-name()='<name>']のみです。すべてのタイプのXPath変換を許可および許容するには、このプロパティをtrueに設定します。

注意: このプロパティを有効化すると、XPathベースのサービス拒否攻撃または他の類似のXPathベースのセキュリティ脆弱性が生じる可能性があります。

false

5. 既存のプロパティを削除するには、それを選択してから「削除」をクリックします。

6. 「適用」をクリックしてプロパティの更新を適用します。

アイデンティティ拡張プロパティの定義

アイデンティティ拡張タブのプロパティにより、WSDLのX509資格証明をパブリッシュしてWebサービス・ポリシーを強制するかどうかを指定できます。X509証明書を公開する必要がない場合は(たとえばSSLの場合など)、デフォルトの設定をオーバーライドして証明書を公開しないようにすることができます。さらに、X509証明書をパブリッシュする場合は、ホスト名検証機能を無視するかどうかも指定できます。

詳細は、「サービス・アイデンティティ証明拡張の使用」を参照してください。

署名証明書の信頼できる発行者および信頼できるDNリストの定義

Fusion Middleware Controlの「信頼できるSAMLクライアント」タブ、「信頼できるJWTクライアント」タブおよび「信頼できるSTSサーバー」タブで、SAMLおよびJWT署名証明書に対して、SAMLおよびJWTの信頼できる発行者および信頼できる識別名(DN)のリストを定義できます。

注意:
SAMLおよびJWTの信頼できる発行者は、WLSTを使用して定義する(「WLSTを使用した信頼される発行者の定義とDNリストの管理」を参照)、またはREST APIを使用して定義できます(『Oracle Web Services Managerでの資格証明およびキーストアの管理のためのREST API』の信頼構成の管理に関する項を参照)。

信頼できる発行者を追加するには、この方法を使用することをお薦めします。ここで定義する信頼できる発行者のリストが、このドメイン内のすべてのWebサービスに適用されるデフォルト・リストになります。また、この方法で発行者を追加する場合、ドメインの再起動は必要ありません。

注意:
信頼できる発行者の決定方法は、次の順位で決められます。

1. ポリシーのsaml.trusted.issuersプロパティで指定される、ポリシーに対して構成(またはオーバーライド)されている信頼できる発行者のリストが確認され、使用されます。たとえば、表C-28「wss10_saml20_token_service_templateの構成」の「saml.trusted.issuers」を参照してください。

2. ポリシーに対して構成(またはオーバーライド)されていない場合、この項で説明されているプラットフォーム・ポリシー構成での構成が確認され、使用されます。

3. 信頼できる発行者のリストがポリシーに対して構成(またはオーバーライド)されていない場合、またはプラットフォーム・ポリシー構成で構成されていない場合のみ、SAMLログイン・モジュールで定義される発行者リストが使用されます。SAMLログイン・モジュールで定義される発行者リストの詳細は、「SAMLおよびKerberosログイン・モジュールの構成」の手順4を参照してください。

デフォルトでは、Oracle WSMは、構成済発行者のリストに対して受信発行者名をチェックし、Oracle WSMキーストア内の構成済証明書に対してSAMLおよびJWTの署名をチェックします。また、信頼できるDNリストを定義する場合は、SAMLおよびJWT署名がその発行者に関連付けられている特定の証明書に基づいて署名されているかどうかも検証されます。

信頼できるDNリストの構成はオプションです。詳細な制御を必要とするユーザーは、これにより各発行者を1つ以上の署名証明書のリストに関連付けることができます。信頼できる発行者のDNリストが定義されていない場合、証明書がOracle WSMキーストアに存在する証明書によって信頼されているかぎり、その証明書に基づいて署名できます。

重要な注意事項:

- 「信頼できるSAMLクライアント」タブ、「信頼できるSTSサーバー」タブ、「信頼できるJWTクライアント」タブまたは関連するWLSTコマンドを使用して、証明書自体ではなく署名証明書のDNを定義します。

- 証明書は、Oracle WSMキーストアにインポートするか、メッセージに挿入する必要があります。証明書をメッセージに挿入する場合は、その発行者をOracle WSMキーストアにインポートする必要があります。

- 双方向SSLの場合は、次のようにします。

- Java EEコンテナのトラスト・ストアに証明書をインポートする必要があります。

- 検証にはクライアントSSL証明書のDNを使用します。このDNは信頼できるDNリストに存在している必要があります。

- どのような場合も、署名証明書はOWSMキーストアに存在する証明書によって信頼されている必要があります。

Fusion Middleware ControlまたはWLSTを使用して、信頼できる発行者およびDNリストを定義できます。

- Fusion Middleware Controlを使用した発行者およびそのDNリストの構成

- WLSTを使用した発行者およびそのDNリストの構成

Fusion Middleware Controlを使用した発行者およびそのDNリストの構成

SAML署名証明書の信頼できるDNリストを定義する手順は、次のとおりです。

1. 「プラットフォーム・ポリシー・プロパティの構成」で説明されているように、「プラットフォーム・ポリシー構成」ページにアクセスします。

2. 信頼できるSAMLクライアント(SAML送信者保証)、信頼できるSTSサーバー(SAML HOKおよびSAMLベアラー)または信頼できるJWTクライアント(JWT発行者)の信頼できるDNリストを定義するかどうかに応じて、「信頼できるSAMLクライアント」タブ、「信頼できるSTSサーバー」タブまたは「信頼できるJWTクライアント」タブを選択します。図14-12を参照してください。

図14-12 「プラットフォーム・ポリシー構成」ページでの信頼できる発行者の追加

3. ページの「信頼できる発行者」セクションで、信頼できる発行者を1件以上追加します。
デフォルト値はwww.oracle.comです。

「追加」をクリックして、新しい信頼できる発行者を追加します。たとえば、www.example.comです。

4. ページの「信頼できる発行者」セクションで、DNリストを定義する信頼できる発行者を選択します。

5. 「追加」をクリックして、ページの「信頼できるSAMLクライアント」、「信頼できるSTSサーバー」または「信頼できるJWTクライアント」領域に、1つ以上の信頼できるDNを追加します。RFC 2253に準拠する文字列を使用してください。たとえば、信頼できる発行者www.oracle.comに対して、CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=USを指定します。
RFC 2253の詳細は、http://www.ietf.org/rfc/rfc2253.txtを参照してください。

WLSTを使用した信頼できる発行者の定義およびDNリストの管理

次の各項では、WLSTコマンドを使用してSAML署名証明書およびJWTトークンに対して信頼できる発行者と信頼できる識別名(DN)リストを定義する方法と、信頼できる発行者に関連付けられたリストを表示および管理する方法について説明します。

- WLSTを使用した発行者およびそのDNリストの構成

- WLSTを使用した発行者およびDNリストの表示

- WLSTを使用した発行者およびそのDNリストの削除

- WLSTを使用した信頼メタデータのインポート

- WLSTを使用した信頼メタデータのエクスポート

- WLSTを使用した信頼できる発行者からの信頼の取消し

これらのWLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

WLSTを使用した発行者およびそのDNリストの構成

WLSTを使用して信頼できる発行者およびDNリストを構成する手順は次のとおりです。

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、信頼できる発行者を構成するドメイン内のサーバーの実行中のインスタンスに接続します。

2. setWSMTokenIssuerTrustコマンドを使用して、信頼できる発行者を追加し、信頼できるキーまたは信頼できるDNリストを定義します。

setWSMTokenIssuerTrust(type, issuer, [trustedKeyIds=None])

各項目の意味は次のとおりです。

- typeは、発行者が発行したトークンのタイプと、trustedKeyIdsで発行者署名証明書を識別する方法を示します。サポートされるタイプ値を次の表に示します。

このタイプ値の場合...

このトークン・タイプの場合...

このキー・タイプの場合...

キー識別タイプ

dns.sv

SAML SV

X509証明書

DN

dns.hok

SAML HOKまたはベアラー

X509証明書

DN

dns.jwt

JWT

X509証明書

DN

- issuerは、信頼できる発行者の名前です(www.oracle.comなど)。

- trustedKeyIdsはオプションの引数で、信頼できるキー識別子、つまり発行者のDNリストを指定するときに使用します。

このコマンドは次のように動作します。

- 指定されたタイプに対して信頼できる発行者がすでに存在する場合、trustedKeyIds引数にDNのリストを指定すると、以前のリストが新しいリストで置き換えられます。trustedKeyIds引数に空集合([])を入力すると、発行者のDN値のリストが削除されます。

- 指定されたタイプに対して信頼できる発行者が存在しない場合、trustedKeyIds引数に値を指定すると、関連するDNリストで発行者が作成されます。trustedKeyIds引数を設定しない場合は、空のDNリストで新しい発行者が作成されます。

例14-1では、www.example.comがSAML SVトークン・タイプに対する信頼できる発行者として設定されます。DNリストは指定されていません。

例14-1 WLSTを使用したSAML送信者保証に対する信頼できる発行者の設定

wls:/base_domain/serverConfig> setWSMTokenIssuerTrust("dns.sv","www.example.com",[])

the trusted DN lists are successfully set

例14-2では、信頼できるSAML発行者www.oracle.comのDNリストdns.svで、CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US'およびCN=orcladmin, OU=Doc, O=Oracle, C=US'がDNとして設定されます。

例14-2 WLSTを使用したSAMLの信頼できる発行者に対するDNの設定

wls:/base_domain/serverConfig> setWSMTokenIssuerTrust('dns.sv','www.oracle.com',
['CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle',
'CN=orcladmin, OU=Doc, O=Oracle, C=US'])

the trusted DN lists are successfully set

例14-3では、www.example.comがJWTトークン・タイプの信頼できる発行者として設定され、信頼できるDNがCN=weblogic1, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US'として設定されます。

例14-3 JWTの信頼できる発行者およびDNリストの設定

wls:/base_domain/serverConfig> setWSMTokenIssuerTrust('dns.jwt','www.example.com',
['CN=weblogic1, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US'])

JWT trusted issuers successfully set

3. オプションで、信頼できるDNにトークン属性ルールを定義して、さらにセキュリティ制約を追加できます。詳細は、「WLSTを使用した信頼できる発行者のトークン属性ルールの構成」を参照してください。

WLSTを使用した発行者およびDNリストの表示

WLSTを使用して信頼できる発行者およびDNリストを表示する手順は次のとおりです。

1. 「WebサービスのカスタムWLSTコマンドへのアクセス」の説明に従って、信頼できる発行者を表示するドメイン内のサーバーの実行中のインスタンスに接続します。

2. displayWSMTokenIssuerTrustコマンドを使用して、信頼できる発行者およびDNリストを表示します。

displayWSMTokenIssuerTrust(type, issuer=None)

type引数とissuer引数の値を指定すると、発行者のDNリストが表示されます。発行者名を指定しないと、指定されたタイプのすべての信頼できる発行者がリストされます。type引数でサポートされている値は、dns.sv、dns.hokおよびdns.jwtです。

たとえば、タイプdns.svのすべての信頼できる発行者を表示する場合は、次のようにします。

wls:/base_domain/serverConfig> displayWSMTokenIssuerTrust('dns.sv')

Starting Operation displayWSMTokenIssuerTrust ...
www.example.com
www.oracle.com

タイプdns.svの信頼できる発行者www.oracle.comのDNリストを表示する場合は、次のようにします。

wls:/base_domain/serverConfig> displayWSMTokenIssuerTrust('dns.sv', 'www.oracle.com')

Starting Operation displayWSMTokenIssuerTrust ...
CN=weblogic, OU=Orakey Test Encryption purposes only, O=OracleCN=orcladmin, OU=Doc, O=Oracle, C=US

WLSTを使用した発行者およびそのDNリストの削除

deleteWSMTokenIssuerTrust WLSTコマンドを使用して、信頼できる発行者およびそのDNリストを削除できます。

deleteWSMTokenIssuerTrust(issuer, type)

type引数でサポートされている値は、dns.sv、dns.hokおよびdns.jwtです。

次の例では、発行者www.example.comと、その発行者の信頼できるSAML送信者保証クライアント・リストdns.sv内のDNリスト(ある場合)が削除されます。

wls:/base_domain/serverConfig> deleteWSMTokenIssuerTrust('dns.sv', 'www.example.com')

WLSTを使用した信頼メタデータのインポート

importWSMTokenIssuerTrustMetadata WLSTコマンドを使用して、すべての信頼できる発行者のすべての信頼の構成(発行者、DNおよびトークン属性ルール)をXMLファイルからインポートできます。

importWSMTokenIssuerTrustMetadata(trustFile)

次の例では、指定したXMLファイルからすべての信頼できる構成をインポートします。

wls:/base_domain/serverConfig> importWSMTokenIssuerTrustMetadata(trustFile='/tmp/trustData.xml')

Starting Operation importWSMTokenIssuerTrustMetadata ...
Configuration for trusted issuers successfully imported.

WLSTを使用した信頼メタデータのエクスポート

exportWSMTokenIssuerTrustMetadata WLSTコマンドを使用して、すべての信頼できる発行者のすべての信頼の構成(発行者、DNおよびトークン属性ルール)をXMLファイルにエクスポートできます。

exportWSMTokenIssuerTrustMetadata(trustFile,excludeIssuers=None)

除外リストに指定された発行者の信頼構成はエクスポートされません。引数を渡さない場合、すべての信頼できる発行者の信頼構成がエクスポートされます。

次の例では、除外されたwww.oracle.comとwww.example.comを除くすべての信頼できる発行者の構成が指定したXMLファイルにエクスポートされます。

wls:/base_domain/serverConfig> exportWSMTokenIssuerTrustMetadata(trustFile='/tmp/trustData.xml',['www.oracle.com','www.myissuer.com'])

Starting Operation exportWSMTokenIssuerTrustMetadata ...
Configuration for trusted issuers successfully exported.

WLSTを使用した信頼できる発行者からの信頼の取消し

revokeWSMTokenIssuerTrust WLSTコマンドを使用して、すべての信頼できる発行者および関連する構成(DNおよびトークン属性ルール)を削除できます。

revokeWSMTokenIssuerTrust(excludeIssuers=None))

オプションの除外リストに指定された発行者は削除されません。引数を渡さない場合、すべての信頼できる発行者および関連する構成が削除されます。

次の例では、除外されたwww.oracle.comとwww.example.comを除くすべての信頼できる発行者の構成が削除されます。

revokeWSMTokenIssuerTrust(['www.oracle.com','www.example.com'])

Starting Operation revokeWSMTokenIssuerTrust ...
Configuration for trusted issuers successfully removed.

信頼できる発行者のトークン属性ルールの構成

特定の信頼できるユーザーで、どのユーザーおよびユーザー属性を許容したり処理するかを制御したいという要求が増え続けています。トークン属性ルールを使用すると、信頼できるSTS (Secure Token Service)サーバーおよび信頼できるSAMLまたはJWTクライアントの追加のセキュリティ制約を定義できます。

トークン属性ルールは、信頼できるDNリストの先頭で定義できます。発行者に構成されたそれぞれの信頼できるDNに対して、トークン属性ルールを構成および適用できます。

各ルールは、名前IDと、SAMLアサーションに関連付けられた属性の属性部分という2つの部分で構成されます。名前IDおよび各属性には、複数の値パターンを持つフィルタを含めることができます。トークン内のユーザー件名ID (mailなど)と、同じユーザーを認証するためのユーザー属性(uidなど)とが異なるフェデレーテッド環境では、オプションのトークン属性マッピング機能もあります。

手順については、次の項を参照してください。

- Fusion Middleware Controlを使用した信頼できる発行者のトークン属性ルールの構成

- WLSTを使用した信頼できる発行者のトークン属性ルールの構成

- WLSTを使用したトークン属性ルールの削除

Fusion Middleware Controlを使用した信頼できる発行者のトークン属性ルールの構成

Fusion Middleware Controlを使用してトークン属性ルールを構成する手順は次のとおりです。

1. DNリストを定義します。Fusion Middleware ControlでのDNリストの定義の詳細は、「署名証明書の信頼できる発行者および信頼できるDNリストの定義」を参照してください。

2. トークン属性ルールを定義するには、「信頼できるSAMLクライアント」タブ、「信頼できるSTSサーバー」タブまたは「信頼できるJWTクライアント」タブを選択します。

3. 図14-13に示すように、上部パネルで発行者を選択し、下部パネルでDNを選択します。

図14-13 「信頼できる発行者」および「信頼できるSAMLクライアント」

4. 「トークン属性ルールの構成」をクリックして、図14-14に示す「トークン属性ルール」ウィンドウを表示します。

図14-14 「トークン属性ルール」ページ

5. 「属性」ペインで、「「追加」」をクリックしてDNの属性を追加します。

6. 「トークン属性ルール: 属性の追加」ポップアップ・ウィンドウで、サブジェクト名IDをアサートするためにname-idを入力し、「OK」をクリックします。

7. 属性を選択し、「フィルタ」ペインで「追加」をクリックし、「トークン属性ルール: フィルタ値の追加」ポップアップ・ウィンドウにフィルタ値を入力して、「OK」をクリックします。
「フィルタ」フィールドに追加する値は、図14-15に示すように、yourTrustedUserなど、完全な名前を入力できます。また、yourTrusted*のように、ワイルドカード文字(*)を使用した名前パターンを入力することもできます。

図14-15 フィルタが移入されたトークン属性ページ

8. さらにフィルタを追加するには、前の手順を繰り返します。

9. オプションで、name-id属性の「属性マッピング」フィールドを使用して、サブジェクト名IDのローカル・ユーザー属性をローカル・ユーザーの属性にマップして、信頼できるユーザーを認証できます。

注意:
サブジェクトがSAMLポリシーで定義されている場合に、ユーザー属性マッピング機能を使用するには、添付ポリシーでsubject.precedenceをtrueに設定する必要があります。

- ユーザー属性 - 件名IDに対応するローカル・アイデンティティ・ストア内のユーザー属性のローカル名(mailなど)。

- ユーザー属性マッピング - 認証用に件名IDがマップされるローカル・アイデンティティ・ストア内のユーザー属性のローカル名の値(uidなど)。

図14-16フィルタおよびマッピングが移入されたトークン属性ページ

10. 属性フィルタの定義が終了したら、「OK」をクリックして、「トークン属性ルール」ウィンドウを閉じます、

WLSTを使用した信頼できる発行者のトークン属性ルールの構成

setWSMTokenIssuerTrustAttributeFilterおよびsetTokenIssuerTrustAttributeMapping WLSTコマンドを使用して、信頼できるDNのトークン属性ルールを定義することにより、追加のセキュリティ制約を指定できます。属性ルールは、サブジェクト名IDに適用できます。

注意:
最初に、setWSMTokenIssuerTrustコマンドを使用して、発行者の信頼できるDN名のリストを構成する必要があります。「WLSTを使用した発行者およびそのDNリストの構成」を参照してください。

setWSMTokenIssuerTrustAttributeFilterコマンドでは、名前IDおよび属性に、複数の値パターンを持つフィルタを含めることができます。

setWSMTokenIssuerTrustAttributeFilter(dn, attr-name, [filters])

setTokenIssuerTrustAttributeMappingコマンドでは、ユーザー属性を別のユーザーIDにマップできます。

setTokenIssuerTrustAttributeMapping('DN', 'attr-name', 'mapping',  'user-attribute', 'user-mapping-attribute')

ユースケース例

次の例では、名前ID yourTrustedUserが、信頼できるDN weblogicの信頼できるユーザーとして設定されます。

setWSMTokenIssuerTrustAttributeFilter('CN=weblogic, OU=Orakey Test Encryption Purposes Only,
O=Oracle, C=US','name-id', ['yourTrustedUser'])

Starting Operation setWSMTokenIssuerTrustAttributeFilter ...
The token attribute filter are successfully set

次の例では、サブジェクト名ID jdoeを、信頼できるDN weblogicの信頼できるユーザーのリストに追加します。

setWSMTokenIssuerTrustAttributeFilter('CN=weblogic, OU=Orakey Test Encryption Purposes Only,
O=Oracle, C=US','name-id', ['yourTrustedUser', 'jdoe'])

Starting Operation setWSMTokenIssuerTrustAttributeFilter ...
The token attribute filter are successfully set

次の例では、トークン内のサブジェクトIDのmail属性をuid属性にマップします。

setTokenIssuerTrustAttributeMapping('CN=weblogic, OU=Orakey Test Encryption Purposes Only,O=Oracle, C=US','name-id','mail','uid')

Starting Operation setWSMTokenIssuerTrustAttributeMapping ...
The token attribute mapping are successfully set

これらのWLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

WLSTを使用したトークン属性ルールの削除

deleteWSMTokenIssuerTrustAttributeRule WLSTコマンドを使用して、DNリストに関連するトークン属性ルールを削除できます。

deleteWSMTokenIssuerTrustAttributeRule(dn)

次の例では、信頼できるDN weblogicに関連するトークン属性ルールが削除されます。

deleteWSMTokenIssuerTrustAttributeRule('CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US')

これらのWLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

クライアント・アイデンティティ・マッピングのトークン属性ルールの使用

SAMLまたはJWTトークンを使用したユーザーアイデンティティ伝播のためにクライアント側のアイデンティティまたは属性マッピングをサポートするトークン属性ルールを作成できます。

電子メールなどの一般的なユーザー属性をトークンのサブジェクトとしてより簡単に使用できる可能性のある、クロス・アイデンティティ・ドメイン・ユースケースを検討してください。これには、認証済サブジェクト・プリンシパルをユーザー属性にマッピングしてトークンを作成する必要があります。そのために、各種ターゲットのマッピングを指定して管理するトークン属性ルールを作成します。

次の条件が該当する場合、ユーザー・アイデンティティ・マッピングは、SOAPまたはREST用のSAMLまたはJWTトークンを使用するすべてのクライアント・ポリシーに対してエンド・ユーザーのアイデンティティ伝播のためにサポートされます。

- 認証済ユーザー・サブジェクトが使用可能である。

- プロパティがsubject.precedence=trueである。

クライアント・アイデンティティ・マッピングを構成するには、setWSMTokenIssuerTrustAttributeMapping WLSTコマンドを使用します。このWLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のWebサービスのカスタムWLSTコマンドに関する項を参照してください。

setWSMTokenIssuerTrustAttributeMapping('http://oracle.com',  'name-id', &rsquor;',  &rsquor;mail')

この場合:

- http://oracle.comは、変更が行われるトークン属性ルールに対するルールの識別子(URLパターン)です。

- name-idは、マッピングが宛先に向かうSAMLまたはJWTトークンのサブジェクトname idに適用されることを示しています。

- 空白。オプション。属性の値に対応するローカル・ユーザー属性の名前。

- mailは、マップ先のローカル・ユーザー属性の名前です。

マッピング・ルール

識別子はURLパターンです。サービスURLを指定すると、トークン属性ルールの識別子がサービスURLの一部である場合、ルールがサービスURLに適用されます。

http(s)://host; http(s)://host/<root path>

マッピング・ルールは、ターゲット・サービスURLがルートとして識別子を持つすべてのWebサービス呼出しに適用されます。

次の場合、URL u1は、URL u2の一部であるとみなされます。

- u1とu2のプロトコルが一致する。

- u1とu2のホストが一致する。

- u1のパスが使用可能な場合、u2のパスがu1のパスで始まる。

複数のルール(rule-1、rule-2、…、rule-n)がサービスURLに適用される場合、他のすべてのルールの識別子を含む識別子を持つルールが、他のルールよりも優先されます。

マッピング・ルールの例

次の2つのルールがあるとします。

Rule 1: setWSMTokenIssuerTrustAttributeMapping('http://oracle.com', 'name-id', ' ', 'mail')

Rule2: setWSMTokenIssuerTrustAttributeMapping('http://oracle.com/root1', 'name-id', ' ', 'uid')

サービスURL = http://oracle.com/root1/service1を使用するWebサービス・コールの場合、Rule 1とRule 2の両方がサービスに適用されます。ただし、Rule 2が優先され、実行時に適用されます。

ドメイン全体の管理ポートでのOracle WSMの構成

管理ポートを使用するようドメインが構成されている場合、管理者が実行するすべてのタスクはこのポートを経由する必要があります。デフォルトでは、Oracle WSM Policy Managerのターゲットは管理対象サーバーです。管理ポートでポリシー・マネージャを使用するには、ポリシー・マネージャのターゲットを管理対象サーバーおよび管理サーバーにする必要があります。

管理ポートの詳細は、次のトピックを参照してください。

- Oracle WebLogic Serverサーバー環境の構成のネットワーク・チャネルの概要に関する項。

- Oracle WebLogic Server管理コンソールのヘルプのドメイン全体の管理ポートの構成に関する項。

ドメイン全体の管理ポートでOracle WSMを構成する手順は、次の2つに大きく分けられます。

手順1:WebLogic管理コンソールを使用して、ポリシー・マネージャのターゲットに管理サーバーを指定します。

1. 「Oracle WebLogic管理コンソールへのアクセス」の説明に従って、Weblogic管理コンソールにアクセスします。
または、Fusion Middleware Controlで、WebLogicドメインのホーム・ページからWebLogic管理コンソールにアクセスすることもできます。その手順は、次のとおりです。

1. 「Oracle Enterprise Manager Fusion Middleware Controlへのアクセス」の説明に従って、Fusion Middleware Controlにログインします。

2. ナビゲータ・ペインで「WebLogicドメイン」を開き、管理コンソールにアクセスする対象のドメインを選択します。
WebLogicドメインのホーム・ページが表示されます。

3. 「WebLogicドメイン」メニューから、「WebLogic Server管理コンソール」を選択します。または、ページの「サマリー」セクションにある「Oracle WebLogic Server管理コンソール」リンクをクリックします。

4. 「ようこそ」ページで、有効なユーザー名とパスワードを使用してログインします。

2. 管理コンソールの左ペインで、「デプロイメント」をクリックします。すべてのデプロイ済みのエンタープライズ・アプリケーションとアプリケーション・モジュールを示す表が右ペインに表示されます。

3. この表で、ターゲットの再指定を行うwsm-pmアプリケーションを見つけて、その名前をクリックします。アプリケーションを見つけるには、「次」を数回クリックする必要がある場合があります。
アプリケーションの「設定」ページが表示されます。

4. 「ターゲット」タブをクリックします。
表の「現在のターゲット」列に、ポリシー・マネージャ・アプリケーションのターゲットであるサーバーが表示されます。

5. wsm-pmアプリケーションのターゲットをAdminServerにするには、「ターゲットの変更」をクリックします。

6. 「サーバー」ボックスで、「AdminServer」がまだ選択されていない場合はこれを選択し、「はい」をクリックします。
変更は自動的にアクティブ化されます。

手順2:Fusion Middleware Controlを使用して、管理サーバー上のポリシー・マネージャのポリシー・アクセッサURLを指定します。

1. 「プラットフォーム・ポリシー・プロパティの構成」で説明されているように、「プラットフォーム・ポリシー構成」ページにアクセスします。

2. 「ポリシー・アクセッサ」タブを選択します。

3. 「追加」をクリックして、管理サーバーのJNDIプロバイダURLを指定します。
「プロパティの追加」ウィンドウで、次の値を指定します。

1. 「名前」フィールドで、JNDIプロバイダURLプロパティをjava.naming.provider.urlとして入力します。

2. 「値」フィールドで、管理サーバーのJNDIプロバイダのURLを入力ます。たとえば、t3s://host:admin_port/wsm-pmと入力します。
たとえば、t3s://localhost:9002/wsm-pmと入力します。

管理サーバーのオーバーライド・ポートが構成されている場合は、次を使用します。

t3s://admin_server:admin_server_override_port

これは、管理サーバー上で実行中のポリシー・マネージャの場所を指定します。

注意: オーバーライド・ポートを使用する場合、ポリシー・マネージャのバリデータ・ページは、オーバーライド・ポートではなく、https://admin_server_host:normal_https_port/wsm-pmに配置されます。詳細は、「Oracle WSM Policy Managerでの問題の診断」を参照してください。

3. 「OK」をクリックします。

Javaオブジェクト・キャッシュの設定

リプレイ攻撃から保護するために、ポリシーwss_username_token_client_policyおよびwss_username_token_service_policyには、ユーザー名トークンにNonceを必要とするオプションがあります。Nonceは、SOAPリクエストで1回のみ使用できる一意の番号で、リプレイ攻撃を防止するために使用されます。

Nonceは再使用を防ぐためにキャッシュされます。ただし、クラスタ環境では、このキャッシュを管理対象サーバー間で同期化する手順が必要になります。そうしないと、Webサービスに送信されて1つのサーバーで実行中のリクエストが、リプレイされて別の管理対象サーバーに送信され、そこで処理される可能性があります。Oracle WSMは、Javaオブジェクト・キャッシュ(JOC)のインスタンスを使用してNonceをキャッシュします。

PythonスクリプトORACLE_HOME/bin/configure-joc.pyを使用して、分散モードのすべての管理対象サーバーでJOCを構成します。このスクリプトは、WLSTオンライン・モードで実行され、管理サーバーが起動されて実行中であることが必要です。

注意:
Javaオブジェクト・キャッシュの構成後、構成を反映するために影響を受けるすべての管理対象サーバーを再起動してください。

configure-joc.pyスクリプトの実行

分散モードでJOCを有効にするには、次の手順を実行します。

1. コマンドラインのOracle WebLogic Scripting Tool(WLST)を使用して、管理サーバーに接続します。たとえば、次のようにします。

ORACLE_HOME/oracle_common/common/bin/wlst.sh
$ connect()

プロンプトが表示されたら、Oracle WebLogic管理サーバーのユーザー名とパスワードを入力します。

2. WLSTを使用して管理サーバーに接続後、execfileコマンドを使用してスクリプトを開始します。たとえば、次のようにします。

wls:/mydomain/serverConfig>execfile('ORACLE_HOME/bin/configure-joc.py')

3. 指定されたクラスタのすべての管理対象サーバーに対してJOCを構成します。
スクリプトにより、クラスタ名を指定するかどうかを尋ねるプロンプトが表示されたら「y」と入力し、さらにプロンプトが表示されたらクラスタ名と検出ポートを指定します。これにより、指定されたクラスタのすべての管理対象サーバーが検出され、各管理対象サーバーに対してJOCが構成されます。検出ポートは、クラスタ内のJOC構成全体で共通です。たとえば、次のようにします。

Do you want to specify a cluster name (y/n) <y>
Enter Cluster Name : Spaces_Cluster
Enter Discover Port : 9988

ここに、HA環境でのconfigure-joc.pyの使用例を1行ずつ順に記載します。

execfile('ORACLE_HOME/bin/configure-joc.py')
.
Enter Hostnames (eg host1,host2) : SOAHOST1, SOAHOST2
.
Do you want to specify a cluster name (y/n) <y>y
.
Enter Cluster Name : Spaces_Cluster
.
Enter Discover Port : 9988
.
Enter Distribute Mode (true|false) <true> : true
.
Do you want to exclude any server(s) from JOC configuration (y/n) <n> n

スクリプトを使用して、次のJOC構成を実行することもできます。

- 指定されたすべての管理対象サーバーに対してJOCを構成します。
スクリプトにより、クラスタ名を指定するかどうかを尋ねるプロンプトが表示されたら「y」と入力し、そしてプロンプトが表示されたらクラスタ名と検出ポートも指定します。たとえば、次のようにします。

Do you want to specify a cluster name (y/n) <y>n
Enter Managed Server and Discover Port (eg WLS_Spaces1:9988, WLS_Spaces2:9988) : WLS_Spaces1:9988,WLS_Spaces2:9988

- 特定の管理対象サーバーのJOC構成を除外します。
スクリプトにより、JOC構成「DistributeMode」を「false」に設定する管理対象サーバーのリストを指定できます。スクリプトにより特定のサーバーをJOC構成から除外するかどうかを尋ねるプロンプトが表示されたら「y」と入力し、そしてプロンプトが表示されたら除外する管理対象サーバー名を入力します。たとえば、次のようにします。

Do you want to exclude any server(s) from JOC configuration (y/n) <n>y
Exclude Managed Server List (eg Server1,Server2) : WLS_Spaces1,WLS_Spaces3

- すべての管理対象サーバーに対して分散モードを無効にします。
スクリプトにより、指定されたクラスタのすべての管理対象サーバーに対して分散を無効化できます。スクリプトにより分散モードに対するプロンプトが表示されたら、「false」を指定します。デフォルトでは、分散モードは「true」に設定されます。

CacheWatcherユーティリティを使用してJOC構成を検証します。詳細は、『Oracle Fusion Middleware高可用性ガイド』のCacheWatcherの実行に関する項を参照してください。

『Oracle Fusion Middleware高可用性ガイド』の「HAパワー・ツールの使用」で説明されているように、Oracle WebLogic管理コンソールで「HAパワー・ツール」タブを使用してJavaオブジェクト・キャッシュ(JOC)を構成できます。

デフォルト・ユーザーの変更

Oracle WSMエージェント・ランタイムは、デフォルトではOracleSystemUserアカウントを使用して、サーバーとの通信を行います。

異なるデフォルト・ユーザーを構成するには、次の各手順を実行します。

- 認証プロバイダの構成

- 資格証明ストア・プロバイダの構成

- プラットフォーム・ポリシー構成の構成

- ユーザーのグループまたはロールの変更

認証プロバイダの構成

認証プロバイダを構成するには、次の手順を実行します。

1. Oracle WebLogic Server管理コンソールのヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項の説明に従って、認証プロバイダを構成します。

- 構成しているレルムの名前を選択します(たとえば、myrealm)。

- 「新しい認証プロバイダの作成」ページで、認証プロバイダの名前を入力し(たとえば、OID)、タイプとしてOracle Internet Directoryオーセンティケータを選択します。

- 「設定」セクションで、「制御フラグ」を「オプション」に設定します。

「プロバイダ固有」タブで、次の情報を入力します。

- ホスト: LDAPプロバイダURL

- ポート: ポート番号

- プリンシパル: 管理ユーザーの詳細(新しいデフォルト・ユーザー)
例: CN=orcladmin,CN=Users,DC=us,DC=oracle,DC=com

- 資格証明: LDAPのパスワード

- 資格証明の確認: LDAPのパスワード

- ユーザー・ベースDN
例: CN=Users,DC=us,DC=oracle,DC=com

- グループ・ベースDN
例: CN=Groups,DC=us,DC=oracle,DC=com

2. WebLogic Serverを再起動します。

資格証明ストア・プロバイダの構成

「資格証明ストアへの鍵およびユーザー資格証明の追加」の説明に従って、次のパラメータを使用して、資格証明ストア・プロバイダを構成します。

- マップがまだない場合は、「マップの作成」を選択し、マップ名oracle.wsm.securityを入力します。

- 「資格証明ストア・プロバイダ」表で、oracle.wsm.securityを選択します。

- 「キーの作成」ダイアログで、適切なキーを入力します(たとえば、OID)。新しいデフォルト・ユーザーのユーザー名とパスワードを入力します(この例では、orcladminおよびpassword)。

プラットフォーム・ポリシー構成の設定

プラットフォーム・ポリシーを構成するには、次の手順を実行します。

1. 新しいデフォルト・ユーザーのアカウントでFusion Middleware Controlにログインします。

2. ナビゲータ・ペインで 「WebLogicドメイン」 を開いてドメインを表示します。

3. プロパティを管理するドメインを選択します。

4. 「WebLogicドメイン」→「Webサービス」→「プラットフォーム・ポリシー構成」を選択します。
「プラットフォーム・ポリシー構成」ページが表示されます。

5. 「ポリシー・アクセッサ」タブを選択します。

6. 「ポリシー・アクセッサ・プロパティ」セクションで、「追加」をクリックします。

7. 「新規構成プロパティの追加」ダイアログで、次の情報を入力します。

- 名前をjndi.lookup.csf.keyと入力します。このプロパティは、資格証明の構成(java.naming.security.principalおよびjava.naming.security.credentials)を指定し、LDAPディレクトリ内のアカウントが、Oracle WSM Policy Managerを使用して接続するよう構成されている場合に使用されます。

- 値を入力します(この例では、OID)。

注意:
この手順で指定するcsf-keyは、資格証明ストア内でポリシー・マネージャの管理ユーザー用に指定されているcsf-keyに一致する必要があります。詳細は、「資格証明ストア・プロバイダの構成」を参照してください。

8. 「OK」をクリックします。

9. 「適用」をクリックして、WebLogic Serverを再起動します。

ユーザーのグループまたはロールの変更

Oracle WSM Policy Managerでは、論理ロール(policy.Accessor)を使用して、Oracle WSMエージェント・ランタイムがポリシーにアクセスするためにアクセスするEJBを保護します。デフォルトでは、policy.AccessorロールはOracleSystemGroupグループとAdministratorsグループにマップされます。Oracle WSMエージェント・ランタイムは、OracleSystemUserアイデンティティを使用してwsm-pmにアクセスします。新しいデフォルト・ユーザーは、AdministratorまたはOracleSystemGroupグループに含まれるか(グループが存在する場合)、論理ロールのpolicy.Accessorにマップされる必要があります(AdministratorまたはOracleSystemGroupグループが存在しない場合)。

ユーザーに必要なロールがあることを確認するには、次の手順を実行します。

1. AdministratorまたはOracleSystemGroupグループがLDAPまたはアイデンティティ・ストアに存在する場合は、次の手順を実行します。

1. LDAPで、デフォルトの管理ユーザーとして使用するユーザーを追加します。

2. WebLogic Server管理コンソールで、ユーザーがAdministratorグループに存在することを確認します。詳細は、Oracle WebLogic Server管理コンソールのヘルプのユーザーとグループの管理に関する項を参照してください。

2. AdministratorまたはOracleSystemGroupグループがLDAPまたはアイデンティティ・ストアに存在しない場合は、新しいユーザーを必要な論理ロールにマップし、変更されたデプロイ・プランを使用してwsm-pmアプリケーションを再デプロイします。新しいユーザーまたは既存のユーザー(AdministratorまたはOracleSystemGroup以外のグループに属する)をマップするには、次の手順を実行します。

1. wsm_pm.earをデプロイするデプロイ・プランを作成します。例14-4は、サンプルのデプロイ・プランを示しています。WebLogicに付属のサンプルのデプロイ・プランは、ORACLE_HOME/modules/oracle.wsm.pm_11.1.1/provフォルダにあります。セクション@to_be_replaced@を新しいユーザーで変更します。

例14-4 サンプル・デプロイメント・プラン

<?xml version='1.0' encoding='UTF-8'?>
<deployment-plan xmlns="http://xmlns.oracle.com/weblogic/deployment-plan"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.oracle.com/weblogic/deployment-plan
http://xmlns.oracle.com/weblogic/deployment-plan/1.0/deployment-plan.xsd">
<application-name>oracle.wsm.pm_11.1.1</application-name>
<variable-definition>
<variable>
<name>SecurityRoleAssignment_ejbRole_PrincipalName</name>
<value>@to_be_replaced@</value>
</variable>
</variable-definition>
<module-override>
<module-name>wsm-pmserver-wls.jar</module-name>
<module-type>ejb</module-type>
<module-descriptor external="false">
<root-element>weblogic-ejb-jar</root-element>
<uri>META-INF/weblogic-ejb-jar.xml</uri>
<variable-assignment>
<name>SecurityRoleAssignment_ejbRole_PrincipalName</name>
<xpath>/weblogic-ejb-jar/security-role-assignment/[role-name="policy.Accessor"]
/principal-name</xpath>
<operation>replace</operation>
</variable-assignment>
</module-descriptor>
</module-override>
</deployment-plan>

2. EARを再デプロイします。
詳細は、Oracle WebLogic Serverへのアプリケーションのデプロイのデプロイ・プランによるアプリケーションのデプロイに関する項を参照してください。

非同期WebサービスのJMSシステム・ユーザーの変更

デフォルトでは、JMSシステム・ユーザーはOracleSystemUserとして設定されます。大多数のユーザーにとっては、このデフォルト値で十分です。ただし、この値をセキュリティ・レルム内のカスタム・ユーザーに変更する必要がある場合は、次の手順に従ってOracle Enterprise Manager Fusion Middleware ControlおよびWebLogic Server管理コンソールでユーザーの値を変更することにより、これを行うことができます。

JMSシステム・ユーザーを変更する手順

1. 「非同期Webサービスの構成」で説明されているように、非同期Webサービスの「Webサービス・エンドポイント」ページで「構成」タブにアクセスします。

2. JMSシステム・ユーザーフィールドにカスタム・ユーザーの名前を入力し、「適用」をクリックします。図14-17を参照してください。

注意:
カスタム・ユーザーは、セキュリティ・レルムに存在し、JMSリソースにアクセスするのに必要な権限を持つ必要があります。

図14-17 非同期WebサービスのJMSシステム・ユーザーの設定

3. WebLogic Server管理コンソールにアクセスします。Fusion Middleware Controlからアクセスするには、ナビゲータ・ペインでドメインを選択します。「WebLogicドメイン」メニューから、「WebLogic Server管理コンソール」を選択します。

4. 必要な管理者権限を持つ有効なユーザー名とパスワードを使用して、WebLogic Server管理コンソールにログインします。

5. 「ドメイン構造」ペインで「デプロイ」をクリックし、対応するMDB、service_AsynchRequestProcessorMDBまたはservice_AsynchResponseProcessorMDBに移動します。これらのMDB名では、serviceは、ユーザー名を変更する非同期サービスの名前です。

6. 「チェンジ・センター」で、「ロックして編集」を選択します。

7. リクエストまたはレスポンスMDBのMDB名を選択します。(リクエストMDBとレスポンスMDBの両方のユーザー名を更新する必要があります。)「設定」ページで、「構成」タブを選択します。

8. ページの「エンタープライズBean構成」セクションで、プリンシパル名として実行フィールドにカスタム・ユーザー名を入力し、「保存」をクリックします。図14-18を参照してください。
このフィールドに入力するユーザー名は、Fusion Middleware ControlのJMSシステム・ユーザーに入力したユーザー名と一致している必要があることに注意してください。

図14-18 WebLogic Server管理コンソールのJMSシステム・ユーザーの更新

構成の変更内容は、新しいデプロイ・プランに保存する必要があります。

9. 「デプロイメント・プラン保存アシスタント」を使用して、新しいデプロイ・プランを保存します。

10. 2番目のMDBに対して手順7と8を繰り返します。変更内容は新しいデプロイ・プランに自動的に保存されます。

11. 「チェンジ・センター」で、「変更のアクティブ化」をクリックします。

12. アプリケーションを再デプロイします。詳細は、第5章 「Webサービス・アプリケーションのデプロイ」を参照してください。

15 環境間のアプリケーション移行の管理

この章では、開発またはテスト環境から本番環境へなど、環境間でWebサービス・アプリケーションを移行する方法について説明します。この章の内容は次のとおりです。

- Webサービス・アプリケーションの移行の概要

- ポリシーの水平移行の概要

- デプロイメント・ディスクリプタ移行のユースケース例

- ポリシーの移行

- ポリシー構成の移行

- アサーション・テンプレートの移行

- デプロイメント・ディスクリプタの移行

Webサービス・アプリケーションの移行の概要

Webサービス・アプリケーションを、環境間で(たとえばテスト環境から本番環境など)またはスケーリングされたクラスタ環境に個別に移行するには、アプリケーションをデプロイできるようにポリシーとデプロイ構成情報を新しい環境にエクスポートする必要があります。構成によっては、ポリシー構成アーティファクトやポリシー・アサーション・テンプレートの移行も必要になります。

デプロイメント・ディスクリプタは、アプリケーションの基本的なデプロイ構成が格納されたXMLファイルです。WebLogic ServerおよびWebLogic Java EE Webサービスのアプリケーションの場合は、アプリケーションを新しい環境にデプロイするために必要なデプロイメント・ディスクリプタを含めたデプロイ・プランを作成します。

ただし、ADFビジネス・コンポーネントおよびWebCenterサービスの場合は、ランタイム・ポリシーの変更は、独自のデプロイメント・ディスクリプタ(PDD)ファイルであるoracle-webservices.xmlおよびoracle-webservices-client.xmlに保持されます。これらのファイルはWebLogicデプロイ・プランに含まれず、他のデプロイメント・ディスクリプタと一緒にエクスポートされないため、これらのPDDファイルを単独でエクスポートしてインポートする必要があります。また、アプリケーションをクラスタ環境にスケーリングする場合も、これらのPDDファイルを単独でエクスポートしてインポートする必要があります。

次のOracle Infrastructure Webサービス・コンポーネントでは、使用される構成管理メカニズムが異なることに注意してください。

- SOAコンポジット、Webサービス、およびOracle WSMでは、構成はcomposite.xmlファイルに保持されます。このファイルはデプロイ構成に使用される構成プランに含まれます。SOAフレームワークでは、コンポジット・サービスおよび構成のライフサイクルと同期化に独自のメカニズムが使用されます。

- ADF Webサービスのデータ管理構成では、WebCenterサービスの接続詳細はconnections.xmlファイルに格納され、デプロイ後の変更はすべてカスタマイズとしてMetadata Services(MDS)リポジトリに格納されます。

Webサービス・アプリケーションを開発またはテスト環境から本番環境へ移行する一般的な手順は、次のとおりです。

1. 本番環境を、必要なコンポーネントとともにインストールし、構成します。

2. ユーザーとグループ、アイデンティティとポリシー・ストア、資格証明などのセキュリティ情報を移行します。詳細は、「ポリシー構成の移行」を参照してください。

3. 必要に応じて、ポリシーとデプロイ構成を移行します。詳細は、「ポリシーの移行」および「デプロイメント・ディスクリプタの移行」を参照してください。ホスト名やポートなど、新しい環境に固有の情報を変更します。

4. アプリケーションを新しい環境にデプロイします。

環境間のFusion Middlewareアプリケーションの移行についての詳細は、『Oracle Fusion Middleware管理者ガイド』の高度な管理: 環境の拡張に関する項を参照してください。

ポリシーの水平移行の概要

次の手順では、アプリケーションの開発やデプロイのサイクルでの様々なステージでポリシーを作成および水平移行する方法の一般的なシナリオについて説明します。

1. Oracle Enterprise Manager Fusion Middleware Controlを使用して、ポリシーを作成します。
詳細は、「Webサービス・ポリシーの作成」を参照してください。

2. ポリシーをファイルにエクスポートします。
詳細は、「ポリシーの移行」を参照してください。

3. ポリシー・ファイルを、Oracle JDeveloper環境のポリシーの格納場所にコピーします。

4. Oracle JDeveloperでWebサービスを作成し、そのWebサービスにポリシーを添付します。
詳細は、JDeveloperのオンライン・ヘルプのWebサービスでの開発に関する項にある、Webサービスでのポリシーの使用に関する項目を参照してください。

5. Webサービスをステージング・サーバーにデプロイし、Webサービスをテストします。
詳細は、JDeveloperのオンライン・ヘルプにあるWebサービスの開発に関する項を参照してください。

6. ポリシーを本番のサーバー環境にインポートします。
詳細は、「ポリシーの移行」を参照してください。

7. 必要に応じて、次の情報を移行します。

- ポリシーの構成。「ポリシー構成の移行」を参照してください。

- アサーション・テンプレート。「アサーション・テンプレートの移行」を参照してください。

8. アプリケーションを本番環境にデプロイし、Webサービスをテストします。
「Webサービス・アプリケーションのデプロイ」および「Webサービスのテスト」を参照してください。

デプロイメント・ディスクリプタ移行のユースケース例

次の項では、PDDファイルを移行する必要のあるADFビジネス・コントロールまたはWebCenter Webサービス・アプリケーションのユースケース例を示します。

クラスタにデプロイされたADFビジネス・コントロールまたはWebCenter Webサービス・アプリケーションのスケーリング

次の手順では、クラスタ内にデプロイされたADFビジネス・コントロールまたはWebCenter Webサービス・アプリケーションのスケーリングのユースケース例について説明します。

1. ADFビジネス・コントロールまたはWebCenter Webサービス・アプリケーションを、たとえば、管理サーバーと2つの管理対象サーバー(MServer1とMServer2)で構成されるクラスタ化されたWebLogic Serverドメインにデプロイするとします。デプロイの詳細は、第5章 「Webサービス・アプリケーションのデプロイ」を参照してください。

2. Fusion Middleware ControlまたはWLSTを使用して、ポリシー構成を変更します。たとえば、oracle/wss_username_token_service_policyという名前のポリシーを、MServer2上のWebサービスに添付します。詳細は、第8章 「Webサービスへのポリシーの添付」を参照してください。
構成の変更は、PDDファイルに保持されます。

3. アプリケーションを再起動します。

4. exportJRFWSApplicationPDDコマンドを使用して、PDDをJARファイルにエクスポートします。詳細は、「デプロイメント・ディスクリプタの移行」を参照してください。

5. WebLogic Server管理コンソールを使用して、クラスタ内にMServer3という名前の新しい管理対象サーバーをMServer2のクローンとして作成します。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのクローン・サーバーに関する項を参照してください。

6. 新しい管理対象サーバー、MServer3を起動します。
ポリシーoracle/wss_username_token_service_policyはアプリケーションが最初にデプロイされた後で添付されたため、MServer3には添付されていません。

7. importJRFWSApplicationPDDコマンドを使用して、手順4で作成したOracle WSM PDDファイルを含むJARファイルをMServer3にインポートします。詳細は、「デプロイメント・ディスクリプタの移行」を参照してください。

8. アプリケーションを再起動します。

ADFビジネス・コントロールまたはWebCenter Webサービス環境でのランタイム・ポリシー変更の伝播

次の手順では、ADFビジネス・コントロールまたはWebCenter Webサービス・アプリケーションのランタイム・ポリシー変更を、クラスタ内のすべてのサーバーに伝播するユースケース例について説明します。

1. ADFビジネス・コントロールまたはWebCenter Webサービス・アプリケーションを、たとえば、管理サーバーと3つの管理対象サーバー(MServer1、MServer2、MServer3)で構成されるクラスタ化されたWebLogic Serverドメインにデプロイするとします。デプロイの詳細は、第5章 「Webサービス・アプリケーションのデプロイ」を参照してください。

2. Fusion Middleware ControlまたはWLSTを使用して、ポリシー構成を変更します。たとえば、MServer2からすべてのポリシーを解除します。詳細は、第8章 「Webサービスへのポリシーの添付」を参照してください。
構成の変更は、PDDファイルに保持されます。

3. アプリケーションを再起動します。

4. exportJRFWSApplicationPDDコマンドを使用して、PDDをMServer2からJARファイルにエクスポートします。詳細は、「デプロイメント・ディスクリプタの移行」を参照してください。

5. savePddToAllAppInstancesInDomainコマンドを、restartApp引数をtrueに設定して使用します。詳細は、「デプロイメント・ディスクリプタの移行」を参照してください。
これでポリシーがドメイン内のすべてのサーバー・インスタンスから解除され、アプリケーションが再起動されます。

ポリシーの移行

Oracle Enterprise Manager Fusion Middleware Controlからポリシーを個別にエクスポートできます。ポリシーをディレクトリにコピーすることも、ポリシーをインポートして別のリポジトリに移動することもできます。

注意:
Oracle RACデータベースを使用している場合は、ポリシーまたはメタデータ・アップロードの一括インポートを実行するときにデータベースの切替えを行わないでください。インポートが失敗することがあります。

Fusion Middleware Controlを使用したポリシーのエクスポートとインポートの詳細は、「Webサービス・ポリシーの管理」の次の項を参照してください。

- 「Webサービス・ポリシーのエクスポート」

- 「Webサービス・ポリシーのインポート」

または、WLSTコマンドexportRepositoryおよびimportRepositoryを使用して、ポリシーをエクスポートおよびインポートすることもできます。次に、必要な手順を説明します。

WLSTコマンドを使用してポリシーを移行する手順は次のとおりです。

1. exportRepositoryコマンドを使用して、zipファイルなど、サポートされているアーカイブ・ファイルにOracle WSMポリシーをエクスポートします。
たとえば、すべてのOracle WSMポリシーをpolicies.zipという名前のアーカイブにエクスポートするには、次のように入力します。

wls:/jrfServer_domain/serverConfig> exportRepository('/tmp/policies.zip',['policies:oracle/%'])

Exporting "/policies/oracle/binding_authorization_denyall_policy"
Exporting "/policies/oracle/binding_authorization_permitall_policy"
Exporting "/policies/oracle/binding_permission_authorization_policy"
.
.
.
Exporting "/policies/oracle/wss_username_token_over_ssl_service_policy"
Exporting "/policies/oracle/wss_username_token_service_policy"
Successfully exported "84" documents.

2. 必要に応じて、作成後のアーカイブを編集できます。たとえば、すべてのポリシーを新しい環境に移行する必要がない場合は、それをアーカイブから手動で削除できます。

3. アーカイブを新しいマシンに移動します。Oracle WSM Policy Managerが新しいマシンにデプロイされていることを確認します。

4. importRepositoryコマンドを使用して、Oracle WSMポリシーをインポートします。たとえば、前の手順でエクスポートされたポリシーをインポートする手順は、次のとおりです。

wls:/jrfServer_domain/serverConfig> importRepository('/tmp/policies.zip')

Importing "META-INF/policies/oracle/binding_authorization_denyall_policy"
Importing "META-INF/policies/oracle/binding_authorization_permitall_policy"
Importing "META-INF/policies/oracle/binding_permission_authorization_policy"
.
.
.
Importing "META-INF/policies/oracle/wss_username_token_over_ssl_service_policy"
Importing "META-INF/policies/oracle/wss_username_token_service_policy"
Successfully imported "84" documents

このWLSTコマンドの詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

ポリシー構成の移行

次の項では、Oracle WSMポリシーの構成アーティファクトを移行する方法を説明します。この付録には、次の項があります。

- キーストアの移行

- ユーザーおよびグループの移行

- 資格証明の移行

- Oracle Platform Security Servicesアプリケーションおよびシステム・ポリシーの移行

- Oracle Platform Security Services構成の移行

- SSLの移行

- Kerberos構成の移行

キーストアの移行

メッセージ保護ポリシーを使用している場合は、キーストアを移行する必要があります。キーストアを移行する手順は次のとおりです。

1. キーストアを新しい環境に手動でコピーします。
Java SEアプリケーションの場合は、キーストアをユーザー定義の場所にコピーします。Java EEアプリケーションの場合は、キーストアをjps-config.xmlファイルと同じディレクトリ、DOMAIN_HOME/config/fmwconfigにコピーします。

2. デフォルトでは、キーストアの名前はdefault-keystore.jksです。キーストアの名前を変更した場合は、Oracle Platform Security Servicesのキーストア・サービス・インスタンスでキーストア名を構成する必要があります。

キーストアの構成の詳細は、「メッセージ保護に関するキーストアの構成」を参照してください。

ユーザーおよびグループの移行

ユーザーとグループは、WebLogic Serverのセキュリティ・レルムの一部として保持されます。

組込みLDAPのユーザーとグループを移行する場合は、Oracle WebLogic管理コンソールまたはWLSTのいずれかを使用してデータを移行できます。必要な手順の詳細は、Securing Oracle WebLogic Serverのセキュリティ・データの移行に関する項を参照してください。

LDAPストアのユーザーとグループを移行する場合は、移行パスはありません。新しい環境でユーザーとグループを再作成し、LDAPストアでの割当てを指定する必要があります。Securing Oracle WebLogic Serverの"認証プロバイダの構成に関する項を参照してください。

資格証明の移行

移行が必要な可能性のある、資格証明ストアに保持された資格証明には2つのタイプがあります。

- ユーザー名およびパスワード

- キーストアおよび暗号化キー・パスワード

次の項では、移行手順を説明します。

ユーザー名およびパスワードの移行

組込みLDAPに格納されているユーザーを「ユーザーおよびグループの移行」の説明に従って移行する場合、単純に既存の資格証明を新しい資格証明ストアに移行します。必要な手順の詳細は、Securing Oracle WebLogic Serverのセキュリティ・データの移行に関する項を参照してください。

ユーザーがLDAPストアに格納されている場合、自動移行パスはありません。資格証明ストアに資格証明を再作成する必要があります。資格証明の構成の詳細は、「資格証明ストアへの鍵およびユーザー資格証明の追加」を参照してください。

キーストアおよび暗号化キー・パスワードの移行

キーストアおよび暗号化キー・パスワードは、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのセキュア・アプリケーションのデプロイの項の資格証明の手動での移行に関する項の手順に従って、手動で移行できます。

Oracle Platform Security Servicesアプリケーションおよびシステム・ポリシーの移行

Webサービスで認可ポリシーを使用する場合は、Oracle Platform Security Servicesアプリケーション、および権限を付与するシステム・ポリシーを移行する必要があります。詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのOPSSセキュリティ・ストアの構成に関する項のmigrateSecurityStoreスクリプトの移行に関する説明を参照してください。

Oracle Platform Security Services構成の移行

Oracle Platform Security Services構成には、自動移行パスはありません。新しい環境で構成を再作成する必要があります。

再作成が必要な可能性のあるOracle Platform Security Servicesの構成には、3つのタイプがあります。

- 信頼できるSAMLアサーション発行者名(すべてのSAMLポリシーに適用可能)。
信頼できるSAML発行者名構成にデフォルトの構成を使用する場合は、移行は必要ありません。新しい環境でのSAMLの構成の詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

- キーストアの場所、およびキーストアとキーストア・パスワードのCSFキー構成(メッセージ保護ポリシーのみに適用可能)。
キーストアにデフォルトの構成を使用する場合は、移行は必要ありません。新しい環境でのキーストアの構成の詳細は、「メッセージ保護に関するキーストアの構成」を参照してください。

- keytabの場所およびサービス・プリンシパル名(Kerberosポリシーに適用可能)
新しい環境でのkeytabの場所およびサービス・プリンシパル名の構成の詳細は、「SAMLおよびKerberosログイン・モジュールの構成」を参照してください。

SSLの移行

SSL構成には、自動移行パスはありません。新しい環境でSSLキーストアを構成して設定する必要があります。新しい環境でのSSLキーストアの構成と設定の詳細は、「SSLに関するキーストアの構成 」を参照してください。

Kerberos構成の移行

Kerberos構成を移行する手順は次のとおりです。

1. Kerberos構成ファイルを、同じディレクトリ構造の新しい環境にコピーします。Kerberos構成ファイルは、各オペレーティング・システムで次の場所にあります。

- UNIX: /etc/krb5.conf

- Windows: C:\windows\krb5.ini

2. チケット・キャッシュを適切な資格証明で初期化します。
詳細は、「Kerberosトークンの使用」を参照してください。

アサーション・テンプレートの移行

Oracle Enterprise Manager Fusion Middleware Controlからアサーション・テンプレートを個別にエクスポートできます。ポリシーをディレクトリにコピーすることも、ポリシーをインポートして別のリポジトリに移動することもできます。

アサーション・テンプレートのエクスポートとインポートの詳細は、次の項を参照してください。

- 「アサーション・テンプレートのエクスポート」

- 「アサーション・テンプレートのインポート」

デプロイメント・ディスクリプタの移行

アプリケーションを新しい環境にデプロイするには、アプリケーションのデプロイ構成を新しい環境にエクスポートする必要があります。WebLogic Java EE Webサービス、SOAコンポジット、およびADFデータ・コントロールのデプロイ構成のエクスポートの詳細は、次のトピックを参照してください。

- WebLogic Java EE Webサービス: Oracle WebLogic Serverへのアプリケーションのデプロイの新しい環境へのデプロイのためのアプリケーションのエクスポートに関する項。

- SOAコンポジット: Oracle Fusion Middleware管理者ガイド for Oracle SOA Suite and Oracle Business Process Management Suiteの実行中のSOAコンポジット・アプリケーションのエクスポートに関する項

- ADFデータ・コントロール: 『Oracle Fusion Middleware Oracle WebCenterポータル管理者ガイド』のWebCenterポータルの構成に関する項。

ADFビジネス・コントロールおよびWebCenter Webサービス・アプリケーションに対するランタイムWebサービス・ポリシーの変更は、独自のデプロイメント・ディスクリプタ(PDD)ファイルに保持されます。これらのポリシー変更をスケーリングされた環境または新しい環境に保存するか、またはこれらの変更をドメインに伝播するには、WLSTコマンドを使用してPDDファイルを移行する必要があります。次に、PDDファイルを移行するのに必要な手順を示します。

1. アプリケーションがデプロイされるドメインにあるWebLogic管理サーバーの実行中のインスタンスに接続します。手順については、「WebサービスのカスタムWLSTコマンドへのアクセス」を参照してください。

2. オプションとして、listWebServices(None,None,true)コマンドを使用して、ドメイン内のすべてのアプリケーションおよびコンポジットのすべてのWebサービスをリストします。
たとえば、次のようにします。

wls:/wls-domain/serverConfig> listWebServices(None,None,true)

/wls-domain/ManagedServer1/j2wbasicPolicy:
moduleName=j2wbasicPolicy, moduleType=web, serviceName={http://namespace/}WssUsernameService
enableTestPage: true
enableWSDL: true

JRFWssUsernamePort    http://host:port/j2wbasicPolicy/WssUsername
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
security : oracle/wss_username_token_service_policy, enabled=true
enableWSDL: true

Attached policy or policies are valid; endpoint is secure.
.
.
.

注意:
listWebServicesコマンドの出力には、ポリシーの添付を含むSOAコンポーネントの詳細が含まれません。

3. Fusion Middleware ControlまたはWLSTを使用して、ポリシー構成を変更します。たとえば、WLSTを使用してポリシーoracle/wsmtom_policyをManagedServer1に添付するには、次のコマンドを入力します。

wls:/wls-domain/serverConfig> attachWebServicePolicy
('/wls-domain/ManagedServer1/j2wbasicPolicy','j2wbasicPolicy','web',
'WssUsernameService','JRFWssUsernamePort',
'oracle/wsmtom_policy,')

ポリシーの変更は、アプリケーションPDDに保持されます。

4. アプリケーションを再起動します。

5. オプションとして、もう一度listWebServices(None,None,true)コマンドを使用して、ポリシーがサーバー・インスタンスに添付されているかどうかを検証します。たとえば、次のようにします。

wls:/wls-domain/serverConfig> listWebServices(None,None,true)

/wls-domain/ManagedServer1/j2wbasicPolicy :
moduleName=j2wbasicPolicy, moduleType=web, serviceName={http://namespace/}WssUsernameService
enableTestPage: true
enableWSDL: true

JRFWssUsernamePort    http://host:port/j2wbasicPolicy/WssUsername
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
security : oracle/wss_username_token_service_policy , enabled=true
mtom : oracle/wsmtom_policy , enabled=true

Attached policy or policies are valid; endpoint is secure.

6. WLSTコマンドexportJRFWSApplicationPDDを使用して、アプリケーションPDDをJARファイルにエクスポートします。

exportJRFWSApplicationPDD(application,pddJarFileName=None)

たとえば、デフォルトのJARファイル名を使用してj2wbasicPolicyアプリケーションのPDDをエクスポートするには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> exportJRFWSApplicationPDD('/wls-domain/ManagedServer1/j2wbasicPolicy', None)

JARファイルのデフォルト名とパスが表示されます。

/tmp/j2wbasicPolicy-PDD-20100115-145338.jar

7. 環境をスケーリングしている場合は、WebLogic Server管理コンソールを使用して新しい管理対象サーバーをクローン作成します。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのクローン・サーバーに関する項を参照してください。
アプリケーションを新しい環境に移行する場合、ポリシーおよびその他の構成アーティファクトが新しい環境にコピーされていることを確認します。詳細は、「ポリシーの移行」および「ポリシー構成の移行」を参照してください。

8. スケーリングされた環境で、クローン作成された管理対象サーバーを起動します。
oracle/wsmtom_policyは、クローン作成された管理対象サーバーに添付されないことに注意してください。これを行うには、次のようにlistWebServicesコマンドを使用します。

wls:/wls-domain/serverConfig> listWebServices(None,None,true)
.
.
.
/wls-domain/ClonedManagedServer/j2wbasicPolicy :
moduleName=j2wbasicPolicy, moduleType=web,serviceName={http://namespace/}WssUsernameService
enableTestPage: true
enableWSDL: true

JRFWssUsernamePort  http://host:port/j2wbasicPolicy/WssUsername
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
security: oracle/wss_username_token_service_policy , enabled=true

Attached policy or policies are valid; endpoint is secure.

9. importJRFWSApplicationPDDコマンドを使用して、アプリケーションPDDを新しいサーバーまたは新しい環境にインポートします。

importJRFWSApplicationPDD(application,pddJarFileName)

たとえば、手順6で作成されたPDD JARをクローン作成された管理対象サーバーにインポートするには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> importJRFWSApplicationPDD
('/wls-domain/ClonedManagedServer/j2wbasicPolicy','/tmp/j2wbasicPolicy-PDD-20100115-145338.jar')
application  /wls-domain/ClonedManagedServer/j2wbasicPolicy  PDD has been reset, please restart application now to uptake changes!

10. アプリケーションを再起動し、オプションとして、もう一度listWebServices(None,None,true)コマンドを実行して変更を検証します。たとえば、次のようにします。

wls:/wls-domain/serverConfig> listWebServices(None,None,true)
.
.
.
/wls-domain/ClonedManagedServer/j2wbasicPolicy :
moduleName=j2wbasicPolicy, moduleType=web,serviceName={http://namespace/}WssUsernameService
enableTestPage: true
enableWSDL: true

JRFWssUsernamePort  http://host:port/j2wbasicPolicy/WssUsername
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
security:oracle/wss_username_token_service_policy , enabled=true
mtom : oracle/wsmtom_policy , enabled=true

Attached policy or policies are valid; endpoint is secure.

11. savePddToAllAppInstancesInDomainコマンドを使用して、ポリシーの変更(手順9でimportJRFWSApplicationPDDコマンドを使用して単一サーバーに適用した変更)をドメイン内のすべてのサーバー・インスタンスに適用します。このコマンドは、ランタイム・ポリシーの変更をクラスタ内のすべてのサーバーに伝播する場合に役立ちます。

savePddToAllAppInstancesInDomain(applicationName,pddJarFileName,restartApp=true)

たとえば、同じポリシー添付をドメイン内のアプリケーションを実行しているすべてのサーバー・インスタンスに添付するには、次のコマンドを使用します。

wls:/wls-domain/serverConfig> savePddToAllAppInstancesInDomain('j2wbasicPolicy','/tmp/j2wbasicPolicy-PDD-20100115-145338.jar',true)

これでoracle/wsmtom_policyはドメイン内のすべてのサーバー・インスタンスに添付され、アプリケーションは自動的に再起動されます。

12. オプションとして、listWebServices(None,None,true)コマンドを実行して、変更がすべてのサーバーに適用されたことを検証します。

これらのデプロイメント移行のWLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

16 問題の診断

この章の内容は次のとおりです。

- Oracle WSM Policy Managerでの問題の診断

- Oracle WSMでの一般的な問題の診断

- WLSTを使用したポリシー添付に関する問題の診断

- WLSTを使用したドメイン構成に関する問題の診断

- WS-Trustユースケースでの一般的なOracle WSM例外の診断

- Oracle WSM RESTfulクライアント・フィルタでの問題の診断

- ログを使用した問題の診断

- Webサービスのログ・ファイルの構成

Oracle WSM Policy Managerでの問題の診断

Oracle WSM Policy ManagerはすべてのOracle WSMポリシーを管理しており、Oracle WSMポリシー・フレームワークを使用するためには、稼働している必要があります。Oracle Enterprise Manager Fusion Middleware ControlのOracle WSM Policy Managerのページで、ポリシー・マネージャの現在の状態を確認し、そのレスポンス時間、負荷およびその他のデータを確認できます。

Oracle WSM Policy Managerのページを表示する手順は次のとおりです。

1. ナビゲーション・ペインで、「アプリケーションのデプロイ」を開きます。

2. 「アプリケーションのデプロイ」の下にある「内部アプリケーション」を開きます。

3. 「wsm-pm」を選択します。
Oracle WSM Policy Managerのホームページが表示されます。

図16-1 Oracle WSM Policy Managerのページ

4. ポリシー・マネージャのページでは、次のタスクを1つ以上実行できます。

- ページの「一般」領域で、ポリシー・マネージャの現在の状態を確認し、デプロイ先のサーバーを識別します。

- ページの「レスポンスと負荷」セクションで、レスポンス時間と現在の負荷を表示します。この情報を表形式で表示するには、「表ビュー」をクリックします。

- ページの「エントリ・ポイント」セクションで、ポリシー・マネージャへの接続を検証します。これを行うには、「Webモジュール」表内で、wsm-pmに対応する「テスト・ポイント」のURLをクリックします。図16-2に示すように、ポリシー・マネージャの検証ページで、ポリシー・マネージャの検証リンクをクリックします。

図16-2 ポリシー・マネージャの検証ページ

Webブラウザで次のURLを使用してバリデータ・ページにアクセスすることもできます。

http://host:port/wsm-pm/validator

このURLで、hostおよびportは、ポリシー・マネージャが実行されているホストおよびポート番号を表します。

ポリシー・マネージャへの接続に失敗すると、エラー・メッセージが表示されます。ポリシー・マネージャへの接続が成功すると、ポリシー・マネージャのバリデータ・ページには次の情報が表示されます。

- ポリシー・マネージャのステータス。

- Oracle WSMリポジトリ内のOracle WSMポリシーの合計数。

- Oracle WSMリポジトリ内のすべてのOracle WSMポリシーの名前、最新バージョンおよび説明。

- リポジトリ内のOracle WSMアサーション・テンプレートの合計数。

- Oracle WSMリポジトリ内のすべてのOracle WSMアサーション・テンプレートの名前、最新バージョンおよび説明。

- リポジトリの作成日およびビルド・ラベル。

ポリシー・マネージャのバリデータ・ページのサンプルを、図16-3に示します。

図16-3 ポリシー・マネージャのバリデータ・ページ

Oracle WSMリポジトリの詳細は、第17章 「Oracle WSMリポジトリの管理」を参照してください。

Oracle WSMでの一般的な問題の診断

次の項では、Oracle WSMの使用中に発生する可能性がある一般的な問題と、その解決策について説明します。

- ポリシー・マネージャに接続できない

- アプリケーションがWebサービスを呼び出した後のキーまたは資格証明ストア・エラー

- アプリケーションがWebサービスを呼び出した後の信頼証明書エラー

- アイデンティティ伝搬時に発生するSAMLアサーション・エラー

- アプリケーションがWebサービスを呼び出した後のポリシー・アクセス・エラー

- 資格証明ストア内のユーザーにアクセスできない

- アプリケーションがWebサービスを呼び出した後の認証エラー

- アプリケーションがWebサービスを呼び出した後のタイムスタンプ・エラー

- アプリケーションがWebサービスを呼び出した後の複数の認証セキュリティ・ポリシー・エラー

- 通知されたWSDLからSTSの構成の詳細を取得できない

ポリシー・マネージャに接続できない

ポリシー・マネージャへの接続を試みると、次のエラー・メッセージが表示されます。

- WSM-06157: リポジトリ・データベースが正しく構成されていないか稼働していません。

- WSM-06160: ポリシー・マネージャ・アプリケーションがデプロイされていないか稼働していません。

- WSM-06161: ポリシー・マネージャ・アプリケーションがデプロイされていません。

- WSM-06162: ポリシー・マネージャが稼働していないか正しく構成されていません。

- WSM-06159: 資格証明の問題が原因でポリシー・マネージャに接続できません。

問題

次のような問題の原因が考えられます。

- ポリシー・マネージャが停止しています。ポリシー・マネージャが停止しているかどうかは、次のようにして判断できます。

- 「Oracle WSM Policy Managerでの問題の診断」に示されている、Oracle WSM Policy Managerのホーム・ページの「一般」領域で、ポリシー・マネージャの状態が停止として表示されます。

- 図16-4に示されている、Enterprise Managerの「ファーム」ホーム・ページで、wsm-pm内部アプリケーションのステータスが停止中です。「ファーム」ホーム・ページにアクセスするには、ナビゲータ・ペインで「Farm_em_domain」を選択するか、ページの左隅にある「ファーム」メニューから「ホーム」を選択します。

図16-4 Oracle WSM Policy Manager停止(「ファーム」ページ)

- Enterprise ManagerでOracle WSMのポリシー管理ページへのアクセスを試みると、次のようなエラー・ダイアログ・ボックスが表示されます。このエラー情報は、「サンプル・ログの確認」の説明に従って、診断ログ・ファイルにも書き込まれます。

図16-5 エラー・メッセージ: Oracle WSM Policy Manager使用不可

- ポリシー・マネージャのターゲットがSSLサーバーです。
Oracle Web Services Manager (WSM)は自動検出機能をサポートしており、この機能を使用して同じWebLogicドメイン内のOracle WSM Policy Managerを検索し、接続します。ポリシー・マネージャがデプロイされたSSL構成サーバーがドメインに含まれている場合、自動検出ロジックはそのポリシー・マネージャに接続し、非SSLサーバーにデプロイされたポリシー・マネージャへの接続は試みません。安全な接続を保持するために、自動検出ロジックは、SSL対応サーバーが停止中であっても、非SSLサーバー上のポリシー・マネージャへの接続は試みません。したがって、稼働中のポリシー・マネージャがあっても、それがSSLに対応していないサーバーで稼働している場合は無視され、エラー・メッセージが表示されます。

- ポリシー・マネージャへのアクセスで必要な資格証明が無効または認証されません。

- リポジトリが正しく構成されていない可能性があります。

解決策

ポリシー・マネージャが停止している場合:

『Oracle Fusion Middleware管理者ガイド』のアプリケーションの起動と停止に関する項の説明に従って、wsm-pmアプリケーションを再起動します。

ポリシー・マネージャのターゲットがSSLサーバーの場合:

- wsm-pmポリシー・マネージャ・アプリケーションのターゲットがSSLサーバーであることを確認します。この操作は、Oracle WebLogic Server管理コンソールのヘルプのエンタープライズ・アプリケーションのサーバーに対するターゲット指定に関する項に示されている、WebLogic Server管理コンソールを使用して行えます。

- SSLが適切に構成されており、SSL証明書の問題がないことを確認します。。詳細は、「SSLに関するキーストアの構成」を参照してください。

- SSL対応サーバーが停止している場合は、『Oracle Fusion Middleware管理者ガイド』のOracle Fusion Middlewareの起動と停止に関する項の説明に従って、サーバーとポリシー・マネージャ・アプリケーションを再起動します。

- SSL非対応サーバー上のポリシー・マネージャを使用する場合は、SSL対応サーバーをポリシー・マネージャ・アプリケーションのターゲットから除きます。アプリケーションのサーバーに対するターゲット指定の詳細は、Oracle WebLogic Serverへのアプリケーションのデプロイのデプロイされたアプリケーションの管理に関する項を参照してください。WebLogic Server管理コンソールを使用してターゲット・サーバーを変更するには、Oracle WebLogic Server管理コンソールのヘルプのターゲット・サーバーの変更に関する項を参照してください。

ポリシー・マネージャへのアクセスを試みると資格証明の問題が発生する場合:

デフォルトでは、Oracle WSMランタイムはOracleSystemUserアカウントを使用します。デフォルトのユーザー・アカウントを使用していない場合は、「デフォルト・ユーザーの変更」の説明に従って、構成を変更する必要があります。

リポジトリ構成に関する問題がある場合:

- データベースとMDSスキーマが正しくセットアップされていることを確認します。この構成は、インストール・プロセスの一環として行われます。詳細は、『Oracle Fusion Middleware Repository Creation Utilityユーザーズ・ガイド』を参照してください。

- JDBC構成が正しいことを確認します。JDBC構成は、Oracle Fusion Middleware構成ウィザードを使用してドメインを作成するときに定義されます。詳細は、構成ウィザードを使用したドメインの作成に関する項を参照してください。

アプリケーションがWebサービスを呼び出した後のキーまたは資格証明ストア・エラー

アプリケーションがWebサービスを呼び出した後に、次のようなキーまたは資格証明ストア・エラーが表示されます。

- WSM-00056: キー<alias_name>は取得されません

- WSM-00256: プロパティ"Keystore Sign Alias"は設定されていません

問題

次のような問題の原因が考えられます。

- Oracle WSMキーストア構成内の署名鍵または暗号化鍵の別名が、Oracle WSMキーストアに存在しません。

- 署名鍵、暗号化鍵またはOracle WSMキーストア・パスワードが、Oracle WSMのキーストア・ファイルとキーストア構成の間で同期していません。つまり、少なくとも1つのパスワードの値が両方の場所で一致していません。

解決策

Oracle WSMキーストア構成内の署名鍵または暗号化鍵の別名が、Oracle WSMキーストアに存在することを確認するには:

1. Fusion Middleware Controlを使用して、「Oracle WSMキーストアの構成」の手順を実行して、Oracle WSMキーストア構成内の署名鍵または暗号化鍵の別名を識別します。

2. 手順1で識別した別名がOracle WSMキーストア・ファイルに存在することを確認します。この操作を行うには、「秘密鍵の生成およびJavaキーストアの作成」の手順4に従って、Oracle WSMキーストア・ファイルでkeytool -listコマンドを使用します。keytoolユーティリティの使用の詳細は、次のURLでkeytool - キーおよび証明書管理ツールドキュメントを参照してください。
http://download.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html

注意:
前述のURLでドキュメントが見つからない場合は、Java SEテクニカル・ドキュメントの検索Webページで検索してアクセスできます。
http://download.oracle.com/javase/search.html

- 各別名が、資格証明ストア内のキーストア・ファイルとOracle WSMキーストア構成で同期していることを確認します。同期していない場合は、「Oracle WSMキーストアの構成」の手順に従って、Oracle WSMキーストア構成内の別名を編集できます。keytool -changealiasコマンドを使用すると、Oracle WSMキーストア・ファイル内の別名を編集できます。

注意:
別名を編集する前に、この操作が他のWebサービスに影響を及ぼさないことを確認します。

- 署名鍵または暗号化鍵の別名がOracle WSMキーストア・ファイルに存在しない場合は、「秘密鍵の生成およびJavaキーストアの作成」の説明に従って追加します。

署名鍵、暗号化鍵およびOracle WSMキーストア・ファイルのパスワードが、Oracle WSMのキーストア・ファイルとキーストア構成の間でそれぞれ同期していることを確認するには:

1. keytoolを使用して、Oracle WSMキーストア・ファイル内のパスワードを再設定します。パスワードは表示されないため、両方の場所でそれぞれ同じパスワード値を設定するには、パスワードの再設定が唯一の方法です。

- keytool -storepasswdコマンドを使用して、Oracle WSMキーストア・ファイルのパスワードを再設定します。

- keytool -keypasswdコマンドを使用して、署名鍵パスワードおよび暗号化鍵パスワードを再設定します。

2. Fusion Middleware Controlを使用して、「Oracle WSMキーストアの構成」の説明に従って、Oracle WSMキーストア構成内のパスワードを手順1で設定した値にそれぞれ再設定します。

アプリケーションがWebサービスを呼び出した後の信頼証明書エラー

アプリケーションがWebサービスを呼び出した後に、次のような信頼証明書エラーが表示されます。

WSM-00138: 証明書へのパスは例外のため無効です

問題

問題の原因として、Webサービスがその証明書をWeb Services Description Language (WSDL)で通知している場合、クライアントがその証明書または発行者を信頼するよう適切に構成されていない可能性が考えられます。

解決策

WSDLで通知されるWebサービスの証明書または発行者を信頼するようクライアントが構成されていることを確認するには:

1. クライアント・キーストアに、Webサービスの証明書またはその発行者の証明書があることを確認します。
keytool –listコマンドを使用して、クライアント・キーストア内の証明書を識別します。いずれかの証明書がクライアント・キーストアに不足している場合は、keytool –importcertコマンドを使用してそれを追加します。

keytoolの使用の詳細は、Java SEテクニカル・ドキュメントWebサイトにあるkeytool - キーおよび証明書管理ツールドキュメントを参照してください。このドキュメントには次のURLでアクセスできます。

http://download.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html

2. 証明書がサービスのWSDLでパブリッシュされていない場合は、クライアント・ポリシーのオーバーライド・プロパティkeystore.recipient.aliasの値が、Oracle WSMキーストア・ファイル内の証明書の別名に一致することを確認します。
詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

アイデンティティ伝搬時に発生するSAMLアサーション・エラー

アプリケーションが、Oracle SOAを使用して異なるアプリケーションを呼び出すことによりユーザーのアイデンティティの伝搬を試みると、InvalidSecurityToken、FailedAuthenticationおよびSAML assertion issuer関連エラーが発生します。

問題

次のような問題の原因が考えられます。

- SAMLトークンのSAML発行者名が構成されていないか、構成が正しくありません。

- subject.precedence構成オーバーライドの設定が正しくありません。

解決策

SAML発行者名の構成のトラブルシューティングを行うには:

クライアントが使用しているSAML発行者名が、Oracle WebLogic Serverドメイン内で構成されている発行者に含まれていることを確認します。この操作を行うには、「別のSAMLアサーション発行者名の追加」の手順を実行します。

クライアントが使用しているSAML発行者名が、Oracle WebLogic Serverドメイン内の発行者として構成されていない場合、saml.issuer.nameオーバーライドを、ドメイン内で構成されている発行者の1つに更新することによって、クライアントの発行者名を変更することをお薦めします。

クライアントの発行者名を変更できない場合は、「別のSAMLアサーション発行者名の追加」の手順を実行することによって、発行者名をOracle WebLogic Serverドメインに追加できます。

注意:
Oracle WebLogic Serverドメイン内で構成されている発行者を変更した場合は、Oracle WSMがデプロイされている管理対象サーバーを再起動する必要があります。

subject.precedence構成オーバーライドのトラブルシューティングを行うには:

1. 現在のクライアント・ポリシー内のsubject.precedenceオーバーライド値をfalseに設定して、アイデンティティを異なるユーザーに変更します。デフォルトでは、subject.precedenceオーバーライドはtrueに設定されます。

2. サービスに送信するユーザーのユーザー名およびパスワードが含まれるクライアント・ポリシーで、資格証明ストア・フレームワークの適切なキー・オーバーライドを設定します。このユーザーのエントリが資格証明ストア・フレームワークに存在しない場合は、それを追加する必要があります。詳細は、「資格証明ストアの構成」を参照してください。

3. 「アイデンティティ切替えのためのWebサービス・クライアントの構成」の手順を実行して、クライアント・アプリケーションに対して適切なWebサービス・アイデンティティ権限が設定されていることを確認します。

アプリケーションがWebサービスを呼び出した後のポリシー・アクセス・エラー

アプリケーションがWebサービスの呼び出しを試みると、次のようなポリシー・アクセス・エラーが表示されます。

- WSM-06156: ポリシーURIが欠落しているか、空か、無効な文字が含まれています。

- WSM-06158: 参照されたポリシーがリポジトリ内にありません。

- WSM-02017: ドキュメントはリポジトリに見つかりませんでした。

問題

次のような問題の原因が考えられます。

- ポリシーURIが欠落しているか、ポリシー名のスペルミスです。

- ポリシー・マネージャが停止しています。

- ポリシーがリポジトリ内にありません。

- キャッシュの遅延が原因で、ポリシー添付が有効ではありません。

解決策

ポリシー・アクセス問題を診断および解決する手順は、次のとおりです。

1. 「Oracle WSM Policy Managerでの問題の診断」および「ポリシー・マネージャに接続できない」の説明に従って、ポリシー・マネージャが稼働していることを確認します。

2. mds-owsmデータソース接続がアクセス可能で、使用可能であることを確認します。詳細は、『Oracle Fusion Middleware管理者ガイド』のデータ・ソースの概要と管理に関する項を参照してください。

3. ポリシー・マネージャのバリデータ・ページを使用してリポジトリのコンテンツを表示することによって、Oracle WSMリポジトリにポリシーがあることを確認します。バリデータ・ページへのアクセスおよびリポジトリ・コンテンツの表示の詳細は、「Oracle WSM Policy Managerでの問題の診断」を参照してください。

4. リポジトリにポリシーがある場合、ポリシーURIがリポジトリ内のポリシーURIと一致することを確認します。

5. ポリシーがOracle WSMリポジトリにない場合、次のいずれかの操作を行います。

- 事前定義済ポリシーの場合:

- upgradeWSMPolicyRepository()コマンドを使用して、リポジトリが最新のすべての事前定義済ポリシーで更新されていることを確認します。詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のupgradeWSMPolicyRepositoryに関する項を参照してください。

- 「Oracle WSMリポジトリの再構築」の説明に従って、resetWSMPolicyRepositoryコマンドを使用してリポジトリのコンテンツをリセットします。

- カスタム・ポリシーの場合:

- 「Webサービス・ポリシーのインポート」の説明に従って、これをリポジトリにインポートします。カスタム・ポリシーの作成の詳細は、「Webサービス・ポリシーの作成」を参照してください。

6. ユーザーが、適切な権限が付与されたロールに属することを確認します。ロールまたは権限を変更するには、「ユーザーのグループまたはロールの変更」を参照してください。

7. ポリシー・アクセッサおよびキャッシュ遅延を確認します。
ポリシー添付が有効になるまでにかかる時間は、Oracle WSMポリシー・アクセッサおよびポリシー・キャッシュのプロパティ設定で決まります。デフォルトでは、この遅延は最大で11分です。遅延を縮小するには、必要に応じて、次のキャッシュ・プロパティ設定を調整できます。

- ポリシー・アクセッサ
cache.refresh.initial、デフォルトは600000ミリ秒(10分)

cache.refresh.repeat、デフォルトは600000ミリ秒(10分)

- ポリシー・キャッシュ
cache.tolerance、デフォルトは60000ミリ秒(1分)

これらのプロパティの調整の詳細は、「プラットフォーム・ポリシー・プロパティの構成」を参照してください。

資格証明ストア内のユーザーにアクセスできない

Oracle WSMが資格証明ストア内のユーザーへのアクセスを試みると、次のようなエラーが発生します。

WSM-00015: ユーザー名が見つかりません

問題

Oracle WSMが、資格証明ストア内のユーザーを見つけることができません。次のいずれかの原因が考えられます。

- 資格証明マップoracle.wsm.securityが資格証明ストアに存在しません。

- Oracle WSMが使用するマップにユーザーがリストされていません。

- エントリのcsfキーが資格証明ストアに存在しません。

解決策

資格証明マップoracle.wsm.securityが資格証明ストアに存在することを確認します。Oracle WSMは、この資格証明ストア・マップからのみ読み取ります。

資格証明マップoracle.wsm.securityが資格証明ストアに存在することを確認するには、「資格証明ストアの構成」の手順を参照してください。

アプリケーションがoracle.wsm.security以外の資格証明マップを使用する場合は、Oracle WSMがアクセスする必要があるユーザーがoracle.wsm.security資格証明マップに複製されていることを確認します。

アプリケーションがWebサービスを呼び出した後の認証エラー

アプリケーションがWebサービスの呼び出しを試みると、次のようなエラーが表示されます。

java.security.AccessControlException: access denied (oracle.wsm.security.WSFunctionPermission

問題

一般に、これは実際には問題ではなく、意図する動作です。つまり、システムは、ユーザーが試みたアクションについて、ユーザーを認証できませんでした。デバッグを行うには、コール元サーバーの診断ログで認証エラーを確認します。次のようなエラーが表示されます。

2011-01-06T22:15:43.691-08:00] [SalesServer_2] [ERROR] [] [oracle.jbo.server.svc.ServicePermissionCheckInterceptor_w2f8f5_Impl]
[tid: [ACTIVE].ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)']
[userId: FMW_APPS_CRM_SELFSERVICE_ADF_APPID]
[ecid: 004aIPwzJDGE8TQRyaI7T00001WJ00EJ8f,0:1:3:1:11:0x5f5e189:6:1]
[WEBSERVICE_PORT.name: PartnerServiceSoapHttpPort] [APP: SalesApp#V2.0]
[J2EE_MODULE.name: partnerCenterCorePublicModel]
[WEBSERVICE.name: PartnerService] [J2EE_APP.name: SalesApp_V2.0]
[URI: /partnerCenterCorePublicModel/PartnerService] [[
java.security.AccessControlException: access denied (oracle.wsm.security.WSFunctionPermission
http://xmlns.oracle.com/apps/partnerMgmt/partnerCenter/PartnerService#updatePartner invoke)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
at java.security.AccessController.checkPermission(AccessController.java:546)
at oracle.jbo.server.svc.ServicePermissionCheckInterceptor.checkPermission(ServicePermissionCheckInterceptor.java:103)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

解決策

ログ内の次の情報に注意を払います。これらは、前述の例では太字で示されています。

1. アプリケーション・ストライプ名。前述のログではSalesApp#V2.0です。これが、アプリケーション用に構成したものと一致していることを確認します。ストライプ名の構成方法の詳細は、Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドのサーブレット・フィルタおよびEJBインターセプタの構成に関する項を参照してください。

2. 権限の付与。次のもので構成されています。

1. リソース名。前述のログではhttp://xmlns.oracle.com/apps/partnerMgmt/partnerCenter/PartnerService#updatePartnerです。

2. アクション。前述のログではinvokeです。

どちらの情報も、権限付与の中で正しく指定されている必要があります。詳細は、「認証権限の決定方法」を参照してください。

アプリケーションがLDAPベースのオーセンティケータを使用しており、すべてのロールをLDAPに格納している場合は、「デフォルト・ユーザーの変更」の説明に従って、Oracle WSMがユーザーおよびロールにアクセスできることを確認します。

アプリケーションがWebサービスを呼び出した後のタイムスタンプ・エラー

アプリケーションがWebサービスを呼び出した後に、次のようなタイムスタンプ・エラーまたは時間差エラーが発生します。

WSM-00060: タイムスタンプの検証中にエラーが発生しました

問題

この問題は、次のようなタイムスタンプ検証または時間差エラーとして出現します。

Caused By: FAULT CODE: InvalidSecurityToken FAULT MESSAGE: Found invalid condition "on or after" in SAML assertion.
Current Time:Fri Feb 11 22:16:42 IST 2011, clockSkew:300000 milli seconds, NotOnOrAfter Time:Fri Feb 11 14:21:42 IST 2011.

この問題は、通常、サーバーとクライアントのクロックが同じタイムゾーンに変換された後、その差が5分を超えると発生します。

解決策

次のいずれかの方法でクライアントまたはサーバーのクロックを変更して、両方を正しい時間に設定し、その差が5分以内になるようにします。

- 「Webサービス・セキュリティ・ポリシー強制のチューニング」の説明に従って、時間差を調整します。

- システム・クロックを設定します。

- ntpサーバーを使用して時間を維持します。

アプリケーションがWebサービスを呼び出した後の複数の認証セキュリティ・ポリシー・エラー

アプリケーションがWebサービスを呼び出した後に、ログに複数のポリシー・エラー(WSM-01823)が表示されます。このエラーは、たとえば、複数の認証ポリシーがサブジェクトに添付されている場合に発生します。

問題

2つ以上の認証ポリシーがサブジェクトに添付されています。2つのポリシー・セットがあり、それぞれが、Webサービスなど、同じリソース・タイプに認証ポリシーを添付する場合に、この問題が発生します。たとえば、ドメインのOracle WSMリポジトリに2つのポリシー・セットが定義されており、一方はポリシー・スコープをDomain("domain_name")として定義し、他方はDomain ("*")として定義しているものとします。次のリストは、このシナリオの例を示しています。

wls:/soa_domain/serverConfig> displayPolicySet('default-domain-ws-domain_gpa')

Policy Set Details:
-------------------
Name:                default-domain-ws-domain_gpa
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("soa_domain")
Description:         Global policy attachments for Web Service Endpoint resources.
Enabled:             true
Policy Reference:    security : oracle/wss11_saml_or_username_token_with_message_protection_service_policy, enabled=true

wls:/soa_domain/serverConfig> displayPolicySet('default-domain-ws-domain')

Policy Set Details:
-------------------
Name:                default-domain-ws-domain
Type of Resources:   Web Service Endpoint
Scope of Resources:  Domain("*")
Description:         Global policy attachments for Web Service Endpoint resources.
Enabled:             true
Policy Reference:    security : oracle/wss_saml_or_username_token_service_policy, enabled=true

この例では、異なる名前の2つのポリシー・セットがあり、そこに含まれる異なる認証ポリシーがドメイン上の同じリソース・タイプを指しています。

注意:
サブジェクトに添付されている認証ポリシーが、構成オーバーライドを含めて、お互いの完全な複製の場合、ポリシー添付は複製として表示され、構成は有効です。

解決策

認証ポリシーの添付を試みている複数のポリシー・セットがあるかどうかを確認する手順は、次のとおりです。

1. listPolicySets()コマンドを使用して、ドメイン内のポリシー・セットのリストを表示します。このコマンドの詳細は、「WLSTを使用したポリシー・セットのリストの表示」を参照してください。

2. detail引数をtrueに設定した状態でlistWebServicesまたはlistWebServiceClientsコマンドを使用して、ドメイン内のすべてのアプリケーションとコンポジットに関するエンドポイント(ポート)とポリシーの詳細、エンドポイントのセキュア・ステータス、構成オーバーライドと制約、およびエンドポイントに有効な構成があるかどうかを表示します。
例のシナリオで定義されているポリシー・セットを使用すると、listWebServices(detail=true)コマンドからの出力は、次のようになります。2つのポリシーは重複しており、それらが関連するポリシー・セットは太字のテキストで示されます。

wls:/soa_domain/serverConfig> listWebServices(detail=true)

/soa_domain/jrfServer_admin/jaxws-sut-no-policy :
moduleName=jaxws-service, moduleType=web, serviceName={http://namespace/}TestService
enableTestPage: true
enableWSDL: true

TestPort        http://host.example.com:8344/jaxws-service/TestService
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
Constraint: No Constraint
(global) security : oracle/wss11_saml_or_username_token_with_message_protection_service_policy, enabled=true
/policysets/global/default-domain-ws-domain_gpa : Domain("*")
(global) security : oracle/wss_saml_or_username_token_service_policy, enabled=true
/policysets/global/default-domain-ws-domain : Domain("*")
Attached policy or policies are not valid.
One or more attached policies are not compatible with endpoint or other attached policy.

3. 重複が見つかった場合は、次のいずれかを行います。

- 「ポリシー・セットの削除」の説明に従って、いずれかのポリシー・セットを削除します。

- 「ポリシー・セットの有効化および無効化」の説明に従って、いずれかのポリシー・セットを無効にします。

詳細は、「エンドポイントのセキュア・ステータスの決定」を参照してください。

通知されたWSDLからSTSの構成の詳細を取得できない

STSポリシー(oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policyおよびoracle/sts_trust_config_service_policy)で構成されたWebサービスをSOAコンポジット参照を通じて呼び出すと、次の例外がスローされます。

Unable to invoke endpoint URI "http://host:port/service/port" successfully due to: oracle.fabric.common.PolicyEnforcementException: GenericFault : generic error.

問題

通知されたWSDLからSTSの構成の詳細を取得できません。この問題は、wsm-pmポリシー・マネージャ・アプリケーションが実行されていないときに、STSポリシー構成情報がWSDLから取得された場合に発生する可能性があります。サーバーは、新しいコピーをフェッチするかわりに、このWSDLをローカルでキャッシュしている場合があり、そのためSTS構成情報が存在せず、呼出しが失敗していきます。

解決策

必要なSTS構成の詳細を取得する手順:

1. 『Oracle Fusion Middleware管理者ガイド』のアプリケーションの起動と停止に関する項の説明に従って、ポシリー・マネージャ・アプリケーションを再起動します。これにより、WebサービスがSOAコンポジット参照を通じて呼び出されたときに、確実にSTS構成の詳細がWSDLで通知されます。

2. 「Webサービスの作成」ダイアログを使用してSOAコンポジットを設計するときに、「WSDLとその依存アーティファクトをプロジェクトにコピー。」チェック・ボックスが選択されていないことを確認します。このオプションが有効化されている場合は、チェック・ボックスを選択解除し、SOAコンポジットを再デプロイします。詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』のサービス・バインディング・コンポーネントの追加に関する項を参照してください。

WLSTを使用したポリシー添付に関する問題の診断

直接添付されたポリシーと、ポリシー・セットを使用してグローバルに添付されたポリシーが競合しないことを確認するには、次のWLSTコマンドを使用します。

- listWebServices (detail="true"): エンドポイントの構成、各エンドポイントに添付された有効なポリシー・セット、エンドポイントのセキュア・ステータス、構成オーバーライドと制約、およびエンドポイントに有効な構成があるかどうかを含めて、ドメイン内のWebサービスのリストを表示します。このコマンドの使用の詳細は、「WLSTを使用したドメインのWebサービスの表示」を参照してください。

- listWebServiceClients (detail="true"): エンドポイントの構成、各エンドポイントに添付された有効なポリシー・セット、エンドポイントのセキュア・ステータス、構成オーバーライドと制約、およびエンドポイントに有効な構成があるかどうかを含めて、ドメイン内のWebサービス・クライアントのリストを表示します。このコマンドの使用の詳細は、「Webサービス・クライアントの表示」および「WLSTの使用」を参照してください。

注意:
エンドポイントは、(直接またはポリシー・セットを使用して外部で)添付されたポリシーで認証、認可またはメッセージ保護の操作が強制される場合にセキュアであると判断されます。

ポリシー・セットを使用してグローバルに添付されたポリシーが構成に含まれる場合、次のコマンドを使用してポリシー・セットに関する情報を表示できます。

- listPolicySets(): リポジトリ内のポリシー・セットのリストを表示します。このコマンドの使用の詳細は、「WLSTを使用したポリシー・セットのリストの表示」を参照してください。

- displayPolicySet(): 特定のポリシー・セットの構成を表示します。このコマンドの使用の詳細は、「ポリシー・セットの構成の表示」および「WLSTの使用」を参照してください。

Fusion Middleware Controlを使用してエンドポイントで有効なポリシーを表示するには、「Webサービスに添付されたポリシーの表示」を参照してください。

エンドポイントがセキュアで、構成が有効かどうかについての判断の詳細は、「エンドポイントのセキュア・ステータスの決定」を参照してください。

グローバル添付ポリシーおよび直接添付ポリシーが含まれる、有効な構成のサンプル出力

次の例は、有効な構成に対するlistWebServices(detail=true)コマンドからのサンプル出力を示しています。グローバル添付ポリシーまたは直接添付ポリシーの優先度を指定できるため(reference.priority構成オーバーライドを使用)、effectiveフィールドには、直接添付ポリシーがエンドポイントで有効かどうかが示されます。

注意:
エンドポイント管理を簡単にするために、エンドポイントで有効かどうかにかかわらず、すべての直接添付ポリシーが出力に表示されます。対照的に、グローバルにアタッチされたポリシーは、エンドポイントに対して有効であるもののみが表示されます。

/jrfServer_domain/jrfServer_admin/jaxws-sut :
moduleName=jaxws-sut-service, moduleType=web, serviceName={http://namespace/}TestService
enableTestPage: true
enableWSDL: true

TestPort        http://host.example.com:9315/jaxws-sut-service/TestService
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
management : oracle/log_policy, enabled=true
security : oracle/wss_username_token_service_policy , enabled=true , effective=false
Constraint: No Constraint
(global) security : oracle/wss_saml_or_username_token_service_policy, enabled=true
/policysets/global/all-domains-default-web-service-policies : Domain("*")
reference.priority=1
Constraint: HTTPHeader('VIRTUAL_HOST_TYPE','external')
(global) security : oracle/wss10_message_protection_service_policy, enabled=true
/policysets/global/domainExternal : Domain("*")
Attached policy or policies are valid; endpoint is secure.

直接添付ポリシーのみが含まれる、有効な構成のサンプル出力

次の例は、有効な構成に対するlistWebServices(detail=true)コマンドからのサンプル出力を示しています。直接添付ポリシーは太字で示されています。

/jrfServer_domain/jrfServer_admin/jaxws-sut-no-policy :
moduleName=jaxws-service, moduleType=web, serviceName={http://namespace/}TestService
enableTestPage: true
enableWSDL: true

TestPort        http://host.example.com:8344/jaxws-service/TestService
enable: true
enableREST: false
enableSOAP: true
maxRequestSize: -1
loggingLevel: NULL
security : oracle/wss_saml_or_username_token_service_policy, enabled=true
Attached policy or policies are valid; endpoint is secure.

WLSTを使用したドメイン構成に関する問題の診断

ドメインの構成に関して問題がないことを確認するには、checkWSMStatus WLSTコマンドを使用します。checkWSMStatusコマンドは、ポリシー・マネージャ(wsm-pm)、エージェント(agent)および資格証明ストアとキーストア構成(credstore)のステータスを戻します。コンポーネントのステータスは、まとめて確認することも、個別に確認することもできます。

このコマンドは、WSMで保護されているWebサービスのプロビジョニングの後に実行できます。最初の呼出しの後まで待機する必要はありません。

注意:
checkWSMStatusコマンドが正しく機能するためには、ポリシー・マネージャ(wsm-pm)アプリケーションがデプロイされ、実行されている必要があります。

このコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のcheckWSMStatusに関する項を参照してください。

次の例では、checkWSMStatusコマンドは、キーkeystore-csf-keyが欠如しているため、資格証明ストアの失敗を戻します。

wls:/base_domain/serverConfig> checkWSMStatus('credstore')

Credential Store Configuration:

FAILED.
Message(s):
keystore.pass.csf.key : Property is configured and its value is "keystore-csf-key".
Description: The "keystore.pass.csf.key" property points to the CSF alias that is mapped to the username and password of the keystore.
Only the password is used; username is redundant in the case of the keystore.
keystore-csf-key : Credentials not configured.

Credential Store Diagnostic Messages:
Message(s):
The csf-key keystore-csf-key is not present in the credential store.

Perform the following steps to update the credential store (using WLST commands):-
1. connect()
2. createCred(map="oracle.wsm.security", key="keystore-csf-key", user="keystore-csf-key", password="<keystore-password>", desc="Keystore Password CSF Key")
NOTE:- All the above commands are based on the Domain level configurations.
The actual csf key may be overridden at runtime due to config override.
See Documentation for more details.
false

次の例では、checkWSMStatusコマンドは、ドメインbase_domainの資格証明ストアとキー、ポリシー・マネージャおよび強制エージェントのステータスを戻します。

wls:/base_domain/serverConfig> checkWSMStatus()

Credential Store Configuration:

PASSED.
Message(s):
keystore.pass.csf.key : Property is configured and its value is "keystore-csf-key".
Description: The "keystore.pass.csf.key" property points to the
CSF alias that is mapped to the username and password of the keystore.
Only the password is used; username is redundant in the case of the keystore.
keystore-csf-key : Credentials configured.
keystore.sig.csf.key : Property is configured and its value is "sign-csf-key".
Description: The "keystore.sig.csf.key" property points to the
CSF alias that is mapped to the username and password of the private key that is used for signing.
sign-csf-key : Credentials configured.
Sign Key : Key configured.
Alias - orakey
Sign Certificate : Certificate configured.
Alias - CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US
Expiry - June 28, 2020 11:17:12 AM PDT
keystore.enc.csf.key : Property is configured and its value is "enc-csf-key".
Description: The "keystore.enc.csf.key" property points to the
CSF alias that is mapped to the username and password of the private key that is used for decryption.
enc-csf-key : Credentials configured.
Encrypt Key : Key configured.
Alias - orakey
Encrypt Certificate : Certificate configured.
Alias - CN=weblogic, OU=Orakey Test Encryption Purposes Only, O=Oracle, C=US
Expiry - June 28, 2020 11:17:12 AM PDT

Policy Manager:

PASSED.
Message(s):
OWSM Policy Manager connection state is OK.
OWSM Policy Manager connection URL is "t3://host:7001".

Enforcement Agent:

PASSED.
Message(s):
Enforcement is successful.
Service URL: http://host:7001/Diagnostic/DiagnosticService?wsdl

WS-Trustユースケースでの一般的なOracle WSM例外の診断

表16-1は、エンドツーエンドのWS-Trustユースケース・シナリオで発生する可能性のあるOracle WSMの一般的な例外およびエラーを示しています。考えられる原因と推奨される解決策も記載されています。サポートされているWS-Trustユースケースの構成方法の詳細は、次の各項を参照してください。

- WS-Trustポリシーと構成手順

- OpenSSO STSでのWS-Trustの使用例

表16-1 WS-TrustユースケースでのOracle WSMの一般的な例外およびエラー

例外/エラー

考えられる原因

解決策

WSM-00015: ユーザー名が見つかりません

1. STS発行トークンのクライアント・ポリシーでsts.auth.user.csf.key構成プロパティがオーバーライドされていない可能性があります。

2. このプロパティがオーバーライドされている場合、資格証明ストア内でCSFキーが使用可能でないか、オーバーライドで正しい値が指定されていない可能性があります。

STS発行トークンのクライアント・ポリシーのsts.auth.user.csf.keyプロパティを、資格証明ストアの正しい値でオーバーライドしてください。

javax.net.ssl.SSLHandshakeException: PKIXパス検証が失敗しました: java.security.cert.CertPathValidatorException: 証明書のチェックが失敗しました

SSLチャネルを介してサービスと通信する場合、そのサービスの有効なSSL証明書が、環境で使用されているJREディストリビューションの信用できるキーストア内で使用可能になっている必要があります。ほとんどの場合、SSL証明書は次のディレクトリ内にあります。

JAVA_HOME/jre/lib/security/cacerts

この例外の原因として、次のいずれかが考えられます。

- サービスのSSL証明書が信頼できるキーストア内に見つかりませんでした。

- 信頼できるキーストアに存在するSSL証明書の有効期限が切れています。

サービスの有効なSSL証明書が信頼できるキーストア(JAVA_HOME/jre/lib/security/cacerts)にインポートされていることを確認します。詳細は、「SSLに関するキーストアの構成」を参照してください。

WSM-00323: WSDLから取得されたSTS ISSUER_ADDRESSがnullです。ローカルSTS構成も使用できません。

この例外は、クライアントとサービスのどちらにもSTS信頼構成ポリシーが添付されていないことが原因で発生します。単純なWS-Trustユースケースでは、STS信頼構成ポリシーをクライアント・アプリケーションかサービス・アプリケーションのどちらかに添付する必要があります。ポリシーが添付されていないため、クライアントは、SAMLトークンを取得するためにどのSTSと通信するかを判断できません。

構成に応じて、STS信頼構成ポリシーをクライアント・アプリケーションまたはサービス・アプリケーションに添付します。詳細は、「WS-Trustポリシーと構成手順」を参照してください。

FailedAuthentication: セキュリティ・トークンを認証できません。: リクエスト: oracle.wsm.security.SecurityExceptionの受信中にエラーが発生しました。: WSM-00062: 署名に使用された証明書へのパスは無効です。.

Webサービス・プロバイダまたはリライイング・パーティが、受信SAMLトークンの発行者の署名を検証できません。

発行者の公開鍵または証明書を、サービスが使用しているJKS/KSSキーストアにインポートしたことを確認してください。

手順の詳細は、「メッセージ保護に関するキーストアの構成」を参照してください。

InvalidSecurityToken: セキュリティ・トークンが有効ではありません。 SAMLアサーション発行者名が無効です。

WSM-00376: 発行者"<発行者名>"のSAMLトークン認証に失敗しました

リライイング・パーティ・サービスがデプロイされているドメイン内の信頼できる発行者リストでSAMLアサーション発行者名が構成されていません。

サービスが実行されているドメイン内の信頼できる発行者のリストに発行者を追加します。

手順の詳細は、「署名証明書の信頼できる発行者および信頼できるDNリストの定義」を参照してください。

WSM-00231: クライアントと互換性のあるポリシーをSTS <STS WSDL URI>、ポート名<STSポート名>"について検出できません

この例外は、サード・パーティのSTSサーバーが、Oracle WSMで互換性のあるクライアント・ポリシーがないポリシーを使用して保護されている場合にスローされることがあります。

クライアントが通信を試みているSTSエンドポイントがセキュリティ・ポリシーで保護されています。Oracle STSではOracle WSMが使用され、これによって互換性のあるクライアント・ポリシーおよびサービス・ポリシーが提供されます。この場合、クライアントは対応するクライアント・ポリシーを問題なく検出できます。

Oracle WSMの信頼クライアントは一般的なSTSサーバーを使用してテストされているため、この例外が発生することはほとんどありません。

この例外がスローされた場合の回避策として、oracle/sts_trust_config_client_policyの新規バージョンまたはクローニング済バージョンをクライアント側に添付して、STSとの通信に使用されるクライアント・ポリシーを使用してこれを構成する方法があります。詳細は、「Webサービス・クライアントからのSTS構成ポリシーの手動による構成: メイン手順」を参照してください。

Oracle WSM RESTfulクライアント・フィルタでの問題の診断

Jersey JAX-RSリファレンス実装の使用のRESTful Webサービス・クライアントの保護に関する項で説明されている手順を完了してOracle WSM RESTfulクライアント・フィルタを登録した後は、RESTfulクライアントを保護するOracle WSMポリシーを実行する必要があります。これらのポリシーが実行されない場合、CLASSPATHにweblogic.jaxrs.api.client.Clientクラスを定義するJARやwls-rest-client.jar共有ライブラリをオーバーライドしているJARが他に存在しないことを確認します。

JDeveloperを使用してRESTfulクライアントを開発した場合、「デフォルトでデプロイ済」プロパティを無効化することによって、アプリケーションでJersey JAX-RSリファレンス実装(RI)のデプロイを無効化していることを確認します。詳細は、Oracle JDeveloperのオンライン・ヘルプで、RESTful Webサービスの開発に関する項のプロジェクトへのJersey JAX-RS参照実装の追加方法に関する説明を参照してください。

ログを使用した問題の診断

Webサービスを含むOracle Fusion Middlewareコンポーネントは、起動情報と停止情報、エラー、警告メッセージ、HTTPリクエストのアクセス情報など、すべてのタイプのイベントを記録するメッセージを含むログ・ファイルを生成します。各ログ・メッセージには、時間、コンポーネントID、および発生する問題の検出と診断を支援するユーザーなどの特定の情報が含まれます。

ログ・メッセージを確認し、Webサービスなど特定のコンポーネントでの問題を診断できます。ログ・ファイルには2つのカテゴリがあり、Webサービスに関する問題の診断に役立てるために参照できます。

- 診断ログ: Oracle Fusion Middlewareの特定の機能コンポーネントに関する診断データにアクセスできます。詳細は、「Webサービス診断ログの使用」を参照してください。
事前定義済診断ログ出力のセットがあります。「Webサービス・ログ・ファイルの構成」の説明に従って、独自の診断ログ出力を構成できます。

- メッセージ・ログ: SOAPメッセージ・リクエストの要素を表示できます。ポリシーを使用してメッセージ・ログの作成を制御します。詳細は、「Webサービス・メッセージ・ログの使用」を参照してください。

Oracle Fusion Middlewareでのロギングの詳細は、『Oracle Fusion Middleware管理者ガイド』の ログ・ファイルと診断データの管理に関する項を参照してください。

次の項では、問題を診断するための、診断およびメッセージ・ログの使用方法を説明します。この項の最後にサンプル・ログのセットがあります。

- Webサービス診断ログの使用

- Webサービス・メッセージ・ログの使用

- サンプル・ログの確認

Webサービス診断ログの使用

診断ログを使用して、Oracle Fusion Middlewareの特定の機能コンポーネントに関する診断データにアクセスできます。

次の項では、診断ログ・ファイルの表示方法および管理方法を説明します。

- 診断ログのログ・レベルの設定

- 診断ログの表示

- 診断ログのフィルタ処理

- Oracle WSMデバッグ・メッセージのロギング

診断ログのログ・レベルの設定

「ログ構成」ページを使用して、WebLogic ServerレベルでWebサービスおよびOracle WSMのコンポーネントのロギング・レベルを設定します。

また、「Webサービス・エンドポイント」ページから、特定のWebサービス・エンドポイントのサーバー・レベルで設定されたログ・レベルをオーバーライドできます。Webサービス・エンドポイント・レベルで設定されたロギング・レベルは、WebLogic Serverレベルで設定されたレベルよりも詳細なレベルである必要があります。詳細でない場合は、WebLogic Serverレベルで設定されたロギング・レベルが使用されます。

次の手順では、WebLogic ServerおよびWebサービス・エンドポイント・レベルで診断ログのログ・レベルを設定する方法を説明します。詳細は、『Oracle Fusion Middleware管理者ガイド』のログ・ファイルに書き込まれる情報のレベルの設定に関する項を参照してください。

WebLogic Serverレベルで診断ログのログ・レベルを設定する手順

1. ログ出力を構成するWebLogic Serverに移動します。

1. ナビゲーション・ペインで「WebLogicドメイン」を開きます。

2. ドメインを開きます。

3. リストから必要なサーバーを選択します。
「WebLogicサーバー」ホームページが表示されます。

2. 「WebLogic Server」メニューで、「ログ」→「ログ構成」を選択します。
「ログ構成」ページが表示されます。

3. 「ログ・レベル」タブを選択します。
図16-6に示すように、ログ出力のリストが表示されます。

「ログ・レベル」ページには、ログ出力の名前、現在のロギング・レベル、編集可能なもの、および関連するログ・ファイル(たとえば、olh-handler)が表示されます。ログ・ファイルの構成の詳細は、「Webサービスのログ・ファイルの構成」を参照してください。

図16-6 「ログ・レベル」ページ

4. 「ルート・ログ出力」を開きます。

5. 「Oracle」を開きます。

6. 次の1つ以上のコンポーネントのロギング・レベルを設定します。

- oracle.webservices: Webサービス・コンポーネント。

- oracle.wsm: Oracle WSMコンポーネント。

前述のコンポーネントのいずれかを開いてサブコンポーネント・レベルでロギング・レベルを指定することで、ロギング・レベルを微調整できます。

ログ出力のロギング・レベルを変更するには、「ログ出力名」列のログ出力に移動し、「Oracle Diagnostic Loggingレベル(Javaレベル)」ドロップダウン・メニューから目的のロギング・レベルを選択します。

たとえば、ログ出力oracle.wsmに関連するドロップダウン・メニューから「TRACE:32」を選択します。

デフォルトでは、ロギング・レベルはその親から継承され、WebサービスおよびOracle WSMのコンポーネントとサブコンポーネントに対してNOTIFICATION: 1 (INFO)に設定されます。

7. 「適用」をクリックして、新しいロギング・レベルを保存します。

Webサービス・エンドポイント・レベルで診断ログのログ・レベルを設定する手順

1. 「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページに移動します。

2. 「構成」タブをクリックします。

3. 「ロギング・レベル」フィールドに、「重度」、「警告」、「情報」、「構成」、「密」、「詳細」、「最も詳細」または「NULL」のいずれかを設定します。

注意:
setWebServiceConfiguration WLSTコマンドを使用して、Webサービス・エンドポイントでログ・レベルを設定することもできます。itemProperties引数のloggingLevelプロパティに、SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST、NULLのいずれかを設定します。このコマンドの使用の詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のsetWebServiceConfigurationに関する項を参照してください。

診断ログの表示

「ログ・メッセージ」ページから、ADFおよびWebCenter Webサービス・エンドポイントの診断ログ・ファイルを表示できます。

Webサービス・エンドポイントの診断ログを表示する手順

「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページに移動し、「Webサービス・エンドポイント」ページの「クイックリンク」セクション(右上)で「診断ログ」をクリックします。

注意:
アプリケーションのWebサービスで生じたすべての障害のサマリーを表示できます。詳細は、「Webサービスのパフォーマンスの監視」を参照してください。

次の図に示すように、「ログ・メッセージ」ページが表示されます。

図16-7 「ログ・メッセージ」ページ

メッセージ領域のメッセージをクリックすると、ページの下部に詳細が表示されます。必要に応じて、リスト上のメッセージを選択して「メッセージをファイルにエクスポート」をクリックすることで、メッセージをテキスト、XMLまたはCSVファイルにエクスポートできます。

次のコントロールを使用して、表示されるメッセージ・コンテンツを制御できます。

- 検索: 検索条件を変更します。詳細は、「診断ログのフィルタ処理」を参照してください。

- 「表示」メニュー: 表で表示する列を選択します。特定の列をクリックすると、コンテンツが昇順または降順にソートされます。

- 「表示」メニュー: メッセージをタイプまたはID別にグループ化したり、年代順にメッセージを表示します。

- 関連メッセージの表示: リストで選択したメッセージに関連するメッセージを表示します。

- 広範囲のターゲット・スコープ: 表示されるメッセージのスコープを拡大します。ドメイン、WebLogic Serverまたはファームのすべてのメッセージを含めるように、スコープを拡大できます。

- 「リフレッシュ」メニュー: 自動または手動リフレッシュ率を指定します。

生成されたログ・ファイルのコンテンツを表示する手順は次のとおりです。

- メッセージに関連付けられたログ・ファイルのアイコンをクリックし、そのログ・ファイルのコンテンツを表示します。

- 「ターゲット・ログ・ファイル」をクリックし、「ログ・ファイル」ページを表示して、生成されたログ・ファイルすべてのコンテンツを表示またはダウンロードします。

詳細は、『Oracle Fusion Middleware管理者ガイド』のログ・ファイルの表示および検索に関する項を参照してください。

診断ログのフィルタ処理

デフォルトでは、「ログ・メッセージ」ページには、過去1時間に記録された診断メッセージのサマリーが表示されます。

診断ログをフィルタ処理する手順

1. 次のフィールドを使用して検索条件を更新して、表示されるメッセージをフィルタ処理します。

- 日付範囲: 日付範囲を次のいずれかに設定します。

- 最新: 期間を定義する時間を設定します。

- 時間間隔: 間隔を定義する開始日と終了日を設定します。

- メッセージ・タイプ: 表示するメッセージ・タイプを選択します。

- フィールドの追加: メッセージID、コンポーネントなどの他のメッセージ・フィールドを検索条件に追加します。

2. フィールドを設定したら、必要に応じて「検索」をクリックします。
メッセージ領域は、フィルタ処理された結果で更新されます。

詳細は、『Oracle Fusion Middleware管理者ガイド』のログ・ファイルの表示および検索に関する項を参照してください。

Oracle WSMデバッグ・メッセージのロギング

Oracle WSMをデバッグするには、WebLogic Serverの起動時に、必要に応じて次のいずれかのプロパティを渡します。詳細は、Oracle WebLogic Serverサーバーの起動と停止の管理のサーバーの起動と停止に関する項を参照してください。

注意:
1つ以上のプロパティを有効にすると、非常に大きなメッセージの場合、パフォーマンスに悪影響を及ぼす可能性があります。有効化されると、Oracle WSMによって一時バッファが作成され、Javaガベージ・コレクタに余分な負荷がかかります。

表16-2 Oracle WSMデバッグ・メッセージのロギングの起動プロパティ

起動プロパティ

説明

-Dxml.debug.verify=true

署名検証の失敗時に生成される一連のバイトを記録します。ログ・レベルが少なくともERRORに設定されている場合、検証エラーはstderrおよび診断ログに出力されます。

-Dxml.debug.digest=true

署名生成の正規化および署名検証の一致の際に生成される一連のバイトを記録します。ログ・レベルが少なくともFINEに設定されている場合、検証エラーはstderrおよび診断ログに出力されます。

-Dxml.debug.decrypt

復号化の失敗の後、XML解析の前に生成される一連のバイトを記録します。検証エラーはstderrおよび診断ログ・ファイルに出力されます。

Webサービス・メッセージ・ログの使用

メッセージ・ログを使用して、ADFおよびWebCenterのWebサービスとクライアントに対する、SOAPメッセージ・リクエストとレスポンスのコンテンツにアクセスできます。デフォルトでは、メッセージ・ログは診断メッセージとは別のログ・ファイルに格納されます。

次の項では、メッセージ・ログ・ファイルの表示方法および管理方法を説明します。

- メッセージ・ログの構成

- メッセージ・ログの表示

- メッセージ・ログのフィルタ処理

メッセージ・ログの構成

Webサービスまたはクライアントのメッセージ・ログは、次のいずれかの方法で構成します。

- ロギング・アサーションを含むポリシーをWebサービスまたはクライアントに添付します。
oracle/security_log_templateという、1つの事前定義済ロギング・アサーション・テンプレートがあります。詳細は、「oracle/security_log_template」を参照してください。このテンプレートは、WebサービスのリクエストとレスポンスのSOAPメッセージ全体をログ出力するように構成されています。デフォルトでは、すべての事前定義済Webサービス・セキュリティ・ポリシーで、最初のセキュリティ・アサーションが実行される前後にSOAPメッセージ全体を取得するために、このロギング・アサーションが使用されます。デフォルトでは、ロギング・アサーションは実行されません。SOAPメッセージをメッセージ・ログに記録するためには、「ポリシー内のアサーションの有効化または無効化」の説明に従って、これを有効化する必要があります。ロギング・アサーションは、デバッグおよび監査目的でのみ有効化することをお薦めします。

- oracle/log_policyポリシーをWebサービスまたはクライアントに添付します。詳細は、「oracle/log_policy」を参照してください。

- 独自のロギング・ポリシーまたはアサーション・テンプレートを作成して、Webサービスのリクエストとレスポンスに関して記録されるSOAPメッセージの要素を絞り込みます。
たとえば、リクエスト・メッセージのSOAP本文のみを表示できます。新規ポリシーを作成するには、「Webサービス・ポリシーの作成」の手順に従ってください。oracle/security_log_templateアサーション・テンプレートのコピーを作成して、新規ポリシーで使用できるように構成できます。新規アサーション・テンプレートの作成の詳細は、「アサーション・テンプレートの作成」を参照してください。

メッセージ・ログの表示

「ログ・メッセージ」ページから、ADFおよびWebCenter Webサービス・エンドポイントのメッセージ・ログ・ファイルを表示できます。

Webサービス・エンドポイントのメッセージ・ログを表示する手順

「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページに移動し、「Webサービス・エンドポイント」ページの「クイックリンク」セクション(右上)で「メッセージ・ログ」をクリックします。

図16-7のような「ログ・メッセージ」ページが表示されます。「ログ・メッセージ」ページのコンテンツの詳細は、「診断ログの表示」を参照してください。

メッセージ・ログのフィルタ処理

デフォルトでは、「ログ・メッセージ」ページには、過去1時間に記録されたSOAPメッセージのサマリーが表示されます。検索条件を更新することで、表示されるメッセージをフィルタ処理できます。プロセスは診断ログのプロセスと同じです。詳細は、「診断ログのフィルタ処理」を参照してください。

デフォルトでは、「コンポーネント」および「モジュール」メッセージ・フィールドは、メッセージ・ログの検索条件の一部に含まれます。「コンポーネント」フィールドは、WebLogic Server名に設定されます。「モジュール」フィールドは、メッセージ・ロギング・コンポーネント名のoracle.wsm.msg.loggingに設定されます。

サンプル・ログの確認

次の項に、ログ・エントリを使用して特定の問題を診断する方法を実演する、サンプル・ログからの抜粋を示します。

- サンプル・ログ: Oracle WSM Policy Manager使用不可

- サンプル・ログ: セキュリティ・キーストア未構成

- サンプル・ログ: 証明書使用不可

サンプル・ログ: Oracle WSM Policy Manager使用不可

次のサンプル・ログの抜粋は、Oracle WSM Policy Managerが停止していることを示します。この問題を解決するには、『Oracle Fusion Middleware管理者ガイド』の使用するアプリケーションの起動と停止に関する項の説明に従って、wsm-pmアプリケーションを再起動します。

2009-02-16 16:21:28,029 [[ACTIVE] ExecuteThread: '4' for queue:
'weblogic.kernel.Default (self-tuning)']
ERROR policymgr.PolicyManagerModelBean logp.251 -
Service lookup failed with URL:t3://host.example.com:7001/wsm-pm
oracle.wsm.policymanager.PolicyManagerException: WSM-02118 :
The query service cannot be created.
...

サンプル・ログ: セキュリティ・キーストア未構成

次のサンプル・ログの抜粋は、メッセージ保護されているOracle WSMセキュリティ・ポリシーが適用されていて、キーストアが構成されていないことを示します。このセキュリティ・フォルトを解決するには、「メッセージ保護に関するキーストアの構成」の説明に従って、キーストアを構成します。

Feb 16, 2009 5:29:56 PM oracle.wsm.common.logging.WsmMessageLogger logSevere
SEVERE: The specified Keystore file /scratch/sbollapa/stage131/user_projects/domains/sai131_domain/config/fmwconfig/default-keystore.jks
cannot be found; it either does not exist or its path is not included in the
application classpath.
Feb 16, 2009 5:29:56 PM oracle.wsm.common.logging.WsmMessageLogger logSevere
SEVERE: Keystore is not properly configured in jps config.
Feb 16, 2009 5:29:56 PM oracle.wsm.common.logging.WsmLogUtil log
SEVERE: failure in OWSM Agent processRequest, category=security,
function=agent.function.client, application=default, composite=pe3test3,
modelObj=Service1, + policy=null, policyVersion=null, assertionName=null
oracle.wsm.common.sdk.WSMException: WSM-00101 : The specified Keystore file
/scratch/sbollapa/stage131/user_projects/domains/sai131_domain/config/fmwconfig/default-keystore.jks cannot be found;
it either does not exist or its path is not included in the application classpath.
...

サンプル・ログ: 証明書使用不可

次のサンプル・ログの抜粋は、メッセージ保護されているOracle WSMセキュリティ・ポリシーが適用されていて、キーストアで使用できないセキュリティ証明書が必要なことを示します。このセキュリティ・フォルトを解決するには、「信頼できる証明書の入手と、キーストアへのインポート」の説明に従って、証明書を持つキーストアを構成します。

[2009-04-15T04:07:02.821-07:00] [jrfServer] [ERROR] [WSM-000062]
[oracle.wsm.resources.security] [tid: [ACTIVE].ExecuteThread: '0' for
queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>]
[ecid: 0000I2dTFG7DScT6uBe9UH19tRyv000000,0:1] [WEBSERVICE_PORT.name:
NonCAAsCAMessageProtectionPolicyPort] [APP: jaxwsservices]
[J2EE_MODULE.name: NonCAAsCAMessageProtectionPolicy] [WEBSERVICE.name:
NonCAAsCAMessageProtectionPolicyService] [J2EE_APP.name: jaxwsservices]
[arg: oracle.wsm.security.SecurityException: WSM-00062 :
The path to the certificate used for the signature is invalid.]

[2009-04-15T04:07:02.810-07:00] [jrfServer] [NOTIFICATION] []
[oracle.wsm.security.policy.scenario.processor.Wss11X509TokenProcessor]
[tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default
(self-tuning)'] [userId: <anonymous>]
[ecid: 0000I2dTFG7DScT6uBe9UH19tRyv000000,0:1]
[WEBSERVICE_PORT.name: NonCAAsCAMessageProtectionPolicyPort]
[APP: jaxwsservices] [J2EE_MODULE.name: NonCAAsCAMessageProtectionPolicy]
[WEBSERVICE.name: NonCAAsCAMessageProtectionPolicyService] [J2EE_APP.name:
jaxwsservices] Certificate path validation failed for signing certificate

[2009-04-15T04:07:02.821-07:00] [jrfServer] [ERROR] [WSM-00006]
[oracle.wsm.resources.security] [tid: [ACTIVE].ExecuteThread: '0' for queue:
'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>]
[ecid: 0000I2dTFG7DScT6uBe9UH19tRyv000000,0:1] [WEBSERVICE_PORT.name:
NonCAAsCAMessageProtectionPolicyPort] [APP: jaxwsservices]
[J2EE_MODULE.name: NonCAAsCAMessageProtectionPolicy] [WEBSERVICE.name:
NonCAAsCAMessageProtectionPolicyService] [J2EE_APP.name: jaxwsservices]
[arg: oracle.wsm.security.SecurityException: WSM-00062 : The path to the
certificate used for the signature is invalid.] Error in receiving the request:
oracle.wsm.security.SecurityException: WSM-00062 : The path to the certificate
used for the signature is invalid.

Webサービスのログ・ファイルの構成

ロギング・データをより詳細に編成するには、Webサービスのログ・ファイルを構成します。SOA、ADFおよびWeb Centerサービスのログ・ファイルを構成できます。

次の表では、Oracle WSMに関連するデフォルトのログ・ファイルが定義されています。

表16-3 Oracle WSMのデフォルトのログ・ファイル

デフォルトのログ・ファイル

説明

odl-handler

サーバーのJava EEコンポーネントの一般的な診断データを記録します。

owsm-message-handler

SOAPメッセージをOracle WSMロギング・ポリシーにより記録します。

次の手順では、WebLogic ServerおよびWebサービス・エンドポイント・レベルで診断ログのログ・レベルを設定する方法を説明します。

Fusion Middleware ControlまたはWLSTを使用してログ・レベルを設定する方法の詳細は、『Oracle Fusion Middleware管理者ガイド』のログ・ファイルに書き込まれる情報のレベルの設定に関する項を参照してください。

Webサービスのログ・ファイルを構成するには:

1. ログ出力を構成するWebLogic Serverに移動します。

1. ナビゲーション・ペインで「WebLogicドメイン」を開きます。

2. ドメインを開きます。

3. リストから必要なサーバーを選択します。
「WebLogicサーバー」ホームページが表示されます。

2. 「WebLogic Server」メニューで、「ログ」→「ログ構成」を選択します。
「ログ構成」ページが表示されます。

3. 「ログ・ファイル」タブを選択します。
図16-8に示すように、現在のログ・ファイルのリストが表示されます。「ログ構成」ページには、現在構成されているログ・パス、ファイル形式およびローテーション・ポリシーが表示されます。

図16-8 現在のログ・ファイル

4. ログ・ポリシー構成を編集する場合は、リスト内のログ・ファイルを選択し、「構成の編集 . . .」をクリックします。
「ログ・ファイルの編集」ページが表示されます。

図16-9 「ログ・ファイルの編集」ページ

5. 必要に応じて、ログ・ファイル情報を編集します。

表16-4 「ログ・ファイルの編集」ページのフィールド

フィールド

説明

ログ・パス

ログ・ファイルのパス。このフィールドは必須です。

ログ・ファイル形式

ログ・ファイルの形式。有効な値はテキストまたはXMLです。

ログ・レベル

ログ出力のデフォルトのログ・レベル。リストからログ・レベルを選択します。有効な値は次のとおりです。

- INCIDENT_ERROR:1 (SEVERE+100)

- ERROR:1 (SEVERE)

- WARNING:1 (WARNING)

- NOTIFICATION:1 (INFO)

- NOTIFICATION:16 (CONFIG)

- TRACE:1 (FINE)

- TRACE:16 (FINER)

- TRACE:32 (FINEST)

デフォルト属性の使用

ログ出力にデフォルト属性を使用するかどうかを指定するフラグ。

サプリメンタル属性

サプリメンタル属性は必須です。

関連付けるログ出力

ログ出力に関連付けるコンポーネント。

ローテーション・ポリシー

期間によるファイル・サイズに基づいて、ログ・ファイルをローテーションするかどうか指定します。詳細は、『Oracle Fusion Middleware管理者ガイド』のログ・ファイルのローテーションの構成に関する項を参照してください。

ローテーション・ポリシーとして「サイズ・ベース」が選択されている場合、「最大ログ・ファイル・サイズ」は必須フィールドです。ローテーション・ポリシーとして「時間ベース」が選択されている場合、「頻度」は必須フィールドです。

6. 「OK」をクリックして、ログ・ファイルの構成を編集します。

17 Oracle WSMリポジトリの管理

次の各項では、Oracle WSMリポジトリの管理について説明します。

- Oracle WSMリポジトリについて

- Oracle WSMリポジトリの登録

- ポリシーのインポートとエクスポートの異なるメカニズムの理解

- リポジトリへのドキュメントのインポートおよびエクスポート

- アプリケーション環境間のポリシーの移行

- リポジトリ内のポリシーのパッチ

- Oracle WSMリポジトリのバックアップとリストア

- リポジトリ内のOracle WSMポリシーのアップグレード

- Oracle WSMリポジトリの再構築

Oracle WSMリポジトリについて

Oracle Web Services Manager(WSM)は、MDSリポジトリを使用してポリシー、アサーション・テンプレート、ポリシーの使用状況データなどの、Oracle WSMメタデータを格納します。Oracle WSMリポジトリは、データベースとして(本番用)またはファイル・システム内のファイルとして(JDeveloperでの開発用)利用できます。

このリリースでサポートされているデータベースのリストは、Oracle Fusion Middlewarのサポートされるシステム構成を参照してください。

Oracle WSMリポジトリ内では、各ポリシーがURIを持ち、それを評価してパスが形成され、そのパスにポリシーを含む特定のXMLドキュメントが置かれます。Oracle WSMはMDSカスタマイズ機能を使用しません。そのためすべてのポリシーは完全なドキュメントとして格納されます。MDSには指定されたドキュメントの複数のバージョンを格納する機能がありますが、Oracle WSMはポリシー強制時に最新バージョンのみにアクセスします。

MDSリポジトリの管理の詳細は、『Oracle Fusion Middleware管理者ガイド』のMDSリポジトリの管理に関する項を参照してください。

Oracle WSMリポジトリの登録

アプリケーションをOracle WSMリポジトリなどのMDSリポジトリにデプロイする前に、リポジトリをOracle WebLogicドメインに登録する必要があります。Oracle WSMリポジトリを登録する手順は、次のとおりです。

1. 図17-1に示すように、ナビゲータ・ペインで「メタデータ・リポジトリ」を開き、「mds-owsm」を選択します。

図17-1 ナビゲーション・ペインの「メタデータ・リポジトリ」

2. 「メタデータ・リポジトリ」→「管理」→「登録/登録解除」を選択します。
図17-2に示す「メタデータ・リポジトリ」ページが表示されます。

図17-2 Oracle WSMリポジトリの登録

3. 「登録」をクリックし、必要なデータベース接続とリポジトリ情報を入力して、リポジトリを登録します。
メタデータ・リポジトリの登録および管理の詳細は、『Oracle Fusion Middleware管理者ガイド』のメタデータ・リポジトリの管理に関する項を参照してください。

ポリシーのインポートとエクスポートの異なるメカニズムの理解

ポリシーのOracle WSMリポジトリへのインポートやリポジトリからのエクスポートは、Enterprise Manager Fusion Middleware ControlとWebLogic Scripting Tool(WLST)コマンドのどちらでも行えます。Oracle Enterprise Manager Fusion Middleware Controlには、1つのポリシーを一度に選択的にインポートおよびエクスポートする機能があります。Fusion Middleware Controlを使用したポリシーのインポートおよびエクスポートの手順は、次の項で説明されています。

- 「Webサービス・ポリシーのインポート」

- 「Webサービス・ポリシーのエクスポート」

WLSTコマンドのimportRepositoryおよびexportRepositoryを使用すると、複数のOracle WSMドキュメントをOracle WSMリポジトリに簡単に直接インポートまたはエクスポートできます。これらのコマンドの使用の詳細は、「リポジトリへのドキュメントのインポートおよびエクスポート」を参照してください。

いずれかのメカニズムを使用してポリシーをインポートまたはエクスポートする場合、操作はOracle WSM Policy Managerアプリケーションのインスタンスを介してルーティングされます。実行時にポリシーのリクエストが行われたときには、常に最新のポリシーが提供されることがポリシー・マネージャによって保証されます。そのため、常に最新のポリシーが強制されます。

注意:
以前のリリースでは、ポリシーをインポートおよびエクスポートできる唯一のWLSTコマンドは、importMetadataおよびexportMetadataというMDS WLSTコマンドでした。Oracle WSMドキュメントに対してこれらのコマンドを使用する場合、操作がOracle WSM Policy Managerのインスタンスを介してルーティングされないため、その使用はお勧めできません。結果として、Oracle Web Services Managerは変更に気付かず、古いポリシーを強制し続ける可能性があります。必ず最新のポリシーのみが強制されるようにするには、Oracle WSM MDSリポジトリが登録されているすべてのサーバーを再起動する必要があります。

リポジトリへのドキュメントのインポートおよびエクスポート

次の項の説明に従って、WLSTコマンドimportRepositoryおよびexportRepositoryを使用して、Oracle WSMドキュメントをOracle WSMリポジトリにインポートおよびエクスポートできます。

- リポジトリからのドキュメントのエクスポート

- リポジトリへのドキュメントのインポート

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

リポジトリからのドキュメントのエクスポート

サポートされているZIPアーカイブ・ファイルにリポジトリからドキュメントをエクスポートするには、exportRepositoryコマンドを使用します。

exportRepository(archive,[documents=None],[expandReferences='false'])

次の事項に注意してください。

- archive引数で指定したアーカイブがすでに存在する場合、既存のアーカイブにドキュメントをマージするか、既存のアーカイブを上書きするか、操作を取り消すかを選択できます。

- アーカイブにエクスポートされるドキュメントを指定するには、オプションのdocuments引数を使用します。この引数が指定されない場合、すべてのアサーション・テンプレート、インテント、ポリシーおよびポリシー・セットがエクスポートされます。エクスポートするドキュメントのリストを指定したり、検索式を使用してリポジトリ内の特定のドキュメントを検索できます。たとえば、URIがoracle/wss10_またはoracle/wss11_で始まるポリシーのリストをエクスポートするには、次のように入力します。

wls:/jrfServer_domain/serverConfig>exportRepository('/tmp/test2.zip',['policies:oracle/wss10_%','policies:oracle/wss11_%'])

Exporting "/policies/oracle/wss10_message_protection_client_policy"
Exporting "/policies/oracle/wss10_message_protection_service_policy"
.
.
.
Exporting "/policies/oracle/wss11_x509_token_with_message_protection_client_policy"
Exporting "/policies/oracle/wss11_x509_token_with_message_protection_service_policy"
Successfully exported "43" documents.

- エクスポート時にポリシー参照を展開するには、オプションのexpandReferences引数を使用します。デフォルトは、falseです。ドキュメントのリストが提供されない場合、expandReferencesはtrueです。
たとえば、アクティブ・ポリシー・セット・ドキュメントおよびそれらが使用するポリシーをエクスポートする手順は、次のとおりです。

wls:/jrfServer_domain/serverConfig>exportRepository('/tmp/repository-active.jar', ['policysets:global/%'], true)

Exporting "/policies/oracle/wsaddr_policy"
Exporting "/policies/oracle/wss11_saml_or_username_token_with_message_protection_service_policy"
Exporting "/policies/oracle/wss_username_token_service_policy"
Exporting "/policysets/global/all-domains-default-web-service-policies"
Exporting "/policysets/global/app-only-web-service-policies"
Exporting "/policysets/global/migrate_example"
Successfully exported "6" documents.

- リポジトリ内のドキュメントを変更した場合、アーカイブ・ファイル内でそのドキュメントを更新できます。たとえば、module-web-service-policiesという名前のポリシー・セットを変更した場合、次のコマンドでアーカイブ内のポリシー・セットを更新できます。

wls:/jrfServer_domain/serverConfig>exportRepository('/tmp/repository-backup.jar', ['/policysets/global/module-web-service-policies'])

リポジトリへのドキュメントのインポート

リポジトリにドキュメントをインポートするには、importRepositoryコマンドを使用します。

importRepository(archive,[map=none],[generateMapFile='false'])

次の事項に注意してください。

- archive引数は必須であり、インポートされるドキュメントのリストが格納されるアーカイブ・ファイルへのパスを指定します。インポートされるドキュメントが、リポジトリ内にすでに存在する現在のバージョンの複製の場合、ドキュメントはインポートされず、ドキュメントの新バージョンは作成されません。

- オプションで、map引数を使用して、ポリシー・セット内の物理情報をソース環境からターゲット環境へマップする方法が記載されている、ファイルの場所を指定できます。たとえば、マップ・ファイルを使用して、ポリシー・セット内のリソース・スコープ式を更新してターゲット環境に一致させることができます(たとえば、Domain("foo")=Domain("bar"))。マップ・ファイルを指定し、それが存在しない場合、操作は失敗し、エラーが表示されます。

- オプションのgenerateMapFile引数をtrueに設定して、map引数で指定される場所にサンプルのマップ・ファイルを作成できます。この引数がtrueに設定されている場合、ドキュメントはインポートされません。デフォルトは、falseです。
マップ・ファイルが作成された後、任意のテキスト・エディタを使用して編集できます。マップ・ファイルには、アーカイブ・ファイルで与えられるドキュメント名と、対応するattachTo値が含まれます。attachTo値は、更新して新しい環境に対応させることができます。ドキュメント名についてマッピングの更新が必要ない場合、そのエントリは削除されるか、#文字でコメント・アウトされる可能性があります。

注意:
リポジトリへのドキュメントのインポート時、OWSMはattachTo値のみを検証します。値が無効な場合、ポリシー・セットは無効化されます。マップ・ファイル内の他のテキストは検証されません。

たとえば、/tmp/repository-active.jarのマップ・ファイル/tmp/mapfile.txtを生成するには、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig>importRepository('/tmp/repository-active.jar', '/tmp/mapfile.txt', true)

Successfully generated "Resource Scope Mappings" file at "/tmp/mapfile.txt"

マップ・ファイル/tmp/mapfile.txtを使用してアクティブ・ポリシー・セット・アーカイブ/tmp/repository-active.jarをインポートするには、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig>importRepository('/tmp/repository-active.jar', '/tmp/mapfile.txt')

Importing "META-INF/policies/oracle/wsaddr_policy"
Importing "META-INF/policies/oracle/wss11_saml_or_username_token_with_message_protection_service_policy"
Importing "META-INF/policies/oracle/wss_username_token_service_policy"
Importing "META-INF/policysets/global/all-domains-default-web-service-policies"
Importing "META-INF/policysets/global/app-only-web-service-policies"
Importing "META-INF/policysets/global/migrate_example"
Successfully imported "6" documents

アプリケーション環境間のポリシーの移行

ポリシーは、アプリケーションの開発およびデプロイのサイクルにおいて様々なステージ間(開発から本番へなど)で移行できます。ポリシーの移行では、「ポリシーの移行」の説明に従って、importRepositoryコマンドおよびexportRepositoryコマンドを使用することをお薦めします。

JDeveloperで使用するためにポリシーをOracle WSMリポジトリからエクスポート

JDeveloperでは、カスタム・ポリシーを次のデフォルトのポリシー格納場所に追加できます。

C:\Documents and Settings\user-dir\ApplicationData\JDeveloper\system11.1.1.2.x.x.x\DefaultDomain\oracle\store\gmds

このディレクトリ内で、次のディレクトリ構造のいずれかを使用してOracle WSMポリシー・ファイルを格納する必要があります。

- 事前定義済Oracle WSMポリシー: owsm/policies/oracle/policy_file

- カスタム・ユーザー・ポリシー: owsm/policies/policy_file

JDeveloperで使用するためにポリシー・ファイルをOracle WSMリポジトリからエクスポートする場合、このディレクトリ構造は維持されません。エクスポートされたポリシーをJDeveloper環境に追加する場合は、必ず前述の要求されるディレクトリ構造を使用する必要があります。そうしないと、ポリシーはJDeveloper環境で使用できなくなります。

リポジトリ内のポリシーのパッチ

「ポリシーのインポートとエクスポートの異なるメカニズムの理解」で説明されているように、Fusion Middleware ControlまたはWLSTコマンドを使用してOracle WSMリポジトリをパッチできます。ポリシーを作成または更新する場合、リポジトリをパッチするときに使用可能なシナリオとして次の2つが考えられます。

- 新しいポリシーを作成するか、新しいポリシーURIを使用する既存のポリシーを更新します。このシナリオでは、リポジトリのパッチは、新しいファイルがインストールに追加されたかのように機能します。結果として、新しいポリシーを使用する予定のコンポーネントのみが影響を受けます。ロードすると、ポリシーはすべてのアプリケーションで使用できるようになります。一般的には、新しいポリシーURIを使用する方が望ましいモデルといえます。というのは、ポリシーは通常それが行う動作を示すように名前が付けられてるためです。

- 新しいポリシーを作成するか、既存のポリシーURIを使用する既存のポリシーを更新します。このシナリオでは、リポジトリのパッチは、既存のファイルが新しいバージョンで上書きされたかのように機能します。そのため、既存のポリシーを使用しているすべてのコンポーネントに影響します。ロードすると、すべてのアプリケーションで新しいバージョンのポリシーが使用されます。既存のURIの再使用は、通常はポリシーの動作の変更箇所が少ない場合にのみ行われます。WLSTコマンドを使用してリポジトリをパッチする場合は、サーバーを再起動して必ず最新バージョンのポリシーが強制されるようにする必要があることに注意してください。Fusion Middleware Controlを使用する場合は、再起動する必要はありません。

Oracle WSMリポジトリのバックアップとリストア

Oracle WSMリポジトリをバックアップおよびリストアするには、WLSTコマンドのexportRepositoryおよびimportRepositoryを使用します。これらのコマンドの詳細は、「リポジトリへのドキュメントのインポートおよびエクスポート」を参照してください。

たとえば、リポジトリ内のすべてのOracle WSMアーティファクトをバックアップするには、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig>exportRepository('/tmp/repository-backup.jar')

Exporting "/assertiontemplates/oracle/binding_authorization_template"
Exporting "/assertiontemplates/oracle/binding_permission_authorization_template"
.
.
.
Exporting "/policies/oracle/binding_authorization_denyall_policy"
Exporting "/policies/oracle/binding_authorization_permitall_policy"
.
.
.
Exporting "/policysets/global/all-domains-default-web-service-policies"
Exporting "/policysets/global/app-only-web-service-policies"
Successfully exported "170" documents.

バックアップからリポジトリをリストアするには、importRepositoryコマンドを使用してすべてのOracle WSMリポジトリ・アーティファクトをインポートします。

たとえば、前述の例で作成したバックアップ・ファイルを使用してリポジトリをリストアするには、次のコマンドを入力します。

wls:/jrfServer_domain/serverConfig>importRepository('/tmp/repository-backup.jar')

Importing "META-INF/assertiontemplates/oracle/binding_authorization_template"
Importing "META-INF/assertiontemplates/oracle/binding_permission_authorization_template"
.
.
.
Importing "META-INF/policies/oracle/binding_authorization_denyall_policy"
Importing "META-INF/policies/oracle/binding_authorization_permitall_policy"
.
.
.
Importing "META-INF/policysets/global/all-domains-default-web-service-policies"
Importing "META-INF/policysets/global/app-only-web-service-policies"
Successfully imported "170" documents.

WLSTコマンドおよびその引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのWebサービスのカスタムWLSTコマンドに関する項を参照してください。

リポジトリ内のOracle WSMポリシーのアップグレード

事前定義済Oracle WSMポリシーとカスタムOracle WSMポリシーの両方とも、Oracle WSMリポジトリに格納されます。事前定義済ポリシーは、今後のリリースで廃止または変更されることがあり、追加の事前定義済ポリシーが提供されることもあります。

Fusion Middlewareパッチ・セットをインストールすると、サーバーの起動プロセスの一部として、リポジトリが自動的にアップグレードされます。環境に合わせてカスタマイズされていない事前定義済ポリシーは置換され、新しいポリシーは自動的に追加されます。ただし、カスタマイズされた事前定義済ポリシーと、ユーザーがリポジトリに作成したカスタム・ポリシーは置換されないことに注意してください。必要に応じて、「Oracle WSMリポジトリの再構築」の説明に従って、これらのポリシーのリポジトリをリフレッシュすることもできます。

注意:
ポリシーを削除する前に、既存のポリシーを安全な場所にバックアップする必要があります。新しいポリシーで問題が発生した場合に、バックアップから既存のポリシーをインポートできます。

Oracle Fusion Middlewareインストールのパッチの詳細は、Oracle Fusion Middlewareパッチ・ガイドを参照してください。

Oracle WSMリポジトリの再構築

環境によっては、元の事前定義済ポリシーおよびアサーション・テンプレートのリストアを含めて、Oracle WSMリポジトリ全体を再構築する方が望ましい場合があります。たとえば、新しいプロジェクトをテスト環境で開始する場合、リポジトリの中身を元の状態にリセットできると便利なことがあります。

Oracle WSMポリシー・リポジトリを再構築するには、次の手順を実行します。

1. リポジトリが登録されているWebLogic Serverドメインの管理サーバー・インスタンスに接続します。手順については、「WebサービスのカスタムWLSTコマンドへのアクセス」を参照してください。

注意:
ポリシーの削除またはリポジトリの再構築の前に、既存のポリシーを安全な場所にバックアップする必要があります。新しいポリシーで問題が発生した場合に、バックアップから既存のポリシーをインポートできます。

2. resetWSMPolicyRepository(true)コマンドを使用して、Oracle WSMリポジトリからすべてのドキュメントを削除し、ソフトウェアとともにインストールされた事前定義済ポリシーおよびアサーション・テンプレートのセットを再移入します。この方法を使用することをお薦めします。
resetWSMPolicyRepository WLSTコマンドの詳細は、『WebLogic Scripting Toolコマンド・リファレンス』のOracle WSMリポジトリ管理コマンドに関する項を参照してください。

注意:
ポリシーを削除する前に、ポリシーがポリシー・サブジェクトに添付されていないことを確認することをお薦めします。

第IV部

WebLogic Webサービスの管理

第IV部には、次の章が含まれています。

- 第18章「WebLogic Webサービスの保護と管理」

18 WebLogic Webサービスの保護と管理

この章では、WebLogic Webサービスを保護および管理する方法を説明します。この章の内容は次のとおりです。

- WebLogic Webサービスの保護および管理の手順

- WebLogic Webサービスおよびクライアントへのポリシーの添付

WebLogic Webサービスの保護および管理の手順

表18-1に、WebLogic Webサービスの管理と保護に必要な手順をまとめます。WebLogic Webサービスの開発の詳細は、『Oracle WebLogic Server JAX-WS Webサービス・スタート・ガイド』を参照してください。

表18-1 WebLogic Webサービスの管理および保護の手順

#

手順

説明

1

WebLogic Webサービスをデプロイして管理します。

Oracle WebLogic Server管理コンソールを使用して、次のデプロイおよび管理タスクを実行します。

- WebLogic Webサービスをデプロイして、デプロイしたサービスを表示します。

- WebLogic Webサービスを開始および停止します。

- WebLogic Webサービス構成を表示します。

- WebLogic Webサービスを削除します。

- SOAPメッセージ・ハンドラを表示します。

- WSDLを表示します。

詳細は、Oracle WebLogic Server管理コンソールのオンライン・ヘルプのWebサービスに関する項を参照してください。

2

WebLogic Webサービスおよびクライアントにセキュリティおよび管理のポリシーを添付します。

設計時とデプロイ時に、2つのタイプのポリシー(Oracle WSMポリシーとWebLogic Webサービス・ポリシー)をWebLogic Webサービスおよびクライアントに添付できます。Oracle Enterprise Manager Fusion Middleware Controlを使用して、Oracle WSMセキュリティ・ポリシーをWebLogic Java EE Webサービスおよびクライアントに添付できます。詳細は、「WebLogic Webサービスおよびクライアントへのポリシーの添付」を参照してください。

3

WebLogic Webサービスをテストします。

「Webサービスのテスト」を参照してください。

4

WebLogic Webサービスのパフォーマンスを監視します。

「Webサービスのパフォーマンスの監視」を参照してください。

WebLogic Webサービスおよびクライアントへのポリシーの添付

Oracle Fusion Middleware 11gリリース1 (11.1.1.9)では、Oracle WSMまたはWebLogic Webサービスのいずれかのポリシー・タイプを使用して、WebLogic Webサービスのセキュリティおよび管理ポリシーの強制を実行できます。

次の表に各ポリシー・タイプを説明します。

表18-2 WebLogic Webサービスでサポートされているポリシー・タイプ

タイプ

説明

Oracle Web Services Manager(WSM)ポリシー

Oracle WSMにより提供されます。Oracle WSMポリシーおよび事前定義済ポリシーの詳細は、「Oracle WSMポリシー・フレームワークについて」を参照してください。Oracle WSMポリシーは、WebLogic JAX-WS Webサービスおよびクライアントに添付できます。

WebLogic Webサービス・ポリシー

Oracle WebLogic Serverにより提供されます。WebLogic Webサービス・ポリシーの詳細は、Oracle WebLogic ServerのWebサービスの保護に関するガイドを参照してください。

WebLogic Webサービス・ポリシーのサブセットはOracle WSMポリシーと相互運用します。詳細は、Oracle Web Services Managerの相互運用性ガイドの「Oracle WebLogic Server 11gのWebサービス・セキュリティ環境との相互運用性」を参照してください。

注意:
可能な場合は常にOracle WSMポリシーを使用してください。Oracle WSMポリシーとWebLogic Webサービス・ポリシーを混在させて使用することはできません。

次の項では、WebLogic Webサービスおよびクライアントにそれぞれのタイプのポリシーを添付する方法を説明します。

- WebLogic WebサービスへのOracle WSMポリシーの添付

- WebLogic Webサービス・クライアントへのOracle WSMポリシーの添付

- WebLogic WebサービスへのWebLogic Webサービス・ポリシーの添付

- WebLogic Webサービス・クライアントへのWebLogic Webサービス・ポリシーの添付

WebLogic WebサービスへのOracle WSMポリシーの添付

WebLogic WebサービスへのOracle WSMポリシーの添付は、設計時とWebサービスのデプロイ後に行います。

- 設計時には、JWSファイルのweblogic.wsee.jws.jaxws.owsm.SecurityPolicyおよびweblogic.wsee.jws.jaxws.owsm.SecurityPolicies JWS注釈を使用して、ポリシー・ファイルをWebサービスに関連付けます。アサーションがお互いに矛盾しないことを確認する必要はありますが、Webサービスには必要なだけポリシー・ファイルを関連付けられます。ポリシー・ファイルは、JWSファイルのクラス・レベルで指定できます。詳細は、次の項を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』のOracle Web Services Managerセキュリティ・ポリシーに関する項。

- Oracle JDeveloperのオンライン・ヘルプのWebサービスでの開発の項にあるWebサービスでのポリシーの使用に関する項目。

- Webサービスのデプロイ後は、Oracle WebLogic Server管理コンソールまたはOracle Enterprise Manager Fusion Middleware Controlを使用して、Oracle WSMポリシーをWebLogic Webサービスに添付できます。WebLogic Server管理コンソールを使用したポリシーの添付の詳細は、WebLogic Server管理コンソールのヘルプのWebサービスへのWS-Policyファイルの添付に関する項を参照してください。Fusion Middleware Controlを使用したポリシーの添付の詳細は、第8章「Webサービスへのポリシーの添付」を参照してください。

WebLogic Webサービス・クライアントへのOracle WSMポリシーの添付

デプロイ後のWebサービス・クライアントにOracle WSMポリシーを添付するには、Oracle Enterprise Manager Fusion Middleware Controlを使用することをお薦めします。詳細は、「Java EE Webサービス・クライアントへのポリシーのアタッチ」を参照してください。開発時にプログラムによってOracle WSMポリシーを添付した場合、クライアント・アプリケーションのデプロイ後に、Fusion Middleware Controlを使用してポリシーを変更または削除できません。

WebLogic WebサービスへのWebLogic Webサービス・ポリシーの添付

WebLogic Webサービスへのポリシーの添付は、設計時とWebサービスのデプロイ後の両方に行います。

- 設計時には、JWSファイルのweblogic.jws.Policyおよびweblogic.jws.Policies JWS注釈を使用して、ポリシー・ファイルをWebサービスに関連付けます。アサーションがお互いに矛盾しないことを確認する必要はありますが、Webサービスには必要なだけポリシー・ファイルを関連付けられます。ポリシー・ファイルは、JWSファイルのクラス・レベルで指定できます。詳細は、次の項を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』。

- Oracle JDeveloperのオンライン・ヘルプのWebサービスでの開発の項にあるWebサービスでのポリシーの使用に関する項目。

- Webサービスをデプロイしたら、Oracle WebLogic Server管理コンソールを使用して、WebLogic WebサービスにWebLogic Webサービス・ポリシーを添付します。詳細は、WebLogic Server管理コンソールのヘルプのWebサービスへのWS-Policyファイルの添付に関する項を参照してください。

WebLogic Webサービス・クライアントへのWebLogic Webサービス・ポリシーの添付

WebLogic Webサービス・クライアントへのポリシーの添付は、設計時にJAX-WSスタブを使用して行います。詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント側セキュリティ・ポリシー・ファイルの使用に関する項を参照してください。

第V部

リファレンス

第V部の内容は次のとおりです。

- 付録A「Webサービス・セキュリティ標準」

- 付録B「事前定義済ポリシー」

- 付録C「事前定義済アサーション・テンプレート」

- 付録D「事前定義済アサーションのスキーマ・リファレンス」

- 付録E「ポリシー・セットのスキーマ参照」

A Webサービス・セキュリティ標準

注意:
この付録には、Oracle Infrastructure Webサービスのセキュリティ標準がまとめられています。サポートされるバージョンと仕様へのリンクの完全なリストについては、『Oracle Infrastructure Webサービス開発者ガイド』のサポートされる標準に関する項を参照してください。
WebLogic Webサービスの標準の詳細は、『Oracle WebLogic Server WebLogic Webサービスの紹介』のWebLogic Webサービスでサポートされる機能と標準に関する項を参照してください。

セキュリティ標準は、トランスポート・レベルのXML以外のフレームと、アプリケーション・レベルのXMLフレームワークに実装されています。

次の項では、トランスポート・レベルおよびアプリケーション・レベルの両方で、安全かつ管理可能なSOA環境を提供するための鍵となる標準について説明します。

- Webサービスの相互運用性組織: Basic Security Profile

- Transport Layer Security - SSL

- XML暗号化(機密保護)

- XML署名(整合性、認証性)

- WS-Security

- WS-Securityトークン

- WS-Policy

- WS-SecurityPolicy

- Webサービス・アドレス(WS-Addressing)

- WS-Trust

- WS-ReliableMessaging

関連項目:
Oracle WebLogic Webサービスでサポートされる標準の完全なリストについては、『Oracle WebLogic Server WebLogic Webサービスの紹介』のWebLogic Webサービスでサポートされる機能と標準に関する項を参照してください。

Webサービスの相互運用性組織: Basic Security Profile

オラクル社は、Webサービス・プラットフォームの相互運用性は、可能なあらゆるケースのWebサービス仕様に対してサポートを提供するよりも重要であると考えます。当社はWebサービスの相互運用性組織による次の仕様を遵守しており、これをWebサービスの相互運用性に対するベースラインとしています。

- Basic Security Profile 1.0: http://www.ws-i.org/Profiles/BasicSecurityProfile-1.0.html

Transport Layer Security - SSL

Transport Layer Security(TLS)とも呼ばれるSecure Sockets Layer(SSL)は、最も広く使用されているトランスポート・レイヤー・データ通信プロトコルです。SSLでは、次のことが可能です。

- 認証: 通信は信頼できる2つのパーティ間に確立されます。

- メッセージ機密保護: 交換されるデータは暗号化されます。

- メッセージ整合性: データが破損しているかどうか確認されます。

- クライアントおよびサーバー間での安全な鍵の交換

SSLは次の3つのモードで使用できます。

- 認証なし: クライアントもサーバーもお互いに認証しません。証明書も送信または交換されません。この場合は、機密保護(暗号化/復号化)のみが使用されます。

- 一方向認証(またはサーバー認証): サーバーのみがクライアントに対して自身を認証します。サーバーは、自身が信頼できることを検証する証明書をクライアントに送信します。この方法は、オンライン・バンキングなどのインターネット・トランザクションで使用されます。

- 双方向認証(または相互認証): クライアントとサーバーの両方が、相互に証明書を送信することでお互いに認証します。この方法は、プロキシとWebサービス・エンドポイント間での攻撃の防止に必要です。

SSLでは、秘密鍵および公開鍵暗号化を組み合せて通信を保護します。SSLトラフィックでは、暗号化と復号化に秘密鍵が使用され、通信に関わるパーティの相互認証で公開鍵の交換が行われます。

XML暗号化(機密保護)

XML暗号化の仕様には、データを暗号化し、その結果をXMLで表すためのプロセスが記述されています。XML暗号化では、具体的に次のことが定義されています。

- デジタル・コンテンツが暗号化および復号化される仕組み。

- 暗号化キーの情報が受信者に渡される仕組み。

- 暗号化を簡略化するために暗号化されたデータが識別される仕組み。

XMLドキュメントは、全体または一部を暗号化できます。

例A-1はXMLで表示されたクレジット・カード・データを示します。

例A-1 クレジット・カード・データのXML表現

<PaymentInfo xmlns="http://www.example.com/payment">
<CreditCard>
<Name>John Smith</Name>
<CreditCardNumber>4019 2445 0277 5567</NCreditCardNumber>
<Limit>5000</Limit>
<Issuer>Example Bank</Issuer>
<Expiration>04/02</Expiration>
</CreditCard>
</PaymentInfo>

例A-2は、同じXMLスニペットを、クレジット・カード番号を暗号化し、暗号値で表したものを示しています。

例A-2 暗号化されたクレジット・カード・データのXML表現

<PaymentInfo xmlns='http://www.example.com/payment">
<CreditCard>
<Name>John Smith</Name>
<CreditcardNumber>
<EncryptedData xmlns="http://www..." Type="http://www...">
<CipherData>
<CipherValue>A23B4...5C56</CipherValue>
</CipherData>
</EncryptedData>
<Limit>5000</Limit>
<Issuer>Example Bank</Issuer>
<Expiration>04/02</Expiration>
</CreditCard>
</PaymentInfo>

関連項目:

XML暗号化の詳細は、次のサイトの「XML Encryption Syntax and Processing」仕様を参照してください。

http://www.w3.org/TR/xmlenc-core

XML署名(整合性、認証性)

XML署名の仕様には、署名の処理ルールと構文が記述されています。XML署名は、送信者のアイデンティティ(または署名エンティティ)をXMLドキュメントにバインドします。ドキュメントは、送信者の秘密鍵を使用して署名され、署名は送信者の公開鍵を使用して検証されます。

署名の検証は、非対称鍵または対称鍵を使用して行われます。XML署名は、署名エンティティの否認防止も保証し、署名後にメッセージが変更されていないことを証明します。

次の例に示すように、署名はドキュメント全体にも、ドキュメントの一部のみにも適用できます。

例A-3 署名されたデータのXML表現

<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<!-- The signedInfo element allows us to sign any portion of a
document -->
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www..."/>
<SignatureMethod Algorithm="http://www..."/>
<Reference URI="#Body">
<DigestMethod Algorithm="http://www..."/>
<DigestValue>o+jtqlieRtF6DrUb...X8O9M/CmySg</DigestValue>
</Reference>
</SignedInfo>
<!-- Following is the result of running the algorithm over the
document. If changes are made to the document, the SignatureValue is
changed. The security application verifies the SignatureValue,
extracts the X.509 cert and uses it to authenticate the user -->
<SignatureValue>oa+ttbsvSFi...EtRD2oNC5</SignatureValue>
<KeyInfo>
<KeyValue>
<!-- Following is the public key that matches the private key
that signs the document -->
<RSAKeyValue>
<Modulus>5TT/oolzTiP++Ls6GLQUM8xoFFrAlZQ...</Modulus>
<Exponent>EQ==</Exponent>
</RSAKeyValue>
</KeyValue>
<!-- Following is the certificate -->
<X509Data>
<X509Certificate>wDCCAXqgAwIBAgI...</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>

関連項目:

XML署名の詳細は、次のサイトの「XML Signature Syntax and Processing」仕様を参照してください。

http://www.w3.org/TR/xmldsig-core

WS-Security

Web Services Security(WS-Security)は、XML暗号化により機密保護を、XML署名によりデータ整合性を実現するSOAPセキュリティ拡張機能を指定します。WS-Securityには、タイプの異なるバイナリとXMLセキュリティ・トークンを、認証および認可の目的でWS-Securityヘッダーに挿入する方法を指定するプロファイルも含まれています。WS-Securityトークン・プロファイルは、次の項で説明されています。

関連項目:

WS-Securityおよびその仕様の詳細は、次のサイトを参照してください。

http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wss

WS-Securityトークン

Webサービス・セキュリティは、次のセキュリティ・トークンをサポートします。

- ユーザー名: Webサービス・コンシューマが、認証の資格証明としてユーザー名を指定する方法を定義します。詳細は、「ユーザー名」を参照してください。

- X.509証明書: 受信パーティに公開鍵を送信するために設計された署名付きデータ構造。詳細は、「X.509証明書」を参照してください。

- Kerberosチケット: バイナリ認証およびセッション・トークン。詳細は、「Kerberosトークン」を参照してください。

- Security Assertion Markup Language(SAML)アサーション: XMLドキュメントを使用して、インターネット上でセキュリティ情報を共有します。詳細は、「SAMLトークン」を参照してください。

ユーザー名

ユーザー名トークンはBasic認証情報を伝達します。username-token要素は、メッセージを認証するためにユーザー名とパスワードの情報を伝播します。

関連項目:

ユーザー名トークン・プロファイルの詳細は、次のサイトを参照してください。

http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0.pdf

X.509証明書

X.509デジタル証明書は、受信パーティに公開鍵を送信するために設計された署名付きデータ構造です。証明書には、証明書ID、発行者の識別名(DN)、有効期間、所有者のDN、所有者の公開鍵などの標準フィールドが含まれています。

証明書は、認証局(CA)によって発行されます。CAは、エンティティのアイデンティティを検証して証明書を付与し、CAの秘密鍵で署名します。CAは、公開鍵が含まれる独自の証明書を発行します。

各ネットワーク・エンティティには、信頼するCAの証明書のリストがあります。別のエンティティと通信する前に、指定されたエンティティはこのリストを使用して、別のエンティティの証明書の署名が信頼できるCAのものであることを検証します。

関連項目:

X.509証明書トークン・プロファイルの詳細は、次のサイトを参照してください。

http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0.pdf

Kerberosトークン

Kerberosトークンは、クロス・プラットフォーム認証のシングル・サインオン・システムです。Kerberosプロトコルを使用すると、共有の秘密鍵(対称鍵)に依存する2つのエンティティ間で相互認証を実行できます。Kerberosでは次の用語が使用されます。

- プリンシパルはユーザーのアイデンティティ(ユーザーにプリンシパルが割り当てられるということ)、またはKerberosサービスを提供するアプリケーションのアイデンティティです。

- レルムはKerberosサーバー環境です。Kerberosレルムは、EXAMPLE.COM(表記規則により大文字で表現)などのドメイン名にすることもできます。

関連項目:

Kerberos Token Profile 1.1の詳細は、次のサイトを参照してください。

http://www.oasis-open.org/committees/download.php/16788/wss-v1.1-spec-os-KerberosTokenProfile.pdf

Kerberosにはクライアントとサーバーに加え、両者を仲介するKey Distribution Center(KDC)と呼ばれる信頼できるパーティが関わっています。各Kerberosレルムには、最低1つのKDCがあります。KDCは、使用する操作プラットフォームによって異なるパッケージが用意されています(たとえば、Microsoft Windowsの場合、KDCはドメイン・サービスです)。WS-SecurityのKerberos Token Profileを使用すると、ビジネス・パートナはサービス指向アーキテクチャでKerberosトークンを使用できます。

SAMLトークン

Security Assertion Markup Language(SAML)は、XMLドキュメントを使用して、インターネット上でセキュリティ情報を共有するためのオープン・フレームワークです。SAMLは次の内容に対応するために設計されました。

- 単一ドメインに対するWebブラウザCookieの制限: SAMLには、複数のインターネット・ドメインにCookieを送信する標準の方法が用意されています。

- 固有のWebシングル・サインオン(SSO): SAMLには、単一ドメインまたは複数ドメインにSSOを実装する標準の方法が用意されています。この機能は、Oracle Identity Federation製品により提供されます。

- フェデレーション: SAMLを使用すると、1人のユーザーが複数のWebサイトで複数のアイデンティティを使用している場合にアカウントをリンクするなど、アイデンティティ管理が簡単になります。この機能も、Oracle Identity Federationでサポートされています。

- Webサービス・セキュリティ: SAMLには標準のセキュリティ・トークン(SAMLアサーション)が備わっており、標準のWebサービス・セキュリティ・フレームワーク(WS-Securityなど)とともに使用できます。これは、特にWebサービス・セキュリティに関連するSAMLの使用方法で、Oracle WSMで完全にサポートされています。

- アイデンティティ伝播: SAMLには、ビジネス・プロセスまたはトランザクションの複数のステップで、ブラウザからポータル、Webサービスのネットワークへと渡すことのできるセキュリティ・トークンを表す標準の方法が用意されています。Oracle WSMでもサポートされている機能です。

SAMLフレームワークは4つの部分に分かれています。

- アサーション: 認証および認可情報を定義する方法。

- プロトコル: 必要なアサーションを要求(SAMLリクエスト)し、取得(SAMLレスポンス)する方法。

- バインディング: SAMLプロトコルを業界標準のトランスポート(HTTPなど)およびメッセージング・フレームワーク(SOAPなど)に組み込む方法。

- プロファイル: 特定のユースケースをサポートするために、SAMLプロトコルおよびバインディングを組み合せる方法。

WS-Securityのコンテキストで使用されるのは、SAMLアサーションのみです。プロトコルおよびバインディングは、WS-Securityフレームワークにより提供されます。SAMLは、ブラウザベースのフェデレーションおよびWebサービス・フローにより有効化されたフェデレーションの両方において、業界で広く採用されています。

SAMLアサーションは、表現が豊富で、中間者攻撃やリプレイ攻撃の防止に役立つため、WS-Securityでは非常に一般的なセキュリティ・トークンです。

一般的に、SAMLアサーションでは、プリンシパル(ユーザーまたはアプリケーション)に関する記述を行います。すべてのSAMLアサーションには、次の共通の情報が含まれます。

- 発行者のIDおよび発行のタイムスタンプ

- アサーションID

- サブジェクト

- 名前

- オプションのサブジェクト確認(公開鍵など)

- オプションの条件(アサーションが有効な条件)

- オプションのアドバイス(アサーションの作成方法に関するもの)

SAMLアサーションには、次の3つのタイプの文が含まれます。

- 認証文: サブジェクトの認証の成功時、認証局により発行されます。サブジェクトSが手段Mによって時間Tに認証されたことをアサートします。

- 属性文: ポリシーに基づいて属性認証局により発行されます。サブジェクトSが、値a、bなどを持つ属性A、Bなどに関連付けられていることをアサートします。

- 認可決定文(SAML 2.0では非推奨で、現在はXACMLでサポートされています): サブジェクトSによる(ファイル、アプリケーション、Webサービスなどの)リソースRに対する(読取り、書込みなどの)アクションAを証拠Eに基づいて許可するかどうかを決定する認証局によって発行されます。

SAMLアサーションは埋込み可能です(つまり、SAMLアサーションには別のSAMLアサーションを含めることができます)。SAMLアサーションには、(XML署名を使用した)署名または(XML暗号化を使用した)暗号化、あるいはその両方を行うこともできます。

関連項目:

SAMLトークン・プロファイルの詳細は、次のサイトを参照してください。

http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0.pdf

WS-Policy

WS-Securityとともに、WS-Policyは、Oracle Fusion Middlewareセキュリティのもう1つの主要な業界標準です。

Webサービス・プロバイダは、サービスが提供される条件(またはポリシー)を定義します。WS-Policyフレームワークを使用すると、Oracle WSMなどのWebサービス・アプリケーションによって処理されるポリシー情報の指定が可能になります。

ポリシーは、Webサービスの機能または要件を表す複数のポリシー・アサーションとして表現されます。たとえば、ポリシー・アサーションは、Webサービスへのリクエストが暗号化されることを規定します。同様に、ポリシー・アサーションでは、Webサービスで受信できる最大メッセージ・サイズを定義できます。

WS-Policy表記は、WS-PolicyAttachment仕様を使用して、様々なWebサービス・コンポーネントと関連付けられます。WS-Policy情報はWSDLファイルに埋込み可能なため、UDDIレジストリを介したWebサービス・ポリシーの公開が簡単になります。

WS-SecurityPolicy

WS-SecurityPolicyは、OASISが策定するWeb Services Secure Exchange(WS-SX)の仕様の一部です(WS-SecurityPolicyに加え、WS-SX技術協議会がWS-TrustおよびWS-SecureConversationの2つの仕様一式を定義しています。これらはこの章で後述します)。

WS-SecurityPolicyは、WS-Policyフレームワークのコンテキストで使用する一連のセキュリティ・ポリシー・アサーションを定義します。WS-SecurityPolicyアサーションは、通信パスでメッセージの安全性を確保する方法を示すものです。オラクル社は、OASIS WS-SX技術協議会のいくつかの実用セキュリティ・シナリオ(Oracle WSM 11gにより提供されるサブセット)に貢献しています。各セキュリティ・シナリオは、WS-SecurityPolicyのポリシー表記を示します。

WS-SecurityPolicyのシナリオには、(WS-Security 1.0および1.1の両方をサポートする)WS-Security仕様に記述されている複数のセキュリティ・トークン・タイプについて、WS-SecurityPolicyポリシーを設定する方法の例が記述されています。Oracle WSM 11gでサポートされているWS-SecurityPolicyシナリオのサブセットは、最も一般的な顧客のユースケースを表します。各シナリオは、複数ベンダーのWS-Security環境でテストされています。

WS-SecurityPolicyを説明するため、Oracle WSMのプレーン・テキスト・パスワードを使用するUsernameTokenでサポートされるシナリオを使用します。前述したように、ユーザー名トークンはWS-Securityで指定されるセキュリティ・トークンの1つです。この特定のシナリオでは、リクエスタがユーザー名トークンを検証する権限を持つ受信者に対して、ユーザー名トークンでパスワードを送信する必要があるとするポリシーが使用されます。パスワードは、WS-Securityユーザー名トークン・プロファイル1.1のデフォルト要件です。

このシナリオは、本番前のテスト環境シナリオでダミーのパスワードを使用する場合など、パスワードの秘匿性が重視されていない状況においてのみ推奨されます。

例A-4 WS-SecurityPolicyの例

<wsp:Policy>
<sp:SupportingTokens>
<wsp:Policy>
<sp:UsernameToken/>
</wsp:Policy>
</sp:SupportingTokens>
</wsp:Policy>

前述のポリシーに準拠するメッセージの例を次に示します。

例A-5 WS-SecurityPolicyに準拠するメッセージの例

<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="...">
<soap:Header>
<wsse:Security soap:mustUnderstand="1" xmlns:wsse="...">
<wsse:UsernameToken>
<wsse:Username>Marc</wsse:Username>
<wsse:Password Type="http://docs.oasis open.org...>
XYZ
</wsse:Password>
<wsse:Nonce EncodingType="...#Base64Binary">qB...</wsse:Nonce>
<wsu:Created>2008-01-02T00:01:03Z</wsu:Created>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body>
<Oracle xmlns=http://xmlsoap.org/Oracle>
<text>EchoString</text>
</Oracle>
</soap:Body>
</soap:Envelope>

この例には、<Nonce>要素と<Created>タイムスタンプが含まれています。これらはオプション機能ですが、リプレイ攻撃などに対するリクエストのセキュリティを向上するために推奨されています。Nonceは、ランダムに生成される(固有の)数字です。タイムスタンプは、セキュリティ・トークンの有効期間の定義に使用できます。

Webサービス・アドレス(WS-Addressing)

SOAPには、メッセージの送信先やレスポンスまたはフォルトを返す標準的な方法がありません。WS-Addressingは、Webサービスのエンドポイントを識別し、メッセージにおけるエンド・ツー・エンドのエンドポイント識別を確保するXMLフレームワークを提供します。

Webサービス・エンドポイントは、Webサービスがメッセージを送信するリソース(アプリケーションやプロセッサなど)です。

次の例は、WS-Addressingを使用したものです(wsaはWS-Addressingのネームスペースです)。

例A-6 WS-Addressingの例

<S:Envelope xmlns:S="http://www.w3.org/2003/05/soap-envelope"
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
<S:Header>
<wsa:MessageID>http://example.com/xyz-abcd-123</wsa:MessageID>
<wsa:ReplyTo>
<wsa:Address>http://example.myClient1</wsa:Address>
</wsa:ReplyTo>

WS-Addressingは、リクエストはJMSで行い、レスポンスはHTTPで行うといったように、トランスポート層に依存しません。また、WS-Policyなど、その他のWS-*仕様と組み合せて使用できます。

WS-Trust

WS-Trust 1.3仕様(http://docs.oasis-open.org/ws-sx/ws-trust/v1.3/ws-trust.html)は、セキュリティ・トークンのリクエストおよび発行を行うフレームワークを提供するWS-Securityへの拡張機能と、ブローカ信頼関係への拡張機能を定義します。WS-Trust拡張機能は、セキュリティ・トークンの発行、更新および検証を行う方法を提供しています。

Webサービス・クライアントとWebサービスとの間の通信を保護するには、両者がセキュリティ資格証明を交換する必要があります。WS-Trust仕様で定義されているように、これらの資格証明は、信頼ブローカとして機能する信頼できるSecurityTokenService (STS)から取得できます。つまり、STSが相互運用可能なセキュリティ・トークンを提供するためには、Webサービス・クライアントとWebサービスの両方から信頼される必要があります。

WS-ReliableMessaging

WS-ReliableMessaging(WS-RM)は、Webサービス・エンドポイント間の信頼できるメッセージ配信を確認および管理するフレームワークを定義します。WS-RMはSOAPメッセージング構造(SOAPバインディング)に準拠し、WS-Security、WS-Policy、およびWS-Addressingに依存することで、信頼性の高いメッセージングを提供します。

WS-RMは、信頼できるメッセージング(RM)ソース(メッセージを送信するパーティ)と、RMの宛先(メッセージを受信するパーティ)を定義します。WS-RMは、エンドポイント間の信頼は必ず確立し、メッセージおよびエンドポイントは正式に識別することなどの前提条件が決められています(これは前述の補完的なWS-*仕様を使用することで実現します)。

WS-RMポリシーは、WS-Policyフレームワークを活用するポリシー・アサーションを定義します。これにより、RM宛先とRMソースは指定された順序で要件を示すことができます。

B 事前定義済ポリシー

この付録では、事前定義済ポリシーをまとめます。次の項が含まれます。

- セキュリティ・ポリシー

- WS-Addressingポリシー

- MTOMアタッチメント・ポリシー

- 信頼できるメッセージング・ポリシー

- 管理ポリシー

- 動作無効ポリシー

オラクル社は新しい標準、特にOASIS Web Services Secure Exchange技術委員会が主導する仕様の普及に貢献しています。オラクル社は、OASIS WS-SX技術協議会のいくつかの実用セキュリティ・シナリオ(事前定義済ポリシーに実装されているサブセット)に貢献しています。

注意:
WebLogic Webサービス・ポリシーの詳細は、Oracle WebLogic ServerのWebサービスの保護に関するガイドを参照してください。

セキュリティ・ポリシー

次の項では、セキュリティ・ポリシーを説明します。

- 認証のみのポリシー

- メッセージ保護のみのポリシー

- メッセージ保護および認証ポリシー

- WS-Trustポリシー

- 認可のみのポリシー

- 認可ポリシー: Oracle Entitlements Server

認証のみのポリシー

次の認証のみのポリシーは、SOAPおよびRESTful Webサービス用に提供されています。

表B-1に、SOAPおよびRESTful Webサービスに対して認証のみを実行し、この両方のサービスに添付できるセキュリティ・ポリシーをまとめます。

表B-1 認証のみのポリシー: SOAPおよびRESTful Webサービス

クライアント・ポリシー

サービス・ポリシー

認証(トランスポート)

oracle/http_jwt_token_client_policy

oracle/http_jwt_token_service_policy

はい

oracle/http_jwt_token_identity_switch_client_policy

oracle/http_jwt_token_service_policy

はい

N/A

oracle/http_oam_token_service_policy

はい

oracle/http_oauth2_token_client_policy

oracle/http_jwt_token_service_policy, or oracle/multi_token_rest_service_policy

http_oauth2_token_opc_oauth2_client_policy

Oracle Cloud用に予約済。

oracle/oauth2_config_client_policy

N/A

oracle/http_saml20_token_bearer_client_policy

oracle/http_saml20_token_bearer_service_policy

はい

次のいずれかを添付します。

- oracle/wss_http_token_client_policy

- oracle/http_saml20_token_bearer_client_policy

- oracle/http_jwt_token_identity_switch_client_policy

- oracle/http_jwt_token_client_policy

- 「oracle/http_spnego_token_client_template」の説明に従って、SPNEGOアサーションを使用して生成されたポリシー

HTTP OAMセキュリティをサポートするには、OAM Webgateを構成してリクエストをインターセプトする必要があります。詳細は、「oracle/multi_token_rest_service_policy」を参照してください。

oracle/multi_token_rest_service_policy

はい

表B-2に、SOAP Webサービスに対して認証のみを実行するセキュリティ・ポリシーをまとめ、トークンがトランスポート・レイヤーまたはSOAPヘッダーに組み込まれるかどうかを示します。

表B-2 認証のみのポリシー: SOAP Webサービスの場合のみ

クライアント・ポリシー

サービス・ポリシー

認証(トランスポート)

認証(SOAP)

oracle/wss_http_token_client_policy

oracle/wss_http_token_service_policy

はい

いいえ

oracle/wss_username_token_client_policy

oracle/wss_username_token_service_policy

いいえ

はい

oracle/wss10_saml_token_client_policy

oracle/wss10_saml_token_service_policy

いいえ

はい

oracle/wss10_saml20_token_client_policy

oracle/wss10_saml20_token_service_policy

いいえ

はい

oracle/wss11_kerberos_token_client_policy

oracle/wss11_kerberos_token_service_policy

いいえ

はい

oracle/http_jwt_token_client_policy

このポリシーは、HTTPヘッダーにJWTトークンを含めます。JWTトークンは自動的に作成されます。発行者名とサブジェクト名は、プログラムによって、またはポリシーを介して宣言的に提供されます。このポリシーにはオーディエンス制限条件を指定できます。

このポリシーは、HTTPベースのクライアント・エンドポイントで実行できます。

このポリシーには、oracle/http_jwt_token_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/http_jwt_token_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_jwt_token_client_policy」を参照してください。

oracle/http_jwt_token_identity_switch_client_policy

認証済サブジェクトに基づいたアイデンティティではなく、別のアイデンティティを伝播して、動的なアイデンティティ切替えを実行します。このポリシーは、HTTPヘッダーにJSON Webトークン(JWT)を含めます。JWTトークンは自動的に作成されます。発行者名とサブジェクト名は、プログラムによって、またはポリシーを介して宣言的に提供されます。このポリシーにはオーディエンス制限条件を指定できます。

このポリシーは、HTTPベース、SOAPまたはRESTクライアント・エンドポイントで実行できます。

このポリシーには、oracle/http_jwt_token_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/http_jwt_token_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_jwt_token_identity_switch_client_policy」を参照してください。

oracle/http_jwt_token_service_policy

このポリシーは、HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証します。

このポリシーは、HTTPベースのすべてのエンドポイントに適用できます。

このポリシーには、oracle/http_jwt_token_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/http_jwt_token_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_jwt_token_client_policy」を参照してください。

oracle/http_oam_token_service_policy

このポリシーは、OAMエージェントがユーザーを認証し、アイデンティティを確立したことを検証します。このポリシーは、HTTPベースのエンドポイントで実行できます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_oam_token_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_oam_token_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_oam_token_service_policy」を参照してください。

oracle/http_oauth2_token_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークン(AT)は、Mobile & Social OAuth2サーバーから取得します。このポリシーは、任意のHTTPベースのクライアントに割り当てることができます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_oauth2_token_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_oauth2_token_client_template」を参照してください。

このポリシーは、常にoracle/oauth2_config_client_policyとともに割り当てる必要があります。

ポリシーの構成の詳細は、「oracle/http_oauth2_token_client_policy」を参照してください。

http_oauth2_token_opc_oauth2_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークンは、Mobile & Social OAuth2サーバーから取得します。oracle.oauth2.serviceプロパティはデフォルトでtrueに設定されているため、OAuth2サーバーのユーザーおよびJWTトークンの発行者としてクライアントIDが使用されます。scopeの値がない場合(デフォルト)、プロトコル、ホストおよびポート(使用可能な場合)をサービスURLから取得して使用します。このポリシーは、任意のHTTPベース、SOAPまたはRESTクライアントに割り当てることができます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_oauth2_token_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_oauth2_token_client_template」を参照してください。

このポリシーは、常にoracle/oauth2_config_client_policyとともに割り当てる必要があります。

ポリシーの構成の詳細は、「oracle/http_oauth2_token_opc_oauth2_client_policy」を参照してください。

oracle/oauth2_config_client_policy

このポリシーは、クライアント側のOAuth2情報を提供します。この情報は、トークン交換でMobile and Social OAuth2サーバーを起動するために使用されます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/oauth2_config_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/oauth2_config_client_template」を参照してください。

このポリシーは、oauth2クライアント・ポリシーとともに割り当てられている場合にのみ実行されます。それ以外の場合、この値は無視されます。

ポリシーの構成の詳細は、「oracle/oauth2_config_client_policy」を参照してください。

oracle/http_saml20_token_bearer_client_policy

このポリシーは、HTTPヘッダーにSAML Bearer V2.0トークンを含めます。確認方法がBearerのSAMLトークンが自動的に作成されます。このポリシーは、HTTPベースのクライアント・エンドポイントで実行できます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_saml20_token_bearer_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_saml20_token_bearer_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_saml20_token_bearer_client_policy」を参照してください。

oracle/http_saml20_token_bearer_service_policy

このポリシーは、HTTPヘッダー内の、確認方法がBearerのSAML v2.0トークンに含まれる資格証明を使用して、ユーザーを認証します。SAMLトークンの資格証明は、SAML v2.0ログイン・モジュールに対して認証されます。このポリシーは、HTTPベースのエンドポイントで実行できます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_saml20_token_bearer_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_saml20_token_bearer_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_saml20_bearer_token_service_policy」を参照してください。

oracle/multi_token_rest_service_policy

このポリシーは、クライアントが送信するトークンに基づいて、次の認証ポリシーのいずれかを実行します。

- HTTP Basic: ユーザー名とパスワード資格証明をHTTPヘッダーから抽出します。

- HTTPヘッダーのSAML 2.0 Bearerトークン: HTTPヘッダーのSAML 2.0 Bearerアサーションを抽出します。

- HTTP OAMセキュリティ: OAMエージェントがユーザーを認証し、アイデンティティを確立したことを検証します。

- SPNEGO over HTTPセキュリティ: Simple and Protected GSSAPI Negotiation Mechanism (SPNEGO) KerberosトークンをHTTPヘッダーから抽出します。

- HTTPヘッダー内のJWTトークン: HTTPヘッダー内のJWTトークンからユーザー名を抽出します。

このポリシーには、次のアサーション・テンプレートがORグループとして含まれます。つまり、クライアントはいずれかのトークンを送信できます。

- oracle/wss_http_token_service_template。詳細は、「oracle/wss_http_token_client_template」を参照してください。

- oracle/http_saml20_token_bearer_service_template.詳細は、「oracle/http_saml20_token_bearer_service_template」を参照してください。

- oracle/http_oam_token_service_template。詳細は、「oracle/http_oam_token_service_template」を参照してください。(サーバー側でのみOAM保護を提供します。)

- oracle/http_spnego_token_service_template。詳細は、「oracle/http_spnego_token_service_template」を参照してください。

- oracle/http_jwt_token_service_template。詳細は、「oracle/http_jwt_token_service_template」を参照してください。

oracle/wss_http_token_client_policy

wss_http_token_client_policyでは、アウトバウンド・クライアント・リクエストのHTTPヘッダーに資格証明が含まれます。このポリシーは、HTTPベースのクライアントで実行できます。

注意:
現在サポートされているのはHTTP Basic認証のみです。

このポリシーには、oracle/wss_http_token_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_http_token_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_http_token_client_policy」を参照してください。

oracle/wss_http_token_service_policy

このwss_http_token_service_policyでは、HTTPヘッダーの資格証明を使用して、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。このポリシーは、HTTPベースのエンドポイントで実行できます。

注意:
現在サポートされているのはHTTP Basic認証のみです。

このポリシーには、oracle/wss_http_token_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_http_token_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_http_token_service_policy」を参照してください。

oracle/wss_username_token_client_policy

このポリシーは、すべてのアウトバウンドSOAPリクエスト・メッセージにWS-Security UsernameToken SOAPヘッダーの資格証明を含めます。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。
このポリシーは安全ではありません。パスワードをクリア・テキストで送信します。このポリシーは、セキュリティが低くても問題にならない場合のみ、または他のメカニズムでトランスポートが保護されていることがはっきりしている場合に使用してください。または、このポリシーのSSLバージョンであるoracle/wss_username_token_over_ssl_client_policyの使用を検討します。

このポリシーには、oracle/wss_username_token_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_username_token_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_username_token_client_policy」を参照してください。

oracle/wss_username_token_service_policy

このポリシーは、WS-Security UsernameToken SOAPヘッダーの資格証明を使用してユーザーを認証します。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。
このポリシーは安全ではありません。パスワードをクリア・テキストで送信します。このポリシーは、セキュリティが低くても問題にならない場合のみ、または他のメカニズムでトランスポートが保護されていることがはっきりしている場合に使用してください。または、このポリシーのSSLバージョンであるoracle/wss_username_token_over_ssl_service_policyの使用を検討します。

このポリシーには、oracle/wss_username_token_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_username_token_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_username_token_service_policy」を参照してください。

oracle/wss10_saml_token_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。このポリシーは、SOAPベースのクライアントで実行できます。

このポリシーには、oracle/wss10_saml_token_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_client_policy」を参照してください。

oracle/wss10_saml_token_service_policy

このポリシーは、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。SAMLトークンの資格証明は、SAMLログイン・モジュールに対して認証されます。このポリシーは、SOAPベースのエンドポイントで実行できます。

このポリシーには、oracle/wss10_saml_token_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_service_policy」を参照してください。

oracle/wss10_saml20_token_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。このポリシーは、SOAPベースのクライアントで実行できます。

このポリシーには、oracle/wss10_saml20_token_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml20_token_client_policy」を参照してください。

oracle/wss10_saml20_token_service_policy

このポリシーは、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。SAMLトークンの資格証明は、SAMLログイン・モジュールに対して認証されます。このポリシーは、SOAPベースのエンドポイントで実行できます。

このポリシーには、oracle/wss10_saml20_token_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml20_token_service_policy」を参照してください。

oracle/wss11_kerberos_token_client_policy

このポリシーでは、WS-Security Kerberos Token Profile v1.1標準に従い、WS-SecurityヘッダーにKerberosトークンが含まれます。このポリシーは、MITおよびActive Directory KDCと互換性があります。このポリシーは、SOAPベースのクライアントで実行できます。

このポリシーには、oracle/wss11_kerberos_token_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_kerberos_token_client_policy」を参照してください。

oracle/wss11_kerberos_token_service_policy

このポリシーは、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。このポリシーは、SOAPヘッダーからKerberosトークンを抽出し、ユーザーを認証します。コンテナには、Oracle Platform Security Servicesを介して構成されたKerberosインフラストラクチャが含まれている必要があります。このポリシーは、MITおよびActive Directory KDCと互換性があります。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

このポリシーには、oracle/wss11_kerberos_token_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_service_policy」を参照してください。

oracle/wss_saml_token_bearer_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。確認方法がBearerのSAMLトークンが自動的に作成されます。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

このポリシーには、oracle/wss_saml_token_bearer_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_bearer_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml_token_bearer_client_policy」を参照してください。

oracle/wss_saml_or_username_token_service_policy

このポリシーは、クライアントがSAMLトークンとユーザー名トークンのどちらを使用するかに基づいて、次の認証ポリシーのいずれかを実行します。

- sender-vouchesの確認タイプを使用したWS-Security SOAPヘッダー内のSAMLトークン。

- 構成済のアイデンティティ・ストアに対してユーザーを認証するWS-Security UsernameToken SOAPヘッダー。

このポリシーには、次のアサーションがORグループとして含まれます。つまり、クライアントはどちらのタイプのポリシーでも実行できます。

- oracle/wss_saml_token_service_template。このアサーションの詳細は、「oracle/wss10_saml_token_service_template」を参照してください。

- oracle/wss_username_token_service_template。このアサーションの詳細は、「oracle/wss_username_token_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_service_policy」および「oracle/wss_username_token_service_policy」を参照してください。

oracle/wss_saml_bearer_or_username_token_service_policy

このポリシーは、クライアントがSAMLトークンとユーザー名トークンのどちらを使用するかに基づいて、次の認証ポリシーのいずれかを実行します。

- Bearer確認タイプを使用するWS-Security SOAPヘッダー内のSAMLトークン。

- 構成済のアイデンティティ・ストアに対してユーザーを認証するWS-Security UsernameToken SOAPヘッダー。

このポリシーには、次のアサーションがORグループとして含まれます。つまり、クライアントはどちらのタイプのポリシーでも実行できます。

- oracle/wss_saml_token_bearer_template。このアサーションの詳細は、「oracle/wss_saml_token_bearer_service_template」を参照してください。

- oracle/wss_username_token_template。このアサーションの詳細は、「oracle/wss_username_token_service_template」を参照してください。

メッセージ保護のみのポリシー

表B-3に、メッセージ保護のみを実行するポリシーをまとめ、ポリシーがトランスポート・レイヤーまたはSOAPヘッダーで実行されるかどうかを示します。

表B-3 メッセージ保護のみのポリシー

クライアント・ポリシー

サービス・ポリシー

認証(トランスポート)

認証(SOAP)

メッセージ保護(トランスポート)

メッセージ保護(SOAP)

oracle/wss10_message_protection_client_policy

oracle/wss10_message_protection_service_policy

いいえ

いいえ

いいえ

はい

oracle/wss11_message_protection_client_policy

oracle/wss11_message_protection_service_policy

いいえ

いいえ

いいえ

はい

oracle/wss10_message_protection_client_policy

このポリシーは、WS-Security 1.0標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性と機密保護)を行います。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_message_protection_client_policy」を参照してください。

oracle/wss10_message_protection_service_policy

このポリシーは、WS-Security 1.0標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性と機密保護)を実行します。

メッセージは、WS-Securityの非対称鍵テクノロジのBasic 128スイートを使用して保護されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_message_protection_service_policy」を参照してください。

oracle/wss11_message_protection_client_policy

このポリシーは、WS-Security 1.1標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性と機密保護)を行います。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_message_protection_client_policy」を参照してください。

oracle/wss11_message_protection_service_policy

このポリシーは、WS-Security 1.1標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性と機密保護)を実行します。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_message_protection_service_policy」を参照してください。

メッセージ保護および認証ポリシー

表B-4に、メッセージ保護と認証の両方を実行し、WS-Security 1.0または1.1標準に準拠しないポリシーをまとめます。表には、ポリシーがトランスポート・レイヤーまたはSOAPヘッダーで実行されるかどうかが示されます。

表B-4 メッセージ保護および認証のポリシー

クライアント・ポリシー

サービス・ポリシー

認証(トランスポート)

認証(SOAP)

メッセージ保護(トランスポート)

メッセージ保護(SOAP)

oracle/wss_http_token_over_ssl_client_policy

oracle/wss_http_token_over_ssl_service_policy

はい

いいえ

はい

いいえ

次のいずれかを添付します。

- oracle/wss_saml_token_over_ssl_client_policy

- oracle/wss_username_token_over_ssl_client_policy

oracle/wss_saml_or_username_token_over_ssl_service_policy

いいえ

はい

はい

いいえ

oracle/wss_saml_token_bearer_over_ssl_client_policy

oracle/wss_saml_token_bearer_over_ssl_service_policy

いいえ

はい

はい

いいえ

oracle/wss_saml_token_over_ssl_client_policy

oracle/wss_saml_token_over_ssl_service_policy

いいえ

はい

はい

いいえ

oracle/wss_saml20_token_over_ssl_client_policy

oracle/wss_saml20_token_over_ssl_service_policy

いいえ

はい

はい

いいえ

oracle/wss_username_token_over_ssl_client_policy

oracle/wss_username_token_over_ssl_service_policy

いいえ

はい

はい

いいえ

oracle/wss10_saml_hok_with_message_protection_client_policy

oracle/wss10_saml_hok_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss10_saml_token_with_message_integrity_client_policy

oracle/wss10_saml_token_with_message_integrity_service_policy

いいえ

はい

いいえ

はい

oracle/wss10_saml_token_with_message_protection_client_policy

oracle/wss10_saml_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss10_saml20_token_with_message_protection_client_policy

oracle/wss10_saml20_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

いいえ

はい

いいえ

はい

oracle/wss10_username_id_propagation_with_msg_protection_client_policy

oracle/wss10_username_id_propagation_with_msg_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss10_username_token_with_message_protection_client_policy

oracle/wss10_username_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy

いいえ

はい

いいえ

はい

oracle/wss10_x509_token_with_message_protection_client_policy

oracle/wss10_x509_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss11_kerberos_token_with_message_protection_client_policy

oracle/wss11_kerberos_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss11_kerberos_token_with_message_protection_basic128_client_policy

oracle/wss11_kerberos_token_with_message_protection_basic128__service_policy

いいえ

はい

いいえ

はい

次のいずれかを添付します。

- oracle/wss11_saml_token_with_message_protection_client_policy

- oracle/wss11_username_token_with_message_protection_client_policy

- oracle/wss_saml_token_bearer_over_ssl_client_policy

- oracle/wss_username_token_over_ssl_client_policy

- oracle/wss_http_token_over_ssl_client_policy

- oracle/http_jwt_token_over_ssl_client_policy

oracle/wss11_saml_or_username_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss11_saml_token_with_message_protection_client_policy

oracle/wss11_saml_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss11_saml20_token_with_message_protection_client_policy

oracle/wss11_saml20_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss11_saml_token_with_identity_switch_message_protection_client_policy

oracle/wss11_saml_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss11_username_token_with_message_protection_client_policy

oracle/wss11_username_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss11_x509_token_with_message_protection_client_policy

oracle/wss11_x509_token_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/http_basic_auth_over_ssl_client_policy

このポリシーは、アウトバウンド・クライアント・リクエストのHTTPヘッダーに資格証明を含めます。このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのクライアント・エンドポイントで実行できます。

注意:
現在サポートされているのはHTTP Basic認証のみです。

このポリシーには、oracle/wss_http_token_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_http_token_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_basic_auth_over_ssl_service_policy」を参照してください。

oracle/http_basic_auth_over_ssl_service_policy

このポリシーは、HTTPヘッダー内の資格証明を使用して、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのエンドポイントで実行できます。

注意:
このポリシーの機能は、oracle/wss_http_token_over_ssl_service_policyに似ています。唯一の相違は、oracle/wss_http_token_over_ssl_service_policyでは、require-tls要素内のinclude-timestamp属性を有効化して、リプレイ攻撃を防止できることです。この機能は、RESTfulサービスには適用されません。require-tls要素の詳細は、「orasp:require-tls」を参照してください。
現在サポートされているのはHTTP Basic認証のみです。

このポリシーには、oracle/wss_http_token_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_http_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_basic_auth_over_ssl_service_policy」を参照してください。

oracle/http_jwt_token_over_ssl_client_policy

このポリシーは、HTTPヘッダーにJWTトークンを含めます。JWTトークンは自動的に作成されます。発行者名とサブジェクト名は、プログラムによって、またはポリシーを介して宣言的に提供されます。このポリシーにはオーディエンス制限条件を指定できます。

また、このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。

このポリシーは、HTTPベースのクライアント・エンドポイントで実行できます。

このポリシーには、oracle/http_jwt_token_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/http_jwt_token_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_jwt_token_client_policy」を参照してください。

oracle/http_jwt_token_over_ssl_service_policy

このポリシーは、HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証します。また、このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。

このポリシーは、HTTPベースのすべてのエンドポイントに適用できます。

このポリシーには、oracle/http_jwt_token_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/http_jwt_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_jwt_token_client_policy」を参照してください。

oracle/http_oauth2_token_over_ssl_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークン(AT)は、Mobile & Social OAuth2サーバーから取得します。このポリシーは、任意のHTTPベースのクライアントに割り当てることができます。

ポリシーは、アウトバウンド・トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを使用した場合、リクエストは拒否されます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_oauth2_token_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_oauth2_token_over_ssl_client_template」を参照してください。

このポリシーは、常にoracle/oauth2_config_client_policyとともに割り当てる必要があります。

ポリシーの構成の詳細は、「oracle/http_oauth2_token_over_ssl_client_policy」を参照してください。

oracle/http_oauth2_token_opc_oauth2_over_ssl_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークンは、Mobile & Social OAuth2サーバーから取得します。oracle.oauth2.serviceプロパティはデフォルトでtrueに設定されているため、OAuth2サーバーのユーザーおよびJWTトークンの発行者としてクライアントIDが使用されます。scopeの値がない場合(デフォルト)、プロトコル、ホストおよびポート(使用可能な場合)をサービスURLから取得して使用します。

ポリシーは、アウトバウンド・トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを使用した場合、リクエストは拒否されます。このポリシーは、任意のHTTPベースのクライアントに割り当てることができます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_oauth2_token_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_oauth2_token_over_ssl_client_template」を参照してください。

このポリシーは、常にoracle/oauth2_config_client_policyとともに割り当てる必要があります。

ポリシーの構成の詳細は、「oracle/http_oauth2_token_opc_oauth2_over_ssl_client_policy」を参照してください。

oracle/http_oauth2_token_identity_switch_over_ssl_client_policy

このポリシーは、oracle/http_oauth2_token_over_ssl_client_policyポリシーに類似しており、subject.precedenceプロパティがデフォルトでfalseに設定されています。

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークンは、Mobile and Social OAuth2サーバーから取得します。)また、アウトバウンド・トランスポート・プロトコルがHTTPSであることも検証します。HTTPS以外のトランスポート・プロトコルを使用した場合、リクエストは拒否されます。

このポリシーは、認証されたサブジェクトに基づいたものとは異なるアイデンティティを伝播することにより、動的なアイデンティティ切替えを実行します。このポリシーは、任意のHTTPベース、SOAPまたはRESTクライアントに割り当てることができます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_oauth2_token_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_oauth2_token_over_ssl_client_template」を参照してください。

このポリシーは、常にoracle/oauth2_config_client_policyとともに割り当てる必要があります。

ポリシーの構成の詳細は、「oracle/http_oauth2_token_identity_switch_over_ssl_client_policy」を参照してください。

oracle/http_oauth2_token_identity_switch_opc_oauth2_over_ssl_client_policy

このポリシーは、HTTPヘッダーにOAuth2アクセス・トークンを含めます。アクセス・トークンは、OAuthサーバーから取得します。また、アウトバウンド・トランスポート・プロトコルがHTTPSであることも検証します。HTTPS以外のトランスポート・プロトコルを使用した場合、リクエストは拒否されます。このポリシーは、SSLを通じてサービスを呼び出す任意のHTTPベース、SOAPまたはRESTクライアントに割り当てることができます。

このポリシーは、認証されたサブジェクトに基づいたものとは異なるアイデンティティを伝播することにより、動的なアイデンティティ切替えも実行します。

subject.precedenceプロパティは、デフォルトでfalseに設定されています。oracle.oauth2.serviceプロパティはデフォルトでtrueに設定されているため、OAuth2サーバーのユーザーおよびクライアントJWTトークンの発行者としてクライアントIDが使用されます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_oauth2_token_over_ssl_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_oauth2_token_over_ssl_client_template」を参照してください。

このポリシーは、常にoracle/oauth2_config_client_policyとともに割り当てる必要があります。

ポリシーの構成の詳細は、「oracle/http_oauth2_token_identity_switch_opc_oauth2_over_ssl_client_policy」を参照してください。

oracle/http_saml20_token_bearer_over_ssl_client_policy

このポリシーは、HTTPヘッダーにSAML Bearer v2.0トークンを含めます。確認方法がBearerのSAMLトークンが自動的に作成されます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、HTTPベースのクライアント・エンドポイントに添付できます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_saml20_token_bearer_client_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_saml20_token_bearer_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_saml20_bearer_token_over_ssl_client_policy」を参照してください。

oracle/http_saml20_token_bearer_over_ssl_service_policy

このポリシーは、HTTPヘッダー内の、確認方法がBearerのSAML v2.0トークンに含まれる資格証明を使用して、ユーザーを認証します。SAMLトークンの資格証明は、SAML v2.0ログイン・モジュールに対して認証されます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、HTTPベースのエンドポイントで実行できます。

このポリシーには、ポリシー・アサーションの設定および構成プロパティを定義する、oracle/http_saml20_token_bearer_service_templateアサーション・テンプレートが含まれています。このアサーションの詳細は、「oracle/http_saml20_token_bearer_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/http_saml20_bearer_token_over_ssl_service_policy」を参照してください。

oracle/multi_token_over_ssl_rest_service_policy

このポリシーは、クライアントが送信するトークンに基づいて、次の認証ポリシーのいずれかを実行します。

- HTTP Basic over SSL: ユーザー名とパスワード資格証明をHTTPヘッダーから抽出します。

- HTTPヘッダーのSAML 2.0 Bearerトークン(SSL経由): HTTPヘッダーのSAML 2.0 Bearerアサーションを抽出します。

- HTTP OAMセキュリティ(SSL以外): OAMエージェントがユーザーを認証し、アイデンティティを確立したことを検証します。(サーバー側でのみSSL以外のOAM保護を提供します。)

- SPNEGO over HTTPセキュリティ(SSL以外): SPNEGO Kerberosトークン情報をHTTPヘッダーから抽出します。(SSL以外の保護のみを提供します。)

- HTTPヘッダー内のJWTトークン(SSL経由): HTTPヘッダー内のJWTトークンからユーザー名を抽出します。

このポリシーには、次のアサーション・テンプレートがORグループとして含まれます。つまり、クライアントはいずれかのトークンを送信できます。

- oracle/wss_http_token_over_ssl_service_template。詳細は、「oracle/wss_http_token_over_ssl_service_template」を参照してください。

- oracle/http_saml20_token_over_ssl_bearer_service_policy.このポリシーの構成の詳細は、「oracle/http_saml20_token_bearer_service_template」を参照してください。

- oracle/http_oam_token_service_template。(サーバー側でのみSSL以外のOAM保護を提供します。)詳細は、「oracle/http_oam_token_service_template」を参照してください。

- oracle/http_spnego_token_service_template。(SSL以外の保護のみを提供します。)詳細は、「oracle/http_spnego_token_service_template」を参照してください。

- oracle/http_jwt_token_over_ssl_service_template。詳細は、「oracle/http_jwt_token_over_ssl_service_template」を参照してください。

oracle/wss_http_token_over_ssl_client_policy

このポリシーは、アウトバウンド・クライアント・リクエストのHTTPヘッダーに資格証明を含め、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。また、このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのクライアントで実行できます。

注意:
現在サポートされているのはHTTP Basic認証のみです。

このポリシーには、oracle/wss_http_token_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_http_token_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_http_token_over_ssl_client_policy」を参照してください。

oracle/wss_http_token_over_ssl_service_policy

このポリシーは、HTTPヘッダーの資格証明を抽出し、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。このポリシーは、トランスポート・プロトコルがHTTPSであることを検証します。HTTPS以外のトランスポート・プロトコルを介するリクエストは拒否されます。このポリシーは、HTTPベースのエンドポイントで実行できます。

注意:
このポリシーの機能は、oracle/http_basic_auth_over_ssl_service_policyに似ています。唯一の相違は、oracle/wss_http_token_over_ssl_service_policyでは、require-tls要素内のinclude-timestamp属性を有効化して、リプレイ攻撃を防止できることです。これは、RESTfulサービスには適用されません。require-tls要素の詳細は、「orasp:require-tls」を参照してください。
現在サポートされているのはHTTP Basic認証のみです。

このポリシーには、oracle/wss_http_token_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_http_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_http_token_over_ssl_service_policy」を参照してください。

oracle/wss_saml_or_username_token_over_ssl_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、クライアントがSAMLとユーザー名トークンのどちらを使用するかに基づいて、次の認証ポリシーのいずれかを実行します。

- sender-vouchesの確認タイプを使用したWS-Security SOAPヘッダー内のSAMLトークン。

- 構成済のアイデンティティ・ストアに対してユーザーを認証するWS-Security UsernameToken SOAPヘッダー。

このポリシーには、次のアサーションがORグループとして(つまりクライアントはどちらかのタイプのポリシーを実行できる)含まれます。

- oracle/wss_saml_token_over_ssl_service_template。このアサーションの詳細は、「oracle/wss_saml_token_over_ssl_service_template」を参照してください。

- oracle/wss_username_token_over_ssl_service_template。このアサーションの詳細は、「oracle/wss_username_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml_token_over_ssl_service_policy」および「oracle/wss_username_token_over_ssl_service_policy」を参照してください。

oracle/wss_saml_token_bearer_identity_switch_client_policy

認証済サブジェクトに基づいたアイデンティティではなく、別のアイデンティティを伝播して、動的なアイデンティティ切替えを実行します。このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。確認方法がBearerのSAMLトークンが自動的に作成されます。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

このポリシーには、oracle/wss_saml_token_bearer_client_templateアサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_bearer_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml_token_bearer_identity_switch_client_policy」を参照してください。

oracle/wss_saml_token_bearer_over_ssl_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。確認方法がBearerのSAMLトークンが自動的に作成されます。また、このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることも検証します。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

このポリシーには、oracle/wss_saml_token_bearer_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_bearer_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml_token_bearer_over_ssl_client_policy」を参照してください。

oracle/wss_saml_token_bearer_over_ssl_service_policy

このポリシーは、WS-Security SOAPヘッダーの、確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。SAMLトークンの資格証明は、SAMLログイン・モジュールに対して認証されます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、SOAPベースのエンドポイントで実行できます。

このポリシーには、oracle/wss_saml_token_bearer_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_bearer_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml_token_bearer_over_ssl_service_policy」を参照してください。

oracle/wss_saml20_token_bearer_over_ssl_client_policy

このポリシーには、アウトバウンドSOAPリクエスト・メッセージのSAMLトークンが含まれます。確認方法がBearerのSAMLトークンが自動的に作成されます。また、このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることも検証します。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

このポリシーには、oracle/wss_saml20_token_bearer_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml20_token_bearer_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml20_token_bearer_over_ssl_client_policy」を参照してください。

oracle/wss_saml20_token_bearer_over_ssl_service_policy

このポリシーは、WS-Security SOAPヘッダーの、確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。SAMLトークンの資格証明は、SAMLログイン・モジュールに対して認証されます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、SOAPベースのエンドポイントで実行できます。

このポリシーには、oracle/wss_saml20_token_bearer_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml20_token_bearer_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml20_token_bearer_over_ssl_service_policy」を参照してください。

oracle/wss_saml_token_over_ssl_client_policy

このポリシーには、sender-vouchesの確認タイプを使用したアウトバウンドWS-Security SOAPヘッダーのSAMLトークンが含まれます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、SOAPベースのクライアントで実行できます。

このポリシーには、oracle/wss_saml_token_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml_token_over_ssl_client_policy」を参照してください。

oracle/wss_saml_token_over_ssl_service_policy

このポリシーは、sender-vouchesの確認タイプを使用したWS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を実行します。SAMLトークンは、構成済のアイデンティティ・ストアのユーザーにマッピングされます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、SOAPベースのエンドポイントで実行できます。

このポリシーには、oracle/wss_saml_token_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml_token_over_ssl_service_policy」を参照してください。

oracle/wss_saml20_token_over_ssl_client_policy

このポリシーには、sender-vouchesの確認タイプを使用したアウトバウンドWS-Security SOAPヘッダーのSAMLトークンが含まれます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、SOAPベースのクライアントで実行できます。

このポリシーには、oracle/wss_saml20_token_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml20_token_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml20_token_over_ssl_client_policy」を参照してください。

oracle/wss_saml20_token_over_ssl_service_policy

このポリシーは、sender-vouchesの確認タイプを使用したWS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を実行します。SAMLトークンは、構成済のアイデンティティ・ストアのユーザーにマッピングされます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。このポリシーは、SOAPベースのエンドポイントで実行できます。

このポリシーには、oracle/wss_saml20_token_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_saml20_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_saml20_token_over_ssl_service_policy」を参照してください。

oracle/wss_username_token_over_ssl_client_policy

このポリシーは、アウトバウンドSOAPリクエスト・メッセージにWS-Security UsernameTokenヘッダーの資格証明を含めます。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

このポリシーには、oracle/wss_username_token_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_username_token_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_username_token_over_ssl_client_policy」を参照してください。

oracle/wss_username_token_over_ssl_service_policy

このポリシーは、WS-Security UsernameToken SOAPヘッダーの資格証明を使用して、Oracle Platform Security Servicesの構成済のアイデンティティ・ストアに対してユーザーを認証します。このポリシーは、トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

このポリシーには、oracle/wss_username_token_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_username_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_username_token_over_ssl_service_policy」を参照してください。

oracle/wss10_saml_hok_with_message_protection_client_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAML鍵所有者ベースの認証を実現します。SOAPメッセージに含まれているSAMLトークンは、鍵所有者確認を使用したSAMLベースの認証で使用されます。

ポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml_hok_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_hok_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_hok_token_with_message_protection_client_policy」を参照してください。

oracle/wss10_saml_hok_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAML鍵所有者ベースの認証を実現します。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml_hok_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_hok_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_hok_token_with_message_protection_service_policy」を参照してください。

oracle/wss10_saml_token_with_message_integrity_client_policy

このポリシーは、メッセージ・レベルの整合性と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAMLベースの認証を実現します。SOAPメッセージに含まれているSAMLトークンは、送信者保証確認を使用したSAMLベースの認証で使用されます。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートと、メッセージ整合性のためにSHA-1ハッシュ・アルゴリズムが使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_with_message_integrity_client_policy」を参照してください。

oracle/wss10_saml_token_with_message_integrity_service_policy

このポリシーは、メッセージ・レベルの整合性の保護と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。WS-Securityバイナリ・セキュリティ・トークンまたは現在のJava Authentication and Authorization Service (JAAS)サブジェクトからSAMLトークンを抽出し、その資格証明を使用して、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを検証します。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートと、メッセージ整合性のためにSHA-1ハッシュ・アルゴリズムが使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_with_message_integrity_service_policy」を参照してください。

oracle/wss10_saml_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAMLベースの認証を行います。Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_with_message_protection_client_policy」を参照してください。

oracle/wss10_saml_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。WS-Securityバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、その資格証明をOracle Platform Security Servicesアイデンティティ・ストアに対するユーザーの検証に使用します。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_with_message_protection_service_policy」を参照してください。

oracle/wss10_saml20_token_with_message_protection_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAMLベースの認証を行います。Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml20_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml20_token_with_message_protection_client_policy」を参照してください。

oracle/wss10_saml20_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。WS-Securityバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、その資格証明をOracle Platform Security Servicesアイデンティティ・ストアに対するユーザーの検証に使用します。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml20_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml20_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml20_token_with_message_protection_service_policy」を参照してください。

oracle/wss10_saml_token_with_message_protection_ski_basic256_client_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.0標準に従ったアウトバウンドSOAPメッセージのSAMLベースの認証を行います。Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

ポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 256スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-256ビット暗号化も使用されます。このポリシーは、リクエストの暗号化キー、およびレスポンスの署名と暗号化キーの両方に、サブジェクト・キー識別子(SKI)の参照メカニズムを使用します。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_with_message_protection_client_policy」を参照してください。

oracle/wss10_saml_token_with_message_protection_ski_basic256_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。WS-Securityバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、その資格証明をOracle Platform Security Servicesアイデンティティ・ストアに対するユーザーの検証に使用します。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

ポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 256スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-256ビット暗号化も使用されます。このポリシーは、リクエストの暗号化キー、およびレスポンスの署名と暗号化キーの両方に、サブジェクト・キー識別子(SKI)の参照メカニズムを使用します。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_saml_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_saml_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_saml_token_with_message_protection_service_policy」を参照してください。

oracle/wss10_username_id_propagation_with_msg_protection_client_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったアウトバウンドSOAPリクエストのアイデンティティ伝播を行います。資格証明(ユーザー名のみ)は、WS-Security UsernameTokenヘッダーを介して、アウトバウンドSOAPリクエスト・メッセージに含まれます。パスワードは含まれません。このポリシーは、SOAPベースのクライアントで実行できます。

メッセージ保護は、WS-Securityの非対称鍵テクノロジのBasic128スイートを使用して行われます。具体的には、機密保護にはRSA鍵メカニズム、整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_username_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_username_id_propagation_with_msg_protection_client_policy」を参照してください。

oracle/wss10_username_id_propagation_with_msg_protection_service_policy

このポリシーは、インバウンドSOAPリクエストに対してWS-Security 1.0で記述されるメカニズムを使用してメッセージ・レベルの保護(整合性と機密保護)およびアイデンティティ伝播を行います。このポリシーは、SOAPベースのエンドポイントで実行できます。

メッセージ保護は、WS-Security 1.0の非対称鍵テクノロジのBasic128スイートを使用して行われます。具体的には、機密保護にはRSA鍵メカニズム、整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_username_id_propagation_with_msg_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_username_id_propagation_with_msg_protection_service_policy」を参照してください。

oracle/wss10_username_token_with_message_protection_client_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったアウトバウンドSOAPリクエストの認証を行います。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_username_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_username_token_with_message_protection_client_policy」を参照してください。

oracle/wss10_username_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(メッセージの整合性と機密保護)と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストの認証を行います。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_username_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_username_token_with_message_protection_service_policy」を参照してください。

oracle/wss10_username_token_with_message_protection_ski_basic256_client_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったアウトバウンドSOAPリクエストの認証を行います。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 256スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-256ビット暗号化も使用されます。このポリシーは、リクエストの暗号化キー、およびレスポンスの署名と暗号化キーの両方に、サブジェクト・キー識別子(SKI)の参照メカニズムを使用します。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_username_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_username_token_with_message_protection_client_policy」を参照してください。

oracle/wss10_username_token_with_message_protection_ski_basic256_service_policy

このポリシーは、メッセージ保護(メッセージの整合性と機密保護)と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストの認証を行います。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 256スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-256ビット暗号化も使用されます。このポリシーは、リクエストの暗号化キー、およびレスポンスの署名と暗号化キーの両方に、サブジェクト・キー識別子(SKI)の参照メカニズムを使用します。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_username_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_username_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_username_token_with_message_protection_service_policy」を参照してください。

oracle/wss10_x509_token_with_message_protection_client_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったアウトバウンドSOAPリクエストの証明書資格証明の移入を行います。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_x509_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_x509_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_x509_token_with_message_protection_client_policy」を参照してください。

oracle/wss10_x509_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.0標準に従ったインバウンドSOAPリクエストの証明書ベースの認証を行います。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss10_x509_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss10_x509_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss10_x509_token_with_message_protection_service_policy」を参照してください。

oracle/wss11_kerberos_token_with_message_protection_client_policy

このポリシーにはWS-SecurityヘッダーのKerberosトークンが含まれ、WS-Security Kerberos Token Profile v1.1標準に従い、Kerberosキーを使用してメッセージの整合性と機密保護を保証します。このポリシーは、MITおよびActive Directory KDCと互換性があります。このポリシーは、SOAPベースのクライアントで実行できます。

このポリシーには、oracle/wss11_kerberos_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_kerberos_token_with_message_protection_client_policy」を参照してください。

oracle/wss11_kerberos_token_with_message_protection_service_policy

このポリシーは、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。このポリシーは、MITおよびActive Directory KDCと互換性があります。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

このポリシーは、SOAPヘッダーからKerberosトークンを抽出してユーザーを認証し、Kerberosキーを使用してメッセージの整合性と機密保護を保証します。コンテナには、Oracle Platform Security Servicesを介して構成されたKerberosインフラストラクチャが含まれている必要があります。

このポリシーには、oracle/wss11_kerberos_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_kerberos_token_with_message_protection_service_policy」を参照してください。

oracle/wss11_kerberos_token_with_message_protection_basic128_client_policy

このポリシーにはWS-SecurityヘッダーのKerberosトークンが含まれ、WS-Security Kerberos Token Profile v1.1標準に従い、Kerberosキーを使用してメッセージの整合性と機密保護を保証します。このポリシーは、Active Directory KDCと互換性があります。このポリシーは、SOAPベースのクライアントで実行できます。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_kerberos_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_kerberos_token_with_message_protection_basic128_client_policy」を参照してください。

oracle/wss11_kerberos_token_with_message_protection_basic128__service_policy

このポリシーは、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。このポリシーは、Active Directory KDCと互換性があります。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

このポリシーでは、WS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。具体的には、メッセージ機密保護にはRSA鍵メカニズム、メッセージ整合性にはSHA-1ハッシュ・アルゴリズムが使用され、AES-128ビット暗号化も使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーは、SOAPヘッダーからKerberosトークンを抽出してユーザーを認証し、Kerberosキーを使用してメッセージの整合性と機密保護を保証します。コンテナには、Oracle Platform Security Servicesを介して構成されたKerberosインフラストラクチャが含まれている必要があります。

このポリシーには、oracle/wss11_kerberos_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_kerberos_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_kerberos_token_with_message_protection_basic128_service_policy」を参照してください。

oracle/wss11_saml_token_with_message_protection_client_policy

このポリシーは、アウトバウンドSOAPリクエストに対してWS-Security 1.1で記述されるメカニズムを使用してメッセージの保護(整合性と機密性)およびSAMLトークンの移入を行います。SOAPメッセージに含まれているSAMLトークンは、送信者保証確認を使用したSAMLベースの認証で使用します。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_saml_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_saml_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_saml_token_with_message_protection_client_policy」を参照してください。

oracle/wss11_saml20_token_with_message_protection_client_policy

このポリシーは、アウトバウンドSOAPリクエストに対してWS-Security 1.1で記述されるメカニズムを使用してメッセージの保護(整合性と機密性)およびSAMLトークンの移入を行います。SOAPメッセージに含まれているSAMLトークンは、送信者保証確認を使用したSAMLベースの認証で使用します。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_saml20_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_saml20_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_saml20_token_with_message_protection_client_policy」を参照してください。

oracle/wss11_saml_token_with_identity_switch_message_protection_client_policy

このポリシーは、認証されたサブジェクトに基づいたものとは異なるアイデンティティを伝播することにより、動的なアイデンティティ切替えを実行します。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

このポリシーは、アウトバウンドSOAPリクエストに対してWS-Security 1.1で記述されるメカニズムを使用してメッセージの保護(整合性と機密性)およびSAMLトークンの移入を行います。SOAPメッセージに含まれているSAMLトークンは、送信者保証確認を使用したSAMLベースの認証で使用します。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_saml_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_saml_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_saml_token_identity_switch_with_message_protection_client_policy」を参照してください。

oracle/wss11_saml_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.1標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。WS-Securityバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、その資格証明をOracle Platform Security Servicesアイデンティティ・ストアに対するユーザーの検証に使用します。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_saml_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_saml_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_saml_token_with_message_protection_service_policy」を参照してください。

oracle/wss11_saml20_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.1標準に従ったインバウンドSOAPリクエストのSAMLベースの認証を行います。WS-Securityバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、その資格証明をOracle Platform Security Servicesアイデンティティ・ストアに対するユーザーの検証に使用します。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_saml20_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_saml20_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_saml20_token_with_message_protection_service_policy」を参照してください。

oracle/wss11_saml_or_username_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、クライアントがSAML、ユーザー名またはHTTPトークンを使用するかどうかに基づいて、次のいずれかの認証ポリシーをそれぞれ実行します。

- WS-Security 1.1標準に従ったインバウンドSOAPリクエストのSAMLベースの認証。

- WS-Security 1.1標準に従ったインバウンドSOAPリクエストのユーザー名トークン認証。

- WS-Security SOAPヘッダーの、確認方法がBearerのSAMLトークンに含まれる資格証明を使用する、SAMLベースの認証。トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。

- UsernameToken WS-Security SOAPヘッダーの資格証明を使用して、構成済のアイデンティティ・ストアに対してユーザーを認証する、ユーザー名トークン認証。トランスポート・プロトコルによりSSLメッセージ保護が提供されることを検証します。

- HTTPヘッダーから抽出した資格証明を使用して、構成済のアイデンティティ・ストアに対してユーザーを認証する、HTTP認証。トランスポート・プロトコルがHTTPSであることを検証します。

- HTTPヘッダー内のJWTトークンから抽出されたユーザー名を使用したJWTトークン認証。トランスポート・プロトコルがHTTPSであることを検証します。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できるアルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、次のアサーションがORグループとして含まれます。つまり、クライアントはどちらのタイプのポリシーでも実行できます。

- oracle/wss11_saml_token_with_message_protection_service_template。このアサーションの詳細は、「oracle/wss11_saml_token_with_message_protection_service_template」を参照してください。

- oracle/wss11_username_token_with_message_protection_service_template。このアサーションの詳細は、「oracle/wss11_username_token_with_message_protection_service_template」を参照してください。

- oracle/wss_saml_token_bearer_over_ssl_service_template。このアサーションの詳細は、「oracle/wss_saml_token_bearer_over_ssl_service_template」を参照してください。

- oracle/wss_username_token_over_ssl_service_template。このアサーションの詳細は、「oracle/wss_username_token_over_ssl_service_template」を参照してください。

- oracle/wss_http_token_over_ssl_service_template。このアサーションの詳細は、「oracle/wss_http_token_over_ssl_service_template」を参照してください。

- oracle/http_jwt_token_over_ssl_service_template。詳細は、「oracle/http_jwt_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、次の各項を参照してください。

- 「oracle/wss11_saml_token_with_message_protection_service_policy」

- 「oracle/wss11_username_token_with_message_protection_service_policy」

- 「oracle/wss_saml_token_bearer_over_ssl_service_policy」

- 「oracle/wss_username_token_over_ssl_service_policy」

- 「oracle/wss_http_token_over_ssl_service_policy」

- 「oracle/http_jwt_token_over_ssl_service_policy」

oracle/wss11_username_token_with_message_protection_client_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.1標準に従ったアウトバウンドSOAPリクエストの認証を行います。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。このポリシーは、SOAPベースのすべてのクライアントに添付できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

Webサービス・コンシューマは、ユーザー名とパスワード資格証明を挿入し、送信するSOAPメッセージに署名して暗号化します。Webサービス・プロバイダは、メッセージと署名の復号化および検証を行います。

リプレイ攻撃を防止するため、アサーションには、タイムスタンプおよびWebサービス・プロバイダによる検証を含めるオプションが用意されています。異なる強度の暗号を使用してメッセージを保護できます。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_username_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_username_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_username_token_with_message_protection_client_policy」を参照してください。

oracle/wss11_username_token_with_message_protection_service_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.1標準に従ったインバウンドSOAPリクエストの認証を行います。プレーン・テキストとダイジェスト・メカニズムの両方がサポートされています。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

Webサービス・コンシューマは、ユーザー名とパスワード資格証明を挿入し、送信するSOAPメッセージに署名して暗号化します。Webサービス・プロバイダは、メッセージと署名の復号化および検証を行います。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

リプレイ攻撃を防止するため、アサーションには、タイムスタンプおよびWebサービス・プロバイダによる検証を含めるオプションが用意されています。異なる強度の暗号を使用してメッセージを保護できます。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_username_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_username_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_username_token_with_message_protection_service_policy」を参照してください。

oracle/wss11_x509_token_with_message_protection_client_policy

このポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security 1.1標準に従ったアウトバウンドSOAPリクエストの証明書ベースの認証を行います。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_x509_token_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_x509_token_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_x509_token_with_message_protection_client_policy」を参照してください。

oracle/wss11_x509_token_with_message_protection_service_policy

このポリシーは、メッセージ・レベルの保護と、WS-Security 1.1標準に従ったインバウンドSOAPリクエストへの証明書ベースの認証を行います。

このポリシーでは、署名と暗号化には対称鍵テクノロジ、保証される署名にはWS-Securityの非対称鍵テクノロジのBasic 128スイートが使用されます。メッセージ保護に使用できる非対称アルゴリズムの詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

このポリシーには、oracle/wss11_x509_token_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_x509_token_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_x509_token_with_message_protection_service_policy」を参照してください。

WS-Trustポリシー

表B-5に、WS-Trustポリシーをまとめます。

表B-5 WS-Trustポリシー

クライアント・ポリシー

サービス・ポリシー

認証(トランスポート)

認証(SOAP)

メッセージ保護(トランスポート)

メッセージ保護(SOAP)

oracle/sts_trust_config_client_policy

oracle/sts_trust_config_service_policy

いいえ

いいえ

いいえ

いいえ

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

はい

いいえ

はい

いいえ

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy

いいえ

はい

いいえ

はい

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

いいえ

はい

いいえ

はい

oracle/sts_trust_config_service_policy

このポリシーは、トークン交換用のSTS呼出しに使用されるSTS構成情報を提供します。

このポリシーには、oracle/sts_trust_config_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/sts_trust_config_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/sts_trust_config_service_policy」を参照してください。

oracle/sts_trust_config_client_policy

このポリシーは、トークン交換用のSTS呼出しに使用されるSTS構成情報を提供します。

このポリシーには、oracle/sts_trust_config_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/sts_trust_config_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/sts_trust_config_client_policy」を参照してください。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy

このポリシーは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML Bearerアサーションを挿入します。メッセージは、SSLを使用して保護されます。

このポリシーには、oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_policy」を参照してください。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

このポリシーは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML Bearerアサーションを認証します。メッセージは、SSLを使用して保護されます。

このポリシーには、oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy」を参照してください。

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy

このポリシーは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML HOKアサーションを挿入します。メッセージは、STSによって提供される証明鍵の内容によって保護されます。

このポリシーには、oracle/wss11_sts_issued_saml_hok_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_sts_issued_saml_hok_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_sts_issued_saml_hok_with_message_protection_client_policy」を参照してください。

oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy

このポリシーは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML HOKアサーションを挿入します。メッセージは、STSによって提供される証明鍵の内容によって保護されます。

このポリシーには、oracle/wss11_sts_issued_saml_hok_with_message_protection_service_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_sts_issued_saml_hok_with_message_protection_service_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_sts_issued_saml_hok_with_message_protection_service_policy」を参照してください。

oracle/wss11_sts_issued_saml_with_message_protection_client_policy

このポリシーは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML送信者保証アサーションを挿入します。メッセージは、クライアントの秘密鍵を使用して保護されます。

このポリシーには、oracle/wss11_sts_issued_saml_with_message_protection_client_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/wss11_sts_issued_saml_with_message_protection_client_template」を参照してください。

ポリシーの構成の詳細は、「oracle/wss11_sts_issued_saml_with_message_protection_client_policy」を参照してください。

認可のみのポリシー

表B-6に、認可を実行するセキュリティ・ポリシーをまとめ、ポリシーがトランスポート・レイヤーまたはSOAPヘッダーで実行されるかどうかを示します。

注意:
認可ポリシーは、サブジェクトが作成されている任意の認証ポリシーの後に続けることができます。
permitallおよびdenyallポリシーの両方を同じWebサービスに添付することはできません。

表B-6 認可のみのポリシー

クライアント・ポリシー

認証(トランスポート)

認証(SOAP)

メッセージ保護(トランスポート)

メッセージ保護(SOAP)

oracle/binding_authorization_denyall_policy

いいえ

はい

いいえ

いいえ

oracle/binding_authorization_permitall_policy

いいえ

はい

いいえ

いいえ

oracle/binding_permission_authorization_policy

いいえ

はい

いいえ

いいえ

oracle/component_authorization_denyall_policy

いいえ

はい

いいえ

いいえ

oracle/component_authorization_permitall_policy

いいえ

はい

いいえ

いいえ

oracle/component_permission_authorization_policy

いいえ

はい

いいえ

いいえ

oracle/whitelist_authorization_policy

いいえ

はい

いいえ

いいえ

oracle/binding_authorization_denyall_policy

このポリシーは、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を行います。このポリシーは、ロールを持つすべてのユーザーを拒否します。サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SOAPベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/binding_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/binding_authorization_template」を参照してください。

ポリシーの構成の詳細は、「oracle/binding_authorization_denyall_policy」を参照してください。

oracle/binding_authorization_permitall_policy

このポリシーは、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を行います。このポリシーは、ロールを持つすべてのユーザーを許可します。サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SOAPベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/binding_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/binding_authorization_template」を参照してください。

ポリシーの構成の詳細は、「oracle/binding_authorization_permitall_policy」を参照してください。

oracle/binding_permission_authorization_policy

このポリシーは、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単な権限ベースの認可を行います。このポリシーは、サブジェクトに操作を実行する権限があることを保証します。このポリシーは、サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SOAPベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/binding_permission_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/component_permission_authorization_template」を参照してください。

ポリシーの構成の詳細は、「oracle/binding_permission_authorization_policy」を参照してください。

oracle/component_authorization_denyall_policy

このポリシーは、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を行います。このポリシーは、ロールを持つすべてのユーザーを拒否します。サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SCAベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/component_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/component_authorization_template」を参照してください。

ポリシーの構成の詳細は、「oracle/component_authorization_denyall_policy」を参照してください。

oracle/component_authorization_permitall_policy

このポリシーは、認証されたサブジェクトに基づき、簡単なロールベースの認可ポリシーを提供します。このポリシーは、ロールを持つすべてのユーザーを許可します。サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SCAベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/component_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/component_authorization_template」を参照してください。

ポリシーの構成の詳細は、「oracle/binding_authorization_permitall_policy」を参照してください。

oracle/component_permission_authorization_policy

このポリシーは、認証されたサブジェクトに基づき、権限ベースの認可ポリシーを提供します。このポリシーは、サブジェクトに操作を実行する権限があることを保証します。このポリシーは、サブジェクトが作成されている認証ポリシーの後に続ける必要があり、SCAベースの任意のエンドポイントに添付できます。

このポリシーには、oracle/component_permission_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/component_permission_authorization_template」を参照してください。

ポリシーの構成の詳細は、「oracle/component_permission_authorization_policy」を参照してください。

oracle/whitelist_authorization_policy

このポリシーは、ロールベースの認可ポリシーの特殊なケースです。このポリシーは、認証されたトークンがSAML送信者保証の場合、ユーザーが特定のロール(ユーザーを信頼できるエンティティとして確立するtrustedEnterpriseRole)に属している場合、またはリクエストがプライベート・ネットワークから到着する場合、リクエストを受け入れます。このポリシーは、SOAPベースのすべてのエンドポイントに添付できます。

このポリシーには、oracle/binding_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/binding_authorization_template」を参照してください。

このポリシーの構成の詳細は、「oracle/whitelist_authorization_policy」を参照してください。

認可ポリシー: Oracle Entitlements Server

表B-7は、事前定義されたOracle WSM Oracle Entitlements Server (OES)セキュリティ・ポリシーの概要を示しています。

表B-7 Oracle Entitlements Serverポリシー

ポリシー名

説明

oracle/binding_oes_authorization_policy

Oracle Entitlements Serverで定義されたポリシーに基づき、ユーザー認可を設定します。

oracle/binding_oes_masking_policy

Oracle Entitlements Serverで定義されたポリシーに基づき、レスポンス・マスキングを実行します。

oracle/component_oes_authorization_policy

Oracle Entitlements Serverで定義されたポリシーに基づき、ユーザー認可を設定します。

oracle/binding_oes_authorization_policy

このポリシーは、Oracle Entitlements Server (OES)で定義されたポリシーに基づき、認可を設定します。認可は、属性、現在の認証されたサブジェクト、およびクライアントが起動したWebサービスのアクションに基づいています。このポリシーは、Webサービスの任意の操作におけるファイングレイン認可に使用されます。

このポリシーは、サブジェクトが確立される認証ポリシーに従う必要があります。このポリシーは、任意のSOAPベースまたはRESTベースのエンドポイントに割り当てることができます。

このポリシーには、oracle/binding_oes_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/binding_oes_authorization_template」を参照してください。

これらのポリシーの構成の詳細は、「Oracle Entitlements Serverを使用したファイングレイン認可の構成」を参照してください。

oracle/binding_oes_masking_policy

このポリシーは、OESで定義されているポリシーに基づいてレスポンスのマスキングを実行します。マスキングは、属性、現在の認証されたサブジェクト、およびクライアントが起動したWebサービスのアクションに基づいています。このテンプレートは、Webサービスの任意の操作におけるファイングレイン・マスキングに使用されます。

このポリシーは、サブジェクトが確立される認証ポリシーに従う必要があります。このポリシーは任意のSOAPエンドポイントにアタッチできます。

このポリシーには、oracle/binding_oes_masking_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/binding_oes_masking_template」を参照してください。

これらのポリシーの構成の詳細は、「Oracle Entitlements Serverを使用したファイングレイン認可の構成」を参照してください。

oracle/component_oes_authorization_policy

このポリシーは、Oracle Entitlements Server (OES)で定義されたポリシーに基づき、ユーザーの認可を実行します。

このポリシーには、oracle/component_oes_authorization_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/component_oes_authorization_template」を参照してください。

これらのポリシーの構成の詳細は、「Oracle Entitlements Serverを使用したファイングレイン認可の構成」を参照してください。

WS-Addressingポリシー

この項では、事前定義済のWS-Addressingポリシーについて説明します。

注意:
WebLogic Webサービスでは、WS-Addressingポリシーはサポートされていません。

oracle/wsaddr_policy

このポリシーを使用すると、プラットフォームにより、W3C 2005の最終版のWS-Addressingポリシー標準に準拠したWS-Addressingヘッダーがインバウンド・メッセージに存在するかどうかが確認されます。また、プラットフォームにより、WS-AddressingヘッダーがアウトバウンドSOAPメッセージに組み込まれます。ポリシーの構成の詳細は、「oracle/wsaddr_policy」を参照してください。

MTOMアタッチメント・ポリシー

この項では、事前定義済のMTOMポリシーについて説明します。

注意:
WebLogic Webサービスでは、MTOMポリシーはサポートされていません。

oracle/wsmtom_policy

Message Transmission Optimization Mechanism(MTOM)ポリシーは、MTOM形式ではないインバウンド・メッセージを拒否し、アウトバウンド・メッセージがMTOM形式であるかどうかを検証します。MTOMはhttp://www.w3.org/TR/2005/REC-soap12-mtom-20050125の仕様書と、SOAP 1.2およびSOAP1.1バインディングに関してはhttp://www.w3.org/Submission/2006/SUBM-soap11mtom10-20060405を参照します。ポリシーの構成の詳細は、「oracle/wsmtom_policy」を参照してください。

信頼できるメッセージング・ポリシー

この項では、事前定義済の信頼できるメッセージング・ポリシーについて説明します。

注意:
WebLogic Webサービスでは、信頼できるメッセージング・ポリシーはサポートされていません。

oracle/wsrm10_policy

このポリシーは、Web Servicesの信頼できるメッセージング・プロトコルのバージョン1.0のサポートを提供します。このポリシーは、SOAPベースのすべてのクライアントまたはエンドポイントに添付できます。この機能を完全にサポートするには、追加のプログラミングが必要です。ポリシーの構成の詳細は、「oracle/wsrm10_policy」を参照してください。

oracle/wsrm11_policy

このポリシーは、Web Servicesの信頼できるメッセージング・プロトコルのバージョン1.1のサポートを提供します。このポリシーは、SOAPベースのすべてのクライアントまたはエンドポイントに添付できます。この機能を完全にサポートするには、追加のプログラミングが必要です。ポリシーの構成の詳細は、「oracle/wsrm11_policy」を参照してください。

管理ポリシー

この項では、事前定義済の管理ポリシーについて説明します。

注意:
WebLogic Webサービスでは、管理ポリシーはサポートされていません。

oracle/log_policy

このポリシーを使用すると、メッセージ・ログにリクエスト、レスポンスおよびフォルト・メッセージが送信されます。ポリシーの構成の詳細は、「oracle/log_policy」を参照してください。

このポリシーには、oracle/security_log_templateポリシー・アサーションが含まれています。このアサーションの詳細は、「oracle/security_log_template」を参照してください。

動作無効ポリシー

この項では、事前定義済の動作無効ポリシーについて説明します。このポリシーを使用すると、ポリシー・セット内のグローバルに添付されたポリシーを効率よく無効化できます。このポリシーの使用の詳細は、「グローバルにアタッチされたポリシーの無効化」を参照してください。このポリシーには、構成プロパティはありません。

これらのポリシーは、いずれも同じ動作無効アサーションを使用します。

注意:
動作無効ポリシーは、WebLogic Webではサポート対象外となっています。

oracle/no_authentication_service_policy

このポリシーは、サービス・エンドポイントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付された認証ポリシーを上位スコープで効率よく無効化します。グローバルに添付されたポリシーに、認証アサーションに加えて他のアサーションが含まれる場合、そのアサーションも無効化されます。

oracle/no_authentication_client_policy

このポリシーは、クライアント・エンドポイントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付された認証ポリシーを上位スコープで効率よく無効化します。グローバルに添付されたポリシーに、認証アサーションに加えて他のアサーションが含まれる場合、そのアサーションも無効化されます。

oracle/no_messageprotection_service_policy

このポリシーは、サービス・エンドポイントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付されたメッセージ保護ポリシーを上位スコープで効率よく無効化します。グローバルに添付されたポリシーに、メッセージ保護アサーションに加えて他のアサーションが含まれる場合、そのアサーションも無効化されます。

oracle/no_messageprotection_client_policy

このポリシーは、クライアント・エンドポイントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付されたメッセージ保護ポリシーを上位スコープで効率よく無効化します。グローバルに添付されたポリシーに、メッセージ保護アサーションに加えて他のアサーションが含まれる場合、そのアサーションも無効化されます。

oracle/no_authorization_service_policy

このポリシーは、サービス・エンドポイントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付された認可ポリシーを上位スコープで効率よく無効化します。グローバルに添付されたポリシーに、認可アサーションに加えて他のアサーションが含まれる場合、そのアサーションも無効になります。

oracle/no_authorization_component_policy

このポリシーは、SOAコンポーネントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付された認可ポリシーを上位スコープで効率よく無効化します。グローバルに添付されたポリシーに、認可アサーションに加えて他のアサーションが含まれる場合、そのアサーションも無効になります。

oracle/no_addressing_policy

このポリシーは、エンドポイントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付されたWS Addressingポリシーを上位スコープで効率よく無効化します。

oracle/no_mtom_policy

このポリシーは、エンドポイントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付されたWS MTOMポリシーを上位スコープで効率よく無効化します。

oracle/no_wsrm_policy

このポリシーは、エンドポイントに直接添付されている場合、または下位スコープでグローバルに添付されている場合、グローバルに添付されたWeb Services信頼できるメッセージング・ポリシーを上位スコープで効率よく無効化します。

C 事前定義済アサーション・テンプレート

この付録では、ポリシーの作成に使用することや、新規ポリシー作成のためにコピーすることが可能な事前定義済アサーション・テンプレートについて説明します。

注意:
有効な既知のテンプレート・セットをいつでも使用できるように、事前定義済アサーション・テンプレートは編集しないことをお薦めします。ただし、事前定義済アサーション・テンプレートから新規のアサーション・テンプレートを作成したり、ポリシーに添付した後にアサーションの属性を構成できます。アサーション・テンプレートの管理およびポリシーへの追加の詳細は、「ポリシー・アサーション・テンプレートの管理」を参照してください。

この章の内容は次のとおりです。

- セキュリティ・アサーション・テンプレート

- 管理アサーション・テンプレート

- 動作無効アサーション・テンプレート

セキュリティ・アサーション・テンプレート

次の項では、セキュリティ・アサーション・テンプレートをより詳細に説明します。

- 認証のみのアサーション・テンプレート

- メッセージ保護のみのアサーション・テンプレート

- メッセージ保護および認証のアサーション・テンプレート

- WS-Trustアサーション・テンプレート

- 認可アサーション・テンプレート

- Oracle Entitlements Server (OES)統合用のテンプレート

- サポートされているアルゴリズム・スイート

- リクエスト、レスポンスおよびフォルト・メッセージへの署名と暗号化の設定

次のリンク(アルファベット順)を使用して、特定のアサーション・テンプレートの説明に移動できます。

- oracle/binding_authorization_template

- oracle/binding_permission_authorization_template

- oracle/component_authorization_template

- oracle/component_permission_authorization_template

- oracle/http_oam_token_service_template

- oracle/http_saml20_token_bearer_client_templateまたはoracle/http_saml20_token_bearer_service_template

- oracle/http_spnego_token_client_templateまたはoracle/http_spnego_token_service_template

- oracle/http_jwt_token_client_templateまたはoracle/http_jwt_token_service_template

- oracle/http_jwt_token_over_ssl_client_templateまたはoracle/http_jwt_token_over_ssl_service_template

- oracle/http_oauth2_token_client_template

- oracle/http_oauth2_token_over_ssl_client_template

- oracle/oauth2_config_client_template

- oracle/security_log_template

- oracle/sts_trust_config_client_template

- oracle/wss_http_token_client_templateまたはoracle/wss_http_token_service_template

- oracle/wss_http_token_over_ssl_client_templateまたはoracle/wss_http_token_over_ssl_service_template

- oracle/wss_saml_token_bearer_over_ssl_client_templateまたはoracle/wss_saml_token_bearer_over_ssl_service_template

- oracle/wss_saml20_token_bearer_over_ssl_client_templateまたはoracle/wss_saml20_token_bearer_over_ssl_service_template

- oracle/wss_saml_token_over_ssl_client_templateまたはoracle/wss_saml_token_over_ssl_service_template

- oracle/wss_saml20_token_over_ssl_client_templateまたはoracle/wss_saml20_token_over_ssl_service_template

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_templateまたはoracle/wss_sts_issued_saml_bearer_token_over_ssl_service_template

- oracle/wss_username_token_over_ssl_client_templateまたはoracle/wss_username_token_over_ssl_service_template

- oracle/wss_username_token_client_templateまたはoracle/wss_username_token_service_template

- oracle/wss_username_token_over_ssl_client_templateまたはoracle/wss_username_token_over_ssl_service_template

- oracle/wss10_message_protection_client_templateまたはoracle/wss10_message_protection_service_template

- oracle/wss10_saml_token_client_templateまたはoracle/wss10_saml_token_service_template

- oracle/wss10_saml20_token_client_templateまたはoracle/wss10_saml20_token_service_template

- oracle/wss10_saml_token_with_message_protection_client_templateまたはoracle/wss10_saml_token_with_message_protection_service_template

- oracle/wss10_saml20_token_with_message_protection_client_templateまたはoracle/wss10_saml20_token_with_message_protection_service_template

- oracle/wss10_username_token_with_message_protection_client_templateまたはoracle/wss10_username_token_with_message_protection_service_template

- oracle/wss10_x509_token_with_message_protection_client_templateまたはoracle/wss10_x509_token_with_message_protection_service_template

- oracle/wss11_kerberos_token_client_templateまたはoracle/wss11_kerberos_token_service_template

- oracle/wss11_kerberos_token_with_message_protection_client_templateまたはoracle/wss11_kerberos_token_with_message_protection_service_template

- oracle/wss11_saml_token_with_message_protection_client_templateまたはoracle/wss11_saml_token_with_message_protection_service_template

- oracle/wss11_saml20_token_with_message_protection_client_templateまたはoracle/wss11_saml20_token_with_message_protection_service_template

- oracle/wss11_sts_issued_saml_hok_with_message_protection_client_templateまたはoracle/wss11_sts_issued_saml_hok_with_message_protection_service_template

- oracle/wss11_sts_issued_saml_with_message_protection_client_template

- oracle/wss11_username_token_with_message_protection_client_templateまたはoracle/wss11_username_token_with_message_protection_service_template

- oracle/wss11_x509_token_with_message_protection_client_templateまたはoracle/wss11_x509_token_with_message_protection_service_template

認証のみのアサーション・テンプレート

表C-1に、認証のみを実行するアサーション・テンプレートをまとめ、トークンがトランスポート・レイヤーまたはSOAPヘッダーに組み込まれるかどうかを示します。

表C-1 認証のみのアサーション・テンプレート

クライアント・テンプレート

サービス・テンプレート

認証(トランスポート)

認証(SOAP)

認証(REST)

メッセージ保護(トランスポート)

メッセージ保護(SOAP)

oracle/http_jwt_token_client_template

oracle/http_jwt_token_service_template

はい

いいえ

はい

いいえ

いいえ

N/A

oracle/http_oam_token_service_template

いいえ

いいえ

はい

いいえ

いいえ

oracle/http_oauth2_token_client_template

N/A

いいえ

いいえ

いいえ

いいえ

いいえ

oracle/oauth2_config_client_template

N/A

いいえ

いいえ

いいえ

いいえ

いいえ

oracle/http_saml20_token_bearer_client_template

oracle/http_saml20_token_bearer_service_template

いいえ

いいえ

はい

はい

いいえ

oracle/http_spnego_token_client_template

oracle/http_spnego_token_service_template

いいえ

いいえ

はい

はい

いいえ

oracle/wss_http_token_client_template

oracle/wss_http_token_service_template

はい

いいえ

いいえ

いいえ

いいえ

oracle/wss_username_token_client_template

oracle/wss_username_token_service_template

いいえ

はい

いいえ

いいえ

いいえ

oracle/wss10_saml_token_client_template

oracle/wss10_saml_token_service_template

いいえ

はい

いいえ

いいえ

いいえ

oracle/wss10_saml20_token_client_template

oracle/wss10_saml20_token_service_template

いいえ

はい

いいえ

いいえ

いいえ

oracle/wss11_kerberos_token_client_template

oracle/wss11_kerberos_token_service_template

いいえ

はい

いいえ

いいえ

いいえ

oracle/http_jwt_token_client_template

http_jwt_token_client_templateアサーション・テンプレートは、HTTPヘッダーにJWTトークンを含めます。JWTトークンは自動的に作成されます。発行者名とサブジェクト名は、プログラムによって、またはポリシーを介して宣言的に提供されます。このテンプレートを使用して作成したポリシーは、任意のHTTPベース・クライアントに添付できます。構成オーバーライド・プロパティを使用して、オーディエンス制限条件を指定できます。

設定

表C-2は、http_jwt_token_client_templateアサーション・テンプレートの設定を示しています。

注意:
このテンプレートは、http_jwt_token_identity_switch_client_policyのベースにもなっています。このポリシーは、動的なアイデンティティ切替えにより、認証済サブジェクトに基づくアイデンティティではなく、別のアイデンティティを伝播できます。ただし、アサーション・コンテンツのsubject.precedence構成オーバーライド・プロパティはデフォルトでfalseに設定されています。

表C-2 http_jwt_token_client_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

<orasp:auth-header
orasp:mechanism="jwt"/>

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

認証ヘッダー - アルゴリズム・スイート

JWTトークンの署名に使用されるアルゴリズム・スイート。

<orasp:auth-header
orasp:algorithm-suite="Basic128Sha256Rsa15"/"

注意: これが唯一サポートされている値です。このデフォルト値以外の値が指定された場合、ポリシーが失敗します。

認証ヘッダー - 署名済

JWTトークンを署名するかどうかを指定するフラグ。JWTポリシーの場合、有効な値はtrueのみです。

<orasp:auth-header
orasp:is-signed="true"/>

認証ヘッダー - 暗号化済

JWTトークンを暗号化するかどうかを指定するフラグ。

<orasp:auth-header
orasp:is-encrypted="false"/>

構成

表C-3は、http_jwt_token_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。

表C-3 http_jwt_token_client_templateの構成プロパティ

名前

デフォルト値

audience.uri

オーディエンス制限。次の条件がサポートされています。

- このプロパティを設定しない場合、サービスURLがオーディエンスURIとして使用されます。

- このプロパティをNONE (大/小文字の区別なし)に設定した場合、オーディエンスURIはnullに設定されます。

- このプロパティをNONE以外の値に設定した場合、オーディエンスURIはこの値に設定されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="audience.uri" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>

csf-key

Oracle Platform Security Services(OPSS)アイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。たとえば、次のようにします。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

issuer.name

JWT発行者の名前。デフォルト値はwww.oracle.comです。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="keystore.sig.csf.key" orawsp:type="string"/>

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="propagate.identity.context" orawsp:type="string"><orawsp:Value/>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>

subject.precedence

JWTトークンの作成に使用されるサブジェクトを取得する場所を指定するプロパティ。

subject.precedenceをtrueに設定した場合、JWTトークンを作成するためのユーザー名は認証済サブジェクトから取得されます。subject.precedenceをfalseに設定した場合、JWTトークンを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>

注意: http_jwt_token_bearer_identity_switch_client_policyを構成する場合、動的なアイデンティティ切替えのsubject.precedence値はデフォルトでfalseに設定されています。

user.attributes

JWTトークンに含める認証済ユーザーのユーザー属性のリスト。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をJWTトークンに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。JWTクレームの作成には、有効な属性の名前および値がすべて使用されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.attributes" orawsp:type="string"/>

user.roles.include

JWTトークンに含めるユーザー・ロール。trueに設定した場合、認証済ユーザー・ロールがプライベート・クレームとしてJWTトークンに含められます。デフォルトはfalseです。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>

user.tenant.name

Oracle Cloud用に予約済。

oracle/http_jwt_token_service_template

このoracle/http_jwt_token_service_templateは、HTTPヘッダー内のJWTトークンに指定されている資格証明を使用してユーザーを認証します。

設定

http_jwt_token_service_templateアサーション・テンプレートの設定は、クライアント・バージョンのアサーション・テンプレートと同じです。設定の詳細は、表C-2を参照してください。

構成

表C-4は、http_jwt_token_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。

表C-4 http_jwt_token_service_templateの構成プロパティ

名前

デフォルト値

trusted.issuers

ドメイン・レベルで定義された信頼できる発行者をオーバーライドする、アプリケーションの信頼できる発行者のカンマ区切りリスト。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.trusted.issuers" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。たとえば、次のようにします。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="keystore.sig.csf.key" orawsp:type="string"/>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="propagate.identity.context" orawsp:type="string"><orawsp:Value/>

oracle/http_oam_token_service_template

http_oam_token_service_templateアサーション・テンプレートは、OAMエージェントがユーザーを認証し、アイデンティティを確立したことを検証します。このポリシーは、HTTPベースのすべてのエンドポイントに適用できます。

設定

表C-5は、http_oam_token_service_templateアサーション・テンプレートの設定を示しています。

表C-5 http_oam_token_service_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

<orasp:auth-header
orasp:mechanism="oam"/>

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

構成

表C-6は、http_oam_token_service_templateアサーション・テンプレートのデフォルト構成プロパティを示しています。

表C-6 http_oam_token_service_templateの構成プロパティ

名前

説明

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority"
orawsp:type="string"/>

oracle/http_oauth2_token_client_template

http_oauth2_token_client_templateアサーション・テンプレートは、OAuth2トークンの認証のためのHTTPバインディング・レベル・テンプレートです。

設定

表C-7は、http_oauth2_token_client_templateアサーション・テンプレートの設定を示しています。

表C-7 http_oauth2_token_client_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- oauth2: クライアントはOAuth2フレームワークを使用して認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

<orasp:auth-header
orasp:mechanism="oauth2"/>

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

認証ヘッダー - 署名済

トークンに署名するかどうかを指定するフラグ。

<orasp:auth-header
orasp:is-signed="false"/>

認証ヘッダー - 暗号化済

トークンを暗号化するかどうかを指定するフラグ。

<orasp:auth-header
orasp:is-encrypted="false"/>

構成

表C-8は、http_oauth2_token_client_templateアサーション・テンプレートのデフォルト構成プロパティを示しています。

表C-8 http_oauth2_token_client_templateの構成プロパティ

名前

説明

audience.uri

オーディエンス制限。次の条件がサポートされています。

- このプロパティを設定しない場合、サービスURLがオーディエンスURIとして使用されます。

- このプロパティをNONE (大/小文字の区別なし)に設定した場合、オーディエンスURIはnullに設定されます。

- このプロパティをNONE以外の値に設定した場合、オーディエンスURIはこの値に設定されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="audience.uri"
orawsp:type="string">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>

authz.code

3-legged OAuth2ユースケースの認可コードを渡すためのオプションのプロパティ。(このリリースではサポートされていません。)

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="authz.code"
orawsp:type="string">
<orawsp:Value/>

csf-key

Oracle Platform Security Services(OPSS)アイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

<orawsp:Property orawsp:type="string"
orawsp:contentType="optional" orawsp:name="csf-key">
<orawsp:Value/>

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。たとえば、次のようにします。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

federated.client.token

オプションのプロパティです。デフォルトでは、oauth2.client.csf.keyおよびkeystore.sig.csf.keyプロパティを使用してクライアントのJWTトークンが生成されます。

falseに設定すると、oauth2.client.csf.keyを使用してOAuthサーバーへのクライアント・リクエストで送信する認可ヘッダーが生成されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="federated.client.token"
orawsp:type="boolean">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>

include.certificate

trueの場合、署名証明書と信頼できる証明書チェーン(CAにより発行された証明書の場合)をJWTトークン要求に含めます。JWTトークンのサイズが大きくなりますが、サービス側キーストアに証明書および証明書チェーンをインポートする必要はありません。

falseの場合、証明書の拇印および別名のみをJWTトークンに含めます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="include.certificate"
orawsp:type="string">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>
</orawsp:Property>

issuer.name

ローカルに生成されるJWTトークン(iss:claim)で使用される発行者名を指定するオプションのプロパティ。デフォルトは、www.oracle.comです。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="issuer.name"
orawsp:type="string">
<orawsp:Value/>
<orawsp:DefaultValue>www.oracle.com</orawsp:DefaultValue>

keystore.sig.csf.key

ローカルに作成されるJWTトークンの署名のためのOracle WSMキーストアからのテナント・キーを指定するオプションのプロパティ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="keystore.sig.csf.key"
orawsp:type="string">
<orawsp:Value/>

oauth2.client.csf.key

クライアントのユーザー名とパスワードの取得のために使用するキーを指定する必須プロパティ。

oauth2.client.csf.keyの値は、クライアント・プロファイルで必要とされるクライアントIDおよびシークレットと一致する必要があります(『Oracle Fusion Middleware Oracle Access Management管理者ガイド』のOAuthクライアント・プロファイル構成の理解に関する項を参照)。

federated.client.tokenをfalseに設定した場合は、oauth2.client.csf.keyを使用してOAuthサーバーへのクライアント・リクエストで送信される認可ヘッダーが生成されます。

oauth2.client.csf.keyをオーバーライドした場合は、その値が使用されます。そうでない場合は、oauth2_config_client_policyのoauth2.client.csf.keyの値が使用されます。

デフォルト設定:

<orawsp:Property orawsp:type="string"
orawsp:contentType="required"
orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>NONE</orawsp:DefaultValue>
</orawsp:Property>

oracle.oauth2.service

トークン発行者のデフォルト動作およびスコープの決定方法を指定するオプションのプロパティ。trueの場合は、クライアントIDがOAuth2サーバーのユーザーおよびクライアントJWTトークンの発行者として使用されます。この場合、issuer.nameの値は無視されます。

falseの場合、発行者はwww.oracle.comのデフォルト値を持つissuer.nameによって決定します。

propagate.identity.context

アイデンティティ・コンテキスト情報をJWTトークンで要求として伝播するかどうかを指定するオプションのプロパティ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="propagate.identity.context"
orawsp:type="string">
<orawsp:Value/>

redirect.uri

アクセス権が付与または拒否された後、ユーザー・エージェントをクライアントにリダイレクトするためにOAuthサーバーが使用するリダイレクトURIを指定するオプションのプロパティ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="redirect.uri"
orawsp:type="string">
<orawsp:Value/>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority"
orawsp:type="string"/>

scope

OAuth2リクエストのスコープ(現状のまま)を指定するオプションのプロパティ。存在する場合、OAuth2トークン・リクエストにスコープと値を含めます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="scope" orawsp:type="string">
<orawsp:Value/>

スコープは、oracle.oauth2.serviceプロパティの値に依存します。

- oracle.oauth2.serviceがfalse (デフォルト)の場合は、scopeプロパティによってスコープが決まります。

- oracle.oauth2.serviceがtrueで、scopeの値がない場合(デフォルト)、プロトコル、ホストおよびポート(使用可能な場合)をサービスURLから取得して使用します。

subject.precedence

JWTトークンの作成に使用されるサブジェクトを取得する場所を指定するプロパティ。

表10-2「ユーザー資格証明、サブジェクトおよびアクセス・トークン」に記載されたとおり、次のようになります。

- subject.precedenceをtrueに設定した場合、JWTトークンを作成するためのユーザー名は認証済サブジェクトから取得されます。

- subject.precedenceをfalseに設定した場合、JWTトークンを作成するためのユーザー名はcsf-keyプロパティからのみ取得されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>

time.in.millis

標準のNumericDate (JWTトークン内のexp (Expiry)クレームおよびiat (Issued AT)クレームの値に対する単位としての秒/Epoch後)をサポートします。

trueの場合は、ミリ秒/Epoch後が使用されます。それ以外の場合は、秒/Epoch後が使用されます。

デフォルト設定:

<orawsp:Property orawsp:type="boolean"
orawsp:contentType="optional"
orawsp:name="time.in.millis">
<orawsp:Value/>
<orawsp:DefaultValue>true</orawsp:DefaultValue>
</orawsp:Property>

user.attributes

ユーザー属性を要求としてJWTトークンに挿入するかどうかを指定するオプションのプロパティ。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をJWTトークンに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。JWTクレームの作成には、有効な属性の名前および値がすべて使用されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.attributes"
orawsp:type="string">
<orawsp:Value/>

user.roles.include

サブジェクトからのユーザー・ロールを要求としてJWTトークンに含めるかどうかを指定するオプションのプロパティ。trueに設定した場合、認証済ユーザー・ロールがプライベート・クレームとしてJWTトークンに含められます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include"
orawsp:type="boolean">
<orawsp:Value/>
<orawsp:DefaultValue>false</orawsp:DefaultValue>

user.tenant.name

Oracle Cloud用に予約済。

oracle/oauth2_config_client_template

oauth2_config_client_templateアサーション・テンプレートは、アクセス・トークンを取得するためにOAuth2サーバーを呼び出すときに使用するOAuth2情報を提供します。

設定

表C-9は、oauth2_config_client_templateアサーション・テンプレートの設定を示しています。

表C-9 oauth2_config_client_templateの設定

名前

説明

デフォルト値

token-uri

OAuth2サーバーのトークン・エンドポイントを指定する必須プロパティ。

orasp:token-uri="http://host:port/tokens"

構成

表C-10は、oauth2_config_client_templateアサーション・テンプレートのデフォルトの構成プロパティを示しています。

表C-10 oauth2_config_client_templateの構成プロパティ

名前

説明

oauth2.client.csf.key

クライアントのユーザー名とパスワードを取得するために使用するキーを指定する必須プロパティ。

oauth2.client.csf.keyの値は、クライアント・プロファイルで必要とされるクライアントIDおよびシークレットと一致する必要があります(『Oracle Fusion Middleware Oracle Access Management管理者ガイド』のOAuthクライアント・プロファイル構成の理解に関する項を参照)。

デフォルト設定:

<orawsp:Property orawsp:type="string"
orawsp:contentType="required"\
orawsp:name="oauth2.client.csf.key">
<orawsp:Value/>
<orawsp:DefaultValue>basic.client.credentials</orawsp:DefaultValue>
</orawsp:Property>

role

SOAPロール。

デフォルト設定:

<orawsp:Property orawsp:contentType="constant"
orawsp:name="role" orawsp:type="string">
<orawsp:DefaultValue>
ultimateReceiver
</orawsp:DefaultValue>
</orawsp:Property>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>

token.uri

トークンURIの値をオーバーライドするオプションのプロパティ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional" orawsp:name="token.uri" orawsp:type="string"><orawsp:Value/><orawsp:DefaultValue>http://host:port/tokens
</orawsp:DefaultValue></orawsp:Property>

oracle/http_saml20_token_bearer_client_template

http_saml20_token_bearer_client templateアサーション・テンプレートは、アウトバウンドSOAPリクエスト・メッセージにSAML 2,0トークンを含めます。確認方法がBearerのSAMLトークンが自動的に作成されます。

設定

表C-11は、http_saml20_token_bearer_client_templateアサーション・テンプレートの設定を示しています。

表C-11 http_saml20_token_bearer_client_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

<orasp:auth-header
orasp:mechanism="saml20-bearer"/>

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

構成

表C-12は、http_saml20_token_bearer_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。

表C-12 http_saml20_token_bearer_client_templateの構成プロパティ

名前

デフォルト値

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.attributes" orawsp:type="string"/>

saml.issuer.name

発行者URI。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。たとえば、次のようにします。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するユーザー名はサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.audience.uri" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。このキーは、saml.envelope.signature.requiredフラグを使用して指定されるエンベロープ署名の生成時に使用されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="keystore.sig.csf.key" orawsp:type="string"/>

saml.envelope.signature.required

Bearerトークンがドメインの署名鍵を使用して署名されるかどうかを指定するフラグ。ドメインの署名鍵は、keystore.sig.csf.keyを使用して構成されるプライベートの署名鍵でオーバーライドできます。

Bearerトークンを未署名にするには、(クライアントおよびサービス・ポリシーの両方で)このフラグをfalseに設定します。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.enveloped.signature.required"
orawsp:type="boolean">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="propagate.identity.context" orawsp:type="string"><orawsp:Value/>

oracle/http_saml20_token_bearer_service_template

http_saml20_token_bearer_service_templateアサーション・テンプレートは、WS-Security SOAPヘッダー内の確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

設定

http_saml20_token_bearer_service_templateアサーション・テンプレートの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-11を参照してください。

構成

表C-13は、http_saml20_token_bearer_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。

表C-13 http_saml20_token_bearer_service_templateの構成プロパティ

名前

デフォルト値

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.trusted.issuers" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>

saml.envelope.signature.required

Bearerトークンがドメインの署名鍵を使用して署名されるかどうかを指定するフラグ。ドメインの署名鍵は、keystore.sig.csf.keyを使用して構成されるプライベートの署名鍵でオーバーライドできます。

Bearerトークンを未署名にするには、(クライアントおよびサービス・ポリシーの両方で)このフラグをfalseに設定します。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.enveloped.signature.required"
orawsp:type="boolean">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="propagate.identity.context" orawsp:type="string"><orawsp:Value/>

oracle/http_spnego_token_client_template

http_spnego_token_client_templateアサーション・テンプレートは、KerberosトークンとSimple and Protected GSSAPI Negotiation Mechanism (SPNEGO)プロトコルを使用した認証を提供します。

設定

表C-14は、http_spnego_token_client_templateアサーション・テンプレートの設定を示しています。

表C-14 http_spnego_token_client_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

<orasp:auth-header
orasp:mechanism="spnego"/>

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

構成

表C-15は、http_spnego_token_client_templateアサーション・テンプレートのデフォルト構成プロパティを示しています。

表C-15 http_spnego_token_client_templateの構成プロパティ

名前

デフォルト値

service.principal.name

サービスを識別するKerberosプリンシパルの名前。

デフォルト設定:

<orawsp:Property orawsp:name="service.principal.name"
orawsp:type="string">
<orawsp:Value>HOST/localhost@EXAMPLE.COM</orawsp:Value>
</orawsp:Property>

keytab.location

クライアントのキータブ・ファイルの場所。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="keytab.location" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>

caller.principal.name

ktpassコマンドを使用して生成されたクライアントのプリンシパル名で、kerberosトークンの生成先のユーザー名にマップされます。<username>@<REALM NAME>の形式を使用します。

注意: keytab.locationとcaller.principal.nameは、Java EEアプリケーションのクライアント・アイデンティティの伝搬で必要です。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="caller.principal.name"
orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>

role

SOAPロール。

デフォルト設定:

<orawsp:Property orawsp:contentType="constant"
orawsp:name="role" orawsp:type="string">
<orawsp:DefaultValue>
ultimateReceiver
</orawsp:DefaultValue>
</orawsp:Property>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>

oracle/http_spnego_token_service_template

このhttp_spnego_token_service_templateアサーション・テンプレートは、KerberosトークンとSPNEGOプロトコルを使用した認証を提供します。

設定

http_spnego_token_service_templateアサーション・テンプレートの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-14を参照してください。

構成

表C-16は、http_spnego_token_service_templateアサーション・テンプレートのデフォルト構成プロパティを示しています。

表C-16 http_spnego_token_service_templateの構成プロパティ

名前

デフォルト値

role

SOAPロール。

デフォルト設定:

<orawsp:Property orawsp:contentType="constant"
orawsp:name="role" orawsp:type="string">
<orawsp:DefaultValue>
ultimateReceiver
</orawsp:DefaultValue>
</orawsp:Property>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority"
orawsp:type="string"/>

oracle/wss_http_token_client_template

wss_http_token_client_templateアサーション・テンプレートは、HTTPヘッダー内にユーザー名およびパスワード資格証明を含めます。一方向認証または双方向認証が必要かどうかを制御できます。

設定

表C-17は、wss_http_token_client_templateアサーション・テンプレートの設定を示しています。

表C-17 wss_http_token_client_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

basic

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

Enabled

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

Disabled

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Disabled

構成

表C-18は、wss_http_token_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-18 wss_http_token_client_templateの構成

名前

説明

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: 未設定

- デフォルト: basic.credentials

- ContentType: 必須

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

user.tenant.name

Oracle Cloud用に予約済。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss_http_token_service_template

wss_http_token_service_templateアサーション・テンプレートでは、HTTPヘッダーの資格証明を使用して、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。一方向認証または双方向認証が必要かどうかを制御できます。

設定

wss_http_token_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-17を参照してください。

構成

表C-19は、wss_http_token_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-19 wss_http_token_service_templateの構成

名前

説明

realm

HTTPレルム。

デフォルト設定:

- 値: 未設定

- デフォルト: owsm

- ContentType: 定数

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss_username_token_client_template

wss_username_token_client_templateアサーション・テンプレートは、WS-Security UsernameTokenヘッダー内にユーザー名およびパスワード資格証明を使用した認証を含めます。アサーションでは、3つのタイプのパスワード資格証明(プレーン・テキスト、ダイジェストおよびパスワードなし)がサポートされています。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。
このテンプレートを使用して作成したポリシーは安全ではありません。パスワードをクリア・テキストで送信します。このアサーションは、セキュリティが低くても問題にならない場合のみ、または他のメカニズムでトランスポートが保護されていることがはっきりしている場合に使用してください。または、このアサーションのSSLバージョンであるoracle/wss_username_token_over_ssl_client_templateの使用を検討します。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。

設定

表C-20は、wss_username_token_client_templateアサーション・テンプレートの設定を示しています。

表C-20 wss_username_token_client_templateの設定

名前

説明

デフォルト値

パスワード・タイプ

必要なパスワードのタイプ。

有効な値は次のとおりです。

- none: パスワードは使用されません。

- plaintext: クリア・テキストのパスワード。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

注意: 保護されていないチャネルでトークンの伝播が発生する場合、プレーン・テキスト・タイプはお薦めできません。ただし、クライアントとサーバー間のポイント・ツー・ポイント接続を保護するためにSSLを転送チャネルとして使用している場合は、チャネルでパスワードが保護されるため、プレーン・テキストタイプを使用できます。

plaintext

必要なNonce

リプレイ攻撃を防止するためユーザー名にNonceを含める必要があるかどうかを指定するフラグ。

注意:

- 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

- 「必要な作成時間」がtrueに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、リプレイ攻撃を防止するためにNonceが永久にキャッシュされます。

False

必要な作成時間

ユーザー名トークンの作成にタイム・スタンプが必要かどうかを指定するフラグ。

注意:

- 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

- 「必要なNonce」がtrueに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、リプレイ攻撃を防止するためにNonceが永久にキャッシュされます。

False

構成

表C-21は、wss_username_token_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-21 wss_username_token_client_templateの構成

名前

説明

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: 未設定

- デフォルト: basic.credentials

- ContentType: 必須

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

user.tenant.name

Oracle Cloud用に予約済。

oracle/wss_username_token_service_template

wss_username_token_service_templateアサーション・テンプレートは、WS-Security UsernameToken SOAPヘッダー内のユーザー名およびパスワード資格証明を使用した認証を実行します。アサーションでは、3つのタイプのパスワード資格証明(プレーン・テキスト、ダイジェストおよびパスワードなし)がサポートされています。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。
このテンプレートを使用して作成したポリシーは安全ではありません。パスワードをクリア・テキストで送信します。このアサーションは、セキュリティが低くても問題にならない場合のみ、または他のメカニズムでトランスポートが保護されていることがはっきりしている場合に使用してください。または、このアサーションのSSLバージョンであるoracle/wss_username_token_over_ssl_service_templateの使用を検討します。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。

設定

wss_username_token_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-20を参照してください。

構成

表C-22は、wss_username_token_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-22 wss_username_token_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss10_saml_token_client_template

wss10_saml_token_client_templateアサーション・テンプレートは、アウトバウンドSOAPリクエスト・メッセージにSAMLトークンを含めます。SAMLトークンは自動的に作成されます。

設定

表C-23は、wss10_saml_token_client_templateアサーション・テンプレートの設定を示しています。

表C-23 wss10_saml_token_client_templateの設定

名前

説明

デフォルト値

バージョン

SAMLバージョン。有効な値は1.1のみです。

1.1

確認タイプ

確認タイプ。次の値のみ有効です。

- sender-vouches: 認証に送信者保証のSAMLトークンが使用されます。

sender-vouches

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

unspecified

構成

表C-24は、wss10_saml_token_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-24 wss10_saml_token_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するユーザー名はサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss10_saml_token_service_template

wss10_saml_token_service_templateアサーション・テンプレートは、WS-Security SOAPヘッダー内のSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

設定

wss10_saml_token_service_templateの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーションの設定と同じです。設定の詳細は、表C-23を参照してください。

構成

表C-25は、wss10_saml_token_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-25 wss10_saml_token_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss10_saml20_token_client_template

wss10_saml20_token_client_templateアサーション・テンプレートは、アウトバウンドSOAPリクエスト・メッセージにSAMLトークンを含めます。SAMLトークンは自動的に作成されます。

設定

表C-26は、wss10_saml20_token_client_templateアサーション・テンプレートの設定を示しています。

表C-26 wss10_saml20_token_client_templateの設定

名前

説明

デフォルト値

バージョン

SAMLバージョン。有効な値は2.0のみです。

2.0

確認タイプ

確認タイプ。次の値のみ有効です。

- sender-vouches: 認証に送信者保証のSAMLトークンが使用されます。

sender-vouches

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

- kerberos

unspecified

構成

表C-27は、wss10_saml20_token_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-27 wss10_saml20_token_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するユーザー名はサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss10_saml20_token_service_template

wss10_saml20_token_service_templateアサーション・テンプレートは、WS-Security SOAPヘッダー内のSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

設定

wss10_saml20_token_service_templateの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と似ています。設定の詳細は、表C-26を参照してください。

構成

表C-28は、wss10_saml20_token_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-28 wss10_saml20_token_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss11_kerberos_token_client_template

wss11_kerberos_token_client_templateアサーション・テンプレートでは、WS-Security Kerberos Token Profile v1.1標準に従い、WS-SecurityヘッダーにKerberosトークンを含めます。

設定

表C-29は、wss11_kerberos_token_client_templateアサーション・テンプレートの設定を示しています。

表C-29 wss11_kerberos_token_client_templateの設定

名前

説明

デフォルト値

Kerberosトークン・タイプ

Kerberosトークンのタイプ。有効な値は、gss-apreq-v5(Kerberosバージョン5 GSS-API)のみです。

gss-apreq-v5

構成

表C-30は、wss11_kerberos_token_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-30 wss11_kerberos_token_client_templateの構成

名前

説明

service.principal.name

サービスを識別するKerberosプリンシパルの名前。

デフォルト設定:

- 値: 未設定

- デフォルト: HOST/localhost@EXAMPLE.COM

- ContentType: 必須

- 説明: 未設定

keytab.location

クライアントのキータブ・ファイルの場所。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

caller.principal.name

ktpassコマンドを使用して生成されたクライアントのプリンシパル名で、kerberosトークンの生成先のユーザー名にマップされます。<username>@<REALM NAME>の形式を使用します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

注意: keytab.locationとcaller.principal.nameは、Java EEアプリケーションのクライアント・アイデンティティの伝搬で必要です。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss11_kerberos_token_service_template

wss11_kerberos_token_service_templateアサーション・テンプレートは、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。このテンプレートは、SOAPヘッダーからKerberosトークンを抽出し、ユーザーを認証します。コンテナには、Oracle Platform Security Servicesを介して構成されたKerberosインフラストラクチャが含まれている必要があります。

設定

wss11_keberos_token_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-29を参照してください。

構成

表C-31は、wss11_kerberos_token_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-31 wss11_kerberos_token_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss_saml_token_bearer_client_template

wss_saml_token_bearer_clientアサーション・テンプレートは、アウトバウンドSOAPリクエスト・メッセージにSAMLトークンを含めます。確認方法がBearerのSAMLトークンが自動的に作成されます。

設定

表C-32は、wss_saml_token_bearer_client_templateアサーション・テンプレートの設定を示しています。

注意:
このテンプレートは、wss_saml_token_bearer_identity_switch_client_policyのベースにもなっています。このポリシーは、動的なアイデンティティ切替えにより、認証済サブジェクトに基づくアイデンティティではなく、別のアイデンティティを伝播できます。ただし、アサーション・コンテンツのsubject.precedence構成オーバーライド・プロパティはデフォルトでfalseに設定されています。

表C-32 oracle/wss_saml_token_bearer_client_templateの設定

名前

説明

デフォルト値

バージョン

SAMLバージョン。有効な値は1.1のみです。

1.1

確認タイプ

確認タイプ。有効な値はbearerのみです。

bearer

署名済

SAMLトークンを署名するかどうかを指定するフラグ。

False

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

unspecified

構成

表C-33は、wss_saml_token_bearer_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-33 wss_saml_token_bearer_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: Null。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するユーザー名はサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: true

- ContentType: オプション

- 説明: 未設定

注意: wss_saml_token_bearer_identity_switch_client_policyを構成する場合、動的なアイデンティティ切替えのsubject.precedence値はデフォルトでfalseに設定されています。

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.envelope.signature.required

Bearerトークンがドメインの署名鍵を使用して署名されるかどうかを指定するフラグ。ドメインの署名鍵は、keystore.sig.csf.keyを使用して構成されるプライベートの署名鍵でオーバーライドできます。

Bearerトークンを未署名にするには、(クライアントおよびサービス・ポリシーの両方で)このフラグをfalseに設定します。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

メッセージ保護のみのアサーション・テンプレート

表C-34は、メッセージ保護のみを実行するアサーション・テンプレートの概要、およびトークンがトランスポート・レイヤーまたはSOAPヘッダーに組み込まれるかどうかを示しています。

表C-34 メッセージ保護のみのアサーション・テンプレート

クライアント・テンプレート

サービス・テンプレート

認証(トランスポート)

認証(SOAP)

メッセージ保護(トランスポート)

メッセージ保護(SOAP)

oracle/wss10_message_protection_client_template

oracle/wss10_message_protection_service_template

いいえ

いいえ

いいえ

はい

oracle/wss11_message_protection_client_template

oracle/wss11_message_protection_service_template

いいえ

いいえ

いいえ

はい

oracle/wss10_message_protection_client_template

wss10_message_protection_client_templateアサーション・テンプレートは、WS-Security 1.0標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)を実行します。

設定

表C-35は、wss10_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-35 wss10_message_protection_client_templateの設定

名前

説明

デフォルト値

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者署名鍵参照メカニズム

受信の署名に使用できるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者暗号化キー参照メカニズム

受信の暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-36は、wss10_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-36 wss10_message_protection_client_templateの構成

名前

説明

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss10_message_protection_service_template

wss10_message_protection_service_templateアサーション・テンプレートは、WS-Security 1.0標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)を実行します。

設定

wss10_message_protection_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-35を参照してください。

構成

表C-37は、wss10_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-37 wss10_message_protection_service_templateの構成

名前

説明

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss11_message_protection_client_template

wss11_message_protection_client_templateアサーション・テンプレートは、WS-Security 1.1標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)を実行します。

設定

表C-38は、wss11_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-38 wss11_message_protection_client_templateの設定

名前

説明

デフォルト値

X509トークン

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

- thumbprint: 証明書のコンテンツのメッセージ・ダイジェスト(SHA1ハッシュ)。証明書を格納する、オーバーヘッドの少ない方法を提供します。

thumbprint

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

シグネチャの確認

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。

Enabled

導出キー

導出キーを使用するどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-39は、wss11_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-39 wss11_message_protection_client_templateの構成

名前

説明

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss11_message_protection_service_template

wss11_message_protection_service_templateアサーション・テンプレートは、WS-Security 1.1標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)を実行します。

設定

wss11_message_protection_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-38を参照してください。

構成

表C-40は、wss11_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-40 wss11_message_protection_service_templateの構成

名前

説明

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

メッセージ保護および認証のアサーション・テンプレート

表C-41は、メッセージ保護および認証の両方を実行するアサーション・テンプレートの概要、およびトークンがトランスポート・レイヤーまたはSOAPヘッダーに組み込まれるかどうかを示しています。

表C-41 メッセージ保護および認証のアサーション・テンプレート

クライアント・テンプレート

サービス・テンプレート

認証(トランスポート)

認証(SOAP)

メッセージ保護(トランスポート)

メッセージ保護(SOAP)

oracle/wss_http_token_over_ssl_client_template

oracle/wss_http_token_over_ssl_service_template

はい

いいえ

はい

いいえ

oracle/wss_saml_token_bearer_client_template

oracle/wss_saml_token_bearer_service_template

いいえ

はい

はい

いいえ

oracle/wss_saml_token_bearer_over_ssl_client_template

oracle/wss_saml_token_bearer_over_ssl_service_template

いいえ

はい

はい

いいえ

oracle/wss_saml20_token_bearer_over_ssl_client_template

oracle/wss_saml20_token_bearer_over_ssl_service_template

いいえ

はい

はい

いいえ

oracle/wss_saml_token_over_ssl_client_template

oracle/wss_saml_token_over_ssl_service_template

いいえ

はい

はい

いいえ

oracle/wss_saml20_token_over_ssl_client_template

oracle/wss_saml20_token_over_ssl_service_template

いいえ

はい

はい

いいえ

oracle/wss_username_token_over_ssl_client_template

oracle/wss_username_token_over_ssl_service_template

いいえ

はい

はい

いいえ

oracle/wss10_saml_hok_token_with_message_protection_client_template

oracle/wss10_saml_hok_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss10_saml_token_with_message_protection_client_template

oracle/wss10_saml_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss10_saml20_token_with_message_protection_client_template

oracle/wss10_saml20_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss10_username_token_with_message_protection_client_template

oracle/wss10_username_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss10_x509_token_with_message_protection_client_template

oracle/wss10_x509_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss11_kerberos_token_with_message_protection_client_template

oracle/wss11_kerberos_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss11_saml_token_with_message_protection_client_template

oracle/wss11_saml_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss11_saml20_token_with_message_protection_client_template

oracle/wss11_saml20_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss11_username_token_with_message_protection_client_template

oracle/wss11_username_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/wss11_x509_token_with_message_protection_client_template

oracle/wss11_x509_token_with_message_protection_service_template

いいえ

はい

いいえ

はい

oracle/http_jwt_token_over_ssl_client_template

http_jwt_token_over_ssl_client_templateアサーション・テンプレートは、HTTPヘッダーにJWTトークンを含めます。JWTトークンは自動的に作成されます。発行者名とサブジェクト名は、プログラムによって、またはポリシーを介して宣言的に提供されます。このテンプレートを使用して作成したポリシーは、任意のHTTPベース・クライアントに添付できます。構成オーバーライド・プロパティを使用して、オーディエンス制限条件を指定できます。

設定

表C-42は、http_jwt_token_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-42 http_jwt_token_over_ssl_client_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

<orasp:auth-header
orasp:mechanism="jwt"/>

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

認証ヘッダー - アルゴリズム・スイート

JWTトークンの署名に使用されるアルゴリズム・スイートを指定するフラグ。

<orasp:auth-header
orasp:algorithm-suite="Basic128Sha256Rsa15"/"

注意: これが唯一サポートされている値です。このデフォルト値以外の値が指定された場合、ポリシーが失敗します。

認証ヘッダー - 署名済

JWTトークンを署名するかどうかを指定するフラグ。JWTポリシーの場合、有効な値はtrueのみです。

<orasp:auth-header
orasp:is-signed="true"/>

認証ヘッダー - 暗号化済

JWTトークンを暗号化するかどうかを指定するフラグ。

<orasp:auth-header
orasp:is-encrypted="false"/>

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

<orasp:auth-header
orasp:require-tls/>

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

<orasp:auth-header
orasp:mutual-auth="false"/>

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

<orasp:auth-header
orasp:include-timestamp="false"/>

構成

表C-43は、http_jwt_token_over_ssl_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。

表C-43 http_jwt_token_over_ssl_client_templateの構成プロパティ

名前

デフォルト値

audience.uri

オーディエンス制限。次の条件がサポートされています。

- このプロパティを設定しない場合、サービスURLがオーディエンスURIとして使用されます。

- このプロパティをNONE (大/小文字の区別なし)に設定した場合、オーディエンスURIはnullに設定されます。

- このプロパティをNONE以外の値に設定した場合、オーディエンスURIはこの値に設定されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="audience.uri" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。たとえば、次のようにします。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Services(OPSS)アイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>

issuer.name

JWT発行者の名前。デフォルト値はwww.oracle.comです。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="keystore.sig.csf.key" orawsp:type="string"/>

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="propagate.identity.context" orawsp:type="string"><orawsp:Value/>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>

subject.precedence

JWTトークンの作成に使用されるサブジェクトを取得する場所を指定するプロパティ。

subject.precedenceをtrueに設定した場合、JWTトークンを作成するためのユーザー名は認証済サブジェクトから取得されます。subject.precedenceをfalseに設定した場合、JWTトークンを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>

user.attributes

JWTトークンに含める認証済ユーザーのユーザー属性のリスト。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をJWTトークンに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。JWTクレームの作成には、有効な属性の名前および値がすべて使用されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.attributes" orawsp:type="string"/>

user.roles.include

JWTトークンに含めるユーザー・ロール。trueに設定した場合、認証済ユーザー・ロールがプライベート・クレームとしてJWTトークンに含められます。デフォルトはfalseです。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>

user.tenant.name

Oracle Cloud用に予約済。

oracle/http_jwt_token_over_ssl_service_template

oracle/http_jwt_token_over_ssl_service_templateは、HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証します。

設定

http_jwt_token_over_ssl_service_templateアサーション・テンプレートの設定は、クライアント・バージョンのアサーション・テンプレートと同じです。設定の詳細は、表C-42を参照してください。

構成

表C-44は、http_jwt_token_over_ssl_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。

表C-44 http_jwt_token_over_ssl_service_templateの構成プロパティ

名前

デフォルト値

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。たとえば、次のようにします。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="keystore.sig.csf.key" orawsp:type="string"/>

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="propagate.identity.context" orawsp:type="string"><orawsp:Value/>

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>

trusted.issuers

ドメイン・レベルで定義された信頼できる発行者をオーバーライドする、アプリケーションの信頼できる発行者のカンマ区切りリスト。

デフォルト設定:

<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.trusted.issuers" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>

oracle/http_oauth2_token_over_ssl_client_template

http_oauth2_token_over_ssl_client_templateアサーション・テンプレートは、OAuth2トークンの認証のためのHTTPバインディング・レベル・テンプレートです。このテンプレートは、ATが一方向SSLでリソースに伝播される以外は、http_oauth2_token_client_templateと同じです。

設定

表C-45は、http_oauth2_token_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-45 http_oauth2_token_over_ssl_client_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- oauth2: クライアントはOAuth2フレームワークを使用して認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

<orasp:auth-header
orasp:mechanism="oauth2"/>

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

認証ヘッダー - 署名済

トークンに署名するかどうかを指定するフラグ。

<orasp:auth-header
orasp:is-signed="false"/>

認証ヘッダー - 暗号化済

トークンを暗号化するかどうかを指定するフラグ。

<orasp:auth-header
orasp:is-encrypted="false"/>

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

<orasp:auth-header
orasp:require-tls/>

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

<orasp:auth-header
orasp:mutual-auth="false"/>

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

<orasp:auth-header
orasp:include-timestamp="false"/>

構成

http_oauth2_token_over_ssl_client_templateアサーション・テンプレートの設定は、アサーション・テンプレートの非SSLバージョンと同じです。設定の詳細は、表C-8を参照してください。

oracle/wss_http_token_over_ssl_client_template

wss_http_token_over_ssl_client_templateアサーション・テンプレートは、アウトバウンド・クライアント・リクエストのHTTPヘッダーに資格証明を含め、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。

設定

表C-46は、wss_http_token_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-46 wss_http_token_over_ssl_client_templateの設定

名前

説明

デフォルト値

認証ヘッダー - メカニズム

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。
注意: Basic認証を使用する場合はSSLを構成することをお薦めします。詳細は、「SSLに関するキーストアの構成」を参照してください。

- cert: このリリースではサポートされていません。証明書を送信することで、クライアントが自身を認証します。

- custom: このリリースではサポートされていません。カスタムの認証メカニズム。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

basic

認証ヘッダー - ヘッダー名

認証ヘッダーの名前。

なし

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

Enabled

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

Disabled

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Disabled

構成

表C-47は、wss_http_token_over_ssl_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-47 wss_http_token_over_ssl_client_templateの構成

名前

説明

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: 未設定

- デフォルト: basic.credentials

- ContentType: 必須

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss_http_token_over_ssl_service_template

wss_http_token_over_ssl_service_templateアサーション・テンプレートでは、HTTPヘッダーの資格証明を抽出し、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。

設定

wss_http_token_over_ssl_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-46を参照してください。

構成

表C-48は、wss_http_token_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-48 wss_http_token_over_ssl_service_templateの構成

名前

説明

realm

HTTPレルム。

デフォルト設定:

- 値: 未設定

- デフォルト: owsm

- ContentType: 定数

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss_saml_token_bearer_service_template

wss_saml_token_bearer_service_templateアサーション・テンプレートは、WS-Security SOAPヘッダー内の確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

設定

表C-49は、wss_saml_token_bearer_service_templateアサーション・テンプレートの設定を示しています。

表C-49 wss_saml_token_bearer_service_templateの設定

名前

説明

デフォルト値

バージョン

SAMLバージョン。有効な値は1.1のみです。

1.1

確認タイプ

確認タイプ。次の値のみ有効です。

- sender-vouches: 認証に送信者保証のSAMLトークンが使用されます。

sender-vouches

署名済

SAMLトークンを署名するかどうかを指定するフラグ。このポリシーの場合、有効な値はTrueのみです。

True

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

構成

表C-50は、wss_saml_token_bearer_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-50 wss_saml_token_bearer_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

oracle/wss_saml_token_bearer_over_ssl_client_template

wss_saml_token_bearer_over_ssl_client_templateアサーション・テンプレートは、アウトバウンドSOAPリクエスト・メッセージにSAMLトークンを含めます。確認方法がBearerのSAMLトークンが自動的に作成されます。

設定

表C-51は、wss_saml_token_bearer_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-51 wss_saml_token_bearer_over_ssl_client_templateの設定

名前

説明

デフォルト値

バージョン

SAMLバージョン。有効な値は1.1のみです。

1.1

確認タイプ

確認タイプ。有効な値はbearerのみです。

bearer

署名済

SAMLトークンを署名するかどうかを指定するフラグ。

False

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

unspecified

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

Enabled

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

Disabled

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Disabled

構成

表C-52は、wss_saml_token_bearer_over_ssl_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-52 wss_saml_token_bearer_over_ssl_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: Null。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するユーザー名はサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: true

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.envelope.signature.required

Bearerトークンがドメインの署名鍵を使用して署名されるかどうかを指定するフラグ。ドメインの署名鍵は、keystore.sig.csf.keyを使用して構成されるプライベートの署名鍵でオーバーライドできます。

Bearerトークンを未署名にするには、(クライアントおよびサービス・ポリシーの両方で)このフラグをfalseに設定します。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss_saml_token_bearer_over_ssl_service_template

wss_saml_token_bearer_over_ssl_service_templateアサーション・テンプレートは、WS-Security SOAPヘッダー内の確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

設定

wss_saml_token_bearer_over_ssl_service_templateアサーション・テンプレートの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-51を参照してください。

構成

表C-53は、wss_saml_token_bearer_over_ssl_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-53 wss_saml_token_bearer_over_ssl_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss_saml20_token_bearer_over_ssl_client_template

wss_saml20_token_bearer_over_ssl_client_templateアサーション・テンプレートは、アウトバウンドSOAPリクエスト・メッセージにSAMLトークンを含めます。確認方法がBearerのSAMLトークンが自動的に作成されます。

設定

表C-54は、wss_saml20_token_bearer_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-54 wss_saml20_token_bearer_over_ssl_client_templateの設定

名前

説明

デフォルト値

バージョン

SAMLバージョン。有効な値は2.0のみです。

2.0

確認タイプ

確認タイプ。有効な値はbearerのみです。

bearer

署名済

SAMLトークンを署名するかどうかを指定するフラグ。

False

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

- kerberos

unspecified

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

Enabled

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

Disabled

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Disabled

構成

表C-55は、wss_saml20_token_bearer_over_ssl_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-55 wss_saml20_token_bearer_over_ssl_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するユーザー名はサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.envelope.signature.required

Bearerトークンがドメインの署名鍵を使用して署名されるかどうかを指定するフラグ。ドメインの署名鍵は、keystore.sig.csf.keyを使用して構成されるプライベートの署名鍵でオーバーライドできます。

Bearerトークンを未署名にするには、(クライアントおよびサービス・ポリシーの両方で)このフラグをfalseに設定します。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss_saml20_token_bearer_over_ssl_service_template

wss_saml20_token_bearer_over_ssl_service_templateアサーション・テンプレートは、WS-Security SOAPヘッダー内の確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

設定

wss_saml20_token_bearer_over_ssl_service_templateアサーション・テンプレートの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-54を参照してください。

構成

表C-56は、wss_saml20_token_bearer_over_ssl_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-56 wss_saml20_token_bearer_over_ssl_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss_saml_token_over_ssl_client_template

wss_saml_token_over_ssl_client_templateアサーション・テンプレートは、sender-vouches確認タイプを使用して、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を可能にします。

設定

表C-57は、wss_saml_token_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-57 wss_saml_token_over_ssl_client_templateの設定

名前

説明

デフォルト値

バージョン

SAMLバージョン。有効な値は1.1のみです。

1.1

確認タイプ

確認タイプ。次の値のみ有効です。

- sender-vouches: 認証に送信者保証のSAMLトークンが使用されます。

sender-vouches

署名済

SAMLトークンを署名するかどうかを指定するフラグ。このポリシーの場合、有効な値はTrueのみです。

True

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

unspecified

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

Enabled

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

Enabled

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Disabled

構成

表C-58は、wss_saml_token_over_ssl_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-58 wss_saml_token_over_ssl_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するユーザー名はサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalse

user.tenant.name

Oracle Cloud用に予約済。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss_saml_token_over_ssl_service_template

wss_saml_token_over_ssl_service_templateは、sender-vouchesタイプを使用して、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を実行します。

設定

wss_saml_token_over_ssl_service_templateアサーション・テンプレートの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-57を参照してください。

構成

表C-59は、wss_saml_token_over_ssl_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-59 wss_saml_token_over_ssl_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss_saml20_token_over_ssl_client_template

wss_saml20_token_over_ssl_client_templateアサーション・テンプレートは、sender-vouches確認タイプを使用して、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を可能にします。

設定

表C-60は、wss_saml20_token_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-60 wss_saml20_token_over_ssl_client_templateの設定

名前

説明

デフォルト値

バージョン

SAMLバージョン。有効な値は2.0のみです。

2.0

確認タイプ

確認タイプ。次の値のみ有効です。

- sender-vouches: 認証に送信者保証のSAMLトークンが使用されます。

sender-vouches

署名済

SAMLトークンを署名するかどうかを指定するフラグ。このポリシーの場合、有効な値はTrueのみです。

True

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

- kerberos

unspecified

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

Enabled

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

Enabled

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Disabled

構成

表C-61は、wss_saml20_token_over_ssl_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-61 wss_saml20_token_over_ssl_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトのみから取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: 未設定

- デフォルト: true

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss_saml20_token_over_ssl_service_template

wss_saml20_token_over_ssl_service_templateは、sender-vouchesタイプを使用して、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を実行します。

設定

wss_saml20_token_over_ssl_service_templateアサーション・テンプレートの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-60を参照してください。

構成

表C-62は、wss_saml20_token_over_ssl_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-62 wss_saml20_token_over_ssl_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss_username_token_over_ssl_client_template

wss_username_token_over_ssl_client_templateアサーション・テンプレートは、SOAPリクエスト・メッセージのWS-Security UsernameTokenヘッダーに資格証明を含めます。アサーションでは、3つのタイプのパスワード資格証明(プレーン・テキスト、ダイジェストおよびパスワードなし)がサポートされています。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。

設定

表C-63は、wss_username_token_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-63 wss_username_token_over_ssl_client_templateの設定

名前

説明

デフォルト値

パスワード・タイプ

必要なパスワードのタイプ。

有効な値は次のとおりです。

- none: パスワードは使用されません。

- plaintext: クリア・テキストのパスワード。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

注意: 保護されていないチャネルでトークンの伝播が発生する場合、プレーン・テキスト・タイプはお薦めできません。ただし、クライアントとサーバー間のポイント・ツー・ポイント接続を保護するためにSSLを転送チャネルとして使用している場合は、チャネルでパスワードが保護されるため、プレーン・テキストタイプを使用できます。

plaintext

必要な作成時間

ユーザー名トークンの作成にタイム・スタンプが必要かどうかを指定するフラグ。

注意:

- 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

- 「必要なNonce」がtrueに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、リプレイ攻撃を防止するためにNonceが永久にキャッシュされます。

False

必要なNonce

リプレイ攻撃を防止するためユーザー名にNonceを含める必要があるかどうかを指定するフラグ。

注意:

- 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

- 「必要な作成時間」がtrueに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、リプレイ攻撃を防止するためにNonceが永久にキャッシュされます。

False

トランスポート・セキュリティ

SSLを有効にするかどうかを指定するフラグ。

Enabled

トランスポート・セキュリティ - 相互認証が必要

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: 双方向認証。サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

Disabled

トランスポート・セキュリティ - タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Disabled

構成

表C-64は、wss_username_token_over_ssl_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-64 wss_username_token_over_ssl_client_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Services(OPSS)アイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: 未設定

- デフォルト: basic.credentials

- ContentType: 必須

- 説明: 未設定

user.tenant.name

Oracle Cloud用に予約済。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss_username_token_over_ssl_service_template

wss_username_token_over_ssl_service_templateアサーション・テンプレートは、UsernameToken WS-Security SOAPヘッダーの資格証明を使用して、Oracle Platform Security Servicesの構成済のアイデンティティ・ストアに対してユーザーを認証します。アサーションでは、3つのタイプのパスワード資格証明(プレーン・テキスト、ダイジェストおよびパスワードなし)がサポートされています。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。

設定

wss_username_token_over_ssl_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-63を参照してください。

構成

表C-65は、wss_username_token_over_ssl_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-65 wss_username_token_over_ssl_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: デフォルト値。この値は、「値」フィールドが設定されていない場合に使用されます。デフォルトはultimateReceiverです。

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss10_saml_hok_token_with_message_protection_client_template

wss10_saml_hok_token_with_message_protection_client_templateアサーション・テンプレートは、アウトバウンドSOAPメッセージに対してWS-Security 1.0標準に従ったメッセージ保護(整合性と機密保護)およびSAML Holder of Keyベースの認証を行います。

設定

表C-66は、wss10_saml_hok_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-66 wss10_saml_hok_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

SAMLトークン・タイプ

バージョン

SAMLバージョン。有効な値は1.1のみです。

1.1

確認タイプ

確認タイプ。有効な値はholder-of-keyのみです。

holder-of-key

署名済

SAMLトークンを署名するかどうかを指定するフラグ。有効な値はTrueのみです。

True

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

名前識別子で使用するフォーマットのタイプを指定します。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

unspecified

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

ski

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

direct

受信者署名鍵参照メカニズム

受信の署名に使用できるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者暗号化キー参照メカニズム

受信の暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-67は、wss10_saml_hok_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-67 wss10_saml_hok_token_with_message_protection_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: orakey

- デフォルト: 未設定

- ContentType: 必須

- 説明: 未設定

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: www.oracle.com

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: false

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.assertion.filename

SAMLトークン・ファイルの名前。

デフォルト設定:

- 値: temp

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

user.tenant.name

Oracle Cloud用に予約済。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss10_saml_hok_token_with_message_protection_service_template

wss10_saml_hok_token_with_message_protection_service_templateアサーション・テンプレートは、インバウンドSOAPリクエストに対してWS-Security 1.0標準に従ったメッセージ保護およびSAML Holder of Keyベースの認証を行います。

設定

wss10_saml_hok_token_with_message_protection_service_templateの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-66を参照してください。

構成

表C-68は、wss10_saml_hok_token_with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-68 wss10_saml_hok_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss10_saml_token_with_message_protection_client_template

wss10_saml_token_with_message_protection_client_templateアサーション・テンプレートは、WS-Security 1.0標準に従って、アウトバウンドSOAPメッセージのメッセージ・レベルの保護と、SAMLベースの認証を行います。

Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

設定

表C-69は、wss10_saml_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-69 wss10_saml_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

SAMLトークン・タイプ

バージョン

SAMLバージョン。有効な値は1.1のみです。

1.1

確認タイプ

確認タイプ。有効な値はsender-vouchesのみです。

sender-vouches

署名済

SAMLトークンを署名するかどうかを指定するフラグ。このポリシーの場合、有効な値はTrueのみです。

True

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

unspecified

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者署名鍵参照メカニズム

受信の署名に使用できるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者暗号化キー参照メカニズム

受信の暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-70は、wss10_saml_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-70 wss10_saml_token_with_message_protection_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトのみから取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: null

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

oracle/wss10_saml_token_with_message_protection_service_template

wss10_saml_token_with_message_protection_service_templateアサーション・テンプレートは、WS-Security 1.0標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と、SAMLベースの認証を行います。

Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

設定

wss10_saml_token_with_message_protection_service_templateの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-69を参照してください。

構成

表C-71は、wss10_saml_token_with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-71 wss10_saml_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss10_saml20_token_with_message_protection_client_template

wss10_saml20_token_with_message_protection_client_templateアサーション・テンプレートは、アウトバウンドSOAPメッセージに対してWS-Security 1.0標準に従ったメッセージ・レベルの保護およびSAMLベースの認証を行います。

Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

設定

表C-72は、wss10_saml20_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-72 wss10_saml20_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

SAMLトークン・タイプ

バージョン

SAMLバージョン。有効な値は2.0のみです。

2.0

確認タイプ

確認タイプ。有効な値はsender-vouchesのみです。

sender-vouches

署名済

SAMLトークンを署名するかどうかを指定するフラグ。このポリシーの場合、有効な値はTrueのみです。

True

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

- kerberos

unspecified

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者署名鍵参照メカニズム

受信の署名に使用できるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者暗号化キー参照メカニズム

受信の暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-73は、wss10_saml20_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-73 wss10_saml20_token_with_message_protection_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

user.roles.include

ユーザー・ロールの組込み。

デフォルト設定:

- 値: 未設定

- デフォルト: false

- ContentType: オプション

- 説明: 未設定

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトのみから取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

attesting.mapping.attribute

アテスト・エンティティの表現で使用されるマッピング属性。現在サポートされているのはDNのみです。この属性は、送信者保証およびメッセージ保護ユースケースにのみ適用されます。SAML over SSLポリシーには適用されません。

デフォルト設定:

- 値: DN

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalse

user.tenant.name

Oracle Cloud用に予約済。

oracle/wss10_saml20_token_with_message_protection_service_template

wss10_saml20_token_with_message_protection_service_templateアサーション・テンプレートは、インバウンドSOAPリクエストに対してWS-Security 1.0標準に従ったメッセージ保護(整合性と機密保護)およびSAMLベースの認証を行います。

Webサービス・コンシューマにはSOAPヘッダーのSAMLトークンが含まれ、確認タイプはsender-vouchesです。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

リプレイ攻撃から保護するため、アサーションには、タイム・スタンプ、SAMLトークンの制限、およびWebサービス・プロバイダによる検証を含めるオプションが用意されています。

設定

wss10_saml20_token_with_message_protection_service_templateの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と似ています。設定の詳細は、表C-72を参照してください。

構成

表C-74は、wss10_saml20_token_with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-74 wss10_saml20_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss10_username_token_with_message_protection_client_template

wss10_username_token_with_message_protection_client_templateアサーション・テンプレートは、WS-Security 1.0標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と認証を行います。資格証明は、アウトバウンドSOAPメッセージのWS-Security UsernameTokenヘッダーに含まれます。

アサーションでは、3つのタイプのパスワード資格証明(プレーン・テキスト、ダイジェストおよびパスワードなし)がサポートされています。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

設定

表C-75は、wss10_username_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-75 wss10_username_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

ユーザー名トークン

パスワード・タイプ

必要なパスワードのタイプ。

有効な値は次のとおりです。

- none: パスワードは使用されません。

- plaintext: クリア・テキストのパスワード。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

plaintext

必要な作成時間

ユーザー名トークンの作成にタイム・スタンプが必要かどうかを指定するフラグ。

注意:

- 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

- 「必要なNonce」がtrueに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、リプレイ攻撃を防止するためにNonceが永久にキャッシュされます。

False

必要なNonce

リプレイ攻撃を防止するためユーザー名にNonceを含める必要があるかどうかを指定するフラグ。

注意:

- 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

- 「必要な作成時間」がtrueに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、リプレイ攻撃を防止するためにNonceが永久にキャッシュされます。

False

署名済

ユーザー名を署名するかどうかを指定するフラグ。

True

暗号化済

ユーザー名を暗号化するかどうかを指定するフラグ。

True

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者署名鍵参照メカニズム

受信の署名に使用できるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者暗号化キー参照メカニズム

受信の暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-76は、wss10_username_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-76 wss10_username_token_with_message_protection_client_templateの構成

名前

説明

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: 未設定

- デフォルト: basic.credentials

- ContentType: 必須

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss10_username_token_with_message_protection_service_template

wss10_username_token_with_message_protection_service_templateアサーション・テンプレートは、WS-Security 1.0標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と認証を行います。

アサーションでは、3つのタイプのパスワード資格証明(プレーン・テキスト、ダイジェストおよびパスワードなし)がサポートされています。

注意:
このリリースでは、ダイジェスト・パスワードはサポートされていません。

リプレイ攻撃から保護するため、アサーションには、ユーザー名トークンにNonceまたは作成時間を必要とするオプションが用意されています。SOAPメッセージは署名されて暗号化されています。Webサービス・プロバイダはメッセージを復号化し、署名の検証と認証を行います。

設定

wss10_username_token_with_message_protection_service_templateアサーション・テンプレートの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-75を参照してください。

構成

表C-77は、wss10_username_token_with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-77 wss10_username_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss10_x509_token_with_message_protection_client_template

wss10_x509_token_with_message_protection_client_templateアサーション・テンプレートは、アウトバウンドSOAPメッセージに対してWS-Security 1.0標準に従ったメッセージ保護(整合性と機密保護)および証明書資格証明の移入を行います。

設定

表C-78は、wss10_x509_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-78 wss10_x509_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者署名鍵参照メカニズム

受信の署名に使用できるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

受信者暗号化キー参照メカニズム

受信の暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-79は、wss10_x509_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-79 wss10_x509_token_with_message_protection_client_templateの構成

名前

説明

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss10_x509_token_with_message_protection_service_template

wss10_x509_token_with_message_protection_service_templateアサーション・テンプレートは、WS-Security 1.0標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と、証明書ベースの認証を行います。

設定

wss10_x509_token_with_message_protection_service_templateアサーション・テンプレートの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-78を参照してください。

構成

表C-80は、wss10_x509_token_with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-80 wss10_x509_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss11_kerberos_token_with_message_protection_client_template

wss11_kerberos_token_with_message_protection_client_templateアサーション・テンプレートは、WS-Security Kerberos Token Profile v1.1標準に従い、WS-SecurityヘッダーにKerberosトークンを含めます。

設定

表C-81は、wss11_kerberos_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-81 wss11_kerberos_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

Kerberosトークン・タイプ

Kerberosトークンのタイプ。有効な値は、gss-apreq-v5(Kerberosバージョン5 GSS-API)のみです。

gss-apreq-v5

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

direct

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

TripleDes

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

シグネチャの確認

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。

Enabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-82は、wss11_kerberos_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-82 wss11_kerberos_token_with_message_protection_client_templateの構成

名前

説明

service.principal.name

サービスを識別するKerberosプリンシパルの名前。

デフォルト設定:

- 値: HOST/localhost@EXAMPLE.COM

- デフォルト: 未設定

- ContentType: 必須

- 説明: 未設定

keytab.location

クライアントのキータブ・ファイルの場所。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

caller.principal.name

ktpassコマンドを使用して生成されたクライアントのプリンシパル名で、kerberosトークンの生成先のユーザー名にマップされます。<username>@<REALM NAME>の形式を使用します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

注意: keytab.locationとcaller.principal.nameは、Java EEアプリケーションのクライアント・アイデンティティの伝搬で必要です。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss11_kerberos_token_with_message_protection_service_template

wss11_kerberos_token_with_message_protection_service_templateアサーション・テンプレートは、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。このテンプレートは、SOAPヘッダーからKerberosトークンを抽出し、ユーザーを認証します。コンテナには、Oracle Platform Security Servicesを介して構成されたKerberosインフラストラクチャが含まれている必要があります。

設定

wss11_keberos_token_with_message_protection_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-81を参照してください。

構成

不要。

oracle/wss11_saml_token_with_message_protection_client_template

wss11_saml_token_with_message_protection_client_templateアサーション・テンプレートは、WS-Security 1.1に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と、SAMLトークンの移入を可能にします。SOAPメッセージに含まれているSAMLトークンは、送信者保証確認を使用したSAMLベースの認証で使用します。

注意:
このテンプレートは、wss11_saml_token_with_message_protection_identity_switch_client_policyのベースにもなっています。このポリシーは、動的なアイデンティティ切替えにより、認証済サブジェクトに基づくアイデンティティではなく、別のアイデンティティを伝播できます。ただし、アサーション・コンテンツのsubject.precedence構成オーバーライド・プロパティはデフォルトでfalseに設定されています。

設定

表C-83は、wss11_saml_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-83 wss11_saml_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

SAMLトークン・タイプ

バージョン

SAMLバージョン。有効な値は1.1のみです。

なし

確認タイプ

確認タイプ。有効な値はsender-vouchesです。

sender-vouches

署名済

SAMLトークンを署名するかどうかを指定するフラグ。SAMLポリシーの場合、有効な値はTrueのみです。

True

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

unspecified

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

- thumbprint: 証明書のコンテンツのメッセージ・ダイジェスト(SHA1ハッシュ)。証明書を格納する、オーバーヘッドの少ない方法を提供します。この値は、「暗号化キー参照メカニズム」(後述)に対してのみ有効です。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

thumbprint

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

シグネチャの確認

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。

Enabled

導出キー

導出キーを使用するどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-84は、wss11_saml_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-84 wss11_saml_token_with_message_protection_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトのみから取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定
注意: wss11_saml_token_identity_switch_with_mesage_protection_client_policyを構成する場合、動的なアイデンティティ切替えのsubject.precedence値はデフォルトでfalseに設定されています。

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

oracle/wss11_saml_token_with_message_protection_service_template

wss11_saml_token_with_message_protection_service_templateアサーション・テンプレートは、インバウンドSOAPリクエストに対してWS-Security 1.1標準に従ったメッセージ・レベルの整合性の保護およびSAMLベースの認証を行います。WS-Securityバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、その資格証明をOracle Platform Security Servicesアイデンティティ・ストアに対するユーザーの検証に使用します。

設定

wss11_saml_token_with_message_protection_service_templateの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-83を参照してください。

構成

表C-85は、wss11_saml_token__with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-85 wss11_saml_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss11_saml20_token_with_message_protection_client_template

wss11_saml20_token_with_message_protection_client_templateアサーション・テンプレートは、アウトバウンドSOAPメッセージに対してWS-Security 1.1に従ったメッセージ保護(整合性と機密保護)およびSAMLトークンの移入を行います。SOAPメッセージに含まれているSAMLトークンは、送信者保証確認を使用したSAMLベースの認証で使用します。

設定

表C-86は、wss11_saml20_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-86 wss11_saml20_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

SAMLトークン・タイプ

バージョン

SAMLバージョン。有効な値は2.0のみです。

2.0

確認タイプ

確認タイプ。有効な値はsender-vouchesです。

sender-vouches

署名済

SAMLトークンを署名するかどうかを指定するフラグ。SAMLポリシーの場合、有効な値はTrueのみです。

True

暗号化済

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

名前識別子フォーマット

名前識別子で使用するフォーマットのタイプを指定します。

「名前識別子フォーマット」は、subject.precedenceがfalseに設定されている場合のみ適用されます。subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名は、csf-keyプロパティまたはユーザー名プロパティから取得されます(「SAMLアサーションのユーザー名の構成」を参照)。ユーザー名のフォーマットは、「名前識別子フォーマット」に設定されたフォーマットと同じである必要があります。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトから取得されます。この場合、「名前識別子フォーマット」は常に「未指定」であり、「名前識別子フォーマット」を設定してこれを変更することはできません。

次のいずれかの値を指定します。

- unspecified

- emailAddress

- X509SubjectName

- WindowsDomainQualifiedName

- kerberos

unspecified

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

- thumbprint: 証明書のコンテンツのメッセージ・ダイジェスト(SHA1ハッシュ)。証明書を格納する、オーバーヘッドの少ない方法を提供します。この値は、「暗号化キー参照メカニズム」(後述)に対してのみ有効です。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

thumbprint

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

シグネチャの確認

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。

Enabled

導出キー

導出キーを使用するどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-87は、wss11_saml20_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-87 wss11_saml20_token_with_message_protection_client_templateの構成

名前

説明

user.attributes

SAMLトークンのプリンシパルに関連するユーザー属性。

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションに含めます。

サブジェクトが有効であり、subject.precedenceがtrueに設定されている必要があります。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定。属性名はカンマで区切る必要があります。

- ContentType: オプション

- 説明: 未設定

クライアント・ポリシーは、user.attributesを使用して指定された属性の値を、構成済のアイデンティティ・ストアから読み取ります。すべての有効な属性名と値を使用して、SAML属性文が作成されます。

user.attributesプロパティは1つのアイデンティティ・ストアに対してサポートされるものであり、リスト内の先頭のアイデンティティ・ストアのみが使用されます。そのため、ユーザーは、構成済WebLogic Serverの認証プロバイダで使用されるアイデンティティ・ストアに存在し、有効になっている必要があります。認証プロバイダについては、「WebLogic Serverへの認証プロバイダの構成」を参照してください。

必要なアイデンティティ・ストアが先頭のアイデンティティ・ストアでない場合、検索する追加のアイデンティティ・ストアを指定できます。詳細は、「アサーションへのユーザー属性の組込み」を参照してください。

saml.issuer.name

発行者URI。

デフォルト設定:

- 値: 未設定

- デフォルト: www.oracle.com

- ContentType: オプション

- 説明: 未設定

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: basic.credentials

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションを作成するためのユーザー名はサブジェクトのみから取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションを作成するためのユーザー名はcsf-keyユーザー名プロパティからのみ取得されます。

デフォルト設定:

- 値: true

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

attesting.mapping.attribute

アテスト・エンティティの表現で使用されるマッピング属性。現在サポートされているのはDNのみです。この属性は、送信者保証およびメッセージ保護ユースケースにのみ適用されます。SAML over SSLポリシーには適用されません。

デフォルト設定:

- 値: DN

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

oracle/wss11_saml20_token_with_message_protection_service_template

wss11_saml20_token_with_message_protection_service_templateアサーション・テンプレートは、インバウンドSOAPリクエストに対してWS-Security 1.1標準に従ったメッセージ・レベルの整合性の保護およびSAMLベースの認証を行います。WS-Securityバイナリ・セキュリティ・トークンからSAMLトークンを抽出し、その資格証明をOracle Platform Security Servicesアイデンティティ・ストアに対するユーザーの検証に使用します。

設定

wss11_saml_token_with_message_protection_service_templateの設定は、「名前識別子フォーマット」がないことを除けば、クライアント・バージョンのアサーション・テンプレートの設定と似ています。設定の詳細は、表C-85を参照してください。

構成

表C-88は、wss11_saml20_token__with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-88 wss11_saml20_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝搬し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。デフォルトはfalseです。

oracle/wss11_username_token_with_message_protection_client_template

ws11_username_token_with_message_protection_client_templateアサーション・テンプレートは、WS-Security v1.1標準に従った認証およびメッセージ保護を行います。

Webサービス・コンシューマは、ユーザー名とパスワード資格証明を挿入し、送信するSOAPメッセージに署名して暗号化します。Webサービス・プロバイダは、メッセージと署名の復号化および検証を行います。

リプレイ攻撃を防止するため、アサーションには、タイムスタンプおよびWebサービス・プロバイダによる検証を含めるオプションが用意されています。異なる強度の暗号を使用してメッセージを保護できます。

設定

表C-89は、wss11_username_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-89 wss11_username_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

ユーザー名トークン

パスワード・タイプ

必要なパスワードのタイプ。

有効な値は次のとおりです。

- none: パスワードは使用されません。

- plaintext: クリア・テキストのパスワード。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

plaintext

必要な作成時間

ユーザー名トークンの作成にタイム・スタンプが必要かどうかを指定するフラグ。

注意:

- 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

- 「必要なNonce」がtrueに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、リプレイ攻撃を防止するためにNonceが永久にキャッシュされます。

False

必要なNonce

リプレイ攻撃を防止するためユーザー名にNonceを含める必要があるかどうかを指定するフラグ。

注意:

- 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

- 「必要な作成時間」がtrueに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、リプレイ攻撃を防止するためにNonceが永久にキャッシュされます。

False

署名済

ユーザー名を署名するかどうかを指定するフラグ。

True

暗号化済

ユーザー名を暗号化するかどうかを指定するフラグ。

True

X509トークン

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

- thumbprint: 証明書のコンテンツのメッセージ・ダイジェスト(SHA1ハッシュ)。証明書を格納する、オーバーヘッドの少ない方法を提供します。

thumbprint

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

シグネチャの確認

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。

Enabled

導出キー

導出キーを使用するどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-90は、wss11_username_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-90 wss11_username_token_with_message_protection_client_templateの構成

名前

説明

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。

デフォルト設定:

- 値: 未設定

- デフォルト: basic.credentials

- ContentType: 必須

- 説明: 未設定

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

user.tenant.name

Oracle Cloud用に予約済。

oracle/wss11_username_token_with_message_protection_service_template

ws11_username_token_with_message_protection_service_templateアサーション・テンプレートは、WS-Security v1.1標準に従った認証およびメッセージ保護を行います。

Webサービス・コンシューマは、ユーザー名とパスワード資格証明を挿入し、送信するSOAPメッセージに署名して暗号化します。Webサービス・プロバイダは、メッセージと署名の復号化および検証を行います。リプレイ攻撃を防止するため、アサーションには、タイムスタンプおよびWebサービス・プロバイダによる検証を含めるオプションが用意されています。異なる強度の暗号を使用してメッセージを保護できます。

設定

wss11_username_token_with_message_protection_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-89を参照してください。

構成

表C-91は、wss11_username_token_with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-91 wss11_username_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss11_x509_token_with_message_protection_client_template

wss11_x509_token_with_message_protection_client_templateアサーション・テンプレートは、WS-Security 1.1標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と、証明書ベースの認証を行います。資格証明は、SOAPメッセージのWS-Securityバイナリ・セキュリティ・トークンに含まれます。]

設定

表C-92は、wss11_x509_token_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-92 wss11_x509_token_with_message_protection_client_templateの設定

名前

説明

デフォルト値

X509トークン

署名鍵参照メカニズム

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

- thumbprint: 証明書のコンテンツのメッセージ・ダイジェスト(SHA1ハッシュ)。証明書を格納する、オーバーヘッドの少ない方法を提供します。この値は、「暗号化キー参照メカニズム」(後述)に対してのみ有効です。

direct

暗号化キー参照メカニズム

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

thumbprint

メッセージ・セキュリティ

アルゴリズム・スイート

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

タイムスタンプを含める

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

Enabled

署名の暗号化

署名を暗号化するかどうかを指定するフラグ。

Disabled

シグネチャの確認

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。

Enabled

導出キー

導出キーを使用するどうかを指定するフラグ。

Disabled

「リクエスト・メッセージ」設定

表C-118を参照してください。

N/A

「レスポンス・メッセージ」設定

表C-118を参照してください。

N/A

「フォルト・メッセージ」設定

表C-118を参照してください。

N/A

構成

表C-93は、wss11_x509_token_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-93 wss11_x509_token_with_message_protection_client_templateの構成

名前

説明

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: 未設定

- デフォルト: orakey

- ContentType: 必須

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。指定した場合、このcsf-keyに対応するキーがキーストアからフェッチされ、署名に使用されます。このプロパティにより、ドメイン・レベルのかわりに添付レベルで署名キーを指定できます。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss11_x509_token_with_message_protection_service_template

wss11_x509_token_with_message_protection_service_templateアサーション・テンプレートは、WS-Security 1.1標準に従って、インバウンドSOAPリクエストのメッセージ・レベルの保護と、証明書ベースの認証を行います。証明書は、WS-Securityバイナリ・セキュリティ・トークン・ヘッダーから抽出され、証明書内の資格証明はOracle Platform Security Servicesアイデンティティ・ストアに対して検証されます。

設定

wss11_x509_token_with_message_protection_service_templateの設定は、クライアント・バージョンのアサーション・テンプレートの設定と同じです。設定の詳細は、表C-92を参照してください。

構成

表C-94は、wss11_x509_token_with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-94 wss11_x509_token_with_message_protection_service_templateの構成

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

復号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、これをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

WS-Trustアサーション・テンプレート

表C-95は、WS-Trustアサーション・テンプレートの概要を示しています。

このリリースでは、Fusion Middleware Controlを使用してアサーション・テンプレートを直接編集できますが、「設定」ページおよび「構成」ページは使用できません。

表C-95 WS-Trustアサーション・テンプレート

名前

説明

oracle/sts_trust_config_client_template

トークン交換用のSTS呼出しに使用されるSTS構成情報アサーション・テンプレート。

oracle/sts_trust_config_service_template

トークン交換用のSTS呼出しに使用されるSTS構成情報アサーション・テンプレート。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_template

SSLメッセージ保護付き発行トークンSAML認証(Bearer確認方式)のSOAPバインディング・レベル・クライアント・アサーション・テンプレート。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_template

SSLメッセージ保護付き発行トークンSAML認証(Bearer確認方式)のSOAPバインディング・レベル・サービス・アサーション・テンプレート。

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_template

WS-Security 1.1発行トークンSAML HOKトークン(証明書付き)クライアント・アサーション・テンプレート。Basic128を使用した認証およびメッセージ保護を提供します。

oracle/wss11_sts_issued_saml_hok_with_message_protection_service_template

証明書付きWS-Security 1.1発行トークンSAML HOKサービス・アサーション・テンプレート。Basic128を使用した認証およびメッセージ保護を提供します。

oracle/wss11_sts_issued_saml_with_message_protection_client_template

証明書付きWS-Security 1.1発行トークンSAML送信者保証。Basic128を使用した認証およびメッセージ保護を提供します。

oracle/sts_trust_config_client_template

oracle/sts_trust_config_client_templateは、トークン交換用のSTSを呼び出します。

設定

表C-96は、oracle/sts_trust_config_client_templateアサーション・テンプレートの設定を示しています。

表C-96 oracle/sts_trust_config_client_templateの設定

名前

説明

デフォルト値

policy-reference-uri

クライアントがSTSと通信する際に使用するクライアント・ポリシーURI。WSDLでの識別に従い、選択するポリシーはSTSの認証要件に応じて異なります。

oracle/wss10_username_token_with_message_protection_client_policy

port-endpoint

STS Webサービスのエンドポイント。

WSDL 2.0 STSの場合、target-namespace#wsdl.endpoint(service-name/port-name)という形式で指定します。例: http://samples.otn.com.LoanFlow#wsdl.endpoint(LoanFlowService/LoanFlowPort

WSDL 1.1 STSの場合、targetnamespace#wsdl11.endpoint(servicename/portname)という形式で指定します。たとえば、http://samples.otn.com.LoanFlow#wsdl11.endpoint(LoanFlowService/LoanFlowPort)と指定します。

なし

port-uri

STSポートの実際のエンドポイントURI。たとえば、http://host:port/context-root/service1と指定します。

なし

sts-keystore-recipient-alias

キーストアに追加したSTS証明書の別名。デフォルトの別名はsts-csf-keyです。

sts-csf-key

wsdl-uri

WSDLの実際のエンドポイントURI。

なし

構成

表C-97は、oracle/sts_trust_config_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-97 oracle/sts_trust_config_client_templateのプロパティ

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: ultimateReceiver

- デフォルト: 未設定

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/sts_trust_config_service_template

oracle/sts_trust_config_service_templateは、トークン交換用のSTSを呼び出します。

設定

表C-96は、oracle/sts_trust_config_service_templateアサーション・テンプレートの設定を示しています。

表C-98 oracle/sts_trust_config_service_templateの設定

名前

説明

デフォルト値

port-uri

STSポートの実際のエンドポイントURI。たとえば、http://host:port/context-root/service1と指定します。

なし

wsdl-uri

WSDLの実際のエンドポイントURI。

なし

構成

表C-97は、oracle/sts_trust_config_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-99 oracle/sts_trust_config_service_templateのプロパティ

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: 未設定

- デフォルト: ultimateReceiver

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_template

このテンプレートは、信頼できるSTSが発行したSAML Bearerアサーションを挿入します。メッセージは、SSLを使用して保護されます。

設定

表C-100は、oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_templateアサーション・テンプレートの設定を示しています。

表C-100 oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_templateの設定

名前

説明

デフォルト値

require-applies-to

RSTのオプション要素。存在する場合、Oracle WSMによって、トークンがリクエストされているWebサービスのエンドポイント・アドレスが送信されます。デフォルト動作では、クライアントからSTSへのメッセージでappliesTo要素が常に送信されます。

True

require-client-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が求められる場合、要求者は証明鍵の計算に含めることができる鍵の内容の一部(エントロピ)を渡すことができます。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

HOKのみに適用。

require-server-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が求められる場合、要求者は証明鍵の計算に含めることができる鍵の内容の一部(エントロピ)を渡すことができます。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

HOKのみに適用。

trust -version

WS-Trustのバージョン。

1.3

require-external-reference

トークンの外部参照が必要かどうかを指定します。

True

require-internal-reference

トークンの内部参照が必要かどうかを指定します。

True

use-derived-keys

導出キーが必要かどうかを指定します。

False

token-type

SAMLトークン・タイプ。有効な値は1.1のみです。

SAML11

key-type

キー・タイプ。有効な値はbearerのみです。

bearer

mutual-auth

双方向認証が必要かどうかを指定するフラグ。

有効な値は次のとおりです。

- Enabled: サービスをクライアントに対して認証し、クライアントをサービスに対して認証する必要があります。

- Disabled: 一方向認証が必要です。サービスをクライアントに対して認証する必要がありますが、クライアントをサービスに対して認証する必要はありません。

False

include-timestamp

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

True

構成

表C-101は、oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-101 oracle/wss_sts_issued_saml_bearer_token_over_ssl_client_templateのプロパティ

名前

説明

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

XML形式で、アプリケーション・レベルのマップ名をこのプロパティのValueとして指定します。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

sts.auth.user.csf.key

STSに対する認証用のユーザー名/パスワードを構成する場合に使用します。

クライアントのoracle/sts_trust_config_client_template内のpolicy-reference-uriがユーザー名ベースのポリシーを指している場合は、sts.auth.user.csf.keyプロパティを構成して、STSに対する認証用のユーザー名/パスワードを指定します。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.auth.x509.csf.key

STSに対する認証用のX509証明書を構成する場合に使用します。

クライアントのoracle/sts_trust_config_client_template内のpolicy-reference-uriがx509ベースのポリシーを指している場合は、sts.auth.x509.csf.keyプロパティを構成して、STSに対する認証用のX509証明書を指定します。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

on.behalf.of

オプションのプロパティ。リクエストが別のエンティティの代理かどうかを指定するには、このプロパティをオーバーライドします。このフラグのデフォルト値はfalseです。

trueに設定され、sts.auth.on.behalf.of.csf.keyが構成されている場合、これが優先されて、CSFキーを使用して確立されたアイデンティティがかわりに送信されます。

それ以外の場合、サブジェクトがすでに確立されていれば、サブジェクトのユーザー名がonBehalfOfトークンとして送信されます。

sts.auth.on.behalf.of.csf.keyが設定されておらず、サブジェクトも存在しない場合、on.behalf.ofは、他のエンティティではなくリクエスタのトークン交換として処理されます。リクエスト内のonBehalfOf要素には含まれません。

デフォルト設定:

- 値: false

- ContentType: オプション

sts.auth.on.behalf.of.csf.key

オプションのプロパティ。代理エンティティの構成で使用します。存在する場合、サブジェクト(存在する場合)より優先されます。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.auth.service.principal.name

保護する必要があるWebサービスのプリンシパル名。<host>/<machine name>@<REALM NAME>の形式で指定します。たとえば、HTTP/mymachine@EXAMPLEREALM.COMです。

デフォルト設定:

- 値: HOST/localhost@EXAMPLE.COM

- ContentType: オプション

sts.auth.keytab.location

クライアントのキータブ・ファイルの場所。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.keystore.recipient.alias

キーストアに追加したSTS証明書の別名。デフォルトの別名はsts-csf-keyです。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.auth.caller.principal.name

ktpassコマンドを使用して生成されたクライアントのプリンシパル名で、kerberosトークンの生成先のユーザー名にマップされます。<username>@<REALM NAME>の形式で指定します。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_template

このテンプレートは、信頼できるSTSが発行したSAML Bearerアサーションを認証します。メッセージは、SSLを使用して保護されます。

設定

表C-100は、oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_templateアサーション・テンプレートの設定を示しています。

構成

表C-102は、oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-102 oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_templateのプロパティ

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: ultimateReceiver

- デフォルト: 未設定

- ContentType: 定数

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss11_sts_issued_saml_hok_with_message_protection_client_template

このテンプレートは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML HOKアサーションを挿入します。メッセージは、STSで提供される証明鍵マテリアルを使用して保護されます。

設定

表C-103は、wss11_sts_issued_saml_hok_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-103 oracle/wss11_sts_issued_saml_hok_with_message_protection_client_templateの設定

名前

説明

デフォルト値

require-applies-to

RSTのオプション要素。存在する場合、Oracle WSMによって、トークンがリクエストされているWebサービスのエンドポイント・アドレスが送信されます。デフォルト動作では、クライアントからSTSへのメッセージでappliesTo要素が常に送信されます。

True

require-client-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が求められる場合、要求者は証明鍵の計算に含めることができる鍵の内容の一部(エントロピ)を渡すことができます。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

True

require-server-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が求められる場合、要求者は証明鍵の計算に含めることができる鍵の内容の一部(エントロピ)を渡すことができます。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

True

trust -version

WS-Trustのバージョン。

1.3

require-external-reference

トークンの外部参照が必要かどうかを指定します。

True

require-internal-reference

トークンの内部参照が必要かどうかを指定します。

True

use-derived-keys

導出キーが必要かどうかを指定します。

False

token-type

SAMLトークン・タイプ。有効な値は、1.1および2.0のみです。

SAML11およびSAML20

key-type

キー・タイプ。

symmetric

is-signed

SAMLトークンを署名するかどうかを指定するフラグ。SAMLポリシーの場合、有効な値はTrueのみです。

True

is-encrypted

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

confirm-signature

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。

True

sign-key-ref-mech

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

- thumbprint: 証明書のコンテンツのメッセージ・ダイジェスト(SHA1ハッシュ)。証明書を格納する、オーバーヘッドの少ない方法を提供します。この値は、「暗号化キー参照メカニズム」(後述)に対してのみ有効です。

Thumbprint

enc-key-ref-mech

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

Thumbprint

encrypt-signature

署名を暗号化するかどうかを指定するフラグ。

False

sign-then-encrypt

リクエストが署名され、暗号化されるかどうかを指定するフラグ。

True

algorithm-suite

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

include-timestamp

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

True

構成

表C-104は、wss11_sts_issued_saml_hok_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-104 oracle/wss11_sts_issued_saml_hok_with_message_protection_client_templateのプロパティ

名前

説明

sts.auth.user.csf.key

STSに対する認証用のユーザー名/パスワードを構成する場合に使用します。

クライアントのoracle/sts_trust_config_client_template内のpolicy-reference-uriがユーザー名ベースのポリシーを指している場合は、sts.auth.user.csf.keyプロパティを構成して、STSに対する認証用のユーザー名/パスワードを指定します。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.auth.x509.csf.key

STSに対する認証用のX509証明書を構成する場合に使用します。

クライアントのoracle/sts_trust_config_client_template内のpolicy-reference-uriがx509ベースのポリシーを指している場合は、sts.auth.x509.csf.keyプロパティを構成して、STSに対する認証用のX509証明書を指定します。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

on.behalf.of

オプションのプロパティ。リクエストが別のエンティティの代理かどうかを指定するには、このプロパティをオーバーライドします。このフラグのデフォルト値はfalseです。

trueに設定され、sts.auth.on.behalf.of.csf.keyが構成されている場合、これが優先されて、CSFキーを使用して確立されたアイデンティティがかわりに送信されます。

それ以外の場合、サブジェクトがすでに確立されていれば、サブジェクトのユーザー名がonBehalfOfトークンとして送信されます。

sts.auth.on.behalf.of.csf.keyが設定されておらず、サブジェクトも存在しない場合、on.behalf.ofは、他のエンティティではなくリクエスタのトークン交換として処理されます。リクエスト内のonBehalfOf要素には含まれません。

sts.auth.on.behalf.of.csf.key

オプションのプロパティ。代理エンティティの構成で使用します。存在する場合、サブジェクト(存在する場合)より優先されます。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.keystore.recipient.alias

キーストアに追加したSTS証明書の別名。デフォルトの別名はsts-csf-keyです。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: orakey

- ContentType: 必須
ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

XML形式で、アプリケーション・レベルのマップ名をこのプロパティのValueとして指定します。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、keystore.enc.csf.keyをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.auth.service.principal.name

保護する必要があるWebサービスのプリンシパル名。<host>/<machine name>@<REALM NAME>の形式で指定します。たとえば、HTTP/mymachine@EXAMPLEREALM.COMです。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.auth.keytab.location

クライアントのキータブ・ファイルの場所。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.auth.caller.principal.name

ktpassコマンドを使用して生成されたクライアントのプリンシパル名で、kerberosトークンの生成先のユーザー名にマップされます。<username>@<REALM NAME>の形式で指定します。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss11_sts_issued_saml_hok_with_message_protection_service_template

このテンプレートは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML HOKアサーションを認証します。メッセージは、対称鍵テクノロジのWS-SecurityのBasic 128スイートを使用して保護されます。

設定

表C-103は、wss11_sts_issued_saml_hok_with_message_protection_service_templateアサーション・テンプレートの設定を示しています。

構成

表C-105は、wss11_sts_issued_saml_hok_with_message_protection_service_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なWebサービス・ポリシーの添付」を参照してください。

表C-105 oracle/wss11_sts_issued_saml_hok_with_message_protection_service_templateのプロパティ

名前

説明

role

SOAPロール。

デフォルト設定:

- 値: ultimateReceiver

- デフォルト: 未設定

- ContentType: 定数

- 説明: 未設定

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

XML形式で、アプリケーション・レベルのマップ名をこのプロパティのValueとして指定します。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

keystore.enc.csf.key

「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、keystore.enc.csf.keyをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/wss11_sts_issued_saml_with_message_protection_client_template

このテンプレートは、信頼できるSTS (セキュリティ・トークン・サービス)が発行したSAML送信者保証アサーションを挿入します。メッセージは、クライアントの秘密鍵を使用して保護されます。

設定

表C-106は、 wss11_sts_issued_saml_with_message_protection_client_templateアサーション・テンプレートの設定を示しています。

表C-106 wss11_sts_issued_saml_with_message_protection_client_templateの設定

名前

説明

デフォルト値

require-applies-to

RSTのオプション要素。存在する場合、Oracle WSMによって、トークンがリクエストされているWebサービスのエンドポイント・アドレスが送信されます。デフォルト動作では、クライアントからSTSへのメッセージでappliesTo要素が常に送信されます。

True

require-client-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が求められる場合、要求者は証明鍵の計算に含めることができる鍵の内容の一部(エントロピ)を渡すことができます。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

HOKのみに適用。

require-server-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が求められる場合、要求者は証明鍵の計算に含めることができる鍵の内容の一部(エントロピ)を渡すことができます。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

HOKのみに適用。

trust-version

WS-Trustのバージョン。

1.3

require-external-reference

トークンの外部参照が必要かどうかを指定します。

True

require-internal-reference

トークンの内部参照が必要かどうかを指定します。

True

use-derived-keys

導出キーが必要かどうかを指定します。

False

token-type

SAMLトークン・タイプ。有効な値は1.1のみです。

SAML11

is-signed

SAMLトークンを署名するかどうかを指定するフラグ。SAMLポリシーの場合、有効な値はTrueのみです。

True

is-encrypted

SAMLトークンを暗号化するかどうかを指定するフラグ。

False

confirm-signature

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。

True

sign-key-ref-mech

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

- thumbprint: 証明書のコンテンツのメッセージ・ダイジェスト(SHA1ハッシュ)。証明書を格納する、オーバーヘッドの少ない方法を提供します。この値は、「暗号化キー参照メカニズム」(後述)に対してのみ有効です。

Direct

enc-key-ref-mech

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

Thumbprint

encrypt-signature

署名を暗号化するかどうかを指定するフラグ。

False

sign-then-encrypt

リクエストが署名され、暗号化されるかどうかを指定するフラグ。

True

algorithm-suite

メッセージ保護に使用されるアルゴリズム・スイート。「サポートされているアルゴリズム・スイート」を参照してください。

Basic128

include-timestamp

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

True

構成

表C-107は、wss11_sts_issued_saml_with_message_protection_client_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。構成プロパティ設定の詳細は、「構成プロパティの編集」を参照してください。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

表C-107 oracle/wss11_sts_issued_saml_with_message_protection_client_templateのプロパティ

名前

説明

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

このプロパティのValueにアプリケーション・レベルのマップ名を指定すると、デフォルトのドメイン・レベルのOracle WSMマップをオーバーライドできます。例:
Value=app-level-mapname.map

XML形式で、アプリケーション・レベルのマップ名をこのプロパティのValueとして指定します。

<orawsp:Property orawsp:contentType="optional"
orawsp:name="csf.map" orawsp:type="string"/>
<orawsp:Value>app-level-mapname.map</orawsp:Value>
</orawsp:Property>

アプリケーション・レベルのマップへのアクセスでは、wsm-agent-core.jarへの資格証明アクセス権限およびアイデンティティ権限も付与する必要があります(「アプリケーション・レベルの資格証明マップの作成」を参照)。

sts.auth.user.csf.key

STSに対する認証用のユーザー名/パスワードを構成する場合に使用します。

クライアントのoracle/sts_trust_config_client_template内のpolicy-reference-uriがユーザー名ベースのポリシーを指している場合は、sts.auth.user.csf.keyプロパティを構成して、STSに対する認証用のユーザー名/パスワードを指定します。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.auth.x509.csf.key

STSに対する認証用のX509証明書を構成する場合に使用します。

クライアントのoracle/sts_trust_config_client_template内のpolicy-reference-uriがx509ベースのポリシーを指している場合は、sts.auth.x509.csf.keyプロパティを構成して、STSに対する認証用のX509証明書を指定します。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

on.behalf.of

オプションのプロパティ。リクエストが別のエンティティの代理かどうかを指定するには、このプロパティをオーバーライドします。このフラグのデフォルト値はtrueです。

trueに設定され、sts.auth.on.behalf.of.csf.keyが構成されている場合、これが優先されて、CSFキーを使用して確立されたアイデンティティがかわりに送信されます。

それ以外の場合、サブジェクトがすでに確立されていれば、サブジェクトのユーザー名がonBehalfOfトークンとして送信されます。

sts.auth.on.behalf.of.csf.keyが設定されておらず、サブジェクトも存在しない場合、on.behalf.ofは、他のエンティティではなくリクエスタのトークン交換として処理されます。リクエスト内のonBehalfOf要素には含まれません。

sts.auth.on.behalf.of.csf.key

オプションのプロパティ。代理エンティティの構成で使用します。存在する場合、サブジェクト(存在する場合)より優先されます。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

sts.keystore.recipient.alias

キーストアに追加したSTS証明書の別名。デフォルトの別名はsts-csf-keyです。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。

デフォルト設定:

- 値: orakey

- ContentType: オプション

keystore.enc.csf.key

「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、keystore.enc.csf.keyをオーバーライドできます。

この値をオーバーライドする場合は、新しい値のキーがキーストアにあることが必要です。つまり、値をオーバーライドしても、キーをキーストアに構成する必要がなくなるわけではありません。

デフォルト設定:

- 値: 未設定

- ContentType: オプション

ignore.timestamp.in.response

サービスからレスポンスを受信したときにSOAPセキュリティ・ヘッダー内のタイムスタンプを無視するために、クライアントが使用するプロパティ。デフォルト動作では、タイムスタンプは無視されません(このプロパティのデフォルト値はfalse)。trueに設定されている場合、レスポンス・メッセージ内にタイムスタンプは必要ありません。タイムスタンプがある場合は、無視されます。

タイムスタンプは、リプレイ攻撃を防止するために必要です。そのため、相互運用性の問題を解決する場合を除いて、通常は、このプロパティをtrueに設定することはお薦めできません。

注意: このプロパティはFusion Middleware Controlには表示されません。プロパティの追加の詳細は、「ユーザー定義のクライアント側またはサーバー側のオーバーライド・プロパティの構成」を参照してください。

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

認可アサーション・テンプレート

表C-108に、認可に使用されるアサーション・テンプレートをまとめます。それぞれの認可アサーション・テンプレートは、認証アサーション・テンプレートの後に続ける必要があります。

表C-108 認可アサーション・テンプレート

サービス・テンプレート

説明

oracle/binding_authorization_template

SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を行います。

oracle/binding_permission_authorization_template

SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単な権限ベースの認可を行います。

oracle/component_authorization_template

SOAコンポーネント・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を行います。

oracle/component_permission_authorization_template

SOAコンポーネント・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単な権限ベースの認可を行います。

oracle/binding_authorization_template

binding_authorization_templateアサーション・テンプレートは、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を行います。認証アサーション・テンプレートの後に続ける必要があります。

設定

表C-109にbinding_authorization_templateアサーション・テンプレートの設定をリストします。

表C-109 binding_authorization_templateの設定

名前

説明

デフォルト値

制約パターン

認可チェックが実行される制約を表す式。制約式は、次の2つのmessageContextプロパティを使用して指定します。

- messageContext.authenticationMethod: ユーザーの認証に使用する認証方法を決定します。有効な値はSAML_SVです。

- messageContext.requestOrigin: リクエストが内部ネットワークまたは外部ネットワークから発行されたかどうかを決定します。このプロパティは、Oracle HTTP Serverを使用しており、Oracle HTTP Server管理者がカスタムのVIRTUAL_HOST_TYPEヘッダーをリクエストに追加した場合のみ有効です。

制約パターン・プロパティとその値では、大文字と小文字が区別されます。

制約式では、サポートされている標準的な演算子(==、!=、&&、||、!)を使用します。

アクション・パターン

認可チェックが実行されるアクションまたはWebサービス操作。この値は、値のカンマ区切りのリストにすることもできます。このフィールドではワイルドカードを使用できます。

たとえば、validate,amountAvailableのようになります。

actionMatchPattern

リソース・パターン

認可チェックが実行されるリソースの名前。このフィールドではワイルドカードを使用できます。

たとえば、Webサービスの名前空間がhttp://project11で、サービス名がCreditValidationの場合、リソース名はhttp://project11/CreditValidationになります。

resourceMatchPattern

認証設定

認可されたロールを指定します。

有効な値は次のとおりです。

- すべてを許可: すべてのロールのユーザーを許可します。

- すべてを拒否: ロールを持つすべてのユーザーを拒否します。

- 選択したロール: 選択したロールを許可します。

ロールを追加するには、次のようにします。

1. 「追加」をクリックします。

2. ロールを追加するには、「使用可能なロール」列の追加する各ロールの隣にあるチェック・ボックスをクリックし、「移動」をクリックします。すべてのロールを追加するには、「すべて移動」をクリックします。
ロールを削除するには、「追加対象として選択したロール」列の削除する各ロールの隣にあるチェック・ボックスをクリックし、「削除」をクリックします。すべてのロールを削除するには、「すべて削除」をクリックします。

ロールを検索するには、「ロール名」検索ボックスに検索文字列を入力して、実行の矢印をクリックします。検索文字列に一致するロールのみが含まれるように、「使用可能なロール」列が更新されます。

3. 「OK」をクリックします。

ロールを削除するには、次のようにします。

1. 「選択したロール」リストで削除するロールを選択します。

2. 「削除」をクリックします。

選択したロール

構成

定義されていません。

oracle/binding_permission_authorization_template

binding_permission_authorization_templateアサーションは、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単な権限ベースの認可を行います。認証アサーションの後に続く必要があります。

設定

表C-110にbinding_permission_authorization_templateアサーション・テンプレートの設定をリストします。

表C-110 binding_permission_authorization_templateの設定

名前

説明

デフォルト値

制約パターン

今後の使用のため予約済です。

N/A

アクション・パターン

権限ベースの確認が実行されるアクションまたはWebサービス操作。この値は、値のカンマ区切りのリストにすることもできます。このフィールドではワイルドカードを使用できます。

たとえば、validate,amountAvailableのようになります。

*

リソース・パターン

権限ベースの確認が実行されるリソースの名前。このフィールドではワイルドカードを使用できます。

たとえば、Webサービスの名前空間がhttp://project11で、サービス名がCreditValidationの場合、リソース名はhttp://project11/CreditValidationになります。

*

権限チェック・クラス

権限ベースの確認に使用されるクラス。たとえば、oracle.wsm.security.WSFuncPermissionです。

N/A

構成

表C-111は、binding_permission_authorization_templateアサーション・テンプレートの構成プロパティを示しています。

表C-111 binding_permission_authorization_templateのプロパティ

名前

説明

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。添付ポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先順位を持つポリシーを、そのスコープにかかわらず、競合するポリシー添付より優先します。

デフォルト設定:

- 値: 未設定

- デフォルト: 未設定

- ContentType: オプション

- 説明: 未設定

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先順位が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

oracle/component_authorization_template

component_authorization_templateアサーションは、SOAコンポーネント・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を行います。認証アサーションの後に続く必要があります。

設定

表C-112にcomponent_authorization_templateアサーション・テンプレートの設定をリストします。

表C-112 component_authorization_templateの設定

名前

説明

デフォルト値

認証設定

認可されたロールを指定します。

有効な値は次のとおりです。

- すべてを許可: すべてのロールのユーザーを許可します。

- すべてを拒否: ロールを持つすべてのユーザーを拒否します。

- 選択したロール: 選択したロールを許可します。

ロールを追加するには、次のようにします。

1. 「追加」をクリックします。

2. ロールを追加するには、「使用可能なロール」列の追加する各ロールの隣にあるチェック・ボックスをクリックし、「移動」をクリックします。すべてのロールを追加するには、「すべて移動」をクリックします。
ロールを削除するには、「追加対象として選択したロール」列の削除する各ロールの隣にあるチェック・ボックスをクリックし、「削除」をクリックします。すべてのロールを削除するには、「すべて削除」をクリックします。

ロールを検索するには、「ロール名」検索ボックスに検索文字列を入力して、実行の矢印をクリックします。検索文字列に一致するロールのみが含まれるように、「使用可能なロール」列が更新されます。

3. 「OK」をクリックします。

ロールを削除するには、次のようにします。

1. 「選択したロール」リストで削除するロールを選択します。

2. 「削除」をクリックします。

選択したロール

構成

定義されていません。

oracle/component_permission_authorization_template

component_permission_authorization_templateアサーション・テンプレートは、SOAコンポーネント・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単な権限ベースの認可を行います。認証アサーションの後に続く必要があります。

注意:
system-jazn-data.xmlで指定したセキュリティ権限の緩和は、複数のサービス操作の実施に適用されるため、権限ベースのポリシーをEJBで使用する場合は注意が必要です。

設定

表C-113にcomponent_permission_authorization_templateアサーション・テンプレートの設定をリストします。

表C-113 component_permission_authorization_templateの設定

名前

説明

デフォルト値

制約パターン

今後の使用のため予約済です。

N/A

アクション・パターン

権限ベースの確認が実行されるアクションまたはWebサービス操作。この値は、値のカンマ区切りのリストにすることもできます。このフィールドではワイルドカードを使用できます。

たとえば、validate,amountAvailableのようになります。

*

リソース・パターン

権限ベースの確認が実行されるリソースの名前。このフィールドではワイルドカードを使用できます。

たとえば、Webサービスのコンポジット名がHelloWorldで、サービス名がHelloの場合、リソース名はHelloWorld/Helloになります。

*

権限チェック・クラス

権限ベースの確認に使用されるクラス。たとえば、oracle.wsm.security.WSFunctionPermissionです。

N/A

構成

定義されていません。

Oracle Entitlements Server (OES)統合用のテンプレート

表C-114は、OES統合に使用されるアサーション・テンプレートの概要を示しています。

表C-114 OES統合用のテンプレート

サービス・テンプレート

説明

oracle/binding_oes_authorization_template

Oracle Entitlements Server (OES)で定義されたポリシーに基づき、認可を設定します。

oracle/binding_oes_masking_template

Oracle Entitlements Server (OES)で定義されたポリシーに基づき、レスポンス・マスキングを実行します。

oracle/component_oes_authorization_template

Oracle Entitlements Server (OES)で定義されたポリシーに基づき、認可を設定します。このテンプレートは、SCAコンポーネントのファイングレイン認可に使用されます。

oracle/binding_oes_authorization_template

binding_oes_authorization_templateアサーション・テンプレートは、Oracle Entitlements Server (OES)で定義されたポリシーに基づき、認可を設定します。認可は、属性、現在の認証されたサブジェクト、およびクライアントが起動したWebサービスのアクションに基づいています。このテンプレートは、Webサービスの任意の操作におけるファイングレイン認可に使用されます。このテンプレートに基づいたポリシーは、サブジェクトが確立される認証ポリシーに従う必要があります。このテンプレートに基づくポリシーは、任意のSOAPベースまたはRESTベースのエンドポイントに割り当てることができます。

設定

表C-115は、binding_oes_authorization_templateアサーション・テンプレートの設定を示しています。

表C-115 binding_oes_authorization_templateの設定

名前

説明

デフォルト値

Guard

要素は、リソースとアクションが一致する値を定義します。

N/A

アクション一致

認可チェックが実行されるアクションまたはWebサービス操作を指定します。この値は、値のカンマ区切りのリストにすることもできます。このフィールドではワイルドカードを使用できます。

*

Resource Match

認可チェックが実行されるリソースの名前を指定します。このフィールドではワイルドカードを使用できます。

たとえば、Webサービスのネームスペースがhttp://project11で、サービス名がCreditValidationの場合、リソース名はhttp://project11/CreditValidationになります。

*

構成

表C-116は、binding_oes_authorization_templateアサーション・テンプレートの構成プロパティおよびデフォルト設定を示しています。

表C-116 binding_oes_authorization_templateの構成プロパティ

名前

説明

デフォルト値

application name

OESに定義されたデプロイされたアプリケーション名。(SOAの場合、コンポジット名がアプリケーション名として使用されます。)

${}表記法を使用した値は、静的にも動的にもできます。

N/A

resource.type

OESに定義されたリソース・タイプ。${}表記法を使用した値は、静的にも動的にもできます。

- SOAPアプリケーションの場合、WS_SERVICEである必要があります。

- SOAコンポーネントの場合、COMPONENTである必要があります。

N/A

resource.name

OESに定義されたリソース名。${}表記法を使用した値は、静的にも動的にもできます。

- SOAPおよびSOA参照の場合、web-service-name/port/web service operationの形式である必要があります。

- SOAコンポーネントの場合、SOA component name/web service operationの形式である必要があります。

N/A

lookup.action

属性の参照時に使用されるアクションです。request.lookupまたはresponse.lookupを使用できます。

${}表記法を使用した値は、静的にも動的にもできます。

N/A

execute.action

実際の認可またはマスキングで使用されるアクションです。デフォルト値は、認可ユースケースではauthorize、マスキング・ユースケースではmaskです。

${}表記法を使用した値は、静的にも動的にもできます。

N/A

use.single.step

参照フェーズを省略するには、値をtrueに設定します。マスキング・ポリシーには適用されません。

false

reference.priority

ポリシー添付の優先順位を指定するオプションのプロパティ。

N/A

oracle/binding_oes_masking_template

oracle/binding_oes_masking_templateテンプレートは、Oracle Entitlements Server (OES)で定義されたポリシーに基づいてレスポンス・マスキングを実行します。マスキングは、属性、現在の認証済サブジェクト、およびクライアントが起動したWebサービスのアクションに基づいています。このテンプレートは、Webサービスの任意の操作におけるファイングレイン・マスキングに使用されます。

設定

表C-115は、oracle/binding_oes_masking_templateアサーション・テンプレートの設定を示しています。

構成

表C-116は、oracle/binding_oes_masking_templateアサーション・テンプレートの構成プロパティとデフォルト設定を示しています。

oracle/component_oes_authorization_template

component_oes_authorization_templateアサーション・テンプレートは、Oracle Entitlements Server (OES)で定義されたポリシーに基づき、ユーザー認可を設定します。認可は、属性、現在の認証済サブジェクト、およびクライアントが起動したWebサービスのアクションに基づいています。このテンプレートは、SCAコンポーネントのファイングレイン認可に使用されます。

設定

表C-115は、component_oes_authorization_templateアサーション・テンプレートの設定を示しています。

構成

表C-116は、component_oes_authorization_templateアサーション・テンプレートの構成プロパティおよびデフォルト設定を示しています。

サポートされているアルゴリズム・スイート

表C-117は、メッセージ保護でサポートされているアルゴリズム・スイートを示しています。アルゴリズム・スイートを使用すると、メッセージ保護に使用されるアルゴリズムの暗号文字を制御できます。

次のURLで入手可能なWS-SecurityPolicy 1.2に標準アルゴリズム・スイートのグループが定義されています。

http://docs.oasis-open.org/ws-sx/ws-securitypolicy/v1.3/errata01/os/ws-securitypolicy-1.3-errata01-os-complete.html#_Toc325573605

各スイートの対称署名(Sym Sig)および非対称署名(Asym Sig)は、それぞれHmacSha1およびRsaSha1に次のようにデフォルト設定されます。

プロパティ・アルゴリズム

値

[Sym Sig]

HmacSha1

[Asym Sig]

RsaSha1

OWSMには、次の表に示す拡張アルゴリズム・スイートも用意されています。

プロパティ・アルゴリズム

値

[Sym Sig]

HmacSha256

[Asym Sig]

RsaSha256

XML署名RSA-SHA256およびHMAC-SHA256は、次のURLで入手可能なw3c XML Security Algorithm Cross-Reference仕様で定義されています。

http://www.w3.org/TR/xmlsec-algorithms/

注意:

- 次のアルゴリズム・スイートは、対称署名を使用するwss11ポリシーのみに対してFIPS準拠です。

- FIPSの詳細は、Oracle WebLogic Serverの保護のFIPSモードの有効化を参照してください。

- FIPS 140-2のサポートには、Oracle JDK 1.7.0_80以降およびRSA Crypto-J V6.2.0.1モジュールが必要です。

- OWSM用のSSL FIPS 140-2の詳細は、My Oracle Supportのサポート・ドキュメント2115681.1を参照してください。

表C-117 サポートされているアルゴリズム・スイート

アルゴリズム・スイート

ダイジェスト

暗号化

対称鍵のラップ

非対称鍵のラップ

暗号化鍵の導出

署名キーの導出

署名キーの最小長

対称署名

非対称署名

Basic256

Sha1

Aes256

KwAes256

KwRsaOaep

PSha1L256

PSha1L192

256

HmacSha1

RsaSha1

Basic192

Sha1

Aes192

KwAes192

KwRsaOaep

PSha1L192

PSha1L192

192

HmacSha1

RsaSha1

Basic128

Sha1

Aes128

KwAes128

KwRsaOaep

PSha1L128

PSha1L128

128

HmacSha1

RsaSha1

TripleDes

Sha1

TripleDes

KwTripleDes

KwRsaOaep

PSha1L192

PSha1L192

192

HmacSha1

RsaSha1

Basic256Rsa15

Sha1

Aes256

KwAes256

KwRsa15

PSha1L256

PSha1L192

256

HmacSha1

RsaSha1

Basic192Rsa15

Sha1

Aes192

KwAes192

KwRsa15

PSha1L192

PSha1L192

192

HmacSha1

RsaSha1

Basic128Rsa15

Sha1

Aes128

KwAes128

KwRsa15

PSha1L128

PSha1L128

128

HmacSha1

RsaSha1

TripleDesRsa15

Sha1

TripleDes

KwTripleDes

KwRsa15

PSha1L192

PSha1L192

192

HmacSha1

RsaSha1

注意:
Oracle Enterprise Manager Fusion Middleware Controlを使用し、ステップに従って、事前定義済のポリシーから新規ポリシーを作成して、アルゴリズム・スイートを変更できます。詳細は、次を参照してください。

- Oracle® Fusion Middleware Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のカスタム・ポリシーの作成

- Oracle® Fusion Middleware Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のWebサービス・ポリシーの編集

リクエスト、レスポンスおよびフォルト・メッセージへの署名と暗号化の設定

表C-118は、リクエスト、レスポンスおよびフォルト・メッセージの設定を示しています。これらの設定は、メッセージの署名および暗号化用に構成します。

表C-118 リクエスト、レスポンスおよびフォルト・メッセージへの署名と暗号化の設定

名前

説明

デフォルト値

本体全体を含める

SOAPメッセージのボディ全体に署名するか暗号化します。

falseの場合は、「本体要素」セクションを使用して特定の本体要素を追加できます。

リクエストおよびレスポンス・メッセージの場合はTrue

フォルト・メッセージの場合はFalse

SwA添付を含める

添付ファイル付きSOAPメッセージに署名するか暗号化します。

注意: このフィールドは、MTOMアタッチメントには適用されません。

False

MIMEヘッダーを含める

MIMEヘッダー付きのSOAP添付ファイルに署名するか暗号化します。

注意: このフィールドは、「SwAアタッチメントを含める」が有効な場合に有効であり、適用されます。MTOM添付には適用されません。

False

ヘッダー要素

指定されたSOAPヘッダー要素に署名するか暗号化します。

ヘッダー要素を追加するには、次のようにします。

1. 「追加」をクリックします。

2. ネームスペースURIを入力します。

3. ヘッダー要素のローカル名を入力します。

4. 「OK」をクリックします。

ヘッダー要素を編集するには、次のようにします。

1. 「ヘッダー要素」リストで、編集するヘッダー要素を選択します。

2. 「編集」をクリックします。

3. 必要に応じて値を変更します。

4. 「OK」をクリックします。

ヘッダー要素を削除するには、次のようにします。

1. 「ヘッダー要素」リストで、削除するヘッダー要素を選択します。

2. 「削除」をクリックします。

3. 確認を要求されたら、「OK」をクリックします。

なし

本体要素

注意: このフィールドは、「本体全体を含める」が無効化されている場合に使用できます。

指定された本体要素に署名するか暗号化します。このフィールドは、「ボディを含める」が無効化されている場合に使用できます。

本体要素を追加するには、次のようにします。

1. 「追加」をクリックします。

2. ネームスペースURIを入力します。

3. ヘッダー要素のローカル名を入力します。

4. 「OK」をクリックします。

本体要素を編集するには、次のようにします。

1. 「本体要素」リストで、編集するbpdu要素を選択します。

2. 「編集」をクリックします。

3. 必要に応じて値を変更します。

4. 「OK」をクリックします。

本体要素を削除するには、次のようにします。

1. 「本体要素」リストで、削除する本体要素を選択します。

2. 「削除」をクリックします。

3. 確認を要求されたら、「OK」をクリックします。

なし

管理アサーション・テンプレート

表C-119に、管理アサーション・テンプレートをまとめます。

表C-119 管理アサーション・テンプレート

名前

説明

oracle/security_log_template

任意のバインディングまたはコンポーネントに添付できるロギング・アサーション・テンプレートを提供します。

oracle/security_log_template

security_log_templateアサーション・テンプレートは、すべてのバインディングまたはコンポーネントに添付可能な、ロギング・アサーション・テンプレートを提供します。

注意:
ロギング・アサーションは、デバッグおよび監査にのみ使用することをお薦めします。

設定

表C-120は、security_log_templateアサーション・テンプレートの設定を示しています。

表C-120 security_log_templateの設定

名前

説明

デフォルト値

リクエスト

ロギング・リクエスト・メッセージの要件。

有効な値は次のとおりです。

- all: SOAPメッセージ全体が記録されます。

- header: SOAPヘッダー情報のみが記録されます。

- soap_body: SOAP本文の情報のみが記録されます。

- soap_envelope: SOAPエンベロープの情報のみが記録されます。

すべて

レスポンス

ロギング・レスポンス・メッセージの要件。有効な値は、前述の「リクエスト」と同じです。

soap_body

構成

定義されていません。

動作無効アサーション・テンプレート

「動作無効ポリシー」で説明されている、事前定義済の各動作無効ポリシーは、そのカテゴリの動作を基本的に実行しない同じアサーションを使用します。

このアサーション用のアサーション・テンプレートは提供されていません。そのため、動作無効ポリシーは削除しないことが重要です。削除すると、再作成できないため、元のポリシーでリポジトリをリストアする必要があります。リポジトリのリストアの詳細は、「Oracle WSMリポジトリの再構築」を参照してください。

D 事前定義済アサーションのスキーマ参照

この付録では、Webサービス・アサーションを含むWS-Policyファイルを作成するときに参照するXMLスキーマについて説明します。この付録には、次の項があります。

- 図解

- 要素の説明

図解

次の図は、WS-Policyファイルのアサーションの要素階層を表しています。

図D-1 アサーションの要素階層

次の項では、各要素とそのサブ要素をより詳細に説明します。

- wsp:Policy

- wsp:ExactlyOne

- orasp:Assertion

- orawsp:bindings

- orawsp:Config

- orawsp:PropertySet

- orawsp:Property

- orawsp:Description

- orawsp:Value

- orawsp:guard

- orawsp:resource-match

- orawsp:action-match

- orawsp:constraint-match

要素の説明

次の項では、アサーションの要素をより詳細に説明します。まず、主要素を説明します。サブ要素については、主要素の後でアルファベット順に説明します。

wsp:Policy

ネストされたポリシー・アサーションをグループ化します。

属性

次の表には、Oracle拡張機能を含めたWS-Policy属性がまとめられています。

表D-1 WS-PolicyのOracle拡張機能属性

属性

説明

名前

ポリシーの名前。

attachTo

ポリシーを添付できるポリシー・サブジェクト。有効な値は、binding.client、binding.server、binding.anyです。

category

ポリシーのカテゴリ。有効な値は、security、mtom、wsrm、addressing、managementです。

description

ポリシーの説明。

displayName

ユーザー・インタフェースに表示される名前。

localOptimization

ローカルの最適化を有効にするかどうかを指定するフラグ。Oracle WSMでは、コンポジットからコンポジットを起動できるようにするSOAのローカルの最適化機能がサポートされています。この機能では、一方のコンポジットの参照でもう一方のコンポジットにバインディングするWebサービスを指定します。有効な値は次のとおりです。

- On: ローカルの最適化が有効です。

- Off: ローカルの最適化が無効です。リクエストの実行は、通常のWS/SOAP/HTTPプロセスと同じです。

- check-identity: JAASサブジェクトが現在のスレッドにすでに存在し、認証がすでに成功したことを示している場合にのみ最適化します。存在しない場合は、通常のWS/SOAP/HTTPプロセスが実行されます。

status

ポリシー参照のステータス。有効な値は、enabledおよびdisabledです。

smartDigest

スマート・ダイジェスト。

oraSmartDigest

スマート・ダイジェスト。

subjectCount

現在ポリシーが添付されているサブジェクトの数。

versionCreator

現在のバージョンの作成者。

versionNumber

現在のバージョンの数。

versionTime

現在のバージョンが作成された時間。

id

ポリシーのID。

例

<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:oralgp="http://schemas.oracle.com/ws/2006/01/loggingpolicy"
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
Name="oracle/wss11_x509_token_with_message_protection_client_policy"
orawsp:attachTo="binding.client"
orawsp:category="security"
orawsp:description="i18n:oracle.wsm.resources.policydescription.PolicyDescription
Bundle_oracle/wss11_x509_token_with_message_protection_client_policy_PolyDescKey"
orawsp:displayName="i18n:oracle.wsm.resources.policydescription.PolicyDescription
Bundle_oracle/wss11_x509_token_with_message_protection_client_policy_PolyDispNameKey"
orawsp:local-optimization="check-identity"
orawsp:oraSmartDigest="935231872"
orawsp:smartDigest="201244603"
orawsp:status="enabled"
orawsp:versionCreator="mdsInternal"
orawsp:versionNumber="1"
orawsp:versionTime="1238006529607"
wsu:Id="wss11_x509_token_with_message_protection_client_policy">
...
</wsp:Policy>

wsp:ExactlyOne

ORグループを定義するオプション要素。ORグループの詳細は、「複数のポリシー選択肢の定義(ORグループ)」を参照してください。

属性

次の表には、<wsp:ExactlyOne>要素の属性がまとめられています。

表D-2 <wsp:ExactlyOne>要素の属性

要素の属性" width="100%">

属性

説明

名前

これがORグループであることを示すためにORに設定します。

例

<wsp:ExactlyOne orawsp:name="Or">
<orasp:wss11-saml-with-certificates orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/msg-protection, security/authentication"
orawsp:name="WS-Security 1.1 Saml  with certificates">
<orasp:saml-token orasp:confirmation-type="sender-vouches"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:version="1.1"/>
<orasp:x509-token orasp:enc-key-ref-mech="thumbprint" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:confirm-signature="true" orasp:encrypt-signature="false"
orasp:include-timestamp="true" orasp:sign-then-encrypt="true"
orasp:use-derived-keys="false">
...
<orasp:wss11-username-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/authentication,
security/msg-protection"
orawsp:name="WS-Security 1.1 username with certificates">
<orasp:username-token orasp:add-created="false" orasp:add-nonce="false"
orasp:is-encrypted="true" orasp:is-signed="true"
orasp:password-type="plaintext"/>
<orasp:x509-token orasp:enc-key-ref-mech="thumbprint"
orasp:is-encrypted="false" orasp:is-signed="true"
orasp:sign-key-ref-mech="thumbprint"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:confirm-signature="true" orasp:encrypt-signature="false"
orasp:include-timestamp="true" orasp:sign-then-encrypt="true"
orasp:use-derived-keys="false">
...
</wsp:ExactlyOne>

orasp:Assertion

アサーションの主要素。有効なアサーションの要素は次のとおりです。

- oralgp:Logging

- orasp:binding-authorization

- orasp:binding-permission-authorization

- orasp:coreid-security

- orasp:http-oam-security

- orasp:http-jwt-security

- orasp:http-saml20-bearer-security

- orasp:http-security

- orasp:kerberos-security

- orasp:sca-component-authorization

- orasp:sca-component-permission-authorization

- orasp:sts-trust-config

- orasp:wss10-anonymous-with-certificates

- orasp:wss10-mutual-auth-with-certificates

- orasp:wss10-saml-hok-with-certificates

- orasp:wss10-saml-token

- orasp:wss10-saml-with-certificates

- orasp:wss10-username-with-certificates

- orasp:wss11-anonymous-with-certificates

- orasp:wss11-mutual-auth-with-certificates

- orasp:wss11-saml-with-certificates

- orasp:wss11-sts-issued-token-with-certificates

- orasp:wss11-username-with-certificates

- orasp:wss-saml-token-bearer-over-ssl

- orasp:wss-saml-token-over-ssl

- orasp:wss-sts-issued-token-over-ssl

- orasp:wss-username-token

- orasp:wss-username-token-over-ssl

- rm:RMAssertion

- wsaw:UsingAddressing

- wsoma:OptimizedMimeSerialization

属性

次の表には、<orasp:Assertion>要素の属性がまとめられています。

表D-3 <orasp:Assertion>要素の属性

要素の属性" width="100%">

属性

説明

Optional

アサーションがオプションなのか、必須なのかを指定するフラグ。

Silent

アサーションを通知するかどうかを指定するフラグ。trueに設定すると、アサーションは通知されません。

Enforced

現時点でアサーションを有効にするかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

name

アサーションの名前。

description

アサーションの説明。

category

アサーションを適用するカテゴリ。有効な値は、security/authentication、security/msg-protection、security/authorization、security/logging、mtom、wsrm、addressing、managementです。

例

<orasp:wss11-mutual-auth-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/authentication,
security/msg-protection"
orawsp:name="WS-Security 1.1 Mutual Auth with certificates">
...
</orasp:wss11-mutual-auth-with-certificates>

orawsp:bindings

<oraswsp:bindings>要素は、アサーションのバインディングを定義します。この要素には、次のサブ要素が含まれます。

- orawsp:Config

例

<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss11SamlWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>

orawsp:Config

<oraswsp:Config>要素は、アサーションの構成を定義します。この要素には、次のサブ要素を含めることができます。

- orawsp:PropertySet

属性

次の表には、<orawsp:Config>要素の属性がまとめられています。

表D-4 <orawsp:Config>要素の属性

要素の属性" width="100%">

属性

説明

name

構成の名前。

type

構成を適用するカテゴリ。

configType

構成のタイプ。有効な値は、declarativeおよびprogrammaticです。

- declarative: デプロイメント・ディスクリプタおよび構成ファイルを使用して、認証と認可の要件を表します。

- programmatic: アプリケーション内にセキュリティ強制を埋め込みます。

例

<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss11SamlWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>

orawsp:PropertySet

<oraswsp:PropertySet>要素は、ネストされたプロパティをグループ化します。この要素には、次のサブ要素が含まれます。

- orawsp:Property

属性

次の表には、<orawsp:PropertySet>要素の属性がまとめられています。

表D-5 <orawsp:PropertySet>要素の属性

要素の属性" width="100%">

属性

説明

name

プロパティ・セットの名前。

例

<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>

orawsp:Property

<oraswsp:Property>要素は、1つのプロパティを定義します。事前定義済アサーションで使用する有効なプロパティを次にまとめています。

<orawsp:Property>要素には、次のサブ要素を含めることができます。

- orawsp:Value

属性

次の表には、<orawsp:Property>要素の属性がまとめられています。

表D-6 <orawsp:Property>要素の属性

要素の属性" width="100%">

属性

説明

name

プロパティの名前。事前定義済アサーションで使用するプロパティ値のリストは、表D-7を参照してください。

type

プロパティのタイプ。stringなどが該当します。

contentType

プロパティが必須かどうかおよび上書き可能かどうかを指定します。有効な値は次のとおりです。

- constant: プロパティは定数値で、上書きできません。

- required: プロパティは必須で、上書きできます。

- optional: プロパティはオプションで、上書きできます。

ポリシーのオーバーライドの詳細は、「オーバーライド可能なクライアント・ポリシーの添付」を参照してください。

次の表には、事前定義済アサーションで使用するプロパティがまとめられています。

表D-7 事前定義済アサーションで使用するプロパティ

プロパティ

説明

action

認可チェックが実行されるアクションまたはWebサービス操作。この値は、値のカンマ区切りのリストにすることもできます。このフィールドではワイルドカードを使用できます。たとえば、validate,amountAvailableのようになります。

attesting.mapping.attribute

アテスト・エンティティの表現で使用されるマッピング属性。現在サポートされているのはDNのみです。この属性は、送信者保証およびメッセージ保護ユースケースにのみ適用されます。SAML over SSLポリシーには適用されません。

audience.uri

オーディエンス制限。

BaseRetransmissionInterval

メッセージを送信してからメッセージを再送するまでのソース・エンドポイントの待機時間(ミリ秒)。

この要素で指定した時間内に該当メッセージの確認応答を受信できない場合、ソース・エンドポイントでメッセージを再送します。ソース・エンドポイントでは、メッセージ・シーケンスの存続期間内でいつでもこの再送信間隔を変更できます。このアサーションでは送信時にメッセージの形式は変更されません。送信のタイミングのみが変更されます。

この値のデフォルトは3000です。

csf-key

Oracle Platform Security Servicesアイデンティティ・ストアのユーザー名およびパスワードにマップする資格証明ストア・キー。デフォルト値はbasic.credentialsです。

csf.map

CSF別名を含む資格証明ストア内のOracle WSMマップ。

DeliveryAssurance

配信の保証。有効な値は次のとおりです。

- InOrder: メッセージが送信時の順序で配信されます。これがデフォルトです。

- AtLeastOnce: すべてのメッセージが少なくとも1回配信されます。メッセージによっては、2回以上配信されることもあります。

- AtLeastOnceInOrder: すべてのメッセージが送信時の順序で少なくとも1回配信されます。メッセージによっては、2回以上配信されることもあります。

- ExactlyOnce: すべてのメッセージが1回のみ配信されます。メッセージが重複することはありません。

- ExactlyOnceInOrder: すべてのメッセージが送信時の順序で1回のみ配信されます。メッセージが重複することはありません。

- AtMostOnce: メッセージが最大1回配信されます。メッセージが重複することはありません。メッセージによっては、一度も配信されないこともあります。

- AtMostOnceInOrder: メッセージが受信時の順序で最大1回配信されます。メッセージが重複することはありません。メッセージによっては、一度も配信されないこともあります。

jdbc-connection-name

JDBCデータ・ストアへのJNDI参照。StoreTypeがJDBCに設定されている場合に有効になります。この値のデフォルトはjdbc/MessagesStoreです。

InactivityTimeout

メッセージ・シーケンスの非アクティブな期間(ミリ秒)メッセージ・シーケンスは、メッセージのセットとして定義され、一意のシーケンス番号で識別されます。また、特定の配信保障の適用先となります。通常、シーケンスは1つのソース・エンドポイントに基づいています。この要素で指定した期間中に宛先エンドポイントでソース・エンドポイントのメッセージを受信できなかった場合、宛先エンドポイントでは、非アクティブであるためにシーケンスが終了したと判断されます。ソース・エンドポイントの場合も同様です。

この値のデフォルトは600000です。

issuer.name

JWT発行者の名前。デフォルト値はwww.oracle.comです。

keystore.enc.csf.key

暗号化鍵パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、keystore.enc.csf.keyをオーバーライドできます。

keystore.sig.csf.key

署名キー・パスワードをキーストアに格納するために使用する別名とパスワード。「オーバーライド可能なWebサービス・ポリシーの添付」で説明されているように、この値を設定すると、keystore.sig.csf.keyをオーバーライドできます。

keystore.recipient.alias

ピア証明書に関連付けられているキーストア別名。実行時セキュリティは、この別名を使用して構成済のキーストアからピア証明書を抽出し、ピアへのメッセージを暗号化します。サービス・アイデンティティ証明拡張の使用を優先させることができます。

on.behalf.of

リクエストが別のエンティティの代理かどうかを指定するには、このプロパティをオーバーライドします。このフラグのデフォルト値はfalseです。

permission-class

権限ベースの確認に使用されるクラス。たとえば、oracle.wsm.security.WSFuncPermissionです。

propagate.identity.context

アイデンティティ・コンテキストをWebサービス・クライアントからWebサービスへ伝播し、他のコンポーネントが認証および認可の目的でこれを使用できるようにします(発行します)。

realm

HTTPレルム。この値のデフォルトはowsmです。

reference.priority

ポリシー・アタッチメントの優先度を指定します。アタッチされたポリシーに対して指定されると、有効なポリシー・セット・アルゴリズムでは、最高の整数値の優先度を持つポリシーを、そのスコープにかかわらず、競合するポリシー・アタッチメントより優先します。

reference.priorityには、(-2^31)から(2^31 - 1)の範囲の任意の値を指定できます。値が高いほど、有効なポリシー計算で割り当てられる優先度が高くなります。値を持たないポリシーまたは数値以外の値を持つポリシーは、値0を持つものとして扱われます。値にyes、true、onのいずれかの単語が設定されている場合、値は1に設定されます。

詳細は、「ポリシー・アタッチメントの優先度の指定」を参照してください。

resource

認可チェックが実行されるリソースの名前。このフィールドではワイルドカードを使用できます。たとえば、Webサービスの名前空間がhttp://project11で、サービス名がCreditValidationの場合、リソース名はhttp://project11/CreditValidationになります。

role

SOAPロール。この値のデフォルトはultimateReceiverです。

saml.assertion.filename

SAMLアサーションを格納するファイル。この値のデフォルトはtempです。

saml.audience.uri

リライイング・パーティをカンマ区切りのURIで表します。このフィールドでは次のワイルドカードを使用できます。

- 任意の場所の*。

- URI末尾の/*。

- URI末尾の.*。

saml.issuer.name

SAMLトークンの発行者の名前。この値のデフォルトはwww.oracle.comです。

saml.trusted.issuers

SAMLトークンの信頼できる発行者のカンマ区切りのリスト。信頼できる発行者をドメイン・レベルでオーバーライドするアプリケーション用です。

service.principal.name

サービスを識別するKerberosプリンシパルの名前。

StoreName

メッセージ・ストアの名前。この値のデフォルトはoracleです。

StoreType

メッセージ・ストアのタイプ。有効な値は次のとおりです。

- InMemory: メッセージはメモリーに格納されます。これがデフォルトです。

- JDBC: メッセージはJDBCを使用して格納されます。

sts.auth.caller.principal.name

ktpassコマンドを使用して生成されたクライアントのプリンシパル名で、kerberosトークンの生成先のユーザー名にマップされます。<username>@<REALM NAME>の形式で指定します。

sts.auth.keytab.location

クライアントのキータブ・ファイルの場所。

sts.auth.on.behalf.of.csf.key

代理エンティティの構成で使用します。存在する場合、サブジェクト(存在する場合)より優先されます。

sts.auth.service.principal.name

保護する必要があるWebサービスのプリンシパル名。<host>/<machine name>@<REALM NAME>の形式で指定します。たとえば、HTTP/mymachine@EXAMPLEREALM.COMです。

sts.auth.user.csf.key

STSに対する認証用のユーザー名/パスワードを構成する場合に使用します。

クライアントのoracle/sts_trust_config_client_template内のpolicy-reference-uriがユーザー名ベースのポリシーを指している場合は、sts.auth.user.csf.keyプロパティを構成して、STSに対する認証用のユーザー名/パスワードを指定します。

sts.auth.x509.csf.key

STSに対する認証用のX509証明書を構成する場合に使用します。

クライアントのoracle/sts_trust_config_client_template内のpolicy-reference-uriがx509ベースのポリシーを指している場合は、sts.auth.x509.csf.keyプロパティを構成して、STSに対する認証用のX509証明書を指定します。

sts.keystore.recipient.alias

キーストアに追加したSTS証明書の別名。デフォルトの別名はsts-csf-keyです。

subject.precedence

認証されたサブジェクトではなくクライアント指定のユーザー名を使用できるようにするには、subject.precedenceをfalseに設定します。

subject.precedenceがtrueの場合、SAMLアサーションまたはJWTクレームを作成するためのユーザー名はサブジェクトからのみ取得されます。同様に、subject.precedenceがfalseの場合、SAMLアサーションまたはJWTクレームを作成するためのユーザー名は、csf-keyユーザー名プロパティからのみ取得されます。

user.attributes

含まれる属性をカンマ区切りのリストで指定します。たとえば、attrib1,attrib2と指定します。指定する属性名は、構成済アイデンティティ・ストア内の有効な属性に正確に一致する必要があります。Oracle WSMランタイムは、構成済のアイデンティティ・ストアからこれらの属性の値を読み取り、属性とその値をSAMLアサーションまたはJWTクレームに含めます。

user.roles.include

セキュリティ・トークンに含めるユーザー・ロール。この値のデフォルトはfalseです。

user.tenant.name

Oracle Cloud用に予約済。

例

<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>

orawsp:Description

<oraswsp:Description>要素は、プロパティの説明を定義します。

例

<orawsp:Description>My description.</orawsp:Description>

orawsp:Value

<oraswsp:Value>要素は、プロパティの有効な値をリストします。

例

<orawsp:Value>ultimateReceiver</orawsp:Value>

orawsp:guard

<orawsp:guard>要素は、リソース、アクションおよび制約が一致する値を定義します。

例

<orawsp:guard>
<orawsp:resource-match>
http://project11/CreditValidation
</orawsp:resource-match>
<orawsp:action-match>validate,amountAvailable</orawsp:action-match>
</orawsp:guard>

<orawsp:guard>
<orawsp:resource-match>*</orawsp:resource-match>
<orawsp:action-match>validate,amountAvailable</orawsp:action-match>
</orawsp:guard>

<orawsp:guard>
<orawsp:constraint-match>${!(messageContext.authenticationMethod =='SAML_SV'
|| messageContext.requestOrigin == 'internal')}
</orawsp:constraint-match>
</orawsp:guard>

orawsp:resource-match

<orawsp:resource-match>要素は、実行する認可チェックのリソース名を指定します。このフィールドではワイルドカードを使用できます。

たとえば、Webサービスの名前空間がhttp://project11で、サービス名がCreditValidationの場合、リソース名はhttp://project11/CreditValidationになります。

例

<orawsp:guard>
<orawsp:resource-match>
http://project11/CreditValidation
</orawsp:resource-match>
<orawsp:action-match>validate,amountAvailable</orawsp:action-match>
</orawsp:guard>

<orawsp:guard>
<orawsp:resource-match>*</orawsp:resource-match>
<orawsp:action-match>validate,amountAvailable</orawsp:action-match>
</orawsp:guard>

orawsp:action-match

<orawsp:resource-match>要素は、認可チェックが実行されるアクションまたはWebサービス操作を指定します。この値は、値のカンマ区切りのリストにすることもできます。このフィールドではワイルドカードを使用できます。

例

<orawsp:guard>
<orawsp:resource-match>
http://project11/CreditValidation
</orawsp:resource-match>
<orawsp:action-match>validate,amountAvailable</orawsp:action-match>
</orawsp:guard>

<orawsp:guard>
<orawsp:resource-match>*</orawsp:resource-match>
<orawsp:action-match>validate,amountAvailable</orawsp:action-match>
</orawsp:guard>

orawsp:constraint-match

<orawsp:constraint-match>要素は、認可チェックが実行される制約を指定します。値は、次の2つのmessageContextプロパティを使用して指定します。

- messageContext.authenticationMethod: ユーザーの認証に使用する認証方法を決定します。有効な値はSAML_SVです。

- messageContext.requestOrigin: リクエストが内部ネットワークまたは外部ネットワークから発行されたかどうかを決定します。このプロパティは、Oracle HTTP Serverを使用しており、Oracle HTTP Server管理者がカスタムのVIRTUAL_HOST_TYPEヘッダーをリクエストに追加した場合のみ有効です。
プロパティとその値では、大文字と小文字が区別されます。制約式では、サポートされている標準的な演算子(==、!=、&&、||、!)を使用します。

注意:
この要素は、binding-authorization要素でのみサポートされています。他の認可アサーション要素については、このフィールドは今後の使用に備えて予約されています。

例

<orawsp:guard>
<orawsp:constraint-match>${!(messageContext.authenticationMethod =='SAML_SV' ||
messageContext.requestOrigin == 'internal')}
</orawsp:constraint-match>
</orawsp:guard>

oralgp:Logging

<orasp:Logging>要素は、ロギング・ポリシーを定義します。

<orasp:Logging>要素には、次のサブ要素が含まれます。

- oralgp:msg-log

- orawsp:bindings

例

<oralgp:Logging orawsp:Enforced="false" orawsp:Silent="true"
orawsp:category="security/logging" orawsp:name="Log Message1">
<oralgp:msg-log>
<oralgp:request>all</oralgp:request>
<oralgp:response>all</oralgp:response>
<oralgp:fault>all</oralgp:fault>
</oralgp:msg-log>
<orawsp:bindings>
<orawsp:Config orawsp:name="added-from-em"/>
</orawsp:bindings>
</oralgp:Logging>

orasp:binding-authorization

<orasp:binding-authorization>要素は、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を定義します。

<orasp:binding-authorization>要素には、次のサブ要素が含まれます。

- orawsp:bindings

- orawsp:guard

また、次のいずれかのサブ要素も含まれます。

- orasp:denyAll

- orasp:permitAll

- orasp:role

例

<orasp:binding-authorization orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authorization"
orawsp:name="J2EE services Authorization">
<orasp:denyAll/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="AuthzConfig"/>
</orawsp:bindings>
<orawsp:guard/>
</orasp:binding-authorization>

orasp:binding-permission-authorization

<orasp:binding-permission-authorization>要素は、SOAPバインディング・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単な権限ベースの認可を定義します。

<orasp:binding-permission-authorization>要素には、次のサブ要素が含まれます。

- orasp:check-permission

- orawsp:bindings

- orawsp:guard

例

<orasp:binding-permission-authorization orawsp:Enforced="true"
orawsp:Silent="true" orawsp:category="security/authorization"
orawsp:name="J2EE Permission Based Authorization">
<orasp:check-permission/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="BindingPermissionAuthzConfig">
<orawsp:PropertySet orawsp:name="perms-authz-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="resource"
orawsp:type="string">
<orawsp:DefaultValue>*</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="action"
orawsp:type="string">
<orawsp:DefaultValue>*</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="permission-class" orawsp:type="string">
<orawsp:DefaultValue>oracle.wsm.security.WSFunctionPermission
</orawsp:DefaultValue>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
<orawsp:guard>
<orawsp:resource-match>*</orawsp:resource-match>
<orawsp:action-match>*</orawsp:action-match>
</orawsp:guard>
</orasp:binding-permission-authorization>

orasp:coreid-security

<orasp:coreid-security>要素は、WS-Securityヘッダーのバイナリ・セキュリティ・トークンの資格証明を使用して、Oracle Access Managerアイデンティティ・ストアに対してユーザーを認証します。

この要素には、次のサブ要素が含まれます。

- orasp:coreid-token

- orawsp:bindings

例

<orasp:coreid-security orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication, security/authorization"
orawsp:name="OAM Security">
<orasp:coreid-token orasp:is-encrypted="false" orasp:is-signed="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="CoreIdConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:coreid-security>

orasp:http-jwt-security

<orasp:http-jwt-security>要素は、HTTPヘッダー内のJWTトークンに指定されているユーザー名を使用してユーザーを認証します。

この要素には、次のサブ要素が含まれます。

- orasp:auth-header

- orasp:require-tls

- orawsp:bindings

例

<orasp:http-jwt-security  orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication" orawsp:name="Http JWT Security">
<orasp:auth-header orasp:algorithm-suite="Basic128Sha256Rsa15"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:mechanism="jwt"/>
<orasp:require-tls orasp:include-timestamp="false" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpJwtTokenConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.attributes" orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional" orawsp:name="issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="csf.map"orawsp:type="string"/>
<orawsp:Property orawsp:contentType="optional" orawsp:name="csf-key" orawsp:type="string">
<orawsp:Value>basic.credentials</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="subject.precedence" orawsp:type="string">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="audience.uri" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.sig.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="propagate.identity.context" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="user.tenant.name" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="reference.priority" orawsp:type="string"/>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-jwt-security>

orasp:http-oam-security

<orasp:http-oam-security>要素は、HTTPヘッダーの資格証明を使用して、Oracle Platform Security Servicesのアイデンティティ・ストアに対してユーザーを認証し、その情報をOracle Access Manager (OAM)トークンを使用して伝搬します。

この要素には、次のサブ要素が含まれます。

- orasp:auth-header

- orawsp:bindings

例

<orasp:http-oam-security orawsp:Silent="true" orawsp:Enforced="true"
orawsp:name="Http Security" orawsp:category="security/authentication">
<orasp:auth-header orasp:mechanism="oam"/>
<orawsp:bindings>
<orawsp:Config orawsp:name="HttpOAMConfig"
orawsp:configType="declarative">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="realm" orawsp:type="string"
orawsp:contentType="constant">
<orawsp:Value>owsm</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:name="role" orawsp:type="string"
orawsp:contentType="constant">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-oam-security>

orasp:http-saml20-bearer-security

<orasp:http-saml20-bearer-security>要素は、HTTPヘッダー内の確認方法がBearerのSAML 2.0トークンに指定されている資格証明を使用してユーザーを認証します。

この要素には、次のサブ要素が含まれます。

- orasp:auth-header

- orasp:require-tls

- orawsp:bindings

例

<orasp:http-saml20-bearer-security
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication"
orawsp:name="Http SAML 2.0 Bearer Security Over SSL">
<orasp:auth-header orasp:mechanism="saml20-bearer"/>
<orasp:require-tls orasp:include-timestamp="false"
orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="HttpSaml20BearerOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.trusted.issuers" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.enveloped.signature.required"
orawsp:type="boolean">
<orawsp:Value>true</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="reference.priority" orawsp:type="string"/>
<orawsp:Property orawsp:name="propagate.identity.context"
orawsp:type="string" orawsp:contentType="optional">
<orawsp:Value></orawsp:Value>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-saml20-bearer-security>

orasp:http-security

<orasp:http-security>要素では、HTTPヘッダーの資格証明を使用して、Oracle Platform Security Servicesアイデンティティ・ストアに対してユーザーを認証します。

この要素には、次のサブ要素が含まれます。

- orasp:auth-header

- orasp:require-tls

- orawsp:bindings

例

<orasp:http-security orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="Http over SSL Security">
<orasp:auth-header orasp:mechanism="basic"/>
<orasp:require-tls orasp:include-timestamp="true" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="HttpConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="realm"
orawsp:type="string">
<orawsp:Value>owsm</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:http-security>

orasp:kerberos-security

<orasp:kerberos-security>要素は、WS-Security Kerberos Token Profile v1.1標準に従って実行されます。

この要素には、次のサブ要素が含まれます。

- orasp:kerberos-token

- orawsp:bindings

- orasp:msg-security

例

<orasp:kerberos-security orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication" orawsp:name="WSS Kerberos Token">
<orasp:kerberos-token orasp:is-encrypted="false" orasp:is-signed="false"
orasp:type="gss-apreq-v5"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="KerberosSecurityConfig"/>
</orawsp:bindings>
</orasp:kerberos-security>

orasp:sca-component-authorization

<orasp:sca-component-authorization>要素は、SOAコンポーネント・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単なロールベースの認可を定義します。

<orasp:sca-component-authorization>要素には、次のサブ要素が含まれます。

- orawsp:bindings

また、次のいずれかのサブ要素も含まれます。

- orasp:denyAll

- orasp:permitAll

- orasp:role

例

<orasp:sca-component-authorization orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authorization" orawsp:name="Fabric Component
Authorization">
<orasp:denyAll/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="FabricAuthzConfig"/>
</orawsp:bindings>
</orasp:sca-component-authorization>

orasp:sca-component-permission-authorization

<orasp:sca-component-permission-authorization>要素は、SOAコンポーネント・レベルの認証されたサブジェクトに基づき、リクエストに対して簡単な権限ベースの認可を行います。

<orasp:binding-permission-authorization>要素には、次のサブ要素が含まれます。

- orasp:check-permission

- orawsp:bindings

- orawsp:guard

例

<orasp:sca-component-permission-authorization orawsp:Enforced="true"
orawsp:Silent="true" orawsp:category="security/authorization"
orawsp:name="Fabric Component Authorization">
<orasp:check-permission/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="FabricAuthzConfig">
<orawsp:PropertySet orawsp:name="perms-authz-properties">
<orawsp:Property orawsp:contentType="optional" orawsp:name="resource"
orawsp:type="string">
<orawsp:DefaultValue>*</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="action"
orawsp:type="string">
<orawsp:DefaultValue>*</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="permission-class" orawsp:type="string">
<orawsp:DefaultValue>
oracle.wsm.security.WSFunctionPermission</orawsp:DefaultValue>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
<orawsp:guard>
<orawsp:resource-match>*</orawsp:resource-match>
<orawsp:action-match>*</orawsp:action-match>
</orawsp:guard>
</orasp:sca-component-permission-authorization>

orasp:sts-trust-config

<orasp:sts-trust-config>要素は、トークン交換用のSTSを呼び出すメカニズムを提供します。

この要素には、次のサブ要素が含まれます。

- orawsp:bindings

属性

次の表には、<orasp:sts-trust-config>要素の属性がまとめられています。

表D-8 <orasp:sts-trust-config>要素の属性

要素の属性" width="100%">

属性

説明

wsdl-uri

WSDLの実際のエンドポイントURI。

port-uri

STSポートの実際のエンドポイントURI。たとえば、http://host:port/context-root/service1と指定します。

port-endpoint

STS Webサービスのエンドポイント。

WSDL 2.0 STSの場合、target-namespace#wsdl.endpoint(service-name/port-name)という形式で指定します。たとえば、http://samples.otn.com.LoanFlow#wsdl.endpoint(LoanFlowService/LoanFlowPort)と指定します。

WSDL 1.1 STSの場合、targetnamespace#wsdl11.endpoint(servicename/portname)という形式で指定します。たとえば、http://samples.otn.com.LoanFlow#wsdl11.endpoint(LoanFlowService/LoanFlowPort)と指定します。

policy-reference-uri

クライアントがSTSと通信する際に使用するクライアント・ポリシーURI。WSDLでの識別に従い、選択するポリシーはSTSの認証要件に応じて異なります。

soap-version

SOAPのバージョン。

sts-keystore-recipient-alias

キーストアに追加したSTS証明書の別名。デフォルトの別名はsts-csf-keyです。

例

<orasp:sts-trust-config
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:policy-reference-uri="oracle/wss10_username_token_with_message_protection_
client_policy"
orasp:port-endpoint="target-namespace#wsdl.endpoint(service-name/port-name)"
orasp:port-uri="http://host:port/sts-service" orasp:soap-version="12"
orasp:sts-keystore-recipient-alias="sts-csf-key"
orasp:wsdl-uri="http://host:port/sts?wsdl" orawsp:Enforced="true"
orawsp:Silent="true" orawsp:category="security/sts-config" orawsp:name="STS
Trust Configuration">
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="StsTrustConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role" orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:sts-trust-config>

orasp:wss10-anonymous-with-certificates

<orasp:wss10-anonymous-with-certificates>要素は、WS-Security 1.0標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)を実行します。

この要素には、次のサブ要素が含まれます。

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss10-anonymous-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/msg-protection"
orawsp:name="WS-Security 1.0 Anonymous with certificates">
<orasp:x509-token orasp:enc-key-ref-mech="direct" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:rcpt-enc-key-ref-mech="direct"
orasp:rcpt-sign-key-ref-mech="direct" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:encrypt-signature="false" orasp:include-timestamp="true"
orasp:sign-then-encrypt="true">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss10AnonWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss10-anonymous-with-certificates>

orasp:wss10-mutual-auth-with-certificates

<orasp:wss10-mutual-auth-with-certificates>要素は、WS-Security 1.1標準に従って、インバウンドSOAPリクエストのメッセージ・レベルの保護と、証明書ベースの認証を行います。

この要素には、次のサブ要素が含まれます。

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss10-mutual-auth-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/authentication,
security/msg-protection" orawsp:name="WS-Security 1.0 Mutual Auth with
certificates">
<orasp:x509-token orasp:enc-key-ref-mech="direct" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:rcpt-enc-key-ref-mech="direct"
orasp:rcpt-sign-key-ref-mech="direct" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:encrypt-signature="false" orasp:include-timestamp="true"
orasp:sign-then-encrypt="true">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss10AnonWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss10-mutual-auth-with-certificates>

orasp:wss10-saml-hok-with-certificates

<orasp:wss1-saml-hok-with-certificates>要素は、WS-Security 1.0標準に従って、アウトバウンドSOAPメッセージのメッセージ保護(整合性および機密保護)と、SAML鍵所有者ベースの認証を行います。

この要素には、次のサブ要素が含まれます。

- orasp:saml-token

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss10-saml-hok-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/authentication,
security/msg-protection" orawsp:name="WS-Security 1.0 SAML Holder Of Key
with certificates">
<orasp:saml-token orasp:confirmation-type="holder-of-key"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:version="1.1"/>
<orasp:x509-token orasp:enc-key-ref-mech="direct"
orasp:is-encrypted="false" orasp:is-signed="true"
orasp:rcpt-enc-key-ref-mech="direct" orasp:rcpt-sign-key-ref-mech="direct"
orasp:sign-key-ref-mech="ski"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:encrypt-signature="false" orasp:include-timestamp="true"
orasp:sign-then-encrypt="true">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss10SamlHOKWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="keystore.recipient.alias"
orawsp:type="string">
<orawsp:Value>orakey</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.assertion.filename" orawsp:type="string">
<orawsp:Value>temp</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss10-saml-hok-with-certificates>

orasp:wss10-saml-token

<orasp:wss10-saml-token>要素は、WS-Security SOAPヘッダー内のSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

この要素には、次のサブ要素が含まれます。

- orasp:saml-token

- orawsp:bindings

例

<orasp:wss10-saml-token orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication" orawsp:name="WSSecurity SAML Token">
<orasp:saml-token orasp:confirmation-type="sender-vouches"
orasp:is-encrypted="false" orasp:is-signed="false" orasp:version="1.1"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="WssSamlTokenConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss10-saml-token>

orasp:wss10-saml-with-certificates

<orasp:wss10-saml-with-certificates>要素は、WS-Security 1.0標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と、SAMLベースの認証を行います。

この要素には、次のサブ要素が含まれます。

- orasp:saml-token

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss10-saml-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/authentication,
security/msg-protection" orawsp:name="WS-Security 1.0 SAML with certificates">
<orasp:saml-token orasp:confirmation-type="sender-vouches"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:version="1.1"/>
<orasp:x509-token orasp:enc-key-ref-mech="direct" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:rcpt-enc-key-ref-mech="direct"
orasp:rcpt-sign-key-ref-mech="direct" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:encrypt-signature="false" orasp:include-timestamp="true"
orasp:sign-then-encrypt="true">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss10SamlWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss10-saml-with-certificates>

orasp:wss10-username-with-certificates

<orasp:wss10-username-with-certificates>要素は、WS-Security 1.0標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と認証を行います。

この要素には、次のサブ要素が含まれます。

- orasp:username-token

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss10-username-with-certificates orawsp:Enforced="true"
orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.0 username with certificates">
<orasp:username-token orasp:add-created="false" orasp:add-nonce="false"
orasp:is-encrypted="true" orasp:is-signed="true"
orasp:password-type="plaintext"/>
<orasp:x509-token orasp:enc-key-ref-mech="direct" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:rcpt-enc-key-ref-mech="direct"
orasp:rcpt-sign-key-ref-mech="direct" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:encrypt-signature="false" orasp:include-timestamp="true"
orasp:sign-then-encrypt="true">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss10UsernameWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss10-username-with-certificates>

orasp:wss11-anonymous-with-certificates

<orasp:wss11-anonymous-with-certificates>要素は、WS-Security 1.1標準に従って、アウトバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)を実行します。

この要素には、次のサブ要素が含まれます。

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss11-anonymous-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/msg-protection"
orawsp:name="WS-Security 1.0 Anonymous with certificates">
<orasp:x509-token orasp:enc-key-ref-mech="direct" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:rcpt-enc-key-ref-mech="direct"
orasp:rcpt-sign-key-ref-mech="direct" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:encrypt-signature="false" orasp:include-timestamp="true"
orasp:sign-then-encrypt="true">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss11AnonWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss11-anonymous-with-certificates>

orasp:wss11-mutual-auth-with-certificates

<orasp:wss11-mutual-auth-with-certificates>要素は、WS-Security 1.1標準に従って、インバウンドSOAPリクエストのメッセージ・レベルの保護と、証明書ベースの認証を行います。

この要素には、次のサブ要素が含まれます。

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss11-mutual-auth-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/authentication,
security/msg-protection"
orawsp:name="WS-Security 1.1 Mutual Auth with certificates">
<orasp:x509-token orasp:enc-key-ref-mech="thumbprint"
orasp:is-encrypted="false" orasp:is-signed="true"
orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:confirm-signature="false" orasp:encrypt-signature="false"
orasp:include-timestamp="true" orasp:sign-then-encrypt="true"
orasp:use-derived-keys="false">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss10AnonWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:name="keystore.recipient.alias"
orawsp:type="string">
<orawsp:Value>orakey</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss11-mutual-auth-with-certificates>

orasp:wss11-saml-with-certificates

<orasp:wss11-saml-with-certificates>要素は、WS-Security 1.1標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と、SAMLベースの認証を行います。

この要素には、次のサブ要素が含まれます。

- orasp:saml-token

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss11-saml-with-certificates orawsp:Enforced="true"
orawsp:Silent="false" orawsp:category="security/authentication,
security/msg-protection" orawsp:name="WS-Security 1.1 SAML with certificates">
<orasp:saml-token orasp:confirmation-type="sender-vouches"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:version="1.1"/>
<orasp:x509-token orasp:enc-key-ref-mech="direct" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:rcpt-enc-key-ref-mech="direct"
orasp:rcpt-sign-key-ref-mech="direct" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:encrypt-signature="false" orasp:include-timestamp="true"
orasp:sign-then-encrypt="true">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss11SamlWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss11-saml-with-certificates>

orasp:wss11-sts-issued-token-with-certificates

<orasp:wss11-sts-issued-token-with-certificates>要素は、信頼できるSTSが発行したアサーションを挿入します。メッセージは、STS、クライアントまたは両方で提供される証明鍵マテリアルを使用して保護されます。

この要素には、次のサブ要素が含まれます。

- orasp:issued-token

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

属性

次の表には、<orasp:wss11-sts-issued-token-with-certificates>要素の属性がまとめられています。

表D-9 <orasp:wss11-sts-issued-token-with-certificates>要素の属性

要素の属性" width="100%">

属性

説明

trust-version

WS-Trustのバージョン。

require-client-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が要求される場合、このフラグは、リクエスタが証明鍵の計算に含めることができる鍵マテリアル(エントロピ)を渡すことができるかどうかを指定します。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

require-server-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が要求される場合、このフラグは、リクエスタが証明鍵の計算に含めることができる鍵マテリアル(エントロピ)を渡すことができるかどうかを指定します。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

require-applies-to

RSTのオプション要素。トークンがリクエストされているWebサービスのエンドポイント・アドレスを、Oracle WSMが送信するかどうかを指定するフラグ。デフォルト動作では、クライアントからSTSへのメッセージでappliesTo要素が常に送信されます。

例

<orasp:wss11-sts-issued-token-with-certificates
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:require-applies-to="true" orasp:require-client-entropy="true"
orasp:require-server-entropy="true" orasp:trust-version="13"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.1, issued token">
<orasp:issued-token orasp:require-external-reference="true"
orasp:require-internal-reference="true" orasp:use-derived-keys="false">
<orasp:request-security-token-template orasp:algorithm-suite="Basic128"
orasp:key-type="Symmetric" orasp:token-type="SAML11"/>
</orasp:issued-token>
<orasp:x509-token orasp:enc-key-ref-mech="thumbprint" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:sign-key-ref-mech="thumbprint"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:confirm-signature="true" orasp:encrypt-signature="false"
orasp:include-timestamp="true" orasp:sign-then-encrypt="true"
orasp:use-derived-keys="false">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
<orasp:header orasp:namespace="http://www.w3.org/2005/08/addressing"/>
<orasp:header orasp:namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
<orasp:header orasp:name="fmw-context" orasp:namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
<orasp:header orasp:name="fmw-context" orasp:namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss11StsIssuedTokenWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="sts.auth.user.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="sts.auth.x509.csf.key" orawsp:type="string">
<orawsp:Value>enc-csf-key</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:name="on.behalf.of" orawsp:type="boolean">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="sts.auth.on.behalf.of.csf.key" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:name="keystore.recipient.alias" orawsp:type="string">
<orawsp:Value>orakey</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="keystore.enc.csf.key"
orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="sts.auth.service.principal.name" orawsp:type="string">
<orawsp:Value>HOST/localhost@EXAMPLE.COM</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="sts.auth.keytab.location" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional" orawsp:name="sts.auth.caller.principal.name" orawsp:type="string">
<orawsp:Value/>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss11-sts-issued-token-with-certificates>

orasp:wss11-username-with-certificates

<orasp:wss11-username-with-certificates>要素は、WS-Security 1.1標準に従って、インバウンドSOAPリクエストのメッセージ保護(整合性および機密保護)と認証を行います。

この要素には、次のサブ要素が含まれます。

- orasp:username-token

- orasp:x509-token

- orasp:msg-security

- orawsp:bindings

例

<orasp:wss11-username-with-certificates orawsp:Enforced="true"
orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.1 username with certificates">
<orasp:username-token orasp:add-created="false" orasp:add-nonce="false"
orasp:is-encrypted="true" orasp:is-signed="true"
orasp:password-type="plaintext"/>
<orasp:x509-token orasp:enc-key-ref-mech="direct" orasp:is-encrypted="false"
orasp:is-signed="true" orasp:rcpt-enc-key-ref-mech="direct"
orasp:rcpt-sign-key-ref-mech="direct" orasp:sign-key-ref-mech="direct"/>
<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:encrypt-signature="false" orasp:include-timestamp="true"
orasp:sign-then-encrypt="true">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="Wss11UsernameWithCertsConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss11-username-with-certificates>

orasp:wss-saml-token-bearer-over-ssl

<orasp:wss-saml-token-bearer-over-ssl>要素は、WS-Security SOAPヘッダー内の確認方法がBearerのSAMLトークンに含まれる資格証明を使用してユーザーを認証します。

この要素には、次のサブ要素が含まれます。

- orasp:saml-token

- orasp:require-tls

- orawsp:bindings

例

<orasp:wss-saml-token-bearer-over-ssl orawsp:Enforced="true"
orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WSSecurity Saml Token With Confirmation method Bearer Over SSL ">
<orasp:saml-token orasp:confirmation-type="bearer" orasp:is-encrypted="false"
orasp:is-signed="false" orasp:version="1.1"/>
<orasp:require-tls orasp:include-timestamp="true" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="WssSamlTokenBearerOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss-saml-token-bearer-over-ssl>

orasp:wss-saml-token-over-ssl

<orasp:wss-saml-token-over-ssl>要素は、sender-vouches確認タイプを使用して、WS-Security SOAPヘッダーのSAMLトークンに含まれる資格証明の認証を実行します。

この要素には、次のサブ要素が含まれます。

- orasp:saml-token

- orasp:require-tls

- orawsp:bindings

例

<orasp:wss-saml-token-over-ssl orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WSSecurity SAML Token Over SSL">
<orasp:saml-token orasp:confirmation-type="sender-vouches"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:version="1.1"/>
<orasp:require-tls orasp:include-timestamp="true" orasp:mutual-auth="true"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="WssSamlTokenOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="optional"
orawsp:name="saml.issuer.name" orawsp:type="string">
<orawsp:Value>www.oracle.com</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="user.roles.include" orawsp:type="string">
<orawsp:Value>false</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss-saml-token-over-ssl>

orasp:wss-sts-issued-token-over-ssl

<orasp:wss-sts-issued-token-over-ssl>要素は、信頼できるSTSが発行したSAMLアサーションを認証します。メッセージは、SSLを使用して保護されます。

この要素には、次のサブ要素が含まれます。

- orasp:issued-token

- orasp:require-tls

- orawsp:bindings

属性

次の表には、<orasp:wss-sts-issued-token-over-ssl>要素の属性がまとめられています。

表D-10 <orasp:wss-sts-issued-token-over-ssl>要素の属性

要素の属性" width="100%">

属性

説明

trust-version

WS-Trustのバージョン。

require-client-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が要求される場合、このフラグは、リクエスタが証明鍵の計算に含めることができる鍵マテリアル(エントロピ)を渡すことができるかどうかを指定します。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

require-server-entropy

Webサービスのセキュリティ・ポリシーによって対称証明鍵が要求される場合、このフラグは、リクエスタが証明鍵の計算に含めることができる鍵マテリアル(エントロピ)を渡すことができるかどうかを指定します。Webサービス・ポリシーでは、クライアント・エントロピ、STSエントロピ、またはその両方が必要であるかどうかを示すことができます。

require-applies-to

RSTのオプション要素。トークンがリクエストされているWebサービスのエンドポイント・アドレスを、Oracle WSMが送信するかどうかを指定するフラグ。デフォルト動作では、クライアントからSTSへのメッセージでappliesTo要素が常に送信されます。

例

<orasp:wss-sts-issued-token-over-ssl
xmlns:orasp="http://schemas.oracle.com/ws/2006/01/securitypolicy"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
orasp:require-applies-to="true" orasp:require-client-entropy="true"
orasp:require-server-entropy="true" orasp:trust-version="13"
orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WS-Security 1.1, issued token over ssl">
<orasp:issued-token orasp:require-external-reference="true"
orasp:require-internal-reference="true" orasp:use-derived-keys="false">
<orasp:request-security-token-template orasp:key-type="Bearer" orasp:token-type="SAML11"/>
</orasp:issued-token>
<orasp:require-tls orasp:include-timestamp="true" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="WssStsIssuedTokenOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss-sts-issued-token-over-ssl>

orasp:wss-username-token

<orasp:wss-username-token>要素は、WS-Security UsernameToken SOAPヘッダー内のユーザー名およびパスワード資格証明を使用した認証を実行します。

この要素には、次のサブ要素が含まれます。

- orasp:username-token

- orawsp:bindings

例

<orasp:wss-username-token orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication"
orawsp:name="WSSecurity UserName Token">
<orasp:username-token orasp:add-created="false" orasp:add-nonce="false"
orasp:is-encrypted="true" orasp:is-signed="true"
orasp:password-type="plaintext"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="WssUsernameTokenConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss-username-token>

orasp:wss-username-token-over-ssl

<orasp:wss-username-token-over-ssl>要素は、UsernameToken WS-Security SOAPヘッダーの資格証明を使用して、Oracle Platform Security Servicesの構成済のアイデンティティ・ストアに対してユーザーを認証します。

この要素には、次のサブ要素が含まれます。

- orasp:username-token

- orasp:require-tls

- orawsp:bindings

例

<orasp:wss-username-token-over-ssl orawsp:Enforced="true" orawsp:Silent="false"
orawsp:category="security/authentication, security/msg-protection"
orawsp:name="WSSecurity UserName Token Over SSL">
<orasp:username-token orasp:add-created="true" orasp:add-nonce="true"
orasp:is-encrypted="true" orasp:is-signed="true"
orasp:password-type="plaintext"/>
<orasp:require-tls orasp:include-timestamp="true" orasp:mutual-auth="false"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative"
orawsp:name="WssUsernameTokenOverSSLConfig">
<orawsp:PropertySet orawsp:name="standard-security-properties">
<orawsp:Property orawsp:contentType="constant" orawsp:name="role"
orawsp:type="string">
<orawsp:Value>ultimateReceiver</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</orasp:wss-username-token-over-ssl>

rm:RMAssertion

<rm:RMAssertion>要素は、Webサービスの信頼できるメッセージング・プロトコルのバージョン1.0および1.1のサポートを提供します。サポートされるバージョンは、使用するXMLスキーマ・ネームスペース値によって異なります。

- WS-ReliableMessaging 1.1: http://docs.oasis-open.org/ws-rx/wsrmp/200702

- WS-ReliableMessaging 1.0: http://schemas.xmlsoap.org/ws/2005/02/rm/policy

このポリシーは、SOAPベースのすべてのクライアントまたはエンドポイントに添付できます。この機能を完全にサポートするには、追加のプログラミングが必要です。

<rm:RMAssertion>要素には、次のサブ要素が含まれます。

- orawsp:bindings

例

<rm:RMAssertion xmlns:rm="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
orawsp:Enforced="true" orawsp:Silent="false" orawsp:category="wsrm"
orawsp:description="i18n:oracle.wsm.resources.policydescription.PolicyDescriptionBundle_oracle/wsrm10_policy_RMAssertion_AssertionDescKey"
orawsp:name="RM 1.0">
<wsp:Policy/>
<orawsp:bindings>
<orawsp:Config orawsp:name="RMConfig">
<orawsp:PropertySet orawsp:name="standard-wsrm-properties">
<orawsp:Property orawsp:name="DeliveryAssurance" orawsp:type="string">
<orawsp:Description>Delivery Assurance. Possible values
(case-insensitive) are InOrder,  AtLeastOnce, AtLeastOnceInOrder,
ExactlyOnce, ExactlyOnceInOrder, AtMostOnce,
AtMostOnceInOrder.</orawsp:Description>
<orawsp:Value>inorder</orawsp:Value>
<orawsp:DefaultValue>inorder</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:name="StoreType" orawsp:type="string">
<orawsp:Description>The type of message store used. Possible values
(case-insensitive) areInMemory, JDBC.</orawsp:Description>
<orawsp:Value>inmemory</orawsp:Value>
<orawsp:DefaultValue>inmemory</orawsp:DefaultValue>
</orawsp:Property>
<orawsp:Property orawsp:name="StoreName" orawsp:type="string">
<orawsp:Description>The name of the message store.
</orawsp:Description>
<orawsp:Value>oracle</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:contentType="optional"
orawsp:name="jdbc-connection-name" orawsp:type="string">
<orawsp:Description>The JNDI reference to a JDBC data source, when
the store type is JDBC.</orawsp:Description>
<orawsp:Value>jdbc/MessagesStore</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:name="InactivityTimeout" orawsp:type="int">
<orawsp:Description>The inactivity timeout duration, specified in
milliseconds.</orawsp:Description>
<orawsp:Value>600000</orawsp:Value>
</orawsp:Property>
<orawsp:Property orawsp:name="BaseRetransmissionInterval"
orawsp:type="int">
<orawsp:Description>The base retransmission interval, specified in
milliseconds.</orawsp:Description>
<orawsp:Value>3000</orawsp:Value>
</orawsp:Property>
</orawsp:PropertySet>
</orawsp:Config>
</orawsp:bindings>
</rm:RMAssertion>

wsaw:UsingAddressing

<wsaw:UsingAddressing>要素を使用すると、プラットフォームにより、W3C 2005の最終版のWS-Addressingポリシー標準に準拠したWS-Addressingヘッダーがインバウンド・メッセージに存在するかどうかが確認されます。また、プラットフォームにより、WS-AddressingヘッダーがアウトバウンドSOAPメッセージに組み込まれます。

<wsaw:UsingAddressing>要素には、次のサブ要素が含まれます。

- orawsp:bindings

例

<wsaw:UsingAddressing xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
orawsp:Enforced="true" orawsp:Silent="false" orawsp:category="addressing"
orawsp:name="WS-Addressing 2005">
<orawsp:bindings>
<orawsp:Config orawsp:name="added-from-em"/>
</orawsp:bindings>
</wsaw:UsingAddressing>

wsoma:OptimizedMimeSerialization

<wsoma:OptimizedMimeSerialization>要素は、MTOM形式ではないインバウンド・メッセージを拒否し、アウトバウンド・メッセージがMTOM形式であるかどうかを検証します。MTOMはhttp://www.w3.org/TR/2005/REC-soap12-mtom-20050125の仕様書と、SOAP 1.2およびSOAP1.1バインディングに関してはhttp://www.w3.org/Submission/2006/SUBM-soap11mtom10-20060405を参照します。

<wsoma:OptimizedMimeSerialization>要素には、次のサブ要素が含まれます。

- orawsp:bindings

例

<wsoma:OptimizedMimeSerialization
xmlns:wsoma=
"http://schemas.xmlsoap.org/ws/2004/09/policy/optimizedmimeserialization"
orawsp:Enforced="true" orawsp:Silent="false" orawsp:category="mtom"
orawsp:name="MTOM">
<orawsp:bindings>
<orawsp:Config orawsp:name="added-from-em"/>
</orawsp:bindings>
</wsoma:OptimizedMimeSerialization>

oralgp:fault

<oralgp:fault>要素は、フォルト・メッセージのロギングを構成します。有効な値は次のとおりです。

- all: SOAPメッセージ全体が記録されます。

- header: SOAPヘッダー情報のみが記録されます。

- soap_body: SOAP本文の情報のみが記録されます。

- soap_envelope: SOAPエンベロープの情報のみが記録されます。

例

<oralgp:msg-log>
<oralgp:request>all</oralgp:request>
<oralgp:response>all</oralgp:response>
<oralgp:fault>all</oralgp:fault>
</oralgp:msg-log>

oralgp:request

<oralgp:request>要素は、リクエスト・メッセージのロギングを構成します。有効な値は次のとおりです。

- all: SOAPメッセージ全体が記録されます。

- header: SOAPヘッダー情報のみが記録されます。

- soap_body: SOAP本文の情報のみが記録されます。

- soap_envelope: SOAPエンベロープの情報のみが記録されます。

例

<oralgp:msg-log>
<oralgp:request>all</oralgp:request>
<oralgp:response>all</oralgp:response>
<oralgp:fault>all</oralgp:fault>
</oralgp:msg-log>

oralgp:response

<oralgp:response>要素は、レスポンス・メッセージのロギングを構成します。有効な値は次のとおりです。

- all: SOAPメッセージ全体が記録されます。

- header: SOAPヘッダー情報のみが記録されます。

- soap_body: SOAP本文の情報のみが記録されます。

- soap_envelope: SOAPエンベロープの情報のみが記録されます。

例

<oralgp:msg-log>
<oralgp:request>all</oralgp:request>
<oralgp:response>all</oralgp:response>
<oralgp:fault>all</oralgp:fault>
</oralgp:msg-log>

oralgp:msg-log

<oralgp:request>要素は、リクエスト、レスポンスおよびフォルト・メッセージのロギングを構成します。<oralgp:msg-log>要素には、次のサブ要素が含まれます。

- oralgp:request

- oralgp:response

- oralgp:fault

例

<oralgp:msg-log>
<oralgp:request>all</oralgp:request>
<oralgp:response>all</oralgp:response>
<oralgp:fault>all</oralgp:fault>
</oralgp:msg-log>

orasp:attachment

<orasp:attachment>要素は、添付情報を定義します。

属性

次の表には、<orasp:attachment>要素の属性がまとめられています。

表D-11 <orasp:attachment>要素の属性

要素の属性" width="100%">

属性

説明

include-mime-headers

MIMEヘッダーを含めるかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

例

<orasp:signed-parts>
<orasp:header orasp:name="From"
orasp:namespace="http://www.w3.org/2005/08/addressing"/>
<orasp:attachment orasp:include-mime-headers="false"/>
</orasp:signed-parts>

orasp:auth-header

<orasp:auth-header>要素は、認証ヘッダーの名前を指定します。

属性

次の表には、<orasp:auth-header>要素の属性がまとめられています。

表D-12 <orasp:auth-header>要素の属性

要素の属性" width="100%">

属性

説明

algorithm-suite

セキュリティ・トークンの署名に使用されるアルゴリズム・スイート。たとえば、Basic128Sha256Rsa15などです。

詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

is-encrypted

セキュリティ・トークンを暗号化するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

is-signed

セキュリティ・トークンを署名するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

mechanism

認証のメカニズム。

有効な値は次のとおりです。

- basic: ユーザー名およびパスワードを送信することで、クライアントが自身を認証します。

- cert: このリリースではサポートされていません。クライアントは証明書を送信することで自身を認証します。

- custom: このリリースではサポートされていません。カスタム認証メカニズムです。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

- jwt: クライアントはJWTトークンを使用して自身を認証します。

- oam: クライアントはOAMエージェントを使用して自身を認証します。

- saml20-bearer: クライアントはSAML 2.0 Bearerトークンを使用して自身を認証します。

- spnego: クライアントはKerberos SPNEGOを使用して自身を認証します。

例

<orasp:auth-header orasp:mechanism="basic"/>

<orasp:auth-header orasp:algorithm-suite="Basic128Sha256Rsa15" orasp:is-encrypted="false" orasp:is-signed="true" orasp:mechanism="jwt"/>

orasp:body

<orasp:body>要素は、署名および暗号化されるメッセージの本体要素を定義します。本体全体を含めるには、<orasp:body/>のように本体要素を指定します。

例

<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>

orasp:check-permission

<orasp:check-permission>要素は、権限を確認するように指定します。

例

<orasp:binding-permission-authorization orawsp:Enforced="true"
orawsp:Silent="true" orawsp:category="security/authorization"
orawsp:name="J2EE Permission Based Authorization">
<orasp:check-permission/>
...
</orasp:binding-permission-authorization>

orasp:coreid-token

<orasp:coreid-token>要素は、OAMトークンを定義します。

属性

次の表には、<orasp:coreid-token>要素の属性がまとめられています。

表D-13 <orasp:coreid-token>要素の属性

要素の属性" width="100%">

属性

説明

is-encrypted

アサーションを暗号化するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

is-signed

アサーションを署名するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

例

<orasp:coreid-token orasp:is-encrypted="false" orasp:is-signed="false"/>

orasp:denyAll

<orasp:denyAll>要素は、ロールを持つすべてのユーザーを拒否します。

例

<orasp:binding-authorization orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authorization"
orawsp:name="J2EE services Authorization">
<orasp:denyAll/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="AuthzConfig"/>
</orawsp:bindings>
<orawsp:guard/>
</orasp:binding-authorization>

orasp:element

<orasp:element>要素は、署名または暗号化されるヘッダーや本体の要素を定義します。

属性

次の表には、<orasp:element>要素の属性がまとめられています。

表D-14 <orasp:element>要素の属性

要素の属性" width="100%">

属性

説明

name

ヘッダーまたは本体の要素の名前。

namespace

ネームスペース。

例

<orasp:signed-elements>
<orasp:element orasp:name="BodyElement"
orasp:namespace="http://www.w3.org/2005/08/addressing">n/a</orasp:element>
</orasp:signed-elements>

orasp:encrypted-elements

<orassp:encrypted-elements>要素は、署名されるメッセージの本体要素を定義します。この要素は、<orasp:encrypted-parts>が<orasp:body/>に設定されていない場合にのみ有効になります。

<orassp:encrypted-parts>要素には、次のサブ要素が含まれます。

- orasp:element

例

<orasp:encrypted-elements>
<orasp:element orasp:name="Myhead"
orasp:namespace="http://www.w3.org/2005/08/addressing">n/a</orasp:element>
</orasp:encrypted-elements>

orasp:encrypted-parts

<orasp:encrypted-parts>要素は、暗号化されるメッセージの部分を定義します。

<orasp:encrypted-parts>要素には、次のサブ要素が1つ以上含まれます。

- orasp:body

- orasp:header

- orasp:attachment

例

<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>

orasp:fault

<orasp:fault>要素は、署名および暗号化されるフォルト・メッセージの本体要素を定義します。<orasp:fault>要素には、次のサブ要素が含まれます。

- orasp:signed-parts

- orasp:encrypted-parts

例

<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>

orasp:header

<orasp:header>要素は、ヘッダー要素を定義します。

属性

次の表には、<orasp:header>要素の属性がまとめられています。

表D-15 <orasp:header>要素の属性

要素の属性" width="100%">

属性

説明

name

ヘッダー要素の名前。事前定義済ネームスペースのデフォルトのヘッダー要素は、To、From、FaultTo、ReplyTo、MessageID、RelatesTo、Actionです。

namespace

ネームスペース。事前定義済ネームスペースは、http://www.w3.org/2005/08/addressingです。

例

<orasp:signed-parts>
<orasp:header orasp:name="From"
orasp:namespace="http://www.w3.org/2005/08/addressing"/>
<orasp:attachment orasp:include-mime-headers="false"/>
</orasp:signed-parts>

orasp:issued-token

<orasp:issued-token>要素は、トークンの特性を実行します。

属性

次の表には、<orasp:issued-token>要素の属性がまとめられています。

表D-16 Attributes of <orasp:issued-token>要素の属性

要素の属性" width="100%">

属性

説明

use-derived-keys

導出キーが必要かどうかを指定するフラグ。可能な値は「True」と「False」です。

require-internal-reference

トークンの内部参照が必要かどうかを指定するフラグ。可能な値は「True」と「False」です。

require-external-reference

トークンの外部参照が必要かどうかを指定するフラグ。可能な値は「True」と「False」です。

例

<orasp:issued-token orasp:require-external-reference="true"
orasp:require-internal-reference="true" orasp:use-derived-keys="false">

orasp:kerberos-token

<orasp:kerberos-token>要素は、Kerberosトークンを定義します。

属性

次の表には、<orasp:kerberos-token>要素の属性がまとめられています。

表D-17 <orasp:kerberos-token>要素の属性

要素の属性" width="100%">

属性

説明

is-encrypted

アサーションを暗号化するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

is-signed

アサーションを署名するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

type

Kerberosトークンのタイプ。有効な値は、gss-apreq-v5(Kerberosバージョン5 GSS-API)のみです。

例

<orasp:kerberos-token orasp:is-encrypted="false" orasp:is-signed="false"
orasp:type="gss-apreq-v5"/>

orasp:msg-security

<orassp:msg-security>要素は、ポリシーのメッセージ・セキュリティを定義します。署名および暗号化された本体要素(リクエスト、レスポンスおよびフォルト)を定義します。

<orasp:msg-security>要素には、次のサブ要素が含まれます。

- orasp:request

- orasp:response

- orasp:fault

属性

次の表には、<orasp:msg-security>要素の属性がまとめられています。

表D-18 <orasp:msg-security>要素の属性

要素の属性" width="100%">

属性

説明

algorithm-suite

メッセージ保護に使用されるアルゴリズム・スイートを定義します。Basic128などが該当します。詳細は、「サポートされているアルゴリズム・スイート」を参照してください。

confirm-signature

クライアントにシグネチャの確認を送信するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

encrypt-signature

クライアントに暗号化の確認を送信するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

include-timestamp

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

sign-then-encyrpt

メッセージを暗号化する前に署名するかどうかを指定するフラグ。

use-derived-keys

導出される鍵を使用するどうかを指定するフラグ。

例

<orasp:msg-security orasp:algorithm-suite="Basic128"
orasp:confirm-signature="false" orasp:encrypt-signature="false"
orasp:include-timestamp="true" orasp:sign-then-encrypt="true"
orasp:use-derived-keys="false">
<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>
<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>
<orasp:fault/>
</orasp:msg-security>

orasp:permitAll

<orasp:permitAll>要素は、ロールを持つすべてのユーザーを許可します。

例

<orasp:binding-authorization orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authorization"
orawsp:name="J2EE services Authorization">
<orasp:permitAll/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="AuthzConfig"/>
</orawsp:bindings>
</orasp:binding-authorization>

orasp:request

<orasp:request>要素は、署名および暗号化されるリクエスト・メッセージの本体要素を定義します。<orasp:request>要素には、次のサブ要素が含まれます。

- orasp:signed-parts

- orasp:encrypted-parts

例

<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>

orasp:require-tls

<orasp:require-tls>要素は、双方向認証が必要かどうかを指定します。

属性

次の表には、<orasp:require-tls>要素の属性がまとめられています。

表D-19 <orawsp:require-tls>要素の属性

要素の属性" width="100%">

属性

説明

include-timestamp

タイムスタンプを含めるかどうかを指定するフラグ。タイムスタンプを使用して、メッセージが無効になる有効期限を識別することで、リプレイ攻撃を防止できます。

注意: この属性はRESTfulサーブレット・アプリケーションでは有効ではありません。

mutual-auth

双方向認証が必要かどうかを指定するフラグ。有効な値はtrueまたはfalseです。

例

<orasp:require-tls orasp:include-timestamp="true" orasp:mutual-auth="false"/>

orasp:response

<orasp:response>要素は、レスポンス・メッセージ内で署名および暗号化されるメッセージの本体要素を定義します。<oraswsp:response>要素には、次のサブ要素が含まれます。

- orasp:signed-parts

- orasp:encrypted-parts

例

<orasp:response>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:response>

orasp:role

<orasp:role>要素は、アクセスが許可されるロールを定義します。

属性

次の表には、<orasp:role>要素の属性がまとめられています。

表D-20 <orasp:role>要素の属性

要素の属性" width="100%">

属性

説明

name

ロールの名前。有効なロールは次のとおりです。

- Monitor

- AdminChannelUsers

- Administrators

- OracleSystemGroup

- Operators

- CrossDomainConnectors

- Deployers

- AppTesters

例

<orasp:binding-authorization orawsp:Enforced="true" orawsp:Silent="true"
orawsp:category="security/authorization" orawsp:description=""
orawsp:name="J2EE services Authorization">
<orasp:role orasp:name="Monitors"/>
<orasp:role orasp:name="AdminChannelUsers"/>
<orawsp:bindings>
<orawsp:Config orawsp:configType="declarative" orawsp:name="AuthzConfig"/>
</orawsp:bindings>
</orasp:binding-authorization>

orasp:saml-token

<orasp:saml-token>要素は、SAMLトークンを構成します。

属性

次の表には、<orasp:saml-token>要素の属性がまとめられています。

表D-21 <orasp:saml-token>要素の属性

要素の属性" width="100%">

属性

説明

confirmation-type

確認タイプ。有効な値はsender-vouchesおよびholder-of-keyです。

- sender-vouches

- holder-of-key

- bearer

is-encrypted

アサーションを暗号化するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

is-signed

アサーションを署名するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

version

SAMLバージョン。有効な値は1.1および2.0です。

例

<orasp:saml-token orasp:confirmation-type="holder-of-key"
orasp:is-encrypted="false" orasp:is-signed="true" orasp:version="1.1"/>

orasp:signed-elements

<orassp:signed-elements>要素は、署名されるメッセージの本体要素を定義します。この要素は、<orasp:signed-parts>が<orasp:body/>に設定されていない場合にのみ有効になります。

<orassp:signed-elements>要素には、次のサブ要素が含まれます。

- orasp:element

例

<orasp:signed-elements>
<orasp:element orasp:name="Myhead"
orasp:namespace="http://www.w3.org/2005/08/addressing">n/a</orasp:element>
</orasp:signed-elements>

orasp:signed-parts

<orasp:signed-parts>要素は、署名されるメッセージの部分を定義します。

<orasp:signed-parts>要素には、次のサブ要素が1つ以上含まれます。

- orasp:body

- orasp:header

- orasp:attachment

例

<orasp:request>
<orasp:signed-parts>
<orasp:body/>
</orasp:signed-parts>
<orasp:encrypted-parts>
<orasp:body/>
</orasp:encrypted-parts>
</orasp:request>

orasp:username-token

<orasp:username-token>要素は、SAMLトークンを構成します。

属性

次の表には、<orasp:username-token>要素の属性がまとめられています。

表D-22 <orasp:username-token>要素の属性

要素の属性" width="100%">

属性

説明

add-created

ユーザー名トークンの作成にタイム・スタンプが必要かどうかを指定するフラグ。

注意: 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

add-nonce

リプレイ攻撃を防止するためユーザー名にNonceを含める必要があるかどうかを指定するフラグ。

注意: 「パスワード・タイプ」がdigestに設定されている場合は、この属性をtrueに設定する必要があります。設定しない場合、添付先のポリシーは検証されません。

is-encrypted

ユーザー名を暗号化するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

is-signed

ユーザー名を署名するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

password-type

必要なパスワードのタイプ。

有効な値は次のとおりです。

- none: パスワードは使用されません。

- plaintext: 暗号化されていない、クリアテキストのパスワード。

- digest: このリリースではサポートされていません。暗号化されたパスワードをMD5ダイジェストを使用して送信することで、クライアントが自身を認証します。

例

<orasp:username-token
orasp:add-created="false"
orasp:add-nonce="false"
orasp:is-encrypted="true"
orasp:is-signed="true"
orasp:password-type="plaintext"/>

orasp:x509-token

<orasp:x509-token>要素は、X.509デジタル証明書を定義します。

属性

次の表には、<orasp:x509-token>要素の属性がまとめられています。

表D-23 <orasp:x509-token>要素の属性

要素の属性" width="100%">

属性

説明

sign-key-ref-mech

リクエストの署名に使用できるメカニズム。

有効な値は次のとおりです。

- direct: リクエストに含まれるX.509トークン。

- ski: 証明書の参照に使用されるX.509証明書のサブジェクト・キー識別子(SKI)の拡張子の値。(一部の証明書にはこの拡張子がありません。)メッセージの受信者は、SKIに対応する証明書のキーストアを調査し、それに対して署名を検証します。

- issuerserial: 発行者名およびX.509証明書の参照に使用されるシリアル番号属性のコンポジット・キー。メッセージの受信者は、発行者名およびシリアル番号に対応する証明書のキーストアを調査し、それに対して署名を検証します。

- thumbprint: 証明書のコンテンツのメッセージ・ダイジェスト(SHA1ハッシュ)。証明書を格納する、オーバーヘッドの少ない方法を提供します。この値は、「暗号化キー参照メカニズム」(後述)に対してのみ有効です。

enc-key-ref-mech

リクエストの暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

rcpt-sign-key-ref-mech

受信の署名に使用できるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

rcpt-enc-key-ref-mech

受信の暗号化に使用されるメカニズム。有効な値は、前述の「署名鍵参照メカニズム」と同じです。

is-encrypted

アサーションを暗号化するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

is-signed

アサーションを署名するかどうかを指定するフラグ。有効な値はtrueまたはfalseです。

例

<orasp:x509-token orasp:enc-key-ref-mech="thumbprint"
orasp:is-encrypted="false" orasp:is-signed="true"
orasp:sign-key-ref-mech="direct"/>

orawsp:Description

<oraswsp:Description>要素は、プロパティの説明を定義します。

例

<orawsp:Description>Valid IP Values</orawsp:Description>

E ポリシー・セットのスキーマ参照

この付録では、ポリシー・セット・ファイルを作成するときに参照するXMLスキーマについて説明します。この付録には、次の項があります。

- 図解

- 要素の説明

図解

次の図は、ポリシー・セット・ドキュメントの要素階層を示しています。

図E-1 ポリシー・セットの要素階層

次の各項では、各要素とその属性について詳細に説明します。

要素の説明

この項では、ポリシー・セットの要素について説明します。

policySet

ポリシー・セットは、バインディング・タイプまたは実装タイプに適用する具体的なポリシーのセットを定義する際に使用されます。物理的には、ポリシー・セットは、例E-1に示されている疑似スキーマを使用するXML要素として表されます。

属性

次の項には、Oracle拡張機能を含むポリシー・セット属性がまとめられています。

表E-1 ポリシー・セット要素の属性

属性

説明

name

ポリシー・セットの名前。

appliesTo

ポリシー・セットの適用先である要素を識別する、サポートされている表現。この属性には、有効とみなされる値を指定する必要があります。

attachTo

ポリシー・セットの添付先である要素を識別する、サポートされている表現。この属性には、有効とみなされる値を指定する必要があります。

description

ポリシー・セットの説明。ユーザー・インタフェースにポリシー・セットが表示される場合、この名前が使用されます。

status

ポリシー・セットが使用できるかどうかを示します。enabled (デフォルト)に設定されている場合、ポリシー・セットは正常に処理されます。disabledに設定されている場合、ポリシー・セットは処理の際に無視されます。

ポリシー・セットをリポジトリに書き込んでいるときに検証に失敗すると、この属性は自動的にdisabledに設定されます。

constraint

ポリシー・セットの適用先であるランタイム・コンテキストを識別する、サポートされている表現。この属性が指定されていない場合、ポリシー・セットはすべてのランタイム・コンテキストに適用されます。

wsp:policyReference

ポリシー・セットを1つ以上のポリシーに関連付ける際に使用される要素。この要素には、次のサブ要素が含まれます。

- orawsp:OverrideProperty

属性

次の表には、<wsp:policyReference>要素の属性がまとめられています。

表E-2 <wsp:policyReference>要素の属性

要素の属性" width="100%">

属性

説明

URI

ポリシー・セットに関連付けられるOracle WSMポリシーURI。

category

ポリシーのカテゴリ。有効な値は、security、mtom、wsrm、addressing、managementです。

status

ポリシー参照のステータス。有効な値は、enabledおよびdisabledです。

例

次の例は、base_domainという名前のドメインで、CRMという文字列で始まる名前を持つアプリケーションの、SCA以外のすべてのWebサービスにユーザー名トークン・ポリシーを添付する、サンプルのポリシー・セットを示しています。

例E-1 サンプルのpolicySet要素

<policySet name="non_sca_web_service_policyset"
appliesTo="WS_Service()"
attachTo="Domain('base_domain') and Application('CRM*')"
orawsp:description="Default policy for a non-SCA web service"
orawsp:status="enabled"
xmlns="http://docs.oasis-open.org/ns/opensca/sca/200903"
xmlns:orawsp="http://schemas.oracle.com/ws/2006/01/policy"
xmlns:wsp="http://www.w3.org/ns/ws-policy">
<wsp:PolicyReference
wsp:URI="oracle/wss_username_token_service_policy"
orawsp:category="security"
orawsp:status="enabled" />
</policySet>

orawsp:OverrideProperty

<orawsp:OverrideProperty>要素は、ポリシー・セット内のポリシー添付に関連する構成オーバーライドを指定する際に使用されます。

例

<orawsp:OverrideProperty name="csf-key" value="orakey" />

Oracleの法律上の注意点

コピーライト

Copyright © 1994-2018, Oracle and/or its affiliates. All rights reserved.

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクルまでご連絡ください。

制限付権利について

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、Oracle Corporationおよびその関連会社は一切の責任を負いかねます。

商標と登録商標について

OracleおよびJavaはオラクルおよびその関連会社の登録商標です。その他の社名、商品名等は各社の商標または登録商標である場合があります。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

Pre-General Availability (一般提供前)版のドキュメントについて

このドキュメントがPre-General Availability (一般提供前)版の場合:

このドキュメントはPre-General Availability (一般提供前)版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。Oracle Corporationおよびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

非公開のPre-General Availability (一般提供前)版のドキュメントについて

このドキュメントが非公開のPre-General Availability (一般提供前)版の場合:

このドキュメントに含まれる情報は、情報の共有のみを目的としたものであって、顧客諮問委員会(Customer Advisory Board)のメンバーとしてのお客様の立場でのみ、またはお客様のPre-General Availability Trial Agreement (Pre-GAトライアル契約)のみに従って検討されるべきものとします。マテリアル、コード、または機能の提供をお約束するものではなく、購入決定を行う際の判断材料とすべきではありません。このドキュメントに記載されている特徴または機能の開発、リリースおよび時期については、オラクルの裁量により決定されます。

このドキュメントには、ソフトウェアまたは印刷物などの形式を問わず、オラクルが独占的な権利を有する財産的情報が含まれています。この機密資料へのアクセスと使用は、お客様とオラクルとの間で締結され、お客様が遵守に同意した、Oracle Master Agreement、Oracle License and Oracle Services Agreement (オラクル・ライセンスおよびサービスに関する契約書)、Oracle Partner Network Agreement、Oracle Distribution Agreementまたはその他のライセンス契約の条件に従うものとします。このドキュメントとその内容の開示、コピー、複製および配布には、オラクルによる事前の承諾を必要とします。このドキュメントはライセンス契約の一部となるものではなく、オラクルおよびその子会社や関連会社との契約を構成するものではありません。

ドキュメントのアクセシビリティ

オラクルのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)を参照してください。

Oracle Supportへのアクセス

サポートをご契約のお客様には、My Oracle Supportを通して電子支援サービスを提供しています。詳細情報は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info)か、聴覚に障害のあるお客様は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs)を参照してください。