Oracle® Fusion Middleware

Oracle Web Services Manager相互運用性ソリューション・ガイド

12c (12.2.1.2)

E82846-02(原本部品番号:E78136-02)

2016年12月

このドキュメントは、OWSMの最も一般的な相互運用性シナリオを実装する方法について説明したソフトウェア開発者向けのマニュアルです。

Oracle Fusion Middleware Oracle Web Services Manager相互運用性ソリューション・ガイド, 12c (12.2.1.2)

E82846-02

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

原本著者: Annies Ephraim

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

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

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

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およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

目次

例一覧

図一覧

表一覧

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

はじめに

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

- 表記規則

このガイドで説明する新機能

- リリース12c (12.2.1.2)の新機能と変更された機能

- リリース12c (12.2.1.1)の新機能と変更された機能

- 12c (12.2.1)の新機能と変更された機能

- 12c (12.1.3)の新機能と変更された機能

- 12c (12.1.2)の新機能と変更された機能

- リリース12c (12.1.3)に関するこのドキュメントにおけるその他の大きな変更

1 OWSMの相互運用性の概要

- 1.1 OWSMのポリシーについて

- 1.2 OWSM相互運用性シナリオ

2 OWSM 10gのセキュリティ環境との相互運用性

- 2.1 OWSM 10gのセキュリティ環境との相互運用性の概要

- 2.1.1OWSM 10gポリシー・ステップ

- 2.1.2 OWSM事前定義済ポリシー

- 2.1.3 相互運用性シナリオ

- 2.1.4 OWSM 10gゲートウェイについて

- 2.1.5 サード・パーティ・ソフトウェアについて

- 2.2 メッセージ保護付き匿名認証(WS-Security 1.0)

- 2.2.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(匿名認証)

- 2.2.1.1 OWSM 12c Webサービスの構成(匿名認証)

- 2.2.1.2 OWSM 10gクライアントの構成(匿名認証)

- 2.2.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(匿名認証)

- 2.2.2.1 OWSM 10g Webサービスの構成(匿名認証)

- 2.2.2.2 OWSM 12cクライアントの構成(匿名認証)

- 2.3 メッセージ保護付きユーザー名トークン(WS-Security 1.0)

- 2.3.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(ユーザー名トークン)

- 2.3.1.1 OWSM 12c Webサービスの構成(ユーザー名トークン)

- 2.3.1.2 OWSM 10g クライアントの構成(ユーザー名トークン)

- 2.3.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(ユーザー名トークン)

- 2.3.2.1 OWSM 10g Webサービスの構成(ユーザー名トークン)

- 2.3.2.2 OWSM 12c クライアントの構成(ユーザー名トークン)

- 2.4 メッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

- 2.4.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SAMLトークン)

- 2.4.1.1 OWSM 12c Webサービスの構成(SAMLトークン)

- 2.4.1.2 OWSM 10g クライアントの構成(SAMLトークン)

- 2.4.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SAMLトークン)

- 2.4.2.1 OWSM 10g Webサービスの構成(SAMLトークン)

- 2.4.2.2 OWSM 12c クライアントの構成(SAMLトークン)

- 2.5 メッセージ保護付き相互認証(WS-Security 1.0)

- 2.5.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(相互認証)

- 2.5.1.1 OWSM 12c Webサービスの構成(相互認証)

- 2.5.1.2 OWSM 10gクライアントの構成(相互認証)

- 2.5.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(相互認証)

- 2.5.2.1 OWSM 10g Webサービスの構成(相互認証)

- 2.5.2.2 OWSM 12cクライアントの構成(相互認証)

- 2.6 SSL経由のユーザー名トークン

- 2.6.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SSL経由のユーザー名トークン)

- 2.6.1.1 OWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- 2.6.1.2 OWSM 10gクライアントの構成(SSL経由のユーザー名トークン)

- 2.6.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- 2.6.2.1 OWSM 10g Webサービスの構成(SSL経由のユーザー名トークン)

- 2.6.2.2 OWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- 2.7 SSL経由のSAMLトークン(送信者保証)(WS-Security 1.0)

- 2.7.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SSL経由のSAMLトークン)

- 2.7.1.1 OWSM 12c Webサービスの構成(SSL経由のSAMLトークン)

- 2.7.1.2 OWSM 10gクライアントの構成(SSL経由のSAMLトークン)

- 2.7.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のSAMLトークン)

- 2.7.2.1 OWSM 10g Webサービスの構成(SSL経由のSAMLトークン)

- 2.7.2.2 OWSM 12cクライアントの構成(SSL経由のSAMLトークン)

3 Oracle Containers for Java EE (OC4J) 10gのセキュリティ環境との相互運用性

- 3.1 OC4J 10gのセキュリティ環境との相互運用性の概要

- 3.1.1 OC4J 10gのセキュリティ環境

- 3.1.2 OC4J 10cのOWSM 12cポリシー

- 3.1.3 OC4J 10cの相互運用性シナリオ

- 3.2 OC4J 10gクライアント向けのメッセージ保護付き匿名認証(WS-Security 1.0)

- 3.2.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(匿名認証)

- 3.2.1.1 OC4J 10gクライアントのためのOWSM 12c Webサービスの構成(匿名認証)

- 3.2.1.2 OC4J 10gクライアントの構成(匿名認証)

- 3.2.1.3 <appname>Binding_Stub.xmlファイルの編集(匿名認証)

- 3.2.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(匿名認証)

- 3.2.2.1 OC4J 10g Webサービスの構成(匿名認証)

- 3.2.2.2 OC4J 10g WebサービスのためのOWSM 12cクライアントの構成(匿名認証)

- 3.2.2.3 OC4J 10gのためのwsmgmt.xmlファイルの編集(匿名認証)

- 3.3 OC4J 10gクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)

- 3.3.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

- 3.3.1.1 OWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 3.3.1.2 OC4J 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

- 3.3.1.3 <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付きユーザー名トークン)

- 3.3.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 3.3.2.1 OC4J 10g Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 3.3.2.2 OC4J 10gのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 3.3.2.3 wsmgmt.xmlファイルの構成(メッセージ保護付きユーザー名トークン)

- 3.4 OC4J 10gクライアント向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

- 3.4.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(メッセージ保護付きSAMLトークン)

- 3.4.1.1 OWSM 12c Webサービスの構成(メッセージ保護付きSAMLトークン)

- 3.4.1.2 OC4J 10gクライアントの構成(メッセージ保護付きSAMLトークン)

- 3.4.1.3 <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付きSAMLトークン)

- 3.4.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

- 3.4.2.1 OC4J 10g Webサービスの構成(メッセージ保護付きSAMLトークン)

- 3.4.2.2 OWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

- 3.4.2.3 wsmgmt.xmlファイルの編集(メッセージ保護付きSAMLトークン)

- 3.5 OC4J 10gクライアント向けのメッセージ保護付き相互認証(WS-Security 1.0)

- 3.5.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(メッセージ保護付き相互認証)

- 3.5.1.1 OWSM 12c Webサービスの構成(メッセージ保護付き相互認証)

- 3.5.1.2 OC4J 10gクライアントの構成(メッセージ保護付き相互認証)

- 3.5.1.3 <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付き相互認証)

- 3.5.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付き相互認証)

- 3.5.2.1 OC4J 10g Webサービスの構成(メッセージ保護付き相互認証)

- 3.5.2.2 OWSM 12cクライアントの構成(メッセージ保護付き相互認証)

- 3.5.2.3 wsmgmt.xmlファイルの編集(メッセージ保護付き相互認証)

- 3.6 OC4J 10gクライアント向けのSSL経由のユーザー名トークン

- 3.6.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(SSL経由のユーザー名トークン)

- 3.6.1.1 OC4JクライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- 3.6.1.2 OC4J 10gクライアントの構成(SSL経由のユーザー名トークン)

- 3.6.1.3 <appname>Binding_Stub.xmlファイルの編集(SSL経由のユーザー名トークン)

- 3.6.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- 3.6.2.1 OC4J 10g Webサービスの構成(SSL経由のユーザー名トークン)

- 3.6.2.2 OC4J 10g WebサービスのためのOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- 3.6.2.3 wsmgmt.xmlファイルの編集(SSL経由のユーザー名トークン)

- 3.7 OC4J 10gクライアント向けのSSL経由のSAMLトークン(送信者保証)(WS-Security 1.0)

- 3.7.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(SSL経由のSAMLトークン送信者保証)

- 3.7.1.1 OC4J 10gクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLトークン送信者保証)

- 3.7.1.2 OC4J 10gクライアントの構成(SSL経由のSAMLトークン送信者保証)

- 3.7.1.3 <appname>Binding_Stub.xmlファイルの編集(SSL経由のSAMLトークン送信者保証)

- 3.7.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

- 3.7.2.1 OC4J 10g Webサービスの構成(SSL経由のSAMLトークン送信者保証)

- 3.7.2.2 OWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

- 3.7.2.3 wsmgmt.xmlファイルの編集(SSL経由のSAMLトークン送信者保証)

4 Oracle WebLogic Server 12c Webサービスのセキュリティ環境との相互運用性

- 4.1 Oracle WebLogic Server 12c Webサービスのセキュリティ環境との相互運用性の概要

- 4.1.1 Oracle WebLogic Server 12cポリシー向けのOWSM事前定義済ポリシー

- 4.1.2 Oracle WebLogic Serviceの相互運用性シナリオ

- 4.2 Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)

- 4.2.1 WebLogic Webサービス・ポリシーとの相互運用性(ユーザー名トークン)

- 4.2.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(ユーザー名トークン)

- 4.2.1.2 OWSMクライアント・ポリシーのアタッチと構成(ユーザー名トークン)

- 4.2.2 Webサービス・クライアント・ポリシー(ユーザー名トークン)

- 4.2.2.1 OWSM Webサービス・ポリシーのアタッチと構成(ユーザー名トークン)

- 4.2.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(ユーザー名トークン)

- 4.3 Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)およびMTOM

- 4.3.1 WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するユーザー名トークン)

- 4.3.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

- 4.3.1.2 OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

- 4.3.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するユーザー名トークン)

- 4.3.2.1 OWSMポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

- 4.3.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

- 4.4 Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)

- 4.4.1 WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護付きユーザー名トークン)

- 4.4.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

- 4.4.1.2 OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

- 4.4.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護付きユーザー名トークン)

- 4.4.2.1 OWSMポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

- 4.4.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

- 4.5 Oracle WebLogic Server向けのSSL経由のユーザー名トークン

- 4.5.1 OWSMポリシーのアタッチと構成(SSL経由のユーザー名トークン)

- 4.5.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(SSL経由のユーザー名トークン)

- 4.6 MTOMを使用したOracle WebLogic Server向けのSSL経由のユーザー名トークンの実装

- 4.7 Oracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)

- 4.7.1 OWSMポリシーのアタッチと構成(SAMLトークン)

- 4.7.2 WebLogic Webサービス・クライアント・ポリシーの構成(SAMLトークン)

- 4.7.3 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(SAMLトークン)

- 4.8 MTOMを使用したOracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)の実装

- 4.9 Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン2.0 (送信者保証)(WS-Security 1.1)

- 4.9.1 WebLogic Webサービス・ポリシーとの相互運用性(SAMLトークン2.0)

- 4.9.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(SAMLトークン2.0)

- 4.9.1.2 OWSMクライアント・ポリシーのアタッチと構成(SAMLトークン2.0)

- 4.9.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(SAMLトークン2.0)

- 4.9.2.1 OWSMポリシーのアタッチと構成(SAMLトークン2.0)

- 4.9.2.2 WebLogic Webサービス・クライアントのアタッチと構成(SAMLトークン2.0)

- 4.10 Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)

- 4.10.1 WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護付きSAMLトークン)

- 4.10.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

- 4.10.1.2 OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

- 4.10.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護付きSAMLトークン)

- 4.10.2.1 OWSMポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

- 4.10.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

- 4.11 Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)およびMTOM

- 4.11.1 WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するSAMLトークン)

- 4.11.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

- 4.11.1.2 OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

- 4.11.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するSAMLトークン)

- 4.11.2.1 OWSMポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

- 4.11.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

- 4.12 Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

- 4.12.1 WebLogic Webサービス・ポリシーとの相互運用性 - メッセージ保護付きSAMLトークン(WS-Security 1.0)

- 4.12.1.1 WebLogic Webサービス・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

- 4.12.1.2 OWSMクライアント・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

- 4.12.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性 - メッセージ保護付きSAMLトークン(WS-Security 1.0)

- 4.12.2.1 OWSMポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

- 4.12.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

- 4.13 Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.0)

- 4.13.1 WebLogic Webサービス・ポリシーとの相互運用性-相互認証(WS-Security 1.0)

- 4.13.1.1 WebLogic Webサービス・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

- 4.13.1.2 OWSMクライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

- 4.13.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性-相互認証(WS-Security 1.0)

- 4.13.2.1 OWSMポリシーのアタッチと構成-相互認証(WS-Security 1.0)

- 4.13.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

- 4.14 Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.1)

- 4.14.1 WebLogic Webサービス・ポリシーとの相互運用性-相互認証(WS-Security 1.1)

- 4.14.1.1 WebLogic Webサービス・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

- 4.14.1.2 OWSMクライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

- 4.14.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性-相互認証(WS-Security 1.1)

- 4.14.2.1 OWSMポリシーのアタッチと構成-相互認証(WS-Security 1.1)

- 4.14.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

5 Microsoft WCF/.NET 3.5のセキュリティ環境との相互運用性

- 5.1 Microsoft WCF/.NET 3.5のセキュリティ環境の相互運用性の理解

- 5.1.1 Microsoft WCF/.NET 3.5のセキュリティ環境向けのOWSM事前定義済ポリシー

- 5.1.2 Microsoft WCF/.NET 3.5の相互運用性シナリオ

- 5.2 Microsoft WCF/.NET 3.5クライアント向けのメッセージ送信最適化メカニズムの実装

- 5.2.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ送信最適化メカニズム)

- 5.2.1.1 OWSM 12c Webサービスの構成(MTOM)

- 5.2.1.2 Microsoft WCF/.NET 3.5クライアントの構成(MTOM)

- 5.2.2 Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

- 5.2.2.1 Microsoft WCF/.NET 3.5 Webサービスの構成(MTOM)

- 5.2.2.2 OWSM 12cクライアントの構成(MTOM)

- 5.3 Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

- 5.3.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)

- 5.3.1.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 5.3.1.2 Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)

- 5.3.2 Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 5.3.2.1 Microsoft WCF/.NET 3.5 Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 5.3.2.2 Microsoft WCF/.NET 3.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 5.4 Microsoft WCF/.NET 3.5クライアント向けのSSL経由のユーザー名トークンの実装

- 5.4.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- 5.4.2 Microsoft WCF/.NET 3.5クライアントの構成(SSL経由のユーザー名トークン)

- 5.5 Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付き相互認証(WS-Security 1.1)の実装

- 5.5.1 相互運用性のための前提条件の構成(相互認証)

- 5.5.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(相互認証)

- 5.5.2.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(相互認証)

- 5.5.2.2 Microsoft WCF/.NET 3.5クライアントの構成(相互認証)

- 5.5.3 Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(相互認証)

- 5.6 Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付きKerberosの実装

- 5.6.1 相互運用性のための前提条件となるタスクの実行(メッセージ保護付きKerberos)

- 5.6.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

- 5.6.2.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きKerberos)

- 5.6.2.2 Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

- 5.7 Microsoft WCF/.NET 3.5クライアント向けの導出キーを使用したメッセージ保護付きKerberosの実装

- 5.7.1 相互運用性のための前提条件の構成(導出キーを使用したメッセージ保護付きKerberos)

- 5.7.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

- 5.8 Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションによるKerberosの実装

- 5.8.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOネゴシエーションによるKerberos)

- 5.8.2 Microsoft WCF/.NET 3.5クライアントの構成(SPNEGOネゴシエーションによるKerberos)

- 5.9 Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションおよび資格証明の委任によるKerberosの実装

- 5.9.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOおよび資格証明の委任によるKerberos)

- 5.9.2 Microsoft WCF/.NET 3.5クライアントの構成(SPNEGOおよび資格証明の委任によるKerberos)

- 5.10 Microsoft Active Directory Federation Services 2.0 (ADFS 2.0) STSを使用するWCF/.NET 3.5クライアント

- 5.10.1 Active Directory Federation Services (ADFS) 2.0のインストールおよび構成

- 5.10.2 信頼できるSAMLトークン発行者としてのADFS 2.0 STSの構成

- 5.10.3 Oracle Internet Directoryのユーザーの構成

- 5.10.4 ポリシーのアタッチ

- 5.10.5 ADFS 2.0のリライイング・パーティとしてのWebサービスの登録

- 5.10.5.1 サービスの要求規則の構成

- 5.10.6 ADFS 2.0を使用するWCF/.NET 3.5クライアントの保護

6 Microsoft WCF/.NET 4.5のセキュリティ環境との相互運用性

- 6.1 Microsoft WCF/.NET 4.5のセキュリティ環境の相互運用性の理解

- 6.1.1 Microsoft WCF/.NET 4.5のセキュリティ環境向けのOWSM事前定義済ポリシー

- 6.1.2 Microsoft WCF/.NET 4.5の相互運用性シナリオ

- 6.2 Microsoft WCF/.NET 4.5クライアント向けのメッセージ送信最適化メカニズムの実装

- 6.2.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ送信最適化メカニズム)

- 6.2.2 Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

- 6.2.2.1 Microsoft WCF/.NET 4.5 Webサービスの構成(MTOM)

- 6.2.2.2 Microsoft WCF/.NET 4.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

- 6.3 Microsoft WCF/.NET4.5クライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

- 6.3.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)

- 6.3.1.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 6.3.1.2 Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)

- 6.3.2 Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 6.3.2.1 Microsoft WCF/.NET 4.5 Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 6.3.2.2 Microsoft WCF/.NET 4.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 6.4 Microsoft WCF/.NET 4.5クライアント向けのSSL経由のユーザー名トークンの実装

- 6.4.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(SSL経由のユーザー名トークン)

- 6.4.1.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- 6.4.1.2 Microsoft WCF/.NET 4.5クライアントの構成(SSL経由のユーザー名トークン)

- 6.4.2 Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- 6.4.2.1 Microsoft WCF/.NET 4.5 Webサービスの構成(SSL経由のユーザー名トークン)

- 6.4.2.2 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- 6.5 Microsoft WCF/.NET 4.5クライアント向けのメッセージ保護付き相互認証(WS-Security 1.1)の実装

- 6.5.1 メッセージ保護付き相互認証のための構成前提条件の実行

- 6.5.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付き相互認証)

- 6.5.2.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付き相互認証)

- 6.5.2.2 Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付き相互認証)

- 6.5.3 Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付き相互認証)

- 6.6 Microsoft WCF/.NET 4.5クライアント向けのメッセージ保護付きKerberosの実装

- 6.6.1 メッセージ保護付きKerberosの相互運用性のための前提条件タスクの実行

- 6.6.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きKerberos)

- 6.6.2.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きKerberos)

- 6.6.2.2 Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きKerberos)

- 6.7 Microsoft WCF/.NET 4.5クライアント向けの導出キーを使用したメッセージ保護付きKerberosの実装

- 6.7.1 導出キーを使用したメッセージ保護付きKerberosの構成前提条件タスクの実行

- 6.7.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(導出キーを使用したKerberosメッセージ)

- 6.7.2.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(導出キーを使用したメッセージ保護付きKerberos)

- 6.7.2.2 Microsoft WCF/.NET 4.5クライアントの構成(導出キーを使用したメッセージ保護付きKerberos)

- 6.8 Microsoft WCF/.NET 4.5クライアント向けのSPNEGOネゴシエーションによるKerberosの実装

- 6.8.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOネゴシエーションによるKerberos)

- 6.8.2 Microsoft WCF/.NET 4.5クライアントの構成(SPNEGOネゴシエーションによるKerberos)

- 6.9 Microsoft WCF/.NET 4.5クライアント向けのSPNEGOネゴシエーションおよび資格証明の委任によるKerberosの実装

- 6.10 Microsoft Active Directory Federation Services 2.0 (ADFS 2.0) STSを使用するWCF/.NET 4.5クライアント

- 6.10.1 Active Directory Federation Services (ADFS) 2.0のインストールおよび構成

- 6.10.2 ADFS 2.0 STSによって発行されたSAMLアサーションを信頼するためのOWSMの構成

- 6.10.3 Oracle Internet Directoryのユーザーの構成

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

- 6.10.5 ADFS 2.0のリライイング・パーティとしてのWebサービスの登録

- 6.10.6 ADFS 2.0を使用するWCF/.NET 4.5クライアントの保護

7 Oracle Service Bus 10gのセキュリティ環境との相互運用性

- 7.1 Oracle Service Bus 10gのセキュリティ環境の相互運用性の理解

- 7.1.1 OWSMポリシーおよびアサーション

- 7.1.2 Oracle Service Bus 10gの相互運用性シナリオ

- 7.2 Oracle Service Bus 10gクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)の実装

- 7.2.1 相互運用性のための前提条件の構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)

- 7.2.2 OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

- 7.2.2.1 Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)

- 7.2.2.2 Oracle Service Bus 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

- 7.2.3 Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 7.2.3.1 Oracle Service Bus 10g Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 7.2.3.2 Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)

- 7.3 Oracle Service Bus 10gクライアント向けのWS-Security 1.0メッセージ保護付きSAML送信者保証トークンの実装

- 7.3.1 相互運用性のための前提条件の構成(SAML送信者保証トークン)

- 7.3.2 OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(SAML送信者保証トークン)

- 7.3.2.1 Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(SAML送信者保証トークン)

- 7.3.2.2 Oracle Service Bus 10gクライアントの構成(SAML送信者保証トークン)

- 7.3.3 Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(SAML送信者保証トークン)

- 7.3.3.1 Oracle Service Bus 10g Webサービスの構成(SAML送信者保証トークン)

- 7.3.3.2 Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(SAML送信者保証トークン)

- 7.4 Oracle Service Bus 10gクライアント向けのSSL経由のSAMLまたはユーザー名トークンの実装

- 7.4.1 相互運用性のためのSAMLの前提条件の構成

- 7.4.2 OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(SSL経由のSAMLまたはユーザー名トークン)

- 7.4.2.1 Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLまたはユーザー名トークン)

- 7.4.2.2 Oracle Service Bus 10gクライアントの構成(SSL経由のSAMLまたはユーザー名トークン)

- 7.5 Oracle Service Bus 10gクライアント向けのWS-Security 1.0メッセージ保護付き相互認証の実装

- 7.5.1 Oracle WebLogic Serverの前提条件の構成

- 7.5.2 OWSMの前提条件の構成

- 7.5.3 OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

- 7.5.4 Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

- 7.5.4.1 Oracle Service Bus 10g Webサービスの構成(WS-Security 1.0メッセージ保護付き相互認証)

- 7.5.4.2 Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

8 Axis 1.4およびWSS4J 1.5.8のセキュリティ環境との相互運用性

- 8.1 Axis 1.4およびWSS4J 1.5.8のセキュリティ環境の相互運用性の理解

- 8.1.1 Axis/WSS4JのOWSMポリシー

- 8.1.2 Axis/WSS4Jのサービス・ポリシーの相互運用性シナリオ

- 8.2 Axis/WSS4Jとの相互運用性に必要なファイルの作成

- 8.3 Axis/WSS4Jクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)の実装

- 8.3.1 OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(メッセージ保護付きユーザー名トークン)

- 8.3.1.1 Axis/WSS4JのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 8.3.1.2 Axis/WSS4Jクライアントの構成(メッセージ保護付きユーザー名トークン)

- 8.3.2 Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 8.3.2.1 Axis/WSS4J Webサービスの構成(メッセージ保護付きユーザー名トークン)

- 8.3.2.2 Axis/WSS4JのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 8.4 Axis/WSS4Jクライアント向けのメッセージ保護付きSAMLトークン(WS-Security 1.0)の実装

- 8.4.1 OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(メッセージ保護付きSAMLトークン)

- 8.4.1.1 Axis/WSS4JのためのOWSM 12c Webサービスの構成(SAMLトークン)

- 8.4.1.2 Axis/WSS4Jクライアントの構成(SAMLトークン)

- 8.4.2 Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

- 8.4.2.1 Axis/WSS4J Webサービスの構成(SAMLトークン)

- 8.4.2.2 Axis/WSS4JのためのOWSM 12cクライアントの構成(SAMLトークン)

- 8.5 Axis/WSS4Jクライアント向けのSSL経由のユーザー名トークンの実装

- 8.5.1 OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(SSL経由のユーザー名トークン)

- 8.5.1.1 Axis/WSS4JのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- 8.5.1.2 Axis/WSS4Jクライアントの構成(SSL経由のユーザー名トークン)

- 8.5.2 Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- 8.5.2.1 Axis/WSS4J Webサービスの構成(SSL経由のユーザー名トークン)

- 8.5.2.2 Axis/WSS4JのためのOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- 8.6 Axis/WSS4Jクライアント向けのSSL経由のSAMLトークン(送信者保証)の実装

- 8.6.1 OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(SSL経由のSAMLトークン送信者保証)

- 8.6.1.1 Axis/WSS4JクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLトークン送信者保証)

- 8.6.1.2 Axis/WSS4Jクライアントの構成(SSL経由のSAMLトークン送信者保証)

- 8.6.2 Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

- 8.6.2.1 Axis/WSS4J Webサービスの構成(SSL経由のSAMLトークン送信者保証)

- 8.6.2.2 Axis/WSS4JのためのOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

9 Oracle GlassFish Serverリリース3.0.1との相互運用性

- 9.1 Oracle GlassFishのセキュリティ環境の相互運用性の理解

- 9.1.1 Oracle GlassFishのOWSMポリシー

- 9.1.2 GlassFishサービス・ポリシーの相互運用性シナリオ

- 9.2 GlassFishクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

- 9.2.1 OWSM 12c WebサービスおよびGlassFishクライアントの構成(メッセージ保護付きユーザー名トークン)

- 9.2.2 GlassFish WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- 9.3 GlassFishクライアント向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)の実装

- 9.3.1 OWSM 12c WebサービスおよびGlassFishクライアントの構成(メッセージ保護付きSAMLトークン)

- 9.3.1.1 GlassFishクライアントの相互運用性のための前提条件の構成

- 9.3.1.2 OWSM 11g Webサービスの構成(メッセージ保護付きSAMLトークン)

- 9.3.1.3 GlassFish/Metroクライアントの構成(メッセージ保護付きSAMLトークン)

- 9.3.2 GlassFish WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

- 9.3.2.1 GlassFish Webサービスの相互運用性のための前提条件の構成

- 9.3.2.2 GlassFish/Metro Webサービスの構成

- 9.3.2.3 OWSM 11gクライアントの構成

例の一覧

図一覧

表一覧

- 1-1 OWSMの一般的な相互運用性シナリオ

- 2-1 OWSM 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

- 2-2 OWSM 12cサービス・ポリシーとOWSM 10gクライアント・ポリシーの相互運用性

- 3-1 OWSM 12cサービス・ポリシーとOracle OC4J 10gクライアント・ポリシーの相互運用性

- 3-2 Oracle OC4J 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

- 4-1 WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーの相互運用性

- 4-2 OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーの相互運用性

- 4-3 Oracle WebLogic Server 12c Webサービスのセキュリティ環境との相互運用性

- 5-1 OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーの相互運用性

- 5-2 Microsoft WCF/.NET 3.5サービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

- 6-1 OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーの相互運用性

- 6-2 Microsoft WCF/.NET 4.5サービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

- 7-1 OWSM 12cサービス・ポリシーとOracle Service Bus 10gクライアント・ポリシーの相互運用性

- 7-2 Oracle Service Bus 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

- 8-1 OWSM 12cサービス・ポリシーとAxis WSS4Jクライアント・ポリシーの相互運用性

- 8-2 Axis WSS4Jサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

- 9-1 OWSM 11gサービス・ポリシーとGlassFishクライアントの相互運用性

- 9-2 GlassFishサービスとOWSM 11gクライアント・ポリシーの相互運用性

はじめに

ここでは、ドキュメントのアクセシビリティ機能とこのマニュアル(Oracle Web Services Manager相互運用性ソリューション・ガイド)で使用される規則について説明します。

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

Oracleのアクセシビリティへの取り組みについては、Oracle Accessibility ProgramのWebサイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)にアクセスしてください。

Oracle Supportへのアクセス

サポートをご購入の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を参照してください。

表記規則

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

規則

意味

太字

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

イタリック体

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

固定幅フォント

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

このガイドで説明する新機能

次の各トピックでは、Oracle Web Services Manager (OWSM)の新機能と変更された機能およびこのガイドで説明する主な変更について紹介し、追加情報へのリンクを示します。このドキュメントは、旧名『Oracle Web Services Manager相互運用ガイド』の新版です。

リリース12c (12.2.1.2)の新機能と変更された機能

このリビジョンに新機能は含まれていません。このマニュアル全体を通してマイナー更新が行われました。

リリース12c (12.2.1.1)の新機能と変更された機能

修正や訂正などのマイナー更新がこのドキュメントに対して行われました。

12c (12.2.1)での新機能と変更された機能

修正や訂正などのマイナー更新がこのドキュメントに対して行われました。

12c (12.1.3)での新機能と変更された機能

Oracle JDeveloper 12c (12.1.3)には、このドキュメントで説明する次の新機能と変更された機能が含まれています。

- Microsoft WCF/.NET 3.5のセキュリティ環境との相互運用性では、相互運用性シナリオMicrosoft WCF/.NET 3.5クライアント向けのSSL経由のユーザー名トークンの実装およびMicrosoft WCF/.NET 3.5クライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装のセキュアな通信の有効化について記載しています。また、シナリオMicrosoft Active Directory Federation Services 2.0 (ADFS 2.0) STSを使用するWCF/.NET 3.5クライアントにおける追加ポリシーのサポートについても記載しています。

- Microsoft WCF/.NET 4.5のための新しいサポートについて記載されたMicrosoft WCF/.NET 4.5のセキュリティ環境との相互運用性が新しく追加されました。

12c (12.1.2)での新機能と変更された機能

Oracle JDeveloper 12c (12.1.2)には、このドキュメントで説明する次の新機能と変更された機能が含まれています。

- 次のMicrosoft WCF/.NET 3.5のセキュリティ環境との相互運用性シナリオがこのリリースに追加されています。

- Microsoft WCF/.NET 3.5クライアント向けの導出キーを使用したメッセージ保護付きKerberosの実装

- Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションによるKerberosの実装

- Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションおよび資格証明の委任によるKerberosの実装

リリース12c (12.1.3)に関するこのドキュメントにおけるその他の大きな変更

12c (12.1.3)では、このガイドは読みやすくするために再フォーマットされました。

1 OWSMの相互運用性の概要

Oracle Web Services Manager (OWSM)は、セキュリティ・スタック内の様々な製品と相互運用できます。

各章の内容は次のとおりです。

- 各セキュリティ・スタックの概要

- 使用シナリオの説明

制限事項および既知の問題の詳細は、『Oracle Fusion Middleware Infrastructureリリース・ノート』のWebサービスに関する項を参照してください。

このマニュアルおよびこの他のマニュアルに、なじみのない用語が出てきた場合は、用語集で定義を確認してください。

この章の内容は次のとおりです。

- OWSMのポリシーについて

- OWSM相互運用性シナリオ

1.1 OWSMのポリシーについて

OWSMポリシーをWebサービス・エンドポイントにアタッチする必要があります。ポリシーはドメインレベルで定義された1つ以上のアサーションで構成されています。アサーションはセキュリティ要件の定義です。そのまま使用できる事前定義のポリシーとアサーションのセットが用意されています。

事前定義済ポリシーの詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

ポリシーを構成およびアタッチする方法の詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

1.2 OWSM相互運用性シナリオ

OWSMとセキュリティ環境内の様々なコンポーネントとの間の相互運用性には、様々なシナリオがあります。

表1-1に、OWSMの最も一般的な相互運用性シナリオを示します。

表1-1 OWSMの一般的な相互運用性シナリオ

セキュリティ・スタック

OWSMポリシー

相互運用性シナリオ

OWSM 10g

oracle/wss10_message_protection_service_policy

oracle/wss10_message_protection_client_policy

メッセージ保護付き匿名認証(WS-Security 1.0)

OWSM 10g

oracle/wss10_username_token_with_message_protection_service_policy

oracle/wss10_username_token_with_message_protection_client_policy

メッセージ保護付きユーザー名トークン(WS-Security 1.0)

OWSM 10g

oracle/wss10_saml_token_with_message_protection_service_policy

oracle/wss10_saml_token_with_message_protection_client_policy

メッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

OWSM 10g

oracle/wss10_x509_token_with_message_protection_service_policy

oracle/wss10_x509_token_with_message_protection_client_policy

メッセージ保護付き相互認証(WS-Security 1.0)

OWSM 10g

oracle/wss_username_token_over_ssl_service_policy

oracle/wss_username_token_over_ssl_client_policy

SSL経由のユーザー名トークン

OWSM 10g

oracle/wss_saml_token_over_ssl_service_policy

oracle/wss_saml_token_over_ssl_client_policy

「SSL経由のSAMLトークン(送信者保証)(WS-Security 1.0)」

OC4J 10g

oracle/wss10_message_protection_service_policy

oracle/wss10_message_protection_client_policy

OC4J 10gクライアント向けのメッセージ保護付き匿名認証(WS-Security 1.0)

OC4J 10g

oracle/wss10_username_token_with_message_protection_service_policy

oracle/wss10_username_token_with_message_protection_client_policy

「OC4J 10gクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)」

OC4J 10g

oracle/wss10_saml_token_with_message_protection_service_policy

oracle/wss10_saml_token_with_message_protection_client_policy

「OC4J 10gクライアント向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)」

OC4J 10g

oracle/wss10_x509_token_with_message_protection_service_policy

oracle/wss10_x509_token_with_message_protection_client_policy

OC4J 10gクライアント向けのメッセージ保護付き相互認証(WS-Security 1.0)

OC4J 10g

oracle/wss_username_token_over_ssl_service_policy

または

oracle/wss_saml_or_username_token_over_ssl_service_policy

oracle/wss_username_token_over_ssl_client_policy

「OC4J 10gクライアント向けのSSL経由のユーザー名トークン」

OC4J 10g

oracle/wss_saml_token_over_ssl_service_policy

または

oracle/wss_saml_or_username_token_over_ssl_service_policy

oracle/wss_saml_token_over_ssl_client_policy

「OC4J 10gクライアント向けのSSL経由のSAMLトークン(送信者保証)(WS-Security 1.0)」

Oracle WebLogic Server 12c

oracle/wss11_username_token_with_message_protection_service_policy

oracle/wss11_username_token_with_message_protection_client_policy

「Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)」

Oracle WebLogic Server 12c

oracle/wss11_username_token_with_message_protection_service_policy

oracle/wss11_username_token_with_message_protection_client_policy

「Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)およびMTOM」

Oracle WebLogic Server 12c

oracle/wss10_username_token_with_message_protection_service_policy

oracle/wss10_username_token_with_message_protection_client_policy

「Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)」

Oracle WebLogic Server 12c

oracle/wss_username_token_over_ssl_service_policy

「Oracle WebLogic Server向けのSSL経由のユーザー名トークン」

Oracle WebLogic Server 12c

oracle/wss_username_token_over_ssl_service_policy

MTOMを使用したOracle WebLogic Server向けのSSL経由のユーザー名トークンの実装

Oracle WebLogic Server 12c

oracle/wss_saml_token_over_ssl_service_policy

「Oracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)」

Oracle WebLogic Server 12c

oracle/wss11_saml20_token_with_message_protection_service_policy

oracle/wss11_saml20_token_with_message_protection_client_policy

MTOMを使用したOracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)の実装

Oracle WebLogic Server 12c

oracle/wss11_saml20_token_with_message_protection_service_policy

oracle/wss11_saml20_token_with_message_protection_client_policy

「Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン2.0 (送信者保証)(WS-Security 1.1)」

Oracle WebLogic Server 12c

oracle/wss11_saml_token_with_message_protection_service_policy

oracle/wss11_saml_token_with_message_protection_client_policy

Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)

Oracle WebLogic Server 12c

oracle/wss11_saml_token_with_message_protection_service_policy

oracle/wss11_saml_token_with_message_protection_client_policy

Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)およびMTOM

Oracle WebLogic Server 12c

oracle/wss10_saml_token_with_message_protection_service_policy

oracle/wss10_saml_token_with_message_protection_client_policy

Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

Oracle WebLogic Server 12c

oracle/wss10_x509_token_with_message_protection_service_policy

oracle/wss10_x509_token_with_message_protection_client_policy

Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.0)

Oracle WebLogic Server 12c

oracle/wss11_x509_token_with_message_protection_service_policy

oracle/wss11_x509_token_with_message_protection_client_policy

Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.1)

Microsoft WCF/.NET 3.5

oracle/wsmtom_policy

Microsoft WCF/.NET 3.5クライアント向けのメッセージ送信最適化メカニズムの実装

Microsoft WCF/.NET 3.5

oracle/wss11_username_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

Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

Microsoft WCF/.NET 3.5

oracle/wss_saml_or_username_token_over_ssl_service_policy

または

oracle/wss_username_token_over_ssl_service_policy

Microsoft WCF/.NET 3.5クライアント向けのSSL経由のユーザー名トークンの実装

Microsoft WCF/.NET 3.5

oracle/wss11_x509_token_with_message_protection_service_policy

oracle/wss11_x509_token_with_message_protection_client_policy

Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付き相互認証(WS-Security 1.1)の実装

Microsoft WCF/.NET 3.5

oracle/wss11_kerberos_with_message_protection_service_policy

Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付きKerberosの実装

Microsoft WCF/.NET 3.5

wss11_kerberos_token_with_message_protection_basic128_service_policy

Microsoft WCF/.NET 3.5クライアント向けの導出キーを使用したメッセージ保護付きKerberosの実装

Microsoft WCF/.NET 3.5

http_spnego_token_service_templateを使用して作成されたポリシー

Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションによるKerberosの実装

Microsoft WCF/.NET 3.5

http_spnego_token_service_templateを使用して作成されたポリシー

Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションおよび資格証明の委任によるKerberosの実装

Oracle Service Bus 10g

wss10_username_token_with_message_protection_client_policy

wss10_username_token_with_message_protection_service_policy

Oracle Service Bus 10gクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)の実装

Oracle Service Bus 10g

oracle/wss10_saml_token_with_message_protection_service_policy

oracle/wss10_saml_token_with_message_protection_client_policy

Oracle Service Bus 10gクライアント向けのWS-Security 1.0メッセージ保護付きSAML送信者保証トークンの実装

Oracle Service Bus 10g

oracle/wss_saml_or_username_token_over_ssl_service_policy

Oracle Service Bus 10gクライアント向けのSSL経由のSAMLまたはユーザー名トークンの実装

Oracle Service Bus 10g

oracle/wss10_x509_token_with_message_protection_service_policy

oracle/wss10_x509_token_with_message_protection_client_policy

Oracle Service Bus 10gクライアント向けのWS-Security 1.0メッセージ保護付き相互認証の実装

Axis 1.4およびWSS4J 1.5.8

oracle/wss10_username_token_with_message_protection_service_policy

oracle/wss10_username_token_with_message_protection_client_policy

Axis/WSS4Jクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)の実装

Axis 1.4およびWSS4J 1.5.8

oracle/wss10_saml_token_with_message_protection_service_policy

oracle/wss10_saml_token_with_message_protection_client_policy

Axis/WSS4Jクライアント向けのメッセージ保護付きSAMLトークン(WS-Security 1.0)の実装

Axis 1.4およびWSS4J 1.5.8

oracle/wss_username_token_over_ssl_service_policy

oracle/wss_username_token_over_ssl_client_policy

Axis/WSS4Jクライアント向けのSSL経由のユーザー名トークンの実装

Axis 1.4およびWSS4J 1.5.8

oracle/wss_saml_token_over_ssl_service_policy

oracle/wss_saml_token_over_ssl_client_policy

Axis/WSS4Jクライアント向けのSSL経由のSAMLトークン(送信者保証)の実装

GlassFish Enterprise Server

oracle/wss11_saml_token_with_message_protection_service_policy

oracle/wss11_saml_token_with_message_protection_client_policy

GlassFishクライアント向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)の実装

2 OWSM 10gのセキュリティ環境との相互運用性

Oracle Web Services Manager (OWSM)は、OWSM 10gのセキュリティ環境と相互運用できます。OWSMのセキュリティ環境間の相互運用性を実現するため、WS-Security 1.0標準に準拠するポリシーがWebサービスにアタッチされます。

この章の内容は次のとおりです。

- OWSM 10gのセキュリティ環境との相互運用性の概要

- メッセージ保護付き匿名認証(WS-Security 1.0)

- メッセージ保護付きユーザー名トークン(WS-Security 1.0)

- メッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

- メッセージ保護付き相互認証(WS-Security 1.0)

- SSL経由のユーザー名トークン

- SSL経由のSAMLトークン(送信者保証)(WS-Security 1.0)

2.1 OWSM 10gのセキュリティ環境との相互運用性の概要

OWSM 10gおよび12cのポリシー・ステップ、相互運用性シナリオおよびOWSM 10gゲートウェイの詳細は、次の各トピックを参照してください。

- OWSM 10gポリシー・ステップ

- OWSM事前定義済ポリシー

- 相互運用性シナリオ

- OWSM 10gゲートウェイについて

- サード・パーティ・ソフトウェアについて

2.1.1 OWSM 10gポリシー・ステップ

OWSM 10gでは、各ポリシー強制ポイントでポリシー・ステップを指定します。

OWSM 10gのポリシー強制ポイントには、ゲートウェイとエージェントがあります。ポリシー・ステップは、特定のセキュリティ処理を扱うきめの細かい操作タスクです。認証および認可、暗号化および復号化、セキュリティ署名、トークン、資格証明の検証、変換などの処理を扱います。各操作タスクはWebサービス要求またはWebサービス応答のいずれかによって実行されます。OWSM 10gのポリシー・ステップの詳細は、http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/policy_steps.htm#BABIAHEGの『Oracle Web Services Manager管理者ガイド 10g (10.1.3.4)』で、Oracle Web Services Managerのポリシー・ステップに関する説明を参照してください。

2.1.2 OWSM事前定義済ポリシー

OWSM 12cでは、ポリシーをWebサービス・エンドポイントにアタッチします。

ポリシーはドメインレベルで定義された1つ以上のアサーションで構成されています。アサーションはセキュリティ要件の定義です。そのまま使用できる事前定義のポリシーとアサーションのセットが用意されています。

詳細は、次を参照してください。

- OWSM事前定義済ポリシーについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

- OWSM 12cポリシーの構成およびアタッチについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

- OWSM 10gのポリシー・ステップの詳細は、http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/policy_steps.htm#BABIAHEGの『Oracle Web Services Manager管理者ガイド 10g (10.1.3.4)』で、Oracle Web Services Managerのポリシー・ステップに関する項を参照してください。

2.1.3 相互運用性シナリオ

セキュリティ要件(認証、メッセージ保護およびトランスポート)に基づいたOWSM 10gの最も一般的な相互運用性シナリオの詳細は、このトピックを参照してください。

注意:

次の表2-1および表2-2のシナリオでは、v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

次の各項では、OWSM 12cでのOWSM 10gのゲートウェイおよびサード・パーティ・ソフトウェアの使用に関する追加の相互運用性情報を示します。

- OWSM 10gゲートウェイについて

- サード・パーティ・ソフトウェアについて

表2-1 OWSM 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

匿名

1.0

はい

いいえ

リクエスト・パイプライン: 署名の復号化と検証

レスポンス・パイプライン: メッセージの署名と暗号化

oracle/wss10_message_protection_client_policy

ユーザー名

1.0

はい

いいえ

リクエスト・パイプライン:

- 復号化および署名の検証

- 資格証明の抽出(WS-BASICとして構成された資格証明)

- ファイルの認証

レスポンス・パイプライン: メッセージの署名と暗号化

oracle/wss10_username_token_with_message_protection_client_policy

SAML

1.0

はい

いいえ

リクエスト・パイプライン:

- XML復号化

- SAML - WSS 1.0トークンの検証

レスポンス・パイプライン: メッセージの署名と暗号化

oracle/wss10_saml_token_with_message_protection_client_policy

相互認証

1.0

はい

いいえ

リクエスト・パイプライン: 復号化と検証

レスポンス・パイプライン: メッセージの署名と暗号化

oracle/wss10_x509_token_with_message_protection_client_policy

SSL経由のユーザー名

1.0および1.1

いいえ

はい

リクエスト・パイプライン:

- 資格証明の抽出

- ファイルの認証

wss_username_token_over_ssl_client_policy

SSL経由のSAML

1.0および1.1

いいえ

はい

リクエスト・パイプライン:

- 資格証明の抽出

- ファイルの認証

oracle/wss_saml_token_over_ssl_client_policy

表2-2 OWSM 12cサービス・ポリシーとOWSM 10gクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

匿名

1.0

はい

いいえ

oracle/wss10_message_protection_service_policy

リクエスト・パイプライン: メッセージの署名と暗号化

レスポンス・パイプライン: 署名の復号化と検証

ユーザー名

1.0

はい

いいえ

oracle/wss10_username_token_with_message_protection_service_policy

リクエスト・パイプライン: メッセージの署名と暗号化

レスポンス・パイプライン: 署名の復号化と検証

SAML

1.0

はい

いいえ

oracle/wss10_saml_token_with_message_protection_service_policy

リクエスト・パイプライン:

- 資格証明の抽出(WS-BASICとして構成された資格証明)

- SAML - WSS 1.0送信者保証トークンの挿入

- 署名と暗号化

レスポンス・パイプライン: 署名の復号化と検証

相互認証

1.0

はい

いいえ

oracle/wss10_x509_token_with_message_protection_service_policy

リクエスト・パイプライン: メッセージの署名と暗号化

レスポンス・パイプライン: 署名の復号化と検証

SSL経由のユーザー名

1.0および1.1

いいえ

はい

wss_username_token_over_ssl_service_policy

該当なし

SSL経由のSAML

1.0および1.1

いいえ

はい

oracle/wss_saml_token_over_ssl_service_policy

リクエスト・パイプライン:

- 資格証明の抽出

- SAML - WSS 1.0送信者保証トークンの挿入

2.1.4 OWSM 10gゲートウェイについて

Oracle Fusion Middleware 12cには、ゲートウェイ・コンポーネントは含まれていません。OWSM 10gのゲートウェイ・コンポーネントを、OWSM 10gのポリシーとともにアプリケーションで引き続き使用できます。

2.1.5 サード・パーティ・ソフトウェアについて

OWSM 10gでは、IBM WebSphereおよびRed Hat JBossなどのサード・パーティのアプリケーション・サーバーのポリシー強制がサポートされています。

Oracle Fusion Middleware 12cでサポートされるのは、Oracle WebLogic Serverのみです。OWSM 10gポリシーを使用すると、引き続きサード・パーティ・アプリケーションのサーバーを使用できます。

2.2 メッセージ保護付き匿名認証(WS-Security 1.0)

メッセージ保護付き匿名認証アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOWSM 10gクライアントとの間の相互運用性およびOWSM 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(匿名認証)

- OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(匿名認証)

2.2.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(匿名認証)

WS-Security 1.0標準に準拠するメッセージ保護付き匿名認証を実装するには、次の手順を実行してOWSM 12c WebサービスおよびOWSM 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(匿名認証)

- OWSM 10gクライアントの構成(匿名認証)

2.2.1.1 OWSM 12c Webサービスの構成(匿名認証)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. oracle/wss10_message_protection_service_policyポリシーのクローンを作成します
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

2. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

3. ポリシーをWebサービスにアタッチします。
詳細は、次の章を参照してください。

『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明

2.2.1.2 OWSM 10gクライアントの構成(匿名認証)

OWSM 10gクライアントを構成するには、次の手順を実行します。

1. (前述の)WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、OWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

2. メッセージの署名とゲートウェイの暗号化ポリシー・ステップをリクエスト・パイプラインにアタッチします。

3. リクエスト・パイプライン内の「メッセージの署名と暗号化」ポリシー・ステップを次のように構成します。

a. 「暗号化アルゴリズム」を「AES-128」に設定します。

b. 「キー・トランスポート・アルゴリズム」を「RSA-OAEP-MGF1P」に設定します。

c. メッセージの署名および暗号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります

4. 「署名の復号化と検証」ポリシー・ステップをレスポンス・パイプラインにアタッチします。

5. 復号化および署名検証のためのキーストア・プロパティを構成することによって、レスポンス・パイプライン内の「署名の復号化と検証」ポリシー・ステップを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

6. OWSMテスト・ページにナビゲートし、Webサービスの仮想化されたURLを入力します。

7. Webサービスを起動します。

2.2.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(匿名認証)

WS-Security 1.0標準に準拠するメッセージ保護付き匿名認証を実装するには、次の手順を実行してOWSM 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OWSM 10g Webサービスの構成(匿名認証)

- OWSM 12cクライアントの構成(匿名認証)

2.2.2.1 OWSM 10g Webサービスの構成(匿名認証)

次の手順を実行してOWSM 10g Webサービスを構成します。

1. WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、OWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

2. 「署名の復号化と検証」ポリシー・ステップをリクエスト・パイプラインにアタッチします。

3. リクエスト・パイプライン内の「署名の復号化と検証」ポリシー・ステップを次のように構成します。復号化および署名検証のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

4. 「メッセージの署名と暗号化」ポリシー・ステップをレスポンス・パイプラインにアタッチします。

5. レスポンス・パイプライン内の「メッセージの署名と暗号化」ポリシーを次のように構成します。

a. 「暗号化アルゴリズム」を「AES-128」に設定します。

b. 「キー・トランスポート・アルゴリズム」を「RSA-OAEP-MGF1P」に設定します。

c. メッセージの署名および暗号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

2.2.2.2 OWSM 12cクライアントの構成(匿名認証)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OWSMゲートウェイに登録されているWebサービスの仮想化されたURLを使用して、クライアント・プロキシを作成します。

2. oracle/wss10_message_protection_client_policyポリシーのクローンを作成します。

3. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

4. ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

5. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_message_protection_client_policyに関する説明を参照してください

6. Webサービスを起動します。

2.3 メッセージ保護付きユーザー名トークン(WS-Security 1.0)

メッセージ保護付きユーザー名トークン・アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOWSM 10gクライアントとの間の相互運用性およびOWSM 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(ユーザー名トークン)

- OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(ユーザー名トークン)

2.3.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(ユーザー名トークン)

WS-Security 1.0標準に準拠するメッセージ保護付きユーザー名トークンを実装するには、次の手順を実行してOWSM 12c WebサービスおよびOWSM 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(ユーザー名トークン)

- OWSM 10g クライアントの構成(ユーザー名トークン)

2.3.1.1 OWSM 12c Webサービスの構成(ユーザー名トークン)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. oracle/wss10_username_token_with_message_protection_service_policyポリシーのクローンを作成します

2. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

3. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

2.3.1.2 OWSM 10g クライアントの構成(ユーザー名トークン)

OWSM 10gクライアントを構成するには、次の手順を実行します。

1. (前述の)WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、OWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

2. 「メッセージの署名と暗号化」ポリシー・ステップをリクエスト・パイプラインにアタッチします。

3. リクエスト・パイプライン内の「メッセージの署名と暗号化」ポリシー・ステップを次のように構成します。

a. 「暗号化アルゴリズム」を「AES-128」に設定します。

b. 「キー・トランスポート・アルゴリズム」を「RSA-OAEP-MGF1P」に設定します。

c. 「暗号化されたコンテンツ」を「エンベロープ」に設定します。

d. 「署名されたコンテンツ」を「エンベロープ」に設定します。

e. メッセージの署名および暗号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

4. 「署名の復号化と検証」ポリシー・ステップをレスポンス・パイプラインにアタッチします。

5. レスポンス・パイプライン内の「署名の復号化と検証」ポリシー・ステップを次のように構成します。

a. 復号化および署名検証のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

6. OWSMテスト・ページにナビゲートし、Webサービスの仮想化されたURLを入力します。

7. WS-Securityに対応するヘッダーを含めるチェック・ボックスを選択し、有効な資格証明を指定します。

8. Webサービスを起動します。

2.3.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(ユーザー名トークン)

WS-Security 1.0標準に準拠するメッセージ保護付きユーザー名トークンを実装するには、次の手順を実行してOWSM 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OWSM 10g Webサービスの構成(ユーザー名トークン)

- OWSM 12c クライアントの構成(ユーザー名トークン)

2.3.2.1 OWSM 10g Webサービスの構成(ユーザー名トークン)

次の手順を実行してOWSM 10g Webサービスを構成します。

1. WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、OWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

2. 次のポリシー・ステップをリクエスト・パイプラインにアタッチします。

a. 復号化および署名の検証

b. 資格証明の抽出(WS-BASICとして構成された資格証明)

c. ファイルの認証

注意:

「ファイルの認証」は、「LDAPの認証」、「Oracle Access Managerの認証」、「Active Directoryの認証」または「SiteMinderの認証」に置き換えることができます。

3. リクエスト・パイプライン内の「署名の復号化と検証」ポリシー・ステップを次のように構成します。

a. 資格証明を抽出するためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

4. リクエスト・パイプライン内の「資格証明の抽出」ポリシー・ステップを次のように構成します。

a. 「資格証明の場所」を「WS-BASIC」に設定します。

5. リクエスト・パイプライン内の「ファイルの認証」ポリシー・ステップを、有効な資格証明を使用するように構成します。

6. 「メッセージの署名と暗号化」ポリシー・ステップをレスポンス・パイプラインにアタッチします。

a. 「暗号化アルゴリズム」を「AES-128」に設定します。

b. 「キー・トランスポート・アルゴリズム」を「RSA-OAEP-MGF1P」に設定します。

c. メッセージの署名および暗号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

2.3.2.2 OWSM 12cクライアントの構成(ユーザー名トークン)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OWSMゲートウェイに登録されているWebサービスの仮想化されたURLを使用して、クライアント・プロキシを作成します。

2. oracle/wss10_username_token_with_message_protection_client_policyポリシーのクローンを作成します
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

3. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

4. ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

5. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_username_token_with_message_protection_client_policyに関する説明を参照してください

6. Webサービスを起動します。

2.4 メッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

メッセージ保護付きSAMLトークン(送信者保証)アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOWSM 10gクライアントとの間の相互運用性およびOWSM 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SAMLトークン)

- OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SAMLトークン)

2.4.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SAMLトークン)

WS-Security 1.0標準に準拠するメッセージ保護付きSAMLトークン(送信者保証)を実装するには、次の手順を実行してOWSM 12c WebサービスおよびOWSM 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(SAMLトークン)

- OWSM 10g クライアントの構成(SAMLトークン)

2.4.1.1 OWSM 12c Webサービスの構成(SAMLトークン)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. oracle/wss10_saml_token_with_message_protection_service_policyポリシーのクローンを作成します。

注意:

使用できることがわかっている有効なポリシー・セットが常にあるように、事前定義済ポリシーは変更しないことをお薦めします。

2. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

3. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

2.4.1.2 OWSM 10gクライアントの構成(SAMLトークン)

OWSM 10gクライアントを構成するには、次の手順を実行します。

1. WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、「OWSMの管理者ガイド10g」のOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

2. 次のポリシー・ステップをリクエスト・パイプラインにアタッチします。

a. 資格証明の抽出(WS-BASICとして構成された資格証明)

b. SAML - WSS 1.0送信者保証トークンの挿入

c. メッセージの署名と暗号化

3. リクエスト・パイプライン内の「資格証明の抽出」ポリシー・ステップを次のように構成します。

a. 「資格証明の場所」を「WS-BASIC」に設定します。

4. リクエスト・パイプライン内の「SAML - WSS 1.0送信者保証トークンの挿入」ポリシー・ステップを次のように構成します。

a. 「サブジェクト名修飾子」をwww.oracle.comに設定します

b. 「アサーション発行者」をwww.oracle.comとして設定します

c. 「サブジェクト・フォーマット」を「未指定」として設定します。

d. その他の署名プロパティを必要に応じて設定します。

5. リクエスト・パイプライン内の「メッセージの署名と暗号化」ポリシー・ステップを次のように構成します。

a. 「暗号化アルゴリズム」を「AES-128」に設定します。

b. 「キー・トランスポート・アルゴリズム」を「RSA-OAEP-MGF1P」に設定します。

c. 復号化および署名検証のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

6. 「署名の復号化と検証」ポリシー・ステップをレスポンス・パイプラインにアタッチします。

7. レスポンス・パイプライン内の「署名の復号化と検証」ポリシー・ステップを次のように構成します。

a. 復号化および署名検証のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

8. OWSMテスト・ページにナビゲートし、Webサービスの仮想化されたURLを入力します。

9. WS-Securityに対応するヘッダーを含めるチェック・ボックスを選択し、有効な資格証明を指定します。

10. Webサービスを起動します。

2.4.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SAMLトークン)

WS-Security 1.0標準に準拠するメッセージ保護付きSAMLトークン(送信者保証)を実装するには、次の手順を実行してOWSM 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OWSM 10g Webサービスの構成(SAMLトークン)

- OWSM 12c クライアントの構成(SAMLトークン)

2.4.2.1 OWSM 10g Webサービスの構成(SAMLトークン)

次の手順を実行してOWSM 10g Webサービスを構成します。

1. WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、OWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

2. 次のポリシー・ステップをリクエスト・パイプラインにアタッチします。

a. XML復号化

b. SAML - WSS 1.0トークンの検証

3. リクエスト・パイプライン内の「XML復号化」ポリシー・ステップを次のように構成します。

a. XML復号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

4. リクエスト・パイプライン内の「SAML - WSS 1.0トークンの検証」ポリシー・ステップを次のように構成します。

a. 「信頼できる発行者名」をwww.oracle.comとして設定します

5. 「メッセージの署名と暗号化」ポリシー・ステップをレスポンス・パイプラインにアタッチします。

6. レスポンス・パイプライン内の「メッセージの署名と暗号化」ポリシー・ステップを次のように構成します。

a. 「暗号化アルゴリズム」を「AES-128」に設定します。

b. 「キー・トランスポート・アルゴリズム」を「RSA-OAEP-MGF1P」に設定します。

c. メッセージの署名および暗号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

2.4.2.2 OWSM 12cクライアントの構成(SAMLトークン)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OWSMゲートウェイに登録されているWebサービスの仮想化されたURLを使用して、クライアント・プロキシを作成します。

2. oracle/wss10_saml_token_with_message_protection_client_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

3. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

4. ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

5. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_saml_token_with_message_protection_client_policyに関する説明を参照してください。

6. Webサービスを起動します。

2.5 メッセージ保護付き相互認証(WS-Security 1.0)

メッセージ保護付き相互認証アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOWSM 10gクライアントとの間の相互運用性およびOWSM 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(相互認証)

- OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(相互認証)

2.5.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(相互認証)

WS-Security 1.0標準に準拠するメッセージ保護付き相互認証を実装するには、次の手順を実行してOWSM 12c WebサービスおよびOWSM 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(相互認証)

- OWSM 10gクライアントの構成(相互認証)

2.5.1.1 OWSM 12c Webサービスの構成(相互認証)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. oracle/wss10_x509_token_with_message_protection_service_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

2. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

3. ポリシーをWebサービスにアタッチします。

2.5.1.2 OWSM 10gクライアントの構成(相互認証)

次の手順を実行して、相互認証を使用したOWSM 10gクライアントを構成します。

1. (前述の)WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、OWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

2. 「メッセージの署名と暗号化」ポリシー・ステップをリクエスト・パイプラインにアタッチします。

3. リクエスト・パイプライン内の「メッセージの署名と暗号化」ポリシー・ステップを次のように構成します。

a. 「暗号化アルゴリズム」を「AES-128」に設定します。

b. 「キー・トランスポート・アルゴリズム」を「RSA-OAEP-MGF1P」に設定します。

c. メッセージの署名および暗号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

4. 「署名の復号化と検証」ポリシー・ステップをレスポンス・パイプラインにアタッチします。

5. レスポンス・パイプライン内の「署名の復号化と検証」ポリシー・ステップを次のように構成します。

a. 復号化および署名検証のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

6. ORACLE_HOME/j2ee/oc4j_instance/applications/gateway/gateway/WEB-INFにあるgateway-config-installer.propertiesファイル内の次のプロパティを更新します。
pep.securitysteps.signBinarySecurityToken=true

7. OWSM 10gゲートウェイを再起動します。

8. OWSMテスト・ページにナビゲートし、Webサービスの仮想化されたURLを入力します。

9. Webサービスを起動します。

2.5.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(相互認証)

WS-Security 1.0標準に準拠するメッセージ保護付き相互認証を実装するには、次の手順を実行してOWSM 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OWSM 10g Webサービスの構成(相互認証)

- OWSM 12cクライアントの構成(相互認証)

2.5.2.1 OWSM 10g Webサービスの構成(相互認証)

次の手順を実行してOWSM 10g Webサービスを構成します。

1. (前述の)WebサービスをOWSM 10gゲートウェイに登録します。
次の場所にあるOWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項: http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm

2. 「復号化と検証」ポリシー・ステップをリクエスト・パイプラインにアタッチします。

3. リクエスト・パイプライン内の「署名の復号化と検証」ポリシー・ステップを次のように構成します。

a. 復号化および署名検証のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

4. 「メッセージの署名と暗号化」ポリシー・ステップをレスポンス・パイプラインにアタッチします。

5. レスポンス・パイプライン内の「メッセージの署名と暗号化」ポリシー・ステップを次のように構成します。

a. 「暗号化アルゴリズム」を「AES-128」に設定します。

b. 「キー・トランスポート・アルゴリズム」を「RSA-OAEP-MGF1P」に設定します。

c. メッセージの署名および暗号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。

2.5.2.2 OWSM 12cクライアントの構成(相互認証)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OWSMゲートウェイに登録されているWebサービスの仮想化されたURLを使用して、クライアント・プロキシを作成します。

2. oracle/wss10_x509_token_with_message_protection_client_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

3. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

4. ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

5. ポリシーを構成します。
『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_x509_token_with_message_protection_client_policyに関する項

6. Webサービスを起動します。

2.6 SSL経由のユーザー名トークン

SSL経由のユーザー名トークン・アイデンティティ・トークンは、WS-Security 1.0および1.1標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOWSM 10gクライアントとの間の相互運用性およびOWSM 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次の相互運用性シナリオにおいて、SSL経由のユーザー名トークンを実装できます。

- OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SSL経由のユーザー名トークン)

- OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

詳細は、次を参照してください。

- WebLogic ServerでのSSLの構成の詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

- OC4JでのSSLの構成の詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmを参照してください。

2.6.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SSL経由のユーザー名トークン)

SSL経由のユーザー名トークンを実装するには、次の手順を実行してOWSM 12c WebサービスおよびOWSM 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- OWSM 10gクライアントの構成(SSL経由のユーザー名トークン)

2.6.1.1 OWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. サーバーをSSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください

2. wss_username_token_over_ssl_service_policyポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

2.6.1.2 OWSM 10gクライアントの構成(SSL経由のユーザー名トークン)

OWSM 10gクライアントを構成するには、次の手順を実行します。

1. サーバーをSSL用に構成します。
詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmにあるOracle Application Server Containers for J2EEセキュリティ・ガイドのOC4JおよびSSLの構成に関する項を参照してください

2. (前述の)WebサービスをOWSM 10gゲートウェイに登録します。
次の場所にあるOWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項: http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm

3. OWSMテスト・ページにナビゲートし、Webサービスの仮想化されたURLを入力します。

4. WS-Securityに対応するヘッダーを含めるチェック・ボックスを選択し、有効な資格証明を指定します。

5. Webサービスを起動します。

2.6.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

SSL経由のユーザー名トークンを実装するには、次の手順を実行してOWSM 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OWSM 10g Webサービスの構成(SSL経由のユーザー名トークン)

- OWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

2.6.2.1 OWSM 10g Webサービスの構成(SSL経由のユーザー名トークン)

次の手順を実行してOWSM 10g Webサービスを構成します。

1. サーバーをSSL用に構成します。
詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmにあるOracle Application Server Containers for J2EEセキュリティ・ガイドのOC4JおよびSSLの構成に関する項を参照してください

2. (前述の)WebサービスをOWSM 10gゲートウェイに登録します。
次の場所にあるOWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項: http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm

3. 次のポリシー・ステップをリクエスト・パイプラインにアタッチします。

a. 資格証明の抽出

b. ファイルの認証

注意:

「ファイルの認証」は、「LDAPの認証」、「Oracle Access Managerの認証」、「Active Directoryの認証」または「SiteMinderの認証」に置き換えることができます。

4. リクエスト・パイプライン内の「資格証明の抽出」ポリシー・ステップを次のように構成します。

a. 「資格証明の場所」を「WS-BASIC」として設定します。

5. リクエスト・パイプライン内の「ファイルの認証」ポリシー・ステップを、適切な資格証明とともに構成します。

2.6.2.2 OWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OWSMゲートウェイに登録されているWebサービスの仮想化されたURLを使用して、クライアント・プロキシを作成します。クライアントを生成する際は、URL内にHTTPがHTTPポート番号とともに指定されていることを確認してください。

2. oracle/wss_username_token_over_ssl_client_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

3. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

4. ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

5. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss_username_token_over_ssl_client_policyに関する説明を参照してください

6. Webサービスを起動します。

2.7 SSL経由のSAMLトークン(送信者保証)(WS-Security 1.0)

SSL経由のSAMLトークン(送信者保証)アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOWSM 10gクライアントとの間の相互運用性およびOWSM 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SSL経由のSAMLトークン)

- OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のSAMLトークン)

詳細は、次を参照してください。

- WebLogic ServerでのSSLの構成の詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

- OC4JでのSSLの構成の詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmを参照してください。

2.7.1 OWSM 12c WebサービスおよびOWSM 10gクライアントの構成(SSL経由のSAMLトークン)

WS-Security 1.0標準に準拠するSSL経由のSAMLトークン(送信者保証)を実装するには、次の手順を実行してOWSM 12c WebサービスおよびOWSM 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(SSL経由のSAMLトークン)

- OWSM 10gクライアントの構成(SSL経由のSAMLトークン)

2.7.1.1 OWSM 12c Webサービスの構成(SSL経由のSAMLトークン)

SSL経由のSAMLトークン(送信者保証)を実装するには、次の手順を実行してOWSM 12c Webサービスを構成します。

1. サーバーを双方向SSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください

2. oracle/wss_saml_token_over_ssl_service_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

3. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

4. ポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

2.7.1.2 OWSM 10gクライアントの構成(SSL経由のSAMLトークン)

OWSM 10gクライアントを構成するには、次の手順を実行します。

1. サーバーを双方向SSL用に構成します。
詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmにあるOracle Application Server Containers for J2EEセキュリティ・ガイドのOC4JおよびSSLの構成に関する項を参照してください

2. (前述の)WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、OWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

3. 次のポリシー・ステップをリクエスト・パイプラインにアタッチします。

a. 資格証明の抽出

b. SAML - WSS 1.0送信者保証トークンの挿入

4. リクエスト・パイプライン内の「追加の資格証明」ポリシー・ステップを次のように構成します。

a. 「資格証明の場所」を「WS-BASIC」として設定します。

5. リクエスト・パイプライン内の「SAML - WSS 1.0送信者保証トークンの挿入」ポリシー・ステップを次のように構成します。

a. 「サブジェクト名修飾子」をwww.oracle.comとして構成します

b. 「アサーション発行者」をwww.oracle.comとして構成します

c. 「サブジェクト・フォーマット」を「未指定」として構成します。

d. 「アサーションに署名」を「false」として構成します。

6. OWSMテスト・ページにナビゲートし、Webサービスの仮想化されたURLを入力します。

7. WS-Securityに対応するヘッダーを含めるチェック・ボックスを選択し、有効な資格証明を指定します。

8. Webサービスを起動します。

2.7.2 OWSM 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のSAMLトークン)

WS-Security 1.0標準に準拠するSSL経由のSAMLトークン(送信者保証)を実装するには、次の手順を実行してOWSM 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OWSM 10g Webサービスの構成(SSL経由のSAMLトークン)

- OWSM 12cクライアントの構成(SSL経由のSAMLトークン)

2.7.2.1 OWSM 10g Webサービスの構成(SSL経由のSAMLトークン)

SSL経由のSAMLトークンを使用してOWSM 10g Webサービスを構成するには、次の手順を実行します。

1. サーバーを双方向SSL用に構成します。
詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmにあるOracle Application Server Containers for J2EEセキュリティ・ガイドのOC4JおよびSSLの構成に関する項を参照してください

2. (前述の)WebサービスをOWSM 10gゲートウェイに登録します。
詳細は、OWSMの管理者ガイド10gのOWSMゲートウェイへのWebサービスの登録に関する項(http://download.oracle.com/docs/cd/E12524_01/web.1013/e12575/gateways.htm)を参照してください

3. 「SAML - WSS 1.0トークンの検証」ポリシー・ステップをアタッチします。

4. リクエスト・パイプライン内の「SAML - WSS 1.0トークンの検証」ポリシー・ステップを次のように構成します。

a. 「署名の検証プロパティ」で、「署名付きアサーションのみを許可」を「false」に設定します。

b. 「信頼できる発行者名」をwww.oracle.comに設定します。

2.7.2.2 OWSM 12cクライアントの構成(SSL経由のSAMLトークン)

次の手順を実行してOWSM 12cクライアントを構成します。

1. サーバーを双方向SSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(双方向)に関する説明を参照してください

2. OWSMゲートウェイに登録されているWebサービスの仮想化されたURLを使用して、クライアント・プロキシを作成します。

3. s: oracle/wss_saml_token_over_ssl_client_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください

4. 次のようにして、ポリシー設定を編集します。

a. 「タイムスタンプを含める」構成設定を無効化します。

b. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

5. ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

6. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss_username_token_over_ssl_client_policyに関する説明を参照してください

7. Webサービスを起動します。

3 Oracle Containers for Java EE (OC4J) 10gのセキュリティ環境との相互運用性

Oracle Web Services Manager (OWSM)は、Oracle Containers for Java EE (OC4J) 10gと相互運用できます。OWSMとOracle Containers for Java EE (OC4J) 10gとの間の相互運用性を実現するため、WS-Security 1.0および1.1標準に準拠するポリシーがWebサービスにアタッチされます。

この章の内容は次のとおりです。

- OC4J 10gのセキュリティ環境との相互運用性の概要

- OC4J 10gクライアント向けのメッセージ保護付き匿名認証(WS-Security 1.0)

- OC4J 10gクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)

- OC4J 10gクライアント向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

- OC4J 10gクライアント向けのメッセージ保護付き相互認証(WS-Security 1.0)

- OC4J 10gクライアント向けのSSL経由のユーザー名トークン

- OC4J 10gクライアント向けのSSL経由のSAMLトークン(送信者保証)(WS-Security 1.0)

3.1 OC4J 10gのセキュリティ環境との相互運用性の概要

OC4J 10gでの相互運用性シナリオおよびセキュリティ環境構成の詳細は、次のトピックを参照してください。

- OC4J 10gのセキュリティ環境

- OC4J 10cのOWSM 12cポリシー

- OC4J 10cの相互運用性シナリオ

3.1.1 OC4J 10gのセキュリティ環境

OC4J 10gでは、Application Server Control、JDeveloperおよびディスクリプタ・ファイルを使用してセキュリティ環境を構成します。

- Application Server Controlを使用したWebサービスの構成方法の詳細は、http://download.oracle.com/docs/cd/B31017_01/web.1013/b28975/toc.htmにあるOracle Application ServerアドバンストWebサービス開発者ガイドを参照してください。

- JDeveloperを使用したクライアント側アプリケーションの開発および構成方法の詳細は、『Oracle JDeveloperによるアプリケーションの開発』を参照してください。

- XMLベースのデプロイメント・ディスクリプタ・ファイルの変更方法の詳細は、http://download.oracle.com/docs/cd/B31017_01/web.1013/b28976/toc.htmの『Oracle Application Server Web Services セキュリティ・ガイド 10g (10.1.3.1.0)』を参照してください。

3.1.2 OC4J 10cのOWSM 12cポリシー

OWSM 12cでは、ポリシーをWebサービス・エンドポイントにアタッチします。ポリシーはドメインレベルで定義された1つ以上のアサーションで構成されています。アサーションはセキュリティ要件の定義です。そのまま使用できる事前定義のポリシーとアサーションのセットが用意されています。

次の各項では、OWSM事前定義済ポリシーについての詳細を説明しています。

- OWSM事前定義済ポリシーについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

- OWSM 12cポリシーの構成およびアタッチについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

3.1.3 OC4J 10cの相互運用性シナリオ

Oracle OC4J 10cとOWSM 12cとの間の相互運用性に関する様々なシナリオの詳細は、このトピックを参照してください。

表3-1および表3-2は、セキュリティ要件(認証、メッセージ保護およびトランスポート)に基づいたOC4J 10gの最も一般的な相互運用性シナリオをまとめたものです。

注意:

以降のシナリオでは、v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

表3-1 OWSM 12cサービス・ポリシーとOracle OC4J 10gクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

匿名

1.0

はい

いいえ

oracle/wss10_message_protection_service_policy

OC4J 10gクライアントの構成(匿名認証)

ユーザー名

1.0

はい

いいえ

oracle/wss10_username_token_with_message_protection_service_policy

OC4J 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

SAML

1.0

はい

いいえ

oracle/wss10_saml_token_with_message_protection_service_policy

OC4J 10gクライアントの構成(メッセージ保護付きSAMLトークン)

相互認証

1.0

はい

いいえ

oracle/wss10_x509_token_with_message_protection_service_policy

OC4J 10gクライアントの構成(メッセージ保護付き相互認証)

SSL経由のユーザー名

1.0および1.1

いいえ

はい

oracle/wss_username_token_over_ssl_service_policy

または

oracle/wss_saml_or_username_token_over_ssl_service_policy

OC4J 10gクライアントの構成(SSL経由のユーザー名トークン)

SSL経由のSAML

1.0および1.1

いいえ

はい

oracle/wss_saml_token_over_ssl_service_policy

または

oracle/wss_saml_or_username_token_over_ssl_service_policy

OC4J 10gクライアントの構成(SSL経由のSAMLトークン送信者保証)

表3-2 Oracle OC4J 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

匿名

1.0

はい

いいえ

OC4J 10g Webサービスの構成(匿名認証)

oracle/wss10_message_protection_client_policy

ユーザー名

1.0

はい

いいえ

OC4J 10g Webサービスの構成(メッセージ保護付きユーザー名トークン)

oracle/wss10_username_token_with_message_protection_client_policy

SAML

1.0

はい

いいえ

OC4J 10g Webサービスの構成(メッセージ保護付きSAMLトークン)

oracle/wss10_saml_token_with_message_protection_client_policy

相互認証

1.0

はい

いいえ

OC4J 10g Webサービスの構成(メッセージ保護付き相互認証)

oracle/wss10_x509_token_with_message_protection_client_policy

SSL経由のユーザー名

1.0および1.1

いいえ

はい

OC4J 10g Webサービスの構成(SSL経由のユーザー名トークン)

oracle/wss_username_token_over_ssl_client_policy

SSL経由のSAML

1.0および1.1

いいえ

はい

OC4J 10g Webサービスの構成(SSL経由のSAMLトークン送信者保証)

oracle/wss_saml_token_over_ssl_client_policy

3.2 OC4J 10gクライアント向けのメッセージ保護付き匿名認証(WS-Security 1.0)

メッセージ保護付き匿名認証アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOC4J 10gクライアントとの間の相互運用性およびOC4J 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(匿名認証)

- OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(匿名認証)

3.2.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(匿名認証)

WS-Security 1.0標準に準拠するメッセージ保護付き匿名認証を実装するには、次の手順を実行してOWSM 12c WebサービスおよびOC4J 10gクライアントを構成します。

- OC4J 10gクライアントのためのOWSM 12c Webサービスの構成(匿名認証)

- OC4J 10gクライアントの構成(匿名認証)

- <appname>Binding_Stub.xmlファイルの編集(匿名認証)

3.2.1.1 OC4J 10g クライアントのためのOWSM 12c Webサービスの構成(匿名認証)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. Webサービス・アプリケーションを作成します。

2. oracle/wss10_message_protection_service_policyポリシーをWebサービスのエントリ・ポイントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3.2.1.2 OC4J 10gクライアントの構成(匿名認証)

次の手順を実行して、OC4J 10gクライアントを構成します。

1. Oracle JDeveloperを使用して、Webサービスのクライアント・プロキシを作成します。
詳細は、『Oracle JDeveloperによるアプリケーションの開発』のWebサービスの開発と保護に関する項を参照してください。

2. Oracle JDeveloperウィザードを使用して、プロキシを保護します。これには、プロキシ・プロジェクトを右クリックし、「セキュアなプロキシ」を選択します。

3. プロキシ・エディタ・ナビゲーション・バーの「認証」をクリックし、次のオプションを設定します。

a. 「認証なし」を選択します。

4. プロキシ・エディタ・ナビゲーション・バーの「インバウンド整合性」をクリックし、次のオプションを設定します。

a. 「インバウンド署名リクエスト本体の検証」を選択します。

b. 「タイムスタンプの検証」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

d. 「許容する署名アルゴリズム」の下のすべてのオプションを選択します。

5. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド整合性」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの署名」を選択します。

b. 「アウトバウンド・メッセージにタイムスタンプを追加」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

6. プロキシ・エディタ・ナビゲーション・バーの「インバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「インバウンド・メッセージ・コンテンツの復号化」を選択します。

b. 「許容する署名アルゴリズム」の下のすべてのオプションを選択します。

7. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの暗号化」を選択します。

b. 「アルゴリズム」を「AES-128」に設定します。

8. プロキシ・エディタ・ナビゲーション・バーの「キーストア・オプション」をクリックし、必要に応じてキーストア・プロパティを構成します。

注意:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

9. 「OK」をクリックし、ウィザードを閉じます。

10. 「構造」ペインで<appname>Binding_Stub.xmlをクリックし、「<appname>Binding_Stub.xmlファイルの編集」の説明に従ってこのファイルを編集します。

11. クライアントからWebサービス・メソッドを起動します。

3.2.1.3 <appname>Binding_Stub.xmlファイルの編集(匿名認証)

次の手順を実行して<appname>Binding_Stub.xmlファイルを編集します。

1. キーストア・パスワード、署名キー・パスワードおよび暗号化キー・パスワードを指定します。

2. インバウンド署名で、次のように指定します。

<inbound><verify-signature><tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
utility-1.0.xsd" local-part="Timestamp"/>
...

3. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します。

<outbound>/<signature>/<tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

4. アウトバウンド暗号化で、次のようにキー・トランスポート・アルゴリズムを指定します。

<outbound><encrypt>
<keytransport-method>RSA-OAEP-MGF1P</keytransport-method>
...

3.2.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(匿名認証)

WS-Security 1.0標準に準拠するメッセージ保護付き匿名認証を実装するには、次の手順を実行してOC4J 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OC4J 10g Webサービスの構成(匿名認証)

- OC4J 10g WebサービスのためのOWSM 12cクライアントの構成(匿名認証)

- OC4J 10gのためのwsmgmt.xmlファイルの編集(匿名認証)

3.2.2.1 OC4J 10g Webサービスの構成(匿名認証)

次の手順を実行して、OC4J 10g Webサービスを構成します。

1. Webサービス・アプリケーションを作成してデプロイします。

2. Application Server Controlを使用して、デプロイしたWebサービスを保護します。

3. 「認証」タブをクリックし、いずれのオプションも選択されていなことを確認します。

4. 「インバウンド・ポリシー」ページの「完全性」タブをクリックし、次のオプションを設定します。

a. 「メッセージ本文に署名が必要」を選択します。

b. 「タイムスタンプの検証」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

5. 「アウトバウンド・ポリシー」ページの「完全性」タブをクリックし、次のオプションを設定します。

a. 「メッセージのbody要素への署名」を選択します。

b. 「署名メソッド」を「RSA-SHA1」に設定します。

c. 「タイムスタンプの追加」および「タイムスタンプ中に作成時間が必要」を選択します。

d. 「有効期限」(秒)を入力します。

6. 「インバウンド・ポリシー」ページの「秘匿性」タブをクリックし、次のオプションを設定します。

a. 「メッセージ本文に暗号化が必要」を選択します。

7. 「アウトバウンド・ポリシー」ページの「秘匿性」タブをクリックし、次のオプションを設定します。

a. 「メッセージのbody要素の暗号化」を選択します。

b. 「暗号化メソッド」を「AES-128」に設定します。

c. 公開鍵を暗号化に設定します。

8. キーストア・プロパティおよびアイデンティティ証明書を構成します。

注意:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

9. 表3-8「wsmgmt.xmlファイルの編集」の説明に従って、wsmgmt.xmlデプロイメント・ディスクリプタ・ファイルを編集します。

3.2.2.2 OC4J 10g WebサービスのためのOWSM 12cクライアントの構成(匿名認証)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OC4J 10g Webサービスのクライアント・プロキシを作成します。

2. oracle/wss10_message_protection_client_policyポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_username_token_with_message_protection_client_policyに関する説明を参照してください

4. クライアントからWebサービス・メソッドを起動します。

3.2.2.3 OC4J 10gのためのwsmgmt.xmlファイルの編集(匿名認証)

次の手順に従って、wsmgmt.xmlファイルを編集します。

1. ORACLE_HOME/j2ee/oc4j_instance/configの下でwsmgmt.xmlファイルを探します。

ヒント:

wsmgmt.xmlファイルはインスタンス・レベルの構成ファイルで、OC4JインスタンスにデプロイされたWebサービスのセキュリティ構成全体を保持しています。

詳細は、Oracle® Application ServerアドバンストWebサービス開発者ガイドのWebサービス管理スキーマの理解に関する項を参照してください

2. インバウンド署名で、次のように指定します。

<inbound><verify-signature><tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

3. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します。

<outbound>/<signature>/<tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

4. アウトバウンド暗号化で、次のようにキー・トランスポート・アルゴリズムを指定します。

<outbound><encrypt>
<keytransport-method>RSA-OAEP-MGF1P</keytransport-method>
...

3.3 OC4J 10gクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)

メッセージ保護付きユーザー名トークン・アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOC4J 10gクライアントとの間の相互運用性およびOC4J 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

- OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

3.3.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

WS-Security 1.0標準に準拠するメッセージ保護付きユーザー名トークンを実装するには、次の手順を実行してOWSM 12c WebサービスおよびOC4J 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

- OC4J 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

- <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付きユーザー名トークン)

3.3.1.1 OWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. OWSM 12c Webサービスを作成します。

2. oracle/wss10_username_token_with_message_protection_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3.3.1.2 OC4J 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

次の手順を実行して、OC4J 10gクライアントを構成します。

1. Oracle JDeveloperを使用して、(前述の)Webサービスのクライアント・プロキシを作成します。
詳細は、『Oracle JDeveloperによるアプリケーションの開発』のWebサービスの開発と保護に関する項を参照してください。

2. クライアント・プロキシ内のユーザー名およびパスワードを次のように指定します。

port.setUsername(<username>)
port.setPassword(<password>)

3. Oracle JDeveloperウィザードを使用して、プロキシを保護します。これには、プロキシ・プロジェクトを右クリックし、「セキュアなプロキシ」を選択します。

4. プロキシ・エディタ・ナビゲーション・バーの「認証」をクリックし、次のオプションを設定します。

a. 「認証にユーザー名を使用」を選択します。

b. 「Nonceを追加」および「作成時間を追加」を選択解除します。

5. プロキシ・エディタ・ナビゲーション・バーの「インバウンド整合性」をクリックし、次のオプションを設定します。

a. 「インバウンド署名リクエスト本体の検証」を選択します。

b. 「タイムスタンプの検証」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

d. 「許容する署名アルゴリズム」の下のすべてのオプションを選択します。

6. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド整合性」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの署名」を選択します。

b. 「アウトバウンド・メッセージにタイムスタンプを追加」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

7. プロキシ・エディタ・ナビゲーション・バーの「インバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「インバウンド・メッセージ・コンテンツの復号化」を選択します。

b. 「許容する署名アルゴリズム」の下のすべてのオプションを選択します。

8. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの暗号化」を選択します。

b. 「アルゴリズム」を「AES-128」に設定します。

9. プロキシ・エディタ・ナビゲーション・バーの「キーストア・オプション」をクリックし、必要に応じてキーストア・プロパティを構成します。

ヒント:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

10. 「OK」をクリックし、ウィザードを閉じます。

11. 「構造」ペインで<appname>Binding_Stub.xmlをクリックし、「<appname>Binding_Stub.xmlファイルの編集」の説明に従ってこのファイルを編集します。

12. Webサービスを起動します。

3.3.1.3 <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付きユーザー名トークン)

次の手順を実行して<appname>Binding_Stub.xmlファイルを編集します。

1. キーストア・パスワード、署名キー・パスワードおよび暗号化キー・パスワードを指定します。

2. インバウンド署名で、次のように指定します。

<inbound><verify-signature><tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp" />
...

3. アウトバウンド署名で、次のようにタイムスタンプおよびUsernameTokenに署名が必要であることを指定します。

<outbound>/<signature>/<tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
utility-1.0.xsd" local-part="Timestamp"/>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-secext-1.0.xsd" local-part="UsernameToken"/>
...

4. アウトバウンド暗号化で、次のようにキー・トランスポート・アルゴリズムを指定します。

<outbound><encrypt>
<keytransport-method>RSA-OAEP-MGF1P</keytransport-method>
...

5. アウトバウンド暗号化で、次のようにUsernameTokenに暗号化が必要であることを指定します。

<outbound>/<encrypt>/<tbe-elements>
<tbe-element local-part="UsernameToken"
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-secext-1.0.xsd" mode="CONTENT"/>
...

3.3.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

WS-Security 1.0標準に準拠するメッセージ保護付きユーザー名トークンを実装するには、次の手順を実行してOC4J 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OC4J 10g Webサービスの構成(メッセージ保護付きユーザー名トークン)

- OC4J 10gのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

- wsmgmt.xmlファイルの構成(メッセージ保護付きユーザー名トークン)

3.3.2.1 OC4J 10g Webサービスの構成(メッセージ保護付きユーザー名トークン)

次の手順を実行して、OC4J 10g Webサービスを構成します。

1. JAX-RPC Webサービスを作成してOC4Jにデプロイします。

2. Application Server Controlを使用して、デプロイしたWebサービスを保護します。

3. 「認証」タブをクリックし、次のオプションを設定します。

a. 「ユーザー名/パスワード認証の使用」を選択します。

b. 「パスワード」を「プレーン・テキスト」に設定します。

4. 「インバウンド・ポリシー」ページの「完全性」タブをクリックし、次のオプションを設定します。

a. 「メッセージ本文に署名が必要」を選択します。

b. 「タイムスタンプの検証」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

5. 「アウトバウンド・ポリシー」ページの「完全性」タブをクリックし、次のオプションを設定します。

a. 「メッセージのbody要素への署名」を選択します。

b. 「署名メソッド」を「RSA-SHA1」に設定します。

c. 「タイムスタンプの追加」および「タイムスタンプ中に作成時間が必要」を選択します。

d. 「有効期限」(秒)を入力します。

6. 「インバウンド・ポリシー」ページの「秘匿性」タブをクリックし、次のオプションを設定します。

a. 「メッセージ本文に暗号化が必要」を選択します。

7. 「アウトバウンド・ポリシー」ページの「秘匿性」タブをクリックし、次のオプションを設定します。

a. 「メッセージのbody要素の暗号化」を選択します。

b. 「暗号化メソッド」を「AES-128」に設定します。

c. 公開鍵を暗号化に設定します。

8. キーストア・プロパティおよびアイデンティティ証明書を構成します。

ヒント:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

9. 表3-14「wsmgmt.xmlファイルの編集」の説明に従って、wsmgmt.xmlデプロイメント・ディスクリプタ・ファイルを編集します。

3.3.2.2 OC4J 10gのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OC4J 10g Webサービスのクライアント・プロキシを作成します。

2. oracle/wss10_username_token_with_message_protection_client_policyポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_username_token_with_message_protection_client_policyに関する説明を参照してください

4. クライアントからWebサービス・メソッドを起動します。

3.3.2.3 wsmgmt.xmlファイルの構成(メッセージ保護付きユーザー名トークン)

次の手順に従って、wsmgmt.xmlファイルを編集します。

1. ORACLE_HOME/j2ee/oc4j_instance/config/の下でwsmgmt.xmlファイルを検索します。

2. インバウンド署名で、次のように指定します。

<inbound><verify-signature><tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

3. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します。

<outbound>/<signature>/<tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

4. アウトバウンド暗号化で、次のようにUsernameTokenに暗号化が必要であることを指定します。

<outbound>/<encrypt>/<tbe-elements>
<tbe-element local-part="UsernameToken"
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-secext-1.0.xsd" mode="CONTENT"/>
...

3.4 OC4J 10gクライアント向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

メッセージ保護付きSAMLトークン(送信者保証)アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOC4J 10gクライアントとの間の相互運用性およびOC4J 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(メッセージ保護付きSAMLトークン)

- OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

3.4.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(メッセージ保護付きSAMLトークン)

WS-Security 1.0標準に準拠するメッセージ保護付きSAMLトークン送信者保証を実装するには、次の手順を実行してOWSM 12c WebサービスおよびOC4J 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(メッセージ保護付きSAMLトークン)

- OC4J 10gクライアントの構成(メッセージ保護付きSAMLトークン)

- <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付きSAMLトークン)

3.4.1.1 OWSM 12c Webサービスの構成(メッセージ保護付きSAMLトークン)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. OWSM 12c Webサービスを作成します。

2. oracle/wss10_saml_token__with_message_protection_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3.4.1.2 OC4J 10gクライアントの構成(メッセージ保護付きSAMLトークン)

次の手順を実行して、OC4J 10gクライアントを構成します。

1. Oracle JDeveloperを使用して、(前述の)Webサービスのクライアント・プロキシを作成します。
詳細は、『Oracle JDeveloperによるアプリケーションの開発』のWebサービスの開発と保護に関する項を参照してください。

2. Oracle JDeveloperウィザードを使用して、プロキシを保護します。これには、プロキシ・プロジェクトを右クリックし、「セキュアなプロキシ」を選択します。

3. プロキシ・エディタ・ナビゲーション・バーの「認証」をクリックし、次のオプションを設定します。

a. 「SAMLトークンの使用」を選択します。

b. 「SAML詳細」をクリックします。

c. 「送信者保証確認」および「署名の使用」を選択します。

d. 「デフォルト・サブジェクト名」として、伝播する必要のあるユーザー名を入力します。

e. 「デフォルト発行者名」としてwww.oracle.comを入力します。

4. プロキシ・エディタ・ナビゲーション・バーの「インバウンド整合性」をクリックし、次のオプションを設定します。

a. 「インバウンド署名リクエスト本体の検証」を選択します。

b. 「タイムスタンプの検証」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

d. 「許容する署名アルゴリズム」の下のすべてのオプションを選択します。

5. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド整合性」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの署名」を選択します。

b. 「アウトバウンド・メッセージにタイムスタンプを追加」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

6. プロキシ・エディタ・ナビゲーション・バーの「インバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「インバウンド・メッセージ・コンテンツの復号化」を選択します。

b. 「許容する署名アルゴリズム」の下のすべてのオプションを選択します。

7. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの暗号化」を選択します。

b. 「アルゴリズム」を「AES-128」に設定します。

8. プロキシ・エディタ・ナビゲーション・バーの「キーストア・オプション」をクリックし、必要に応じてキーストア・プロパティを構成します。

注意:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

9. 「OK」をクリックし、ウィザードを閉じます。

10. 「構造」ペインで<appname>Binding_Stub.xmlをクリックし、「<appname>Binding_Stub.xmlファイルの編集」の説明に従ってこのファイルを編集します。

11. Webサービス・メソッドを起動します。

3.4.1.3 <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付きSAMLトークン)

次の手順を実行して<appname>Binding_Stub.xmlファイルを編集します。

1. キーストア・パスワード、署名キー・パスワードおよび暗号化キー・パスワードを指定します。

2. インバウンド署名で、次のように指定します。

<inbound><verify-signature><tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp" />
...

3. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します。

<outbound>/<signature>/<tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

4. アウトバウンド暗号化で、次のようにキー・トランスポート・アルゴリズムを指定します。

<outbound><encrypt>
<keytransport-method>RSA-OAEP-MGF1P</keytransport-method>
...

3.4.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

WS-Security 1.0標準に準拠するメッセージ保護付きSAMLトークン送信者保証を実装するには、次の手順を実行してOC4J 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OC4J 10g Webサービスの構成(メッセージ保護付きSAMLトークン)

- OWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

- wsmgmt.xmlファイルの編集(メッセージ保護付きSAMLトークン)

3.4.2.1 OC4J 10g Webサービスの構成(メッセージ保護付きSAMLトークン)

次の手順を実行して、OC4J 10g Webサービスを構成します。

1. JAX-RPC Webサービスを作成してOC4Jにデプロイします。

2. Application Server Controlを使用して、デプロイしたWebサービスを保護します。

3. ナビゲーション・バーの「認証」をクリックし、次のオプションを設定します。

a. 「SAML認証の使用」を選択します。

b. 「送信者保証の許容」を選択します。

c. 「署名の検証」を選択解除します。

4. ナビゲーション・バーの「インバウンド整合性」をクリックし、次のオプションを設定します。

a. 「メッセージ本文に署名が必要」を選択します。

b. 「タイムスタンプの検証」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

5. ナビゲーション・バーの「アウトバウンド整合性」をクリックし、次のオプションを設定します。

a. 「メッセージのbody要素への署名」を選択します。

b. 「署名メソッド」を「RSA-SHA1」に設定します。

c. 「タイムスタンプの追加」および「タイムスタンプ中に作成時間が必要」を選択します。

d. 「有効期限」(秒)を入力します。

6. ナビゲーション・バーの「インバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「メッセージ本文に暗号化が必要」を選択解除します。

7. ナビゲーション・バーの「アウトバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「メッセージのbody要素の暗号化」を選択します。

b. 「暗号化メソッド」を「AES-128」に設定します。

c. 公開鍵を暗号化に設定します。

8. キーストア・プロパティおよびアイデンティティ証明書を構成します。

注意:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

9. 表3-20「wsmgmt.xmlファイルの編集」の説明に従って、wsmgmt.xmlデプロイメント・ディスクリプタ・ファイルを編集します。

10. Webサービスを起動します。

3.4.2.2 OWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OC4J 10g Webサービスのクライアント・プロキシを作成します。

2. oracle/wss10_saml_token_with_message_protection_client_policyポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_saml_token_with_message_protection_client_policyに関する説明を参照してください

4. クライアントからWebサービス・メソッドを起動します。

3.4.2.3 wsmgmt.xmlファイルの編集(メッセージ保護付きSAMLトークン)

次の手順に従って、wsmgmt.xmlファイルを編集します。

1. ORACLE_HOME/j2ee/oc4j_instance/configでwsmgmt.xmlファイルを検索します。

2. インバウンド署名で、次のように指定します。

<inbound><verify-signature><tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

3. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します。

<outbound>/<signature>/<tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

4. アウトバウンド暗号化で、次のようにUsernameTokenに暗号化が必要であることを指定します。

<outbound>/<encrypt>/<tbe-elements>
<tbe-element local-part="UsernameToken"
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-secext-1.0.xsd" mode="CONTENT"/>
...

3.5 OC4J 10gクライアント向けのメッセージ保護付き相互認証(WS-Security 1.0)

メッセージ保護付き相互認証アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOC4J 10gクライアントとの間の相互運用性およびOC4J 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(メッセージ保護付き相互認証)

- OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付き相互認証)

3.5.1 OWSM 12c WebサービスおよびOC4J 10g クライアントの構成(メッセージ保護付き相互認証)

WS-Security 1.0標準に準拠するメッセージ保護付き相互認証を実装するには、次の手順を実行してOWSM 12c WebサービスおよびOC4J 10gクライアントを構成します。

- OWSM 12c Webサービスの構成(メッセージ保護付き相互認証)

- OC4J 10gクライアントの構成(メッセージ保護付き相互認証)

- <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付き相互認証)

3.5.1.1 OWSM 12c Webサービスの構成(メッセージ保護付き相互認証)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. Webサービス・アプリケーションを作成します。

2. oracle/wss10_x509_token_with_message_protection_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3.5.1.2 OC4J 10gクライアントの構成(メッセージ保護付き相互認証)

次の手順を実行して、OC4J 10gクライアントを構成します。

1. Oracle JDeveloperを使用して、(前述の)Webサービスのクライアント・プロキシを作成します。
詳細は、『Oracle JDeveloperによるアプリケーションの開発』のWebサービスの開発と保護に関する項を参照してください。

2. Oracle JDeveloperウィザードを使用して、プロキシを保護します。これには、プロキシ・プロジェクトを右クリックし、「セキュアなプロキシ」を選択します。

3. プロキシ・エディタ・ナビゲーション・バーの「認証」をクリックし、次のオプションを設定します。

a. 「認証にX509を使用」を選択します。

4. プロキシ・エディタ・ナビゲーション・バーの「インバウンド整合性」をクリックし、次のオプションを設定します。

a. 「インバウンド署名リクエスト本体の検証」を選択します。

b. 「タイムスタンプの検証」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

d. 「許容する署名アルゴリズム」の下のすべてのオプションを選択します。

5. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド整合性」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの署名」を選択します。

b. 「アウトバウンド・メッセージにタイムスタンプを追加」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

6. プロキシ・エディタ・ナビゲーション・バーの「インバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「インバウンド・メッセージ・コンテンツの復号化」を選択します。

b. 「許容する署名アルゴリズム」の下のすべてのオプションを選択します。

7. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの暗号化」を選択します。

b. 「アルゴリズム」を「AES-128」に設定します。

8. プロキシ・エディタ・ナビゲーション・バーの「キーストア・オプション」をクリックし、必要に応じてキーストア・プロパティを構成します。

注意:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

9. 「OK」をクリックし、ウィザードを閉じます。

10. 「構造」ペインで<appname>Binding_Stub.xmlをクリックし、「<appname>Binding_Stub.xmlファイルの編集」の説明に従ってこのファイルを編集します。

11. Webサービスを起動します。

3.5.1.3 <appname>Binding_Stub.xmlファイルの編集(メッセージ保護付き相互認証)

次の手順を実行して<appname>Binding_Stub.xmlファイルを編集します。

1. キーストア・パスワード、署名キー・パスワードおよび暗号化キー・パスワードを指定します。

2. インバウンド署名で、次のように指定します。

<inbound><verify-signature><tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp" />
...

3. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します。

<outbound>/<signature>/<tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

4. アウトバウンド暗号化で、次のようにキー・トランスポート・アルゴリズムを指定します。

<outbound><encrypt>
<keytransport-method>RSA-OAEP-MGF1P</keytransport-method>
...

3.5.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付き相互認証)

WS-Security 1.0標準に準拠するメッセージ保護付き相互認証を実装するには、次の手順を実行してOC4J 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OC4J 10g Webサービスの構成(メッセージ保護付き相互認証)

- OWSM 12cクライアントの構成(メッセージ保護付き相互認証)

- wsmgmt.xmlファイルの編集(メッセージ保護付き相互認証)

3.5.2.1 OC4J 10g Webサービスの構成(メッセージ保護付き相互認証)

次の手順を実行して、OC4J 10g Webサービスを構成します。

1. JAX-RPC Webサービスを作成してOC4Jにデプロイします。

2. Application Server Controlを使用して、デプロイしたWebサービスを保護します。

3. 「認証」タブをクリックし、次のオプションを設定します。

a. 「X509証明書認証の使用」を選択します。

4. 「インバウンド・ポリシー」ページの「完全性」タブをクリックし、次のオプションを設定します。

a. 「メッセージ本文に署名が必要」を選択します。

b. 「タイムスタンプの検証」および「タイムスタンプに必要な作成時間」を選択します。

c. 「有効期限」(秒)を入力します。

5. 「アウトバウンド・ポリシー」ページの「完全性」タブをクリックし、次のオプションを設定します。

a. 「メッセージのbody要素への署名」を選択します。

b. 「署名メソッド」を「RSA-SHA1」に設定します。

c. 「タイムスタンプの追加」および「タイムスタンプ中に作成時間が必要」を選択します。

d. 「有効期限」(秒)を入力します。

6. 「インバウンド・ポリシー」ページの「秘匿性」タブをクリックし、次のオプションを設定します。

a. 「メッセージ本文に暗号化が必要」を選択します。

7. 「アウトバウンド・ポリシー」ページの「秘匿性」タブをクリックし、次のオプションを設定します。

a. 「メッセージのbody要素の暗号化」を選択します。

b. 「暗号化メソッド」を「AES-128」に設定します。

c. 公開鍵を暗号化に設定します。

8. キーストア・プロパティおよびアイデンティティ証明書を構成します。

注意:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

9. 表3-26「wsmgmt.xmlファイルの編集」の説明に従って、wsmgmt.xmlデプロイメント・ディスクリプタ・ファイルを編集します。

3.5.2.2 OWSM 12cクライアントの構成(メッセージ保護付き相互認証)

次の手順を実行してOWSM 12cクライアントを構成します。

1. OC4J 10g Webサービスへのクライアント・プロキシを作成します。

2. oracle/wss10_x509_token_with_message_protection_client_policyポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_x509_token_with_message_protection_client_policyに関する説明を参照してください

4. Webサービスを起動します。

3.5.2.3 wsmgmt.xmlファイルの編集(メッセージ保護付き相互認証)

次の手順に従って、wsmgmt.xmlファイルを編集します。

1. ORACLE_HOME/j2ee/oc4j_instance/config/の下でwsmgmt.xmlファイルを検索します。

2. インバウンド署名で、次のように指定します。

<inbound><verify-signature><tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

3. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します。

<outbound>/<signature>/<tbs-elements>
<tbs-element
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-utility-1.0.xsd" local-part="Timestamp"/>
...

4. アウトバウンド暗号化で、次のようにUsernameTokenに暗号化が必要であることを指定します。

<outbound>/<encrypt>/<tbe-elements>
<tbe-element local-part="UsernameToken"
name-space="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity
-secext-1.0.xsd" mode="CONTENT"/>
...

3.6 OC4J 10gクライアント向けのSSL経由のユーザー名トークン

SSL経由のユーザー名トークン・アイデンティティ・トークンは、WS-Security 1.0および1.1標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOC4J 10gクライアントとの間の相互運用性およびOC4J 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(SSL経由のユーザー名トークン)

- OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

詳細の参照先は、次のとおりです。

- WebLogic ServerでのSSLの構成の詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

- OC4JでのSSLの構成の詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmを参照してください。

3.6.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(SSL経由のユーザー名トークン)

SSL経由のユーザー名トークンを実装するには、次の手順を実行してOWSM 12c WebサービスおよびOC4J 10gクライアントを構成します。

- OC4JクライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- OC4J 10gクライアントの構成(SSL経由のユーザー名トークン)

- <appname>Binding_Stub.xmlファイルの編集(SSL経由のユーザー名トークン)

3.6.1.1 OC4JクライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

OWSM 12c Webサービスを構成するには、次の手順を実行します。

1. サーバーをSSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください

2. 次のポリシーの1つをWebサービスにアタッチします。
oracle/wss_username_token_over_ssl_service_policy

oracle/wss_username_or_saml_token_over_ssl_service_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3.6.1.2 OC4J 10gクライアントの構成(SSL経由のユーザー名トークン)

次の手順を実行して、OC4J 10gクライアントを構成します。

1. Oracle JDeveloperを使用して、(前述の)Webサービスのクライアント・プロキシを作成します。

注意:

Webサービス・エンドポイントが、Oracle WebLogic ServerでHTTPSおよびSSLポートが構成されているURLを参照していることを確認してください。

詳細は、『Oracle JDeveloperによるアプリケーションの開発』のWebサービスの開発と保護に関する項を参照してください。

2. 次のコードを(クライアント・プロキシ・コードの最初に)追加して、双方向SSLを初期化します。

HostnameVerifier hv = new HostnameVerifier()
httpsURLConnection.setDefaultHostnameVerifier(hv);
System.setProperty("javax.net.ssl.trustStore","<trust_store>");
System.setProperty("javax.net.ssl.trustStorePassword","<trust_store
_password>");
System.setProperty("javax.net.ssl.keyStore","<key_store>");
System.setProperty("javax.net.ssl.keyStorePassword","<key_store_password>");
System.setProperty("javax.net.ssl.keyStoreType","JKS");

3. Oracle JDeveloperウィザードを使用して、プロキシを保護します。これには、プロキシ・プロジェクトを右クリックし、「セキュアなプロキシ」を選択します。

4. プロキシ・エディタ・ナビゲーション・バーの「認証」をクリックし、次のオプションを設定します。

a. 「認証にユーザー名を使用」を選択します。

b. 「Nonceを追加」および「作成時間を追加」を選択解除します。

5. プロキシ・エディタ・ナビゲーション・バーの「インバウンド整合性」をクリックし、すべてのオプションを選択解除します。

6. プロキシ・エディタ・ナビゲーション・バーの「インバウンド整合性」をクリックし、すべてのオプションを選択解除します。

7. プロキシ・エディタ・ナビゲーション・バーの「インバウンド機密保護」をクリックし、すべてのオプションを選択解除します。

8. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド機密保護」をクリックし、すべてのオプションを選択解除します。

9. プロキシ・エディタ・ナビゲーション・バーの「キーストア・オプション」をクリックし、必要に応じてキーストア・プロパティを構成します。

注意:

v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

10. 「OK」をクリックし、ウィザードを閉じます。

11. 「構造」ペインで<appname>Binding_Stub.xmlをクリックし、「<appname>Binding_Stub.xmlファイルの編集」の説明に従ってこのファイルを編集します。

12. Webサービスを起動します。

3.6.1.3 <appname>Binding_Stub.xmlファイルの編集(SSL経由のユーザー名トークン)

次の手順を実行して<appname>Binding_Stub.xmlファイルを編集します。

1. キーストア・パスワード、署名キー・パスワードおよび暗号化キー・パスワードを指定します。

2. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します(それ以外のタグはすべて削除します)。

<outbound>
<signature>
<add-timestamp created="true" expiry="<Expiry_Time>"/>
</signature>
...

3.6.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

SSL経由のユーザー名トークンを実装するには、次の手順を実行してOC4J 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OC4J 10g Webサービスの構成(SSL経由のユーザー名トークン)

- OC4J 10g WebサービスのためのOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

- wsmgmt.xmlファイルの編集(SSL経由のユーザー名トークン)

3.6.2.1 OC4J 10g Webサービスの構成(SSL経由のユーザー名トークン)

次の手順を実行して、OC4J 10g Webサービスを構成します。

1. サーバーをSSL用に構成します。
詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmを参照してください

2. Application Server Controlを使用して、デプロイしたWebサービスを保護します。

3. 「認証」タブをクリックし、次のオプションを設定します。

a. 「ユーザー名/パスワード認証の使用」を選択します。

4. 「インバウンド・ポリシー」ページの「完全性」タブをクリックし、すべてのオプションを選択解除します。

5. 「アウトバウンド・ポリシー」ページの「完全性」タブをクリックし、すべてのオプションを選択解除します。

6. 「インバウンド・ポリシー」ページの「秘匿性」タブをクリックし、すべてのオプションを選択解除します。

7. 「アウトバウンド・ポリシー」ページの「秘匿性」タブをクリックし、すべてのオプションを選択解除します。

8. 表3-32「wsmgmt.xmlファイルの編集」の説明に従って、wsmgmt.xmlデプロイメント・ディスクリプタ・ファイルを編集します。

3.6.2.2 OC4J 10g WebサービスのためのOWSM 12c クライアントの構成(SSL経由のユーザー名トークン)

OWSM 12cクライアントを構成するには、次の手順を実行します。

1. clientgenを使用して、OC4J 10g Webサービスへのクライアント・プロキシを作成します。

注意:

Webサービス・エンドポイントが、Oracle WebLogic ServerでHTTPSおよびSSLポートが構成されているURLを参照していることを確認してください。

2. 次のコードを(クライアント・プロキシ・コードの最初に)追加して、双方向SSLを初期化します。

HostnameVerifier hv = new HostnameVerifier()
httpsURLConnection.setDefaultHostnameVerifier(hv);
System.setProperty("javax.net.ssl.trustStore","<trust_store>");
System.setProperty("javax.net.ssl.trustStorePassword","<trust_store
_password>");
System.setProperty("javax.net.ssl.keyStore","<key_store>");
System.setProperty("javax.net.ssl.keyStorePassword","<key_store_password>");
System.setProperty("javax.net.ssl.keyStoreType","JKS");

3. oracle/wss_username_token_over_ssl_client_policyポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss_username_token_over_ssl_client_policyに関する説明を参照してください

5. Webサービスを起動します。

3.6.2.3 wsmgmt.xmlファイルの編集(SSL経由のユーザー名トークン)

次の手順に従います。

1. ORACLE_HOME/j2ee/oc4j_instance/config/の下でwsmgmt.xmlファイルを検索します。

2. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します(それ以外のタグはすべて削除します)。

<outbound>
<signature>
<add-timestamp created="true" expiry="<Expiry_Time>"/>
</signature>
...

3.7 OC4J 10gクライアント向けのSSL経由のSAMLトークン(送信者保証)(WS-Security 1.0)

SSL経由のSAMLトークン(送信者保証)アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSM 12c WebサービスとOC4J 10gクライアントとの間の相互運用性およびOC4J 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

- OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(SSL経由のSAMLトークン送信者保証)

- OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

詳細の参照先は、次のとおりです。

- WebLogic ServerでのSSLの構成の詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

- OC4JでのSSLの構成の詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmを参照してください。

3.7.1 OWSM 12c WebサービスおよびOC4J 10gクライアントの構成(SSL経由のSAMLトークン送信者保証)

WS-Security 1.0標準に準拠するSSL経由のSAMLトークン(送信者保証)を実装するには、次の手順を実行してOWSM 12c WebサービスおよびOC4J 10gクライアントを構成します。

- OC4J 10gクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLトークン送信者保証)

- OC4J 10gクライアントの構成(SSL経由のSAMLトークン送信者保証)

- <appname>Binding_Stub.xmlファイルの編集(SSL経由のSAMLトークン送信者保証)

3.7.1.1 OC4J 10gクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLトークン送信者保証)

次の手順を実行してOWSM 12c Webサービスを構成します。

1. サーバーを双方向SSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(双方向)に関する説明を参照してください。

2. 次のポリシーをWebサービスにアタッチします。
oracle/wss_saml_token_over_ssl_service_policy

oracle/wss_username_or_saml_token_over_ssl_service_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3.7.1.2 OC4J 10gクライアントの構成(SSL経由のSAMLトークン送信者保証)

次の手順を実行して、OC4J 10gクライアントを構成します。

1. サーバーを双方向SSL用に構成します。
詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmを参照してください

2. Oracle JDeveloperを使用して、(前述の)Webサービスのクライアント・プロキシを作成します。

注意:

Webサービス・エンドポイントが、Oracle WebLogic ServerでHTTPSおよびSSLポートが構成されているURLを参照していることを確認してください。

詳細は、『Oracle JDeveloperによるアプリケーションの開発』のWebサービスの開発と保護に関する項を参照してください。

3. 次のコードを(クライアント・プロキシ・コードの最初に)追加して、双方向SSLを初期化します。

HostnameVerifier hv = new HostnameVerifier()
httpsURLConnection.setDefaultHostnameVerifier(hv);
System.setProperty("javax.net.ssl.trustStore","<trust_store>");
System.setProperty("javax.net.ssl.trustStorePassword","<trust_store
_password>");
System.setProperty("javax.net.ssl.keyStore","<key_store>");
System.setProperty("javax.net.ssl.keyStorePassword","<key_store_password>");
System.setProperty("javax.net.ssl.keyStoreType","JKS");

4. Oracle JDeveloperウィザードを使用して、プロキシを保護します。これには、プロキシ・プロジェクトを右クリックし、「セキュアなプロキシ」を選択します。

5. プロキシ・エディタ・ナビゲーション・バーの「認証」をクリックし、次のオプションを設定します。

a. 「SAMLトークンの使用」を選択します。

b. 「SAML詳細」をクリックします。

c. 「送信者保証確認」を選択します。

d. 「デフォルト・サブジェクト名」として有効なユーザー名を入力します。

6. プロキシ・エディタ・ナビゲーション・バーの「インバウンド整合性」をクリックし、次のオプションを設定します。

a. 「署名されたインバウンド・メッセージ本体の検証」を選択解除します。

7. プロキシ・エディタ・ナビゲーション・バーの「インバウンド整合性」をクリックし、すべてのオプションを選択解除します。

8. プロキシ・エディタ・ナビゲーション・バーの「インバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「インバウンド・メッセージ・コンテンツの復号化」を選択解除します。

9. プロキシ・エディタ・ナビゲーション・バーの「アウトバウンド機密保護」をクリックし、次のオプションを設定します。

a. 「アウトバウンド・メッセージの暗号化」を選択解除します。

10. 使用するキーストアに必要な情報を指定します。

11. 「OK」をクリックし、ウィザードを閉じます。

12. 「構造」ペインで<appname>Binding_Stub.xmlをクリックし、「<appname>Binding_Stub.xmlファイルの編集」の説明に従ってこのファイルを編集します。

13. Webサービスを起動します。

3.7.1.3 <appname>Binding_Stub.xmlファイルの編集(SSL経由のSAMLトークン送信者保証)

次の手順を実行して<appname>Binding_Stub.xmlファイルを編集します。

1. キーストア・パスワード、署名キー・パスワードおよび暗号化キー・パスワードを指定します。

2. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します(それ以外のタグはすべて削除します)。

<outbound>
<signature>
<add-timestamp created="true" expiry="<Expiry_Time>"/>
</signature>
...

3.7.2 OC4J 10g WebサービスおよびOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

WS-Security 1.0標準に準拠するSSL経由のSAMLトークン(送信者保証)を実装するには、次の手順を実行してOC4J 10g WebサービスおよびOWSM 12cクライアントを構成します。

- OC4J 10g Webサービスの構成(SSL経由のSAMLトークン送信者保証)

- OWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

- wsmgmt.xmlファイルの編集(SSL経由のSAMLトークン送信者保証)

3.7.2.1 OC4J 10g Webサービスの構成(SSL経由のSAMLトークン送信者保証)

次の手順を実行して、OC4J 10g Webサービスを構成します。

1. サーバーを双方向SSL用に構成します。
詳細は、http://download.oracle.com/docs/cd/B14099_19/web.1012/b14013/configssl.htmを参照してください

2. Application Server Controlを使用して、デプロイしたWebサービスを保護します。

3. ナビゲーション・バーの「認証」をクリックし、次のオプションを設定します。

a. 「SAML認証の使用」を選択します。

b. 「送信者保証の許容」を選択します。

c. 「署名の検証」を選択解除します。

4. 「インバウンド・ポリシー」ページの「完全性」タブをクリックし、すべてのオプションを選択解除します。

5. 「アウトバウンド・ポリシー」ページの「完全性」タブをクリックし、すべてのオプションを選択解除します。

6. 「インバウンド・ポリシー」ページの「秘匿性」タブをクリックし、すべてのオプションを選択解除します。

7. 「アウトバウンド・ポリシー」ページの「秘匿性」タブをクリックし、すべてのオプションを選択解除します。

8. 表3-38「wsmgmt.xmlファイルの編集」の説明に従って、wsmgmt.xmlデプロイメント・ディスクリプタ・ファイルを編集します。

3.7.2.2 OWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

次の手順を実行してOWSM 12cクライアントを構成します。

1. サーバーを双方向SSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(双方向)に関する説明を参照してください

2. OC4J 10g Webサービスへのクライアント・プロキシを作成します。
詳細は、「Webサービス・エンドポイントが、Oracle WebLogic ServerでHTTPSおよびSSLポートが構成されているURLを参照していることを確認してください」を参照してください。

3. oracle/wss_saml_token_over_ssl_client_policyポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss_saml_token_over_ssl_client_policyに関する説明を参照してください

5. Webサービスを起動します。

3.7.2.3 wsmgmt.xmlファイルの編集(SSL経由のSAMLトークン送信者保証)

次の手順に従って、wsmgmt.xmlファイルを編集します。

1. ORACLE_HOME/j2ee/oc4j_instance/config/の下でwsmgmt.xmlファイルを検索します。

2. アウトバウンド署名で、次のようにタイムスタンプに署名が必要であることを指定します(それ以外のタグはすべて削除します)。

<outbound>
<signature>
<add-timestamp created="true" expiry="<Expiry_Time>"/>
</signature>
...

4 Oracle WebLogic Server 12c Webサービスのセキュリティ環境との相互運用性

Oracle Web Services Manager (OWSM)は、Oracle WebLogic Server 12c Webサービスのセキュリティ環境と相互運用できます。OWSMとOracle WebLogic Server 12c Webサービスのセキュリティ環境との間の相互運用性を実現するため、WS-Security 1.0および1.1標準に準拠するポリシーがWebサービスにアタッチされます。

この章の内容は次のとおりです。

- Oracle WebLogic Server 12c Webサービスのセキュリティ環境との相互運用性の概要

- Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)

- Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)およびMTOM

- Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)

- Oracle WebLogic Server向けのSSL経由のユーザー名トークン

- MTOMを使用したOracle WebLogic Server向けのSSL経由のユーザー名トークンの実装

- Oracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)

- MTOMを使用したOracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)の実装

- Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン2.0 (送信者保証)(WS-Security 1.1)

- Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)

- Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)およびMTOM

- Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

- Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.0)

- Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.1)

4.1 Oracle WebLogic Server 12c Webサービスのセキュリティ環境との相互運用性の概要

Oracle Fusion Middleware 12cでは、OWSMおよびOracle WebLogic Server 12c Webサービスの両方のポリシーをWebLogic Java EE Webサービスにアタッチできます。

- Oracle WebLogic Server 12cポリシー向けのOWSM事前定義済ポリシー

- Oracle WebLogic Serviceの相互運用性シナリオ

4.1.1 Oracle WebLogic Server 12cポリシー向けのOWSM事前定義済ポリシー

Oracle WebLogic Server 12cのセキュリティ環境向けのOWSM事前定義済ポリシーの詳細は、このトピックを参照してください。

- OWSM事前定義済ポリシーについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

- OWSM 12cポリシーの構成およびアタッチについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

Oracle WebLogic Server 12c Webサービスの事前定義済ポリシーの詳細は、次の資料を参照してください。

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明

- Oracle WebLogic Server WebLogic Webサービスの保護のOracle Web Services Managerのセキュリティ・ポリシーの使用

4.1.2 Oracle WebLogic Serviceの相互運用性シナリオ

WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間、およびWebLogicクライアント・ポリシーとOWSM Webサービス・ポリシーとの間の相互運用性に関する様々なシナリオの詳細は、このトピックを参照してください。

表4-1および表4-2は、セキュリティ要件(認証、メッセージ保護およびトランスポート)に基づいたOracle WebLogic Server 12c Webサービス・ポリシーの最も一般的な相互運用性シナリオをまとめたものです。表は次のように構成されています。

- 表4-1に、WebLogic Webサービス・ポリシーおよびOWSMクライアント・ポリシーとの相互運用性シナリオを示します。

- 表4-2に、OWSM Webサービス・ポリシーおよびWebLogic Webサービス・クライアント・ポリシーとの相互運用性シナリオを示します。

表4-1 WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

ユーザー名

1.1

はい

いいえ

- Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss11_username_token_with_message_protection_client_policy

ユーザー名とMTOM

1.1

はい

いいえ

- Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss11_username_token_with_message_protection_client_policy

wsmtom_policy

ユーザー名

1.0

はい

いいえ

- Wssp1.2-wss10_username_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss10_username_token_with_message_protection_client_policy

SAML 2.0

1.1

はい

いいえ

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss11_saml_token_with_message_protection_client_policy

SAML

1.1

はい

いいえ

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss11_saml_token_with_message_protection_client_policy

SAMLとMTOM

1.1

はい

いいえ

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss11_saml_token_with_message_protection_client_policy

wsmtom_policy

SAML

1.0

はい

いいえ

- Wssp1.2-wss10_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss10_saml_token_with_message_protection_client_policy

相互認証

1.1

はい

いいえ

- Wssp1.2-wss11_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss11_x509_token_with_message_protection_client_policy

相互認証

1.0

はい

いいえ

- Wssp1.2-wss10_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

oracle/wss10_x509_token_with_message_protection_client_policy

表4-2 OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

ユーザー名

1.1

はい

いいえ

oracle/wss11_username_token_with_message_protection_service_policy

- Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

ユーザー名とMTOM

1.1

はい

いいえ

oracle/wss11_username_token_with_message_protection_service_policy

- Wssp1.2-wss10_username_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

ユーザー名

1.0

はい

いいえ

oracle/wss10_username_token_with_message_protection_service_policy

- Wssp1.2-wss10_username_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

SSL経由のユーザー名

1.0および1.1

いいえ

はい

oracle/wss_username_token_over_ssl_service_policy

Wssp1.2-2007-Https-UsernameToken-Plain.xml

MTOMを使用するSSL経由のユーザー名

1.0および1.1

いいえ

はい

oracle/wss_username_token_over_ssl_service_policy

Wssp1.2-2007-Https-UsernameToken-Plain.xml

SSL経由のSAML

1.0および1.1

いいえ

はい

oracle/wss_saml_token_over_ssl_service_policy

Wssp1.2-2007-Saml1.1-SenderVouches-Https.xml

MTOMを使用するSSL経由のSAML

1.0および1.1

いいえ

はい

oracle/wss_saml_token_over_ssl_service_policy

Wssp1.2-2007-Saml1.1-SenderVouches-Https.xml

SAML 2.0

1.1

はい

いいえ

oracle/wss11_saml_token_with_message_protection_service_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

SAML

1.1

はい

いいえ

oracle/wss11_saml_token_with_message_protection_service_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

MTOMを使用するSAML

1.1

はい

いいえ

oracle/wss11_saml_token_with_message_protection_service_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

SAML

1.0

はい

いいえ

oracle/wss10_saml_token_with_message_protection_service_policy

- Wssp1.2-wss10_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

相互認証

1.1

はい

いいえ

oracle/wss11_x509_token_with_message_protection_service_policy

- Wssp1.2-wss11_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

相互認証

1.0

はい

いいえ

oracle/wss10_x509_token_with_message_protection_service_policy

- Wssp1.2-wss10_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

表4-3 Oracle WebLogic Server 12c Webサービスのセキュリティ環境との相互運用性

相互運用性シナリオ

クライアント—>Webサービス

OWSM 12cポリシー

Oracle WebLogic Server 12cポリシー

「Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)」

Oracle WebLogicサーバー ——> OWSM

oracle/wss11_username_token_with_message_protection_service_policy

- Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss11_username_token_with_message_protection_client_policy

- Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

「Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)およびMTOM」

Oracle WebLogicサーバー ——> OWSM

oracle/wss11_username_token_with_message_protection_service_policy

- Wssp1.2-wss10_username_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss11_username_token_with_message_protection_client_policy

- Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

「Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)」

Oracle WebLogicサーバー ——> OWSM

oracle/wss10_username_token_with_message_protection_service_policy

- Wssp1.2-wss10_username_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss10_username_token_with_message_protection_client_policy

- Wssp1.2-wss10_username_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

「Oracle WebLogic Server向けのSSL経由のユーザー名トークン」

Oracle WebLogicサーバー ——> OWSM

oracle/wss_username_token_over_ssl_service_policy

Wssp1.2-2007-Https-UsernameToken-Plain.xml

MTOMを使用したOracle WebLogic Server向けのSSL経由のユーザー名トークンの実装

Oracle WebLogicサーバー ——> OWSM

oracle/wss_username_token_over_ssl_service_policy

Wssp1.2-2007-Https-UsernameToken-Plain.xml

「Oracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)」

Oracle WebLogicサーバー ——> OWSM

oracle/wss_saml_token_over_ssl_service_policy

Wssp1.2-2007-Saml1.1-SenderVouches-Https.xml

MTOMを使用したOracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)の実装

Oracle WebLogicサーバー ——> OWSM

oracle/wss_saml_token_over_ssl_service_policy

Wssp1.2-2007-Saml1.1-SenderVouches-Https.xml

「Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン2.0 (送信者保証)(WS-Security 1.1)」

Oracle WebLogicサーバー ——> OWSM

oracle/wss11_saml_token_with_message_protection_service_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss11_saml_token_with_message_protection_client_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)

Oracle WebLogicサーバー ——> OWSM

oracle/wss11_saml_token_with_message_protection_service_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss11_saml_token_with_message_protection_client_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)およびMTOM

Oracle WebLogicサーバー ——> OWSM

oracle/wss11_saml_token_with_message_protection_service_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss11_saml_token_with_message_protection_client_policy

oracle/wsmtom_policy

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

Oracle WebLogicサーバー ——> OWSM

oracle/wss10_saml_token_with_message_protection_service_policy

- Wssp1.2-wss10_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss10_saml_token_with_message_protection_client_policy

- Wssp1.2-wss10_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.0)

Oracle WebLogicサーバー ——> OWSM

oracle/wss10_x509_token_with_message_protection_service_policy

- Wssp1.2-wss10_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss10_x509_token_with_message_protection_client_policy

- Wssp1.2-wss10_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.1)

Oracle WebLogicサーバー ——> OWSM

oracle/wss11_x509_token_with_message_protection_service_policy

- Wssp1.2-wss11_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

(続き)

OWSM ——> Oracle WebLogic Server

oracle/wss11_x509_token_with_message_protection_client_policy

- Wssp1.2-wss11_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

4.2 Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)

メッセージ保護付きユーザー名トークン・ポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSMとOracle WebLogic Server Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性(ユーザー名トークン)

- Webサービス・クライアント・ポリシー(ユーザー名トークン)

4.2.1 WebLogic Webサービス・ポリシーとの相互運用性(ユーザー名トークン)

WS-Security 1.1標準に準拠するメッセージ保護付きユーザー名トークンを実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成(ユーザー名トークン)

- OWSMクライアント・ポリシーのアタッチと構成(ユーザー名トークン)

4.2.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(ユーザー名トークン)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください

2. 次のポリシーをアタッチします。

a. Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

b. Wssp1.2-2007-SignBody.xml

c. Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください

4. メッセージレベルのセキュリティを構成します。

注意:

WS-Security 1.1ポリシーに指定する必要があるのは、機密保護キーのみです。

詳細は、次を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する説明

- Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのセキュリティ構成の作成に関する説明

5. Webサービスをデプロイします。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのインストールに関する説明を参照してください

4.2.1.2 OWSMクライアント・ポリシーのアタッチと構成(ユーザー名トークン)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. clientgenまたは他のメカニズムを使用して、前に作成したWebサービスのクライアント・プロキシを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. oracle/wss11_username_token_with_message_protection_client_policyポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_username_token_with_message_protection_client_policyに関する説明を参照してください

4. クライアント構成内にkeystore.recipient.aliasを指定します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_username_token_with_message_protection_client_policyに関する説明を参照してください

5. クライアントに指定するkeystore.recipient.aliasキーが、Webサービスに対して構成されている信頼ストア内に信頼できる証明書エントリとして存在していることを確認してください。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_username_token_with_message_protection_client_policyに関する説明を参照してください

6. 有効なユーザー名およびパスワードを構成の一部として指定します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_username_token_with_message_protection_client_policyに関する説明を参照してください

7. クライアントからWebサービス・メソッドを起動します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

4.2.2 Webサービス・クライアント・ポリシー(ユーザー名トークン)

WS-Security 1.1標準に準拠するメッセージ保護付きユーザー名トークンを実装して、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保できます。

- OWSM Webサービス・ポリシーのアタッチと構成(ユーザー名トークン)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(ユーザー名トークン)

4.2.2.1 OWSM Webサービス・ポリシーのアタッチと構成(ユーザー名トークン)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. Webサービスを作成してデプロイします。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービスにアタッチします。

a. oracle/wss11_username_token_with_message_protection_service_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.2.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(ユーザー名トークン)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して作成されたWebサービスのクライアント・プロキシを作成します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. 次のポリシーをアタッチします。

a. Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

b. Wssp1.2-2007-SignBody.xml

c. Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. クライアントでサーバー(暗号化キー)を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている暗号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

4. クライアントからWebサービス・メソッドを起動します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.3 Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)およびMTOM

メッセージ保護付きユーザー名トークン・ポリシーとメッセージ送信最適化メカニズム・ポリシーは、WS-Security 1.1標準に準拠します。これらのポリシーは、OWSMとOracle WebLogic Server Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するユーザー名トークン)

- WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するユーザー名トークン)

4.3.1 WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するユーザー名トークン)

WS-Security 1.1標準に準拠し、メッセージ送信最適化メカニズム(MTOM)を使用するメッセージ保護付きユーザー名トークンを実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

- OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

4.3.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください。

2. Webサービスで@MTOM注釈を使用します。
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

4.3.1.2 OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. clientgenまたは他のメカニズムを使用して、Webサービスのクライアント・プロキシを構成します。

2. Webサービスで@MTOM注釈を使用していない場合、「管理」タブからwsmtom_policyをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.3.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するユーザー名トークン)

WS-Security 1.1標準に準拠し、メッセージ送信最適化メカニズム(MTOM)を使用するメッセージ保護付きユーザー名トークンを実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

4.3.2.1 OWSMポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. OWSM Webサービスを構成します。

2. 「管理」タブからwsmtom_policyをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.3.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するユーザー名トークン)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して作成されたWebサービスのクライアント・プロキシを作成します。

2. wsmtom_policyをアタッチしていない場合、@MTOM注釈をWebサービス・クライアントに使用します。

4.4 Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)

メッセージ保護付きユーザー名トークン・ポリシーは、WS-Security 1.0標準に準拠します。このポリシーは、OWSMとOracle WebLogic Server 12c Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護付きユーザー名トークン)

- WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護付きユーザー名トークン)

注意:

WS-Security 1.0ポリシーは、レガシー・アプリケーションに対してのみサポートされています。最大のパフォーマンスを実現するためには、WS-Security 1.1ポリシーを使用してください。詳細は、Oracle WebLogic Server向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)を参照してください。

4.4.1 WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護付きユーザー名トークン)

WS-Security 1.0標準に準拠するメッセージ保護付きユーザー名トークンを実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

- OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

4.4.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください

2. 次のポリシーをアタッチします。

a. Wssp1.2-2007-SignBody.xml

b. Wssp1.2-wss10_username_token_with_message_protection_owsm_policy.xml

c. Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください。

4. メッセージレベルのセキュリティを構成します。
詳細は、次を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する説明

- Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのセキュリティ構成の作成に関する説明

5. Webサービスをデプロイします。
詳細は、Oracle WebLogic ServerへのアプリケーションのデプロイのWebサービスのデプロイを参照してください。

4.4.1.2 OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. clientgenまたは他のメカニズムを使用して、作成したWebサービスへのクライアント・プロキシを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービス・クライアントにアタッチします。

a. oracle/wss10_username_token_with_message_protection_client_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_username_token_with_message_protection_client_policyに関する説明を参照してください

注意:

クライアント(署名および復号化キー)とキーストア受信者別名(暗号化に使用されるサーバー公開鍵)には、必ず別々のキーを使用してください。受信者別名が、Webサービス・ポリシーのセキュリティ構成内に定義されているキーと一致していることを確認してください。

4. クライアントに指定する署名および暗号化キーが、Webサービスに対して構成されている信頼ストア内に信頼できる証明書エントリとして存在していることを確認してください。

5. 有効なユーザー名およびパスワードを構成の一部として指定します。

6. クライアントからWebサービス・メソッドを起動します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

4.4.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護付きユーザー名トークン)

WS-Security 1.0標準に準拠するメッセージ保護付きユーザー名トークンを実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

4.4.2.1 OWSMポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

OWSMポリシーをアタッチおよび構成するには、次の手順を実行します。

1. Webサービスを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービスにアタッチします。

a. oracle/wss10_username_token_with_message_protection_service_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

4.4.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護付きユーザー名トークン)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して作成されたWebサービスのクライアント・プロキシを作成します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. 次のポリシーをアタッチします。

a. Wssp1.2-wss10_username_token_with_message_protection_owsm_policy.xml

b. Wssp1.2-2007-SignBody.xml

c. Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. クライアント・サーバー(暗号化キー)およびクライアント証明書を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている暗号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

4. クライアントからWebサービス・メソッドを起動します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.5 Oracle WebLogic Server向けのSSL経由のユーザー名トークン

SSL経由のユーザー名トークン・アイデンティティ・トークンは、WS-Security 1.0および1.1標準に準拠します。このアイデンティティ・トークンは、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

SSL経由でユーザー名トークンを実装できます。SSL経由のユーザー名トークンを実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成(SSL経由のユーザー名トークン)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(SSL経由のユーザー名トークン)

4.5.1 OWSMポリシーのアタッチと構成(SSL経由のユーザー名トークン)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. サーバーを一方向SSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(一方向)に関する説明を参照してください

2. Webサービスを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

3. 次のポリシーをアタッチします。

a. oracle/wss_username_token_over_ssl_service_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.5.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(SSL経由のユーザー名トークン)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して作成されたWebサービスのクライアント・プロキシを作成します。クライアント・プロキシ内に、このポリシーの構成の一部として有効なユーザー名およびパスワードを指定します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. SSL向けにWebLogic Serverを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(一方向)に関する説明を参照してください

3. IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください

4. Wssp1.2-2007-Https-UsernameToken-Plain.xmlをWebサービス・クライアントにアタッチします。
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

5. SSLクライアントで信頼ストアおよび他の必要なシステム・プロパティを指定します。
詳細は、『WebLogicセキュリティ・サービスによるアプリケーションの開発』のJavaクライアントでのSSL認証の使用に関する説明を参照してください

6. Webサービスを起動します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.6 MTOMを使用したOracle WebLogic Server向けのSSL経由のユーザー名トークンの実装

メッセージ送信最適化メカニズム(MTOM)を使用するSSL経由のユーザー名トークンを実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

1. OWSM Webサービスを構成します。

2. 前に作成したWebサービスに対してクライアント・プロキシを作成して、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

3. Webサービス・クライアントで@MTOM注釈を使用します。

詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

4.7 Oracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)

SSL経由のSAMLトークン(送信者保証)アイデンティティ・トークンは、WS-Security 1.0および1.1標準に準拠します。このアイデンティティ・トークンは、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するために実装されます。

- OWSMポリシーのアタッチと構成(SAMLトークン)

- WebLogic Webサービス・クライアント・ポリシーの構成(SAMLトークン)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(SAMLトークン)

4.7.1 OWSMポリシーのアタッチと構成(SAMLトークン)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. 双方向SSLのoracle/wss_saml_token_over_ssl_service_policyポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss_saml_token_over_ssl_service_policyに関する説明を参照してください

2. Webサービスを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

3. oracle/wss_saml_token_over_ssl_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

4.7.2 WebLogic Webサービス・クライアント・ポリシーの構成(SAMLトークン)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. 双方向SSLのoracle/wss_saml_token_over_ssl_service_policyポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss_saml_token_over_ssl_service_policyに関する説明を参照してください

2. Webサービスを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

3. oracle/wss_saml_token_over_ssl_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

4.7.3 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(SAMLトークン)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して前に作成されたWebサービスのクライアント・プロキシを作成します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. Oracle WebLogic Serverを双方向SSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(双方向)に関する説明を参照してください

3. IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください

4. Wssp1.2-2007-Saml1.1-SenderVouches-Https.xmlをWebサービス・クライアントにアタッチします。
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

5. SAML資格証明マッピング・プロバイダを構成します。

6. WebLogic Server管理コンソールで、「セキュリティ・レルム」→「レルム名」→「プロバイダ」→「資格証明マッピング」ページにナビゲートし、「SAMLCredentialMapperV2」タイプの新しい資格証明マッピング・プロバイダを作成します。

7. 新規のプロバイダを選択して「プロバイダ固有」をクリックし、プロバイダを次のように構成します。

a. 「発行者URI」をwww.oracle.comに設定します。

b. 「名前修飾子」をwww.oracle.comに設定します。

8. Oracle WebLogic Serverを再起動します。
詳細は、『Webサービスの管理』のOracle WebLogic管理コンソールへのアクセスに関する説明を参照してください

9. 「プロファイル」をWSS/Sender-Vouchesに設定して、SAMLリライイング・パーティを作成します。

10. 次のようにSAMLリライイング・パーティを構成します(その他の値はデフォルトの設定のままにしておきます)。

a. ターゲットURL: <url_used_to_access_Web_service>

b. 説明: <your_description>

c. 「有効」チェック・ボックスを選択し、「保存」をクリックします。

d. 「ターゲットURL」は必ず、クライアントWebサービスに使用されているURLに設定してください。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1リライング・パーティの作成に関する項を参照してください

11. サーブレットを作成し、そのサーブレットからプロキシ・コードをコールします。

12. 認証済サブジェクトを作成できるように、基本認証を使用します。

13. SSLクライアントで信頼ストアおよび他の必要なシステム・プロパティを指定します。
詳細は、『WebLogicセキュリティ・サービスによるアプリケーションの開発』のJavaクライアントでのSSL認証の使用に関する説明を参照してください

14. Webアプリケーション・クライアントを起動します。

15. SAMLトークンを使用してアイデンティティを伝播するユーザーの資格証明を入力します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.8 MTOMを使用したOracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)の実装

MTOMを使用するSSL経由のSAMLトークン保証を実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

1. OWSM Webサービスを構成します。

詳細は、Oracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)を参照してください

2. Oracle WebLogic Webサービス・クライアント・ポリシーを構成します。

詳細は、Oracle WebLogic Server向けのSSL経由のSAMLトークン(送信者保証)を参照してください

3. Webサービス・クライアントで@MTOM注釈を使用します。

詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください。

4.9 Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン2.0 (送信者保証)(WS-Security 1.1)

メッセージ保護付きSAMLトークン2.0 (送信者保証)アイデンティティ・トークンは、WS-Security 1.1標準に準拠します。このアイデンティティ・トークンは、OWSMとOracle WebLogic Server 12c Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性(SAMLトークン2.0)

- WebLogic Webサービス・クライアント・ポリシーとの相互運用性(SAMLトークン2.0)

4.9.1 WebLogic Webサービス・ポリシーとの相互運用性(SAMLトークン2.0)

WS-Security 1.1標準に準拠するメッセージ保護付きSAML 2.0トークン送信者保証を実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成(SAMLトークン2.0)

- OWSMクライアント・ポリシーのアタッチと構成(SAMLトークン2.0)

4.9.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(SAMLトークン2.0)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-2007-Saml2.0-SenderVouches-Wss1.1.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. メッセージの署名および暗号化のためのキーストア・プロパティを構成します。この構成は、サーバー側で使用されているキーストアと一致させる必要があります。キーストアから2つのキーをエクスポートし、その両方を信頼して信頼ストアにインポートし、信頼ストアを作成します。IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください。

4. メッセージレベルのセキュリティを構成します。
詳細は、次の章を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する説明

- Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのセキュリティ構成の作成に関する説明

5. 次のアノテーションを使用して、新規の構成をアタッチします。

@WssConfiguration(value="<my_security_configuration>") where <my_security_configuration> is the name of the Web Security Configuration created in previous step.

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージ・レベルのセキュリティの構成に関する項を参照してください

6. Webサービスをデプロイします。
詳細は、Oracle WebLogic ServerへのアプリケーションのデプロイのWebサービスのデプロイを参照してください。

7. SAML IDアサータを作成します。

In the WebLogic Server Administration Console, navigate to Security Realms > RealmName > Providers > Credential Mapping page and create a New Credential Mapping Provider of type SAML2IdentityAsserter.

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください

8. WebLogic Serverを再起動します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのサーバーの起動と停止に関する項 を参照してください。

9. ステップ7で作成したIDアサータにIDプロバイダを追加するには、次の手順を実行します。

a. WebLogic管理コンソールで、ステップ7で作成したIDアサータを選択します。

b. 新規のアイデンティティ・プロバイダ・パートナを作成し、「新規」を選択し、新規Webサービスのアイデンティティ・プロバイダ・パートナを選択します。

c. 名前を入力して、「終了」を選択します。

10. 次のように、アイデンティティ・プロバイダを構成します。

a. ステップ9で作成したアイデンティティ・プロバイダを選択します。

b. 「有効」チェック・ボックスを選択します。

c. オーディエンスのURIを入力します。例:

target:*:/saml20WLSWS-Project1-context-root/Class1Port

d. 「発行者URI」をwww.oracle.comに設定します。

e. 「ターゲットURL」を<url_used_to_access_Web_service>に設定します。

f. 「プロファイル」をWSS/Sender-Vouchesに設定します。

4.9.1.2 OWSMクライアント・ポリシーのアタッチと構成(SAMLトークン2.0)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. JDeveloperを使用して、前に作成したWebサービスのクライアントを生成します。Webプロジェクトを作成し、「新規」を選択し、WSDLを使用してクライアント・プロキシを作成します。
詳細は、次の章を参照してください。

- 『Webサービスの理解』のOracle Fusion Middleware Webサービスを実装するためのロードマップに関する説明

- Oracle JDeveloperによるアプリケーションの開発のWebサービスの開発と保護に関する項。

2. 前述のプロジェクトにサーブレットを追加します。

3. oracle/wss11_saml20_token_with_message_protection_client_policyポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4. クライアント構成内にkeystore.recipient.aliasを指定します。

注意:

keystore.recipient.aliasが、Webサービスに対して指定されている復号化キーと同じであることを確認してください。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_saml20_token_with_message_protection_cient_policyに関する説明を参照してください

5. クライアントに指定するkeystore.recipient.aliasキーが、Webサービスに対して構成されている信頼ストア内に信頼できる証明書エントリとして存在していることを確認してください。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_saml20_token_with_message_protection_cient_policyに関する説明を参照してください

6. JDeveloperで、「ADFセキュリティの構成」ウィザードを使用して、フォーム・ベースの認証を備えたセキュアなWebプロジェクトにします。
詳細は、『Oracle JDeveloperによるアプリケーションの開発』を参照してください

7. Webアプリケーション・クライアントを起動します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

4.9.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(SAMLトークン2.0)

WS-Security 1.1標準に準拠するメッセージ保護付きSAML 2.0トークン送信者保証を実装し、WebLogic Webサービス・クライアント・ポリシーとOWSMポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成(SAMLトークン2.0)

- WebLogic Webサービス・クライアントのアタッチと構成(SAMLトークン2.0)

4.9.2.1 OWSMポリシーのアタッチと構成(SAMLトークン2.0)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. Webサービスを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービスにアタッチします。

oracle/wss11_saml20_token_with_message_protection_service_policy.

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.9.2.2 WebLogic Webサービス・クライアントのアタッチと構成(SAMLトークン2.0)

次の手順に従って、WebLogic Webサービス・クライアントをアタッチおよび構成します。

1. JDeveloperを使用して、デプロイ済WebサービスのJava EEクライアントを作成します。Webプロジェクトを作成し、WSDLプロキシを使用してプロキシを作成します。
詳細は、『Oracle JDeveloperによるアプリケーションの開発』のJAX-WS Webサービスとクライアントの作成に関する項を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-2007-Saml2.0-SenderVouches-Wss1.1.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

注意:

weblogic.jarをフォルダに抽出して、前述のポリシー・ファイルの絶対パスを指定します。

詳細は、『Oracle JDeveloperによるアプリケーションの開発』のポリシーのアタッチに関する項を参照してください

3. 前述のWebプロジェクトにサーブレットを追加します。

4. クライアント・サーバー(暗号化キー)およびクライアント証明書を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている復号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

5. 基本認証を使用してWebアプリケーション・クライアントを保護します。
詳細は、『WebLogicセキュリティ・サービスによるアプリケーションの開発』のBASIC認証Webアプリケーションの開発に関する項を参照してください

6. Java EE Webアプリケーション・クライアントをデプロイします。
詳細は、『Webサービスの管理』のWebサービス・アプリケーションのデプロイに関する説明を参照してください

7. SAML資格証明マッピング・プロバイダを構成します。

- Oracle WebLogic Server管理コンソールで、「セキュリティ・レルム」→「レルム名」→「プロバイダ」→「資格証明マッピング」ページに移動し、「SAML2CredentialMapper」タイプの新しい資格証明マッピング・プロバイダを作成します。

8. 新規のプロバイダを選択して「プロバイダ固有」をクリックし、プロバイダを次のように構成します。

a. 「発行者URI」をwww.oracle.comに設定します。

b. 「名前修飾子」をwww.oracle.comに設定します。

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください

9. WebLogic Serverを再起動します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのサーバーの起動と停止に関する項 を参照してください。

10. 新規のサービス・プロバイダ・パートナを作成するには、次の手順を実行します。

a. WebLogic管理コンソールで、ステップ7で作成した資格証明マッパーを選択し、「管理」タブを選択します。

b. 「新規」を選択し、新規Webサービスのサービス・プロバイダ・パートナを選択します。

c. 名前を入力して、「終了」を選択します。

11. 次のように、サービス・プロバイダ・パートナを構成します。

a. ステップ10で作成したサービス・プロバイダ・パートナを選択します。

b. 「有効」チェック・ボックスを選択します。

c. オーディエンスのURIを入力します。

d. 「発行者URI」をwww.oracle.comに設定します。

e. 「ターゲットURL」を<url_used_to_access_Web_service>に設定します。

f. 「プロファイル」をWSS/Sender-Vouchesに設定します。

12. Webアプリケーション・クライアントを起動します。

- SAMLトークンを使用してアイデンティティを伝播するユーザーの資格証明を入力します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.10 Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)

メッセージ保護付きSAMLトークン(送信者保証)アイデンティティ・トークンは、WS-Security 1.1標準に準拠します。このアイデンティティ・トークンは、OWSMとOracle WebLogic Server 12c Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護付きSAMLトークン)

- WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護付きSAMLトークン)

4.10.1 WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護付きSAMLトークン)

WS-Security 1.1標準に準拠するメッセージ保護付きSAMLトークン送信者保証を実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

- OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

4.10.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください。

3. IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください

4. メッセージレベルのセキュリティを構成します。

注意:

これはWS-Security 1.1ポリシーなので、指定する必要があるのは機密保護キーのみです。

詳細は、次の章を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する説明

- Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのセキュリティ構成の作成に関する説明。

5. Webサービスをデプロイします。
詳細は、Oracle WebLogic ServerへのアプリケーションのデプロイのWebサービスのデプロイを参照してください。

6. SAMLIdentityAsserterV2認証プロバイダを作成します。

- WebLogic Server管理コンソールで、「セキュリティ・レルム」→「レルム名」→「プロバイダ」→「資格証明マッピング」ページにナビゲートし、「SAMLCredentialMapperV2」タイプの新しい資格証明マッピング・プロバイダを作成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください

7. WebLogic Serverを再起動します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのサーバーの起動と停止に関する項 を参照してください。

8. ステップ5で作成した認証プロバイダを選択します。

9. SAMLアサーティング・パーティを作成します。

- 「プロファイル」をWSS/Sender-Vouchesに設定します。

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1アサーティング・パーティの作成に関する項を参照してください

10. 次のようにして、SAMLアサーティング・パーティを構成します。

a. 「発行者URI」をwww.oracle.comに設定します。

b. 「ターゲットURL」を<url_used_to_access_Web_service>に設定します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1アサーティング・パーティの作成に関する項を参照してください

4.10.1.2 OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. clientgenまたは他のメカニズムを使用して、前に作成したWebサービスへのクライアント・プロキシを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービス・クライアントにアタッチします。

- oracle/wss11_saml_token_with_message_protection_client_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. oracle/wss11_saml_token_with_message_protection_client_policyの説明に従って、このポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_saml_token_with_message_protection_client_policyに関する説明を参照してください

4. クライアント構成内にkeystore.recipient.aliasを指定します。

注意:

keystore.recipient.aliasが、Webサービスに対して指定されている復号化キーと同じであることを確認してください。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_saml_token_with_message_protection_client_policyに関する説明を参照してください

5. クライアントに指定するkeystore.recipient.aliasキーが、Webサービスに対して構成されている信頼ストア内に信頼できる証明書エントリとして存在していることを確認してください。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_saml_token_with_message_protection_client_policyに関する説明を参照してください

6. クライアント構成内に、SAMLトークンを使用してアイデンティティを伝播する必要のあるユーザーの有効なユーザー名を指定します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss11_saml_token_with_message_protection_client_policyに関する説明を参照してください

7. Webアプリケーション・クライアントを起動します。

- SAMLトークンを使用してアイデンティティを伝播するユーザーの資格証明を入力します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

4.10.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護付きSAMLトークン)

WS-Security 1.1標準に準拠するメッセージ保護付きSAML送信者保証を実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

4.10.2.1 OWSMポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. Webサービスを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービスにアタッチします。

- oracle/wss11_saml_token_with_message_protection_service_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.10.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護付きSAMLトークン)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して、(前述の)Webサービスのクライアント・プロキシを作成します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-wss11_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. クライアント・サーバー(暗号化キー)およびクライアント証明書を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている復号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

4. 基本認証を使用してWebアプリケーション・クライアントを保護します。
詳細は、『WebLogicセキュリティ・サービスによるアプリケーションの開発』のBASIC認証Webアプリケーションの開発に関する項を参照してください。

5. Webサービス・クライアントをデプロイします。
詳細は、『Webサービスの管理』のWebサービス・アプリケーションのデプロイに関する説明を参照してください

6. SAML資格証明マッピング・プロバイダを構成します。

- Oracle WebLogic Server管理コンソールで、「セキュリティ・レルム」→「レルム名」→「プロバイダ」→「資格証明マッピング」ページにナビゲートし、「SAMLCredentialMapperV2」タイプの新しい資格証明マッピング・プロバイダを作成します。

7. 新規のプロバイダを選択して「プロバイダ固有」をクリックし、プロバイダを次のように構成します。

a. 「発行者URI」をwww.oracle.comに設定します。

b. 「名前修飾子」をwww.oracle.comに設定します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください

8. WebLogic Serverを再起動します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのサーバーの起動と停止に関する項 を参照してください。

9. SAMLリライイング・パーティを作成します。

- 「プロファイル」をWSS/Sender-Vouchesに設定します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1リライイング・パーティの作成に関する項とSAML 1.1リライイング・パーティの構成に関する項を参照してください

10. SAMLリライイング・パーティを構成します。

- 「ターゲットURL」は必ず、クライアントWebサービスに使用されているURLに設定してください。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1リライング・パーティの構成に関する項を参照してください

11. Webアプリケーション・クライアントを起動します。

- SAMLトークンを使用してアイデンティティを伝播するユーザーの資格証明を入力します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.11 Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)およびMTOM

メッセージ保護付きSAMLトークン(送信者保証)アイデンティティ・トークンとメッセージ送信最適化メカニズム・アイデンティティ・トークンは、WS-Security 1.1標準に準拠します。これらのアイデンティティ・トークンは、OWSMとOracle WebLogic Server 12c Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するSAMLトークン)

- WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するSAMLトークン)

4.11.1 WebLogic Webサービス・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するSAMLトークン)

WS-Security 1.1標準に準拠し、MTOMを使用するメッセージ保護付きSAMLトークン送信者保証を実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

4.11.1.1 WebLogic Webサービス・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)の説明に従って、WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください

2. 「WebLogic Webサービス・ポリシーのアタッチと構成」のステップ2で、Webサービスに@MTOM注釈を使用します。
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

4.11.1.2 OWSMクライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)の説明に従って、前に作成したWebサービスへのクライアント・プロキシを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 「管理」タブからwsmtom_policyをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.11.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性(メッセージ保護およびMTOMを使用するSAMLトークン)

WS-Security 1.1標準に準拠し、MTOMを使用するメッセージ保護付きSAMLトークン送信者保証を実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

4.11.2.1 OWSMポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. Webサービスを作成してデプロイします。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービスにアタッチします。

- oracle/wss11_username_token_with_message_protection_service_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.11.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成(メッセージ保護およびMTOMを使用するSAMLトークン)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して前に作成されたWebサービスのクライアント・プロキシを作成します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-2007-Wss1.1-UsernameToken-Plain-EncryptedKey-Basic128.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. クライアントでサーバー(暗号化キー)を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている暗号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

4. クライアントからWebサービス・メソッドを起動します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.12 Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.0)

メッセージ保護付きSAMLトークン(送信者保証)アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSMとOracle WebLogic Server 12c Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性 - メッセージ保護付きSAMLトークン(WS-Security 1.0)

- WebLogic Webサービス・クライアント・ポリシーとの相互運用性 - メッセージ保護付きSAMLトークン(WS-Security 1.0)

注意:

WS-Security 1.0ポリシーは、レガシー・アプリケーションに対してのみサポートされています。最大のパフォーマンスを実現するためには、WS-Security 1.1ポリシーを使用してください。詳細は、Oracle WebLogic Server向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)を参照してください。

4.12.1 WebLogic Webサービス・ポリシーとの相互運用性 - メッセージ保護付きSAMLトークン(WS-Security 1.0)

送信者保証およびWS-Security 1.0標準に準拠するメッセージ保護付きSAMLトークンを実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

- OWSMクライアント・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

4.12.1.1 WebLogic Webサービス・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-wss10_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml

3. IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください

4. メッセージレベルのセキュリティを構成します。
詳細は、次の章を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する説明

- Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのセキュリティ構成の作成に関する説明

5. Webサービスをデプロイします。
詳細は、Oracle WebLogic ServerへのアプリケーションのデプロイのWebサービスのデプロイを参照してください。

6. SAMLIdentityAsserterV2認証プロバイダを作成します。

- WebLogic Server管理コンソールで、「セキュリティ・レルム」→「レルム名」→「プロバイダ」→「資格証明マッピング」ページにナビゲートし、「SAMLCredentialMapperV2」タイプの新しい資格証明マッピング・プロバイダを作成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください

7. WebLogic Serverを再起動します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのサーバーの起動と停止に関する項 を参照してください。

8. ステップ5で作成した認証プロバイダを選択します。

9. SAMLアサーティング・パーティを作成します。

- 「プロファイル」をWSS/Sender-Vouchesに設定します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1アサーティング・パーティの作成に関する項を参照してください

10. 次のようにSAMLアサーティング・パーティを構成します(その他の値はデフォルトの設定のままにしておきます)。

a. 「発行者URI」をwww.oracle.comに設定します。

b. 「ターゲットURL」を<url_used_by_client>に設定します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1アサーティング・パーティの構成に関する項を参照してください

4.12.1.2 OWSMクライアント・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. clientgenまたは他のメカニズムを使用して、前に作成したWebサービスへのクライアント・プロキシを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービス・クライアントにアタッチします。

- oracle/wss10_saml_token_with_message_protection_client_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. ポリシーを構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_saml_token_with_message_protection_client_policyに関する説明を参照してください

4. クライアント(署名および復号化キー)とキーストア受信者別名(暗号化に使用されるサーバー公開鍵)には、必ず別々のキーを使用してください。受信者別名が、Webサービス・ポリシーのセキュリティ構成内に定義されているキーと一致していることを確認してください。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_saml_token_with_message_protection_client_policyに関する説明を参照してください

5. クライアントに指定する署名および暗号化キーが、Webサービスに対して構成されている信頼ストア内に信頼できる証明書エントリとして存在していることを確認してください。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_saml_token_with_message_protection_client_policyに関する説明を参照してください

6. クライアント構成内に、SAMLトークンを使用してアイデンティティを伝播する必要のあるユーザーの有効なユーザー名を指定します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のoracle/wss10_saml_token_with_message_protection_client_policyに関する説明を参照してください

7. Webサービス・メソッドを起動します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

4.12.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性 - メッセージ保護付きSAMLトークン(WS-Security 1.0)

WS-Security 1.0標準に準拠するメッセージ保護付きSAMLトークンを実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

4.12.2.1 OWSMポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. Webサービスを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービスにアタッチします。

- oracle/wss10_saml_token_with_message_protection_service_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.12.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-メッセージ保護付きSAMLトークン(WS-Security 1.0)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して、(前述の)Webサービスのクライアント・プロキシを作成します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-wss10_saml_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. クライアント・サーバー(暗号化キー)およびクライアント証明書を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている復号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

4. 基本認証を使用してWebアプリケーション・クライアントを保護します。
詳細は、『WebLogicセキュリティ・サービスによるアプリケーションの開発』のBASIC認証Webアプリケーションの開発に関する項を参照してください

5. Webサービス・クライアントをデプロイします。
詳細は、『Webサービスの管理』のWebサービス・アプリケーションのデプロイに関する説明を参照してください

6. SAML資格証明マッピング・プロバイダを構成します。

- WebLogic Server管理コンソールで、「セキュリティ・レルム」→「レルム名」→「プロバイダ」→「資格証明マッピング」ページにナビゲートし、「SAMLCredentialMapperV2」タイプの新しい資格証明マッピング・プロバイダを作成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください

7. 「SAMLCredentialMapperV2」を選択して「プロバイダ固有」をクリックし、これを次のように構成します。

a. 「発行者URI」をwww.oracle.comに設定します。

b. 「名前修飾子」をwww.oracle.comに設定します。

8. WebLogic Serverを再起動します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのサーバーの起動と停止に関する項 を参照してください。

9. SAMLリライイング・パーティを作成します。「プロファイル」をWSS/Sender-Vouchesに設定します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1リライング・パーティの作成に関する項を参照してください

10. SAMLリライイング・パーティを構成します。

注意:

「ターゲットURL」は必ず、クライアントWebサービスに使用されているURLに設定してください。

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML 1.1リライング・パーティの構成に関する項を参照してください

11. Webアプリケーション・クライアントを起動し、適切な資格証明を入力します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.13 Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.0)

メッセージ保護付き相互認証アイデンティティ・トークンは、WS-Security 1.0標準に準拠します。このアイデンティティ・トークンは、OWSMとOracle WebLogic Server 12c Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性-相互認証(WS-Security 1.0)

- WebLogic Webサービス・クライアント・ポリシーとの相互運用性-相互認証(WS-Security 1.0)

4.13.1 WebLogic Webサービス・ポリシーとの相互運用性-相互認証(WS-Security 1.0)

WS-Security 1.0標準に準拠するメッセージ保護付き相互認証を実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

- OWSMクライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

4.13.1.1 WebLogic Webサービス・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください

2. 次のポリシーをアタッチします。

a. Wssp1.2-wss10_x509_token_with_message_protection_owsm_policy.xml

b. Wssp1.2-2007-SignBody.xml

c. Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください

4. メッセージレベルのセキュリティを構成します。
詳細は、次の章を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する説明

- Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのセキュリティ構成の作成に関する説明

5. X.509およびユーザー名トークンのトークン・ハンドラを作成して構成します。WebLogic管理コンソールで、ドメインの「Webサービス・セキュリティ」ページにナビゲートし、次のようにしてトークン・ハンドラを作成します。

6. ユーザー名トークンのトークン・ハンドラを作成し、次のように構成します。

a. 名前: <name>

b. クラス名:

weblogic.xml.crypto.wss.UsernameTokenHandler

c. トークンのタイプ: ut

d. 処理順序: 1

7. X.509のトークン・ハンドラを作成し、次のように構成します。

a. 名前: <name>

b. クラス名:

weblogic.xml.crypto.wss.BinarySecurityTokenHandler

c. トークンのタイプ: x509

d. 処理順序: 0

8. X.509のトークン・ハンドラに対しては、次のプロパティを追加します。

a. 名前: UserX509ForIdentity

b. 値: true

c. IsEncrypted: False

9. 資格証明マッピング・プロバイダを構成します。PKICredentialMapperを作成し、次のように構成します(その他の値はすべてデフォルト設定のままにしておきます)。

a. キーストア・プロバイダ: なし

b. キーストアのタイプ: jks

c. キーストア・ファイル名: default_keystore.jks

d. キーストアのパスフレーズ: <password>

e. キーストアのパスフレーズを確認: <password>

10. 「認証」タブを選択し、次のように構成して認証を構成します。

a. 「DefaultIdentityAsserter」をクリックし、「X.509」を「選択済み」アクティブ・タイプに追加します。

b. 「プロバイダ固有」をクリックし、次のように構成します。
デフォルト・ユーザー名マッパーの属性のタイプ: CN

アクティブなタイプ: X.509

デフォルト・ユーザー名マッパーの使用: True

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください。

11. ユーザーを追加していない場合、証明書で指定されている一般名(CN)ユーザーを追加します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのユーザーの作成に関する項を参照してください

12. Oracle WebLogic Serverを再起動します。

13. Webサービスをデプロイします。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのインストールに関する説明を参照してください

4.13.1.2 OWSMクライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. clientgenまたは他のメカニズムを使用して、前に作成したWebサービスへのクライアント・プロキシを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをクライアントにアタッチします。

wss10_x509_token_with_message_protection_client_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

3. クライアントでサーバー(暗号化キー)を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている暗号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

4. クライアントからWebサービス・メソッドを起動します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

4.13.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性-相互認証(WS-Security 1.0)

WS-Security 1.0標準に準拠するメッセージ保護付き相互認証を実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成-相互認証(WS-Security 1.0)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

4.13.2.1 OWSMポリシーのアタッチと構成-相互認証(WS-Security 1.0)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. Webサービス・アプリケーションを作成してデプロイします。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービスにアタッチします。

oracle/wss10_x509_token_with_message_protection_service_policy.

4.13.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.0)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して前に作成されたWebサービスのクライアント・プロキシを作成します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-wss10_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. クライアントでサーバー(暗号化キー)を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている暗号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

4. クライアントからWebサービス・メソッドを起動します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

4.14 Oracle WebLogic Server向けのメッセージ保護付き相互認証(WS-Security 1.1)

メッセージ保護付き相互認証アイデンティティ・トークンは、WS-Security 1.1標準に準拠します。このアイデンティティ・トークンは、OWSMとOracle WebLogic Server 12c Webサービスのセキュリティ環境との間の相互運用性を実現するために実装されます。

- WebLogic Webサービス・ポリシーとの相互運用性-相互認証(WS-Security 1.0)

- WebLogic Webサービス・クライアント・ポリシーとの相互運用性-相互認証(WS-Security 1.0)

4.14.1 WebLogic Webサービス・ポリシーとの相互運用性-相互認証(WS-Security 1.1)

WS-Security 1.1標準に準拠するメッセージ保護付き相互認証を実装し、WebLogic Webサービス・ポリシーとOWSMクライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- WebLogic Webサービス・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

- OWSMクライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

4.14.1.1 WebLogic Webサービス・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

次の手順に従って、WebLogic Webサービス・ポリシーをアタッチおよび構成します。

1. WebLogic Webサービスを作成します。
詳細は、『Webサービスの理解』のWebLogic (Java EE) Webサービスを実装するためのロードマップに関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-wss11_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. IDストアおよび信頼ストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのIDおよび信頼の構成に関する項を参照してください

4. メッセージレベルのセキュリティを構成します。
詳細は、次の章を参照してください。

- 『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する説明

- Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのセキュリティ構成の作成に関する説明

5. X.509およびユーザー名トークンのトークン・ハンドラを作成して構成します。WebLogic管理コンソールで、ドメインの「Webサービス・セキュリティ」ページにナビゲートし、次のようにしてトークン・ハンドラを作成します。

6. ユーザー名トークンのトークン・ハンドラを作成し、次のように構成します。

- 名前: <name>

- クラス名: weblogic.xml.crypto.wss.UsernameTokenHandler

- トークンのタイプ: ut

- 処理順序: 1

- ユーザー名トークンのトークン・ハンドラを作成し、次のように構成します。

X.509のトークン・ハンドラを作成し、次のように構成します。

- 名前: <name>

- クラス名: weblogic.xml.crypto.wss.BinarySecurityTokenHandler

- トークンのタイプ: x509

- 処理順序: 0

X.509のトークン・ハンドラに対しては、次のプロパティを追加します。

- 名前: UserX509ForIdentity

- 値: true

- IsEncrypted: False
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのセキュリティ構成のトークン・ハンドラの作成に関する説明を参照してください。

7. PKICredentialMapperを作成し、次のように構成して(その他の値はすべてデフォルト設定のままにしておきます)、資格証明マッピング・プロバイダを構成します。

- キーストア・プロバイダ: なし

- キーストアのタイプ: jks

- キーストア・ファイル名: default_keystore.jks

- キーストアのパスフレーズ: <password>

- キーストアのパスフレーズを確認: <password>
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください

8. 「認証」タブを選択し、次のように構成して認証を構成します。

- 「DefaultIdentityAsserter」をクリックし、「X.509」を「選択済み」アクティブ・タイプに追加します。

- 「プロバイダ固有」をクリックし、次のように構成します。

- デフォルト・ユーザー名マッパーの属性のタイプ: CN

- アクティブなタイプ: X.509

- デフォルト・ユーザー名マッパーの使用: True

9. ユーザーを追加していない場合、証明書で指定されている一般名(CN)ユーザーを追加します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのユーザーの作成に関する項を参照してください

10. Oracle WebLogic Serverを再起動します。

11. Webサービスをデプロイします。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWebサービスのインストールに関する説明を参照してください

4.14.1.2 OWSMクライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

次の手順に従って、OWSMクライアント・ポリシーをアタッチおよび構成します。

1. clientgenまたは他のメカニズムを使用して、前に作成したWebサービスのクライアント・プロキシを作成します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをクライアントにアタッチします

wss11_x509_token_with_message_protection_client_policy

3. ポリシーを次のように編集します。

<orasp:x509-token
orasp:sign-key-ref-mech="thumbprint"
orasp:enc-key-ref-mech="thumbprint"/>

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4. クライアントでサーバー(暗号化キー)を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている暗号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

5. クライアントからWebサービス・メソッドを起動します。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

4.14.2 WebLogic Webサービス・クライアント・ポリシーとの相互運用性-相互認証(WS-Security 1.1)

WS-Security 1.1標準に準拠するメッセージ保護付き相互認証を実装し、OWSM Webサービス・ポリシーとWebLogic Webサービス・クライアント・ポリシーとの間の相互運用性を確保するには、次の手順を実行します。

- OWSMポリシーのアタッチと構成-相互認証(WS-Security 1.1)

- WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

4.14.2.1 OWSMポリシーのアタッチと構成-相互認証(WS-Security 1.1)

次の手順に従って、OWSMポリシーをアタッチおよび構成します。

1. Webサービスを作成してデプロイします。
詳細は、『Webサービスの理解』のOracle Fusion Middleware Webサービス実装のロードマップに関する説明を参照してください

2. 次のポリシーをWebサービスにアタッチします。

oracle/wss11_x509_token_with_message_protection_service_policy.

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください

4.14.2.2 WebLogic Webサービス・クライアント・ポリシーのアタッチと構成-相互認証(WS-Security 1.1)

次の手順に従って、WebLogic Webサービス・クライアント・ポリシーをアタッチおよび構成します。

1. clientgenを使用して前に作成されたWebサービスのクライアント・プロキシを作成します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のclientgen Antタスクを使用したクライアント・アーティファクトの生成に関する説明を参照してください

2. 次のポリシーをアタッチします。

- Wssp1.2-wss11_x509_token_with_message_protection_owsm_policy.xml

- Wssp1.2-2007-SignBody.xml

- Wssp1.2-2007-EncryptBody.xml
詳細は、『Oracle WebLogic ServerのWebLogic Webサービスの保護』の@Policy注釈と@Policies注釈を使用したJWSファイルの更新に関する項を参照してください

3. クライアントでサーバー(暗号化キー)を構成します。

注意:

指定する暗号化キーが、Webサービスに対して構成されている暗号化キーと一致していることを確認してください。

詳細は、『Oracle WebLogic Server WebLogic Webサービスの保護』のクライアント・アプリケーションの更新によるメッセージ保護されたWebサービスの呼出しに関する項を参照してください

4. クライアントからWebサービス・メソッドを起動します。
詳細は、『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービスを起動するためのJavaクライアント・アプリケーション・コードの記述に関する説明を参照してください

5 Microsoft WCF/.NET 3.5のセキュリティ環境との相互運用性

Oracle Web Services Manager (OWSM)は、Microsoft WCF/.NET 3.5のセキュリティ環境と相互運用できます。OWSMとMicrosoft WCF/.NET 3.5のセキュリティ環境との間の相互運用性を実現するため、WS-Security 1.1標準に準拠するポリシーがWebサービスにアタッチされます。

この章の内容は次のとおりです。

- Microsoft WCF/.NET 3.5のセキュリティ環境の相互運用性の理解

- Microsoft WCF/.NET 3.5クライアント向けのメッセージ送信最適化メカニズムの実装

- Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

- Microsoft WCF/.NET 3.5クライアント向けのSSL経由のユーザー名トークンの実装

- Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付き相互認証(WS-Security 1.1)の実装

- Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付きKerberosの実装

- Microsoft WCF/.NET 3.5クライアント向けの導出キーを使用したメッセージ保護付きKerberosの実装

- Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションによるKerberosの実装

- Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションおよび資格証明の委任によるKerberosの実装

- Microsoft Active Directory Federation Services 2.0 (ADFS 2.0) STSを使用するWCF/.NET 3.5クライアント

5.1 Microsoft WCF/.NET 3.5のセキュリティ環境の相互運用性の理解

オラクル社はMicrosoft社と協力して、OWSM 12cを使用して作成されたWebサービス・セキュリティ・ポリシーと、Microsoft Windows Communication Foundation (WCF)/.NET 3.5 Frameworkを使用して構成されたWebサービス・ポリシーとの相互運用を可能にするための相互運用性テストを実施しました。

Microsoft WCF/.NET 3.5 Frameworkの詳細は、http://msdn.microsoft.com/en-us/netframework/aa663324.aspxを参照してください。

OWSMの事前定義済ポリシーおよび相互運用性シナリオの詳細は、次の項で説明します。

- Microsoft WCF/.NET 3.5のセキュリティ環境向けのOWSM事前定義済ポリシー

- Microsoft WCF/.NET 3.5の相互運用性シナリオ

5.1.1 Microsoft WCF/.NET 3.5のセキュリティ環境向けのOWSM事前定義済ポリシー

Microsoft WCF/.NET 3.5のセキュリティ環境向けのOWSM事前定義済ポリシーの詳細は、このトピックを確認してください。

詳細は、次を参照してください。

- OWSM事前定義済ポリシーについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

- OWSM 12cポリシーの構成およびアタッチについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

注意:

ほとんどの場合、アプリケーションのデプロイ前にソース・コード内のOWSMポリシーをアタッチすることも、WLSTまたはFusion Middleware Controlを使用してデプロイメント後にポリシーをアタッチすることもできます。この章の手順を簡略化するには、実行時にポリシーをアタッチしていることが前提です。デプロイ前にポリシーをアタッチすることが必要な状況の場合、その方法がこの手順で説明されています。

注意:

この章で説明する手順の一部では、Microsoft ServiceModelメタデータ・ユーティリティ・ツール(SvcUtil.exe)を使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成するよう指示します。ただし、SvcUtil.exeは、OWSMで使用される特定のセキュリティ・ポリシー・アサーションでは動作しません。回避策として、OWSMポリシーによって保護されているWebサービスのWCFプロキシを作成する際に、次のことを行います。

- ポリシーをデタッチします。

- SvcUtil.exeを使用してプロキシを作成します。

- ポリシーを再アタッチします。

SvcUtil.exeの詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.90%29.aspxを参照してください。

5.1.2 Microsoft WCF/.NET 3.5の相互運用性シナリオ

OWSM 12cとMicrosoft WCF/.NET 3.5との間の相互運用性には様々なシナリオがあります。

Microsoft .NET 3.5の最も一般的な相互運用性シナリオは、次のセキュリティ要件(認証、メッセージ保護およびトランスポート)に基づいています。

注意:

以降のシナリオでは、v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

また、キーが適切な拡張(DigitalSignature、Non_repudiation、Key_EnciphermentおよびData_Enciphermentなど)を使用していることも確認してください。

次の表に、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーの相互運用性シナリオを示します。

表5-1 OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

MTOM

該当なし

該当なし

該当なし

oracle/wsmtom_policy

Microsoft WCF/.NET 3.5クライアントの構成(MTOM)

ユーザー名またはSAML

1.1

はい

いいえ

oracle/wss11_username_token_with_message_protection_service_policy

または

oracle/wss11_saml_or_username_token_with_message_protection_service_policy

Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)

ユーザー名

1.0および1.1

いいえ

はい

oracle/wss_saml_or_username_token_over_ssl_service_policy

または

oracle/wss_username_token_over_ssl_service_policy

Microsoft WCF/.NET 3.5クライアントの構成(SSL経由のユーザー名トークン)

相互認証

1.1

はい

いいえ

oracle/wss11_x509_token_with_message_protection_service_policy

Microsoft WCF/.NET 3.5クライアントの構成(相互認証)

Kerberos

1.1

はい

いいえ

oracle/wss11_kerberos_token_with_message_protection_service_policy

Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

次の表に、Microsoft WCF/.NET 3.5サービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性シナリオを示します。

表5-2 Microsoft WCF/.NET 3.5サービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

MTOM

該当なし

該当なし

該当なし

Microsoft WCF/.NET 3.5 Webサービスの構成(MTOM)

oracle/wsmtom_policy

ユーザー名

1.1

はい

いいえ

Microsoft WCF/.NET 3.5 Webサービスの構成(メッセージ保護付きユーザー名トークン)

oracle/wss11_username_token_with_message_protection_client_policy

相互認証

1.1

はい

いいえ

Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(相互認証)

oracle/wss11_x509_token_with_message_protection_client_policy

5.2 Microsoft WCF/.NET 3.5クライアント向けのメッセージ送信最適化メカニズムの実装

メッセージ送信最適化メカニズム(MTOM)を実装して、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーとの間の相互運用性およびMicrosoft WCF/.NET 3.5サービス・ポリシーとOWSM 12cクライアント・ポリシーとの間の相互運用性を実現できます。

次のトピックでは、様々な相互運用性シナリオにおいてMTOMを実装する方法について説明します。

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ送信最適化メカニズム)

- Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

5.2.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ送信最適化メカニズム)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを使用してメッセージ送信最適化メカニズム(MTOM)を実装できます。

次のトピックでは、メッセージ送信最適化メカニズムを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成する方法を説明します。

- OWSM 12c Webサービスの構成(MTOM)

- Microsoft WCF/.NET 3.5クライアントの構成(MTOM)

5.2.1.1 OWSM 12c Webサービスの構成(MTOM)

OWSM 12cを使用してWebサービス・アプリケーションを作成し、作成したWebサービスにMTOMサービス・ポリシーをアタッチできます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。

2. oracle/wsmtom_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

5.2.1.2 Microsoft WCF/.NET 3.5クライアントの構成(MTOM)

Microsoft WCF/.NET 3.5 クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのメッセージ送信最適化メカニズムを実装できます。

Microsoft WCF/.NET 3.5クライアントを構成するには、次のようにします。

1. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。
MTOM相互運用性のサンプルは、app.configファイルを参照してください。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<bindings>
<customBinding>
<binding name="CustomBinding_IMTOMService">
<mtomMessageEncoding maxReadPoolSize="64"
maxWritePoolSize="16"
messageVersion="Soap12" maxBufferSize="65536"
writeEncoding="utf-8">
<readerQuotas maxDepth="32" maxStringContentLength=
"8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
</mtomMessageEncoding>
<httpTransport manualAddressing="false" maxBufferPoolSize="524288"
maxReceivedMessageSize="65536" allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true" maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm="" transferMode="Buffered"
unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true" />
</binding>
</customBinding>
</bindings>
<client>
<endpoint address="<endpoint_url>"
binding="customBinding" bindingConfiguration="CustomBinding_IMTOMService"
contract="IMTOMService" name="CustomBinding_IMTOMService" >
</endpoint>
</client>
</system.serviceModel>
</configuration>

詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.90%29.aspxを参照してください。

2. クライアント・プログラムを実行します。

5.2.2 Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントを使用してメッセージ送信最適化メカニズム(MTOM)を実装できます。

次のトピックでは、メッセージ送信最適化メカニズム(MTOM)を実装するために、Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントを構成する方法を説明します。

- Microsoft WCF/.NET 3.5 Webサービスの構成(MTOM)

- OWSM 12cクライアントの構成(MTOM)

5.2.2.1 Microsoft WCF/.NET 3.5 Webサービスの構成(MTOM)

Microsoft WCF/.NET 3.5 Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ送信最適化メカニズムを実装できます。

Microsoft WCF/.NET 3.5 Webサービスを構成するには、次のようにします。

1. .NET Webサービスを作成します。
例については、次のMTOM相互運用性のための.NET Webサービスのサンプルを参照してください。

static void Main(string[] args)
{
string uri = "http://host:port/TEST/MTOMService/SOA/MTOMService";
// Step 1 of the address configuration procedure: Create a URI to serve as the base address.
Uri baseAddress = new Uri(uri);

// Step 2 of the hosting procedure: Create ServiceHost
ServiceHost selfHost = new ServiceHost(typeof(MTOMService), baseAddress);

try {
HttpTransportBindingElement hb = new HttpTransportBindingElement();
hb.ManualAddressing = false;
hb.MaxBufferPoolSize = 2147483647;
hb.MaxReceivedMessageSize = 2147483647;
hb.AllowCookies = false;
hb.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.KeepAliveEnabled = true;
hb.MaxBufferSize = 2147483647;
hb.ProxyAuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.Realm = "";
hb.TransferMode = System.ServiceModel.TransferMode.Buffered;
hb.UnsafeConnectionNtlmAuthentication = false;
hb.UseDefaultWebProxy = true;
MtomMessageEncodingBindingElement me = new MtomMessageEncodingBindingElement();
me.MaxReadPoolSize=64;
me.MaxWritePoolSize=16;
me.MessageVersion=System.ServiceModel.Channels.MessageVersion.Soap12;
me.WriteEncoding = System.Text.Encoding.UTF8;
me.MaxWritePoolSize = 2147483647;
me.MaxBufferSize = 2147483647;
me.ReaderQuotas.MaxArrayLength = 2147483647;
CustomBinding binding1 = new CustomBinding();
binding1.Elements.Add(me);
binding1.Elements.Add(hb);
ServiceEndpoint ep = selfHost.AddServiceEndpoint(typeof(IMTOMService), binding1,
"MTOMService");
EndpointAddress myEndpointAdd = new EndpointAddress(new Uri(uri),
EndpointIdentity.CreateDnsIdentity("WSMCert3"));
ep.Address = myEndpointAdd;

// Step 4 of the hosting procedure: Enable metadata exchange.
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
selfHost.Description.Behaviors.Add(smb);
using (ServiceHost host = new ServiceHost(typeof(MTOMService)))
{
System.ServiceModel.Description.ServiceDescription svcDesc =
selfHost.Description;
ServiceDebugBehavior svcDebug =
svcDesc.Behaviors.Find<ServiceDebugBehavior>();
svcDebug.IncludeExceptionDetailInFaults = true;
}

// Step 5 of the hosting procedure: Start (and then stop) the service.
selfHost.Open();
Console.WriteLine("The service " + uri + " is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
// Close the ServiceHostBase to shutdown the service.
selfHost.Close();
}
catch (CommunicationException ce)
{
Console.WriteLine("An exception occurred: {0}", ce.Message);
selfHost.Abort();
}
}

詳細は、http://msdn.microsoft.com/en-us/library/ms731835.aspxの『How to: Define a Windows Communication Foundation Service Contract』を参照してください。

2. アプリケーションをデプロイします。

5.2.2.2 OWSM 12cクライアントの構成(MTOM)

OWSM 12cクライアントを構成して、Microsoft WCF/.NET 3.5 Webサービスとの相互運用性のためのメッセージ送信最適化メカニズムを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. JDeveloperを使用して、.NET Webサービスを使用するSOAコンポジットを作成します。
詳細は、Oracle SOA SuiteでのSOAアプリケーションの開発のOracle JDeveloperでのSOAコンポジット・アプリケーションのデプロイに関する項を参照してください。

2. 次のポリシーをWebサービス・クライアントにアタッチします。
oracle/wsmtom_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

5.3 Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

メッセージ保護付きユーザー名トークン・ポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーとの間の相互運用性およびMicrosoft WCF/.NET 3.5サービス・ポリシーとOWSM 12cクライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてメッセージ保護付きユーザー名トークンを実装する方法について説明します。

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)

- Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

5.3.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付きユーザー名トークンを実装できます。

次のトピックでは、セキュアな通信を有効化する場合およびしない場合に、メッセージ保護付きユーザー名トークンを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成する方法を説明します。

- Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

- Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)

5.3.1.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 3.5クライアントとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成します。

2. セキュアな通信を有効化するかどうかに基づいて、使用するポリシーを選択します。
セキュアな通信を有効化しない場合、次のいずれかのポリシーのクローンを作成します。

oracle/wss11_username_token_with_message_protection_service_policy

oracle/wss11_saml_or_username_token_with_message_protection_service_policy

セキュアな通信を有効化するには、次のポリシーのクローンを作成します。

oracle/wss11_username_token_with_message_protection_wssc_service_policy

注意:

セキュアな通信を有効化した場合、Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)の説明に従って、多少異なる方法でapp.configファイルを構成する必要があります。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

3. 次のコマンドを使用して、サービス側のキーストアからX.509証明書ファイルを.cerファイル(alice.cerなど)にエクスポートします。

keytool -export -alias alice -file C:\alice.cer -keystore default-keystore.jks

5.3.1.2 Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)

Microsoft WCF/.NET 3.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

Microsoft WCF/.NET 3.5クライアントを構成するには、次のようにします。

1. 次のようにして、Microsoft Management Console (mmc)を使用して、(前にエクスポートした)証明書ファイルをクライアント・サーバー上のキーストアにインポートします。

a. コマンド・プロンプトを開きます。

b. mmcと入力して[Enter]を押します。

c. 「File」→「Add/Remove snap-in」を選択します。

d. 「Add and Choose Certificates」を選択します。

注意:

ローカル・マシン・ストア内の証明書を表示するためには、管理者ロールを持っている必要があります。

e. 「Add」を選択します。

f. 「My user account」→「finish」を選択します。

g. 「OK」をクリックします。

h. 「Console Root」→「Certificates -Current user」→「Personal」→「Certificates」の順に開きます。

i. 「Certificates」を右クリックし、「All tasks」→「Import」を選択してCertificate importウィザードを起動します。

j. 「Next」をクリックし、「Browse」を選択して、前にエクスポートした.cerファイルに移動します。

k. 「Next」をクリックし、デフォルトを受け入れてウィザードを終了します。

詳細は、http://msdn.microsoft.com/en-us/library/ms788967.aspxの『How to: View Certificates with the MMC Snap-in』を参照してください。

2. WebサービスのWSDLを使用して、.NETクライアントを生成します。
詳細は、http://msdn.microsoft.com/en-us/library/ms733133(v=vs.90).aspxの『How to: Create a Windows Communication Foundation Client』を参照してください。

3. クライアント・プロジェクトのSolution Explorerで、「references」を右クリックして「Add reference」を選択し、C:\Windows\Microsoft.NET\ framework\v3.0\Windows Communication Foundation\System.Runtime.Serialization.dllを参照することにより、参照を追加します。

4. 次のサンプルに示すように、.NETプロジェクトのapp.configファイルを編集して、証明書ファイルを更新し、リプレイを無効化します(変更部分は太字で示されています)。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="secureBehaviour">
<clientCredentials>
<serviceCertificate>
<defaultCertificate findValue="<certificate_cn>"
storeLocation="CurrentUser" storeName="My"
x509FindType="FindBySubjectName"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<customBinding>
<binding name="HelloWorldSoapHttp">
<!-- To enable secrure conversation, use
authenticationMode="SecureConversation"
instead of the value for authenticationMode shown below -->
<security
authenticationMode="UserNameOverTransport"
defaultAlgorithmSuite="Basic128"
requireDerivedKeys="false"
securityHeaderLayout="Lax"
includeTimestamp="true"
keyEntropyMode="CombinedEntropy"
messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10"
requireSignatureConfirmation="true">
<localClientSettings
cacheCookies="true"
detectReplays="false"
replayCacheSize="900000"
maxClockSkew="00:05:00"
maxCookieCachingTime="Infinite"
replayWindow="00:05:00"
sessionKeyRenewalInterval="10:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
timestampValidityDuration="00:05:00"
cookieRenewalThresholdPercentage="60"/>
<localServiceSettings detectReplays="true" issuedCookieLifetime="10:00:00"
maxStatefulNegotiations="128"
replayCacheSize="900000"
maxClockSkew="00:05:00"
negotiationTimeout="00:01:00" replayWindow="00:05:00"
inactivityTimeout="00:02:00"
sessionKeyRenewalInterval="15:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true" maxPendingSessions="128"
maxCachedCookies="1000" timestampValidityDuration="00:05:00" />
<secureConversationBootstrap />
<!--
To enable secure conversation, add the following properties to
the <secureConversationBootstrap> element:
<secureConversationBootstrap
authenticationMode="UserNameOverTransport"
requireDerivedKeys="false"
securityHeaderLayout="Lax"
includeTimestamp="true"
keyEntropyMode="CombinedEntropy"
messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10"
requireSignatureConfirmation="true"/> -->
-->
</security>
<textMessageEncoding
maxReadPoolSize="64"
maxWritePoolSize="16"
messageVersion="Soap11"
writeEncoding="utf-8">
<readerQuotas
maxDepth="32"
maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096"
maxNameTableCharCount="16384" />
</textMessageEncoding>
<HttpTransport
manualAddressing="false"
maxBufferPoolSize="524288"
maxReceivedMessageSize="65536"
allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true"
maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm=""
transferMode="Buffered"
unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true" />
</binding>
</customBinding>
</bindings>
<client>
<endpoint address="<endpoint_url>"
binding="customBinding"
bindingConfiguration="HelloWorldSoapHttp"
contract="HelloWorld"
name="HelloWorldPort"
behaviorConfiguration="secureBehaviour" >
<identity>
<dns value="<certificate_cn>"/>
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>

デフォルトのキー設定に従う場合は、<certificate_cn>をaliceに設定する必要があります。

5. セキュアな通信を有効化するまたはしないように、必要に応じてapp.configファイルを編集します。
セキュアな通信を有効化しない場合、サンプルに示すように、app.configを編集します。

- <security>要素のauthenticationModeプロパティをUserNameOverTransportに設定します。

- secureConversationBootstrap要素のプロパティを構成しないでください。

セキュアな通信を有効化するには、サンプルの太字斜体のコメントに示すように、app.configファイルを編集します。

- <security>要素のauthenticationModeプロパティをSecureConversationに設定します。

- 例に示すように、secureConversationBootstrap要素を追加プロパティとともに構成します。

6. プロジェクトをコンパイルします。

7. コマンド・プロンプトを開いて、プロジェクトのDebugフォルダに移動します。

8. <client_project_name>.exeと入力して[Enter]を押します。

5.3.2 Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付きユーザー名トークンを実装できます。

次のトピックでは、メッセージ保護付きユーザー名トークンを実装するために、Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントを構成する方法を説明します。

- Microsoft WCF/.NET 3.5 Webサービスの構成(メッセージ保護付きユーザー名トークン)

- Microsoft WCF/.NET 3.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

5.3.2.1 Microsoft WCF/.NET 3.5 Webサービスの構成(メッセージ保護付きユーザー名トークン)

Microsoft WCF/.NET 3.5 Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

Microsoft WCF/.NET 3.5 Webサービスを構成するには、次のようにします。

1. .NET Webサービスを作成します。
必ず、SymmetricSecurityBindingElement使用してWebサービスのカスタム・バインディングを作成してください。

例については、次の.NET Webサービスのサンプルを参照してください。

static void Main(string[] args)
{
// Step 1 of the address configuration procedure: Create a URI to serve as the
// base address.
// Step 2 of the hosting procedure: Create ServiceHost
string uri = "http://host:port/TEST/NetService";
Uri baseAddress = new Uri(uri);

ServiceHost selfHost = new ServiceHost(typeof(CalculatorService), baseAddress);

try
{
SymmetricSecurityBindingElement sm =
SymmetricSecurityBindingElement.CreateUserNameForCertificateBindingElement();
sm.DefaultAlgorithmSuite = System.ServiceModel.Security.SecurityAlgorithmSuite.Basic128;
sm.SetKeyDerivation(false);
sm.SecurityHeaderLayout = SecurityHeaderLayout.Lax;
sm.IncludeTimestamp = true;
sm.KeyEntropyMode = SecurityKeyEntropyMode.CombinedEntropy;
sm.MessageProtectionOrder = MessageProtectionOrder.SignBeforeEncrypt;
sm.MessageSecurityVersion =
MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005
WSSecurityPolicy11BasicSecurityProfile10;
sm.RequireSignatureConfirmation = true;
sm.LocalClientSettings.CacheCookies = true;
sm.LocalClientSettings.DetectReplays = true;
sm.LocalClientSettings.ReplayCacheSize = 900000;
sm.LocalClientSettings.MaxClockSkew = new TimeSpan(00, 05, 00);
sm.LocalClientSettings.MaxCookieCachingTime = TimeSpan.MaxValue;
sm.LocalClientSettings.ReplayWindow = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.SessionKeyRenewalInterval = new TimeSpan(10, 00, 00);
sm.LocalClientSettings.SessionKeyRolloverInterval = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.ReconnectTransportOnFailure = true;
sm.LocalClientSettings.TimestampValidityDuration = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.CookieRenewalThresholdPercentage = 60;
sm.LocalServiceSettings.DetectReplays = false;
sm.LocalServiceSettings.IssuedCookieLifetime = new TimeSpan(10, 00, 00);
sm.LocalServiceSettings.MaxStatefulNegotiations = 128;
sm.LocalServiceSettings.ReplayCacheSize = 900000;
sm.LocalServiceSettings.MaxClockSkew = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.NegotiationTimeout = new TimeSpan(00, 01, 00);
sm.LocalServiceSettings.ReplayWindow = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.InactivityTimeout = new TimeSpan(00, 02, 00);
sm.LocalServiceSettings.SessionKeyRenewalInterval = new TimeSpan(15, 00, 00);
sm.LocalServiceSettings.SessionKeyRolloverInterval = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.ReconnectTransportOnFailure = true;
sm.LocalServiceSettings.MaxPendingSessions = 128;
sm.LocalServiceSettings.MaxCachedCookies = 1000;
sm.LocalServiceSettings.TimestampValidityDuration = new TimeSpan(15, 00, 00);
HttpTransportBindingElement hb = new HttpTransportBindingElement();
hb.ManualAddressing = false;
hb.MaxBufferPoolSize = 524288;
hb.MaxReceivedMessageSize = 65536;
hb.AllowCookies = false;
hb.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.KeepAliveEnabled = true;
hb.MaxBufferSize = 65536;
hb.ProxyAuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.Realm = "";
hb.TransferMode = System.ServiceModel.TransferMode.Buffered;
hb.UnsafeConnectionNtlmAuthentication = false;
hb.UseDefaultWebProxy = true;
TextMessageEncodingBindingElement tb1 = new TextMessageEncodingBindingElement();
tb1.MaxReadPoolSize = 64;
tb1.MaxWritePoolSize = 16;
tb1.MessageVersion = System.ServiceModel.Channels.MessageVersion.Soap12;
tb1.WriteEncoding = System.Text.Encoding.UTF8;
CustomBinding binding1 = new CustomBinding(sm);
binding1.Elements.Add(tb1);
binding1.Elements.Add(hb);
ServiceEndpoint ep = selfHost.AddServiceEndpoint(typeof(ICalculator), binding1,
"CalculatorService");

EndpointAddress myEndpointAdd = new EndpointAddress(
new Uri(uri),
EndpointIdentity.CreateDnsIdentity("WSMCert3"));
ep.Address = myEndpointAdd;

// Step 4 of the hosting procedure: Enable metadata exchange.
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
selfHost.Description.Behaviors.Add(smb);
selfHost.Credentials.ServiceCertificate.SetCertificate(StoreLocation.CurrentUser,
StoreName.My,
X509FindType.FindBySubjectName, "WSMCert3");
selfHost.Credentials.ClientCertificate.Authentication.CertificateValidationMode =
X509CertificateValidationMode.PeerOrChainTrust;
selfHost.Credentials.UserNameAuthentication.UserNamePasswordValidationMode =
UserNamePasswordValidationMode.Custom;
CustomUserNameValidator cu = new CustomUserNameValidator();
selfHost.Credentials.UserNameAuthentication.CustomUserNamePasswordValidator = cu;
using (ServiceHost host = new ServiceHost(typeof(CalculatorService)))
{
System.ServiceModel.Description.ServiceDescription svcDesc = selfHost.Description;
ServiceDebugBehavior svcDebug = svcDesc.Behaviors.Find<ServiceDebugBehavior>();
svcDebug.IncludeExceptionDetailInFaults = true;
}

// Step 5 of the hosting procedure: Start (and then stop) the service.
selfHost.Open();
Console.WriteLine("The Calculator service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
selfHost.Close();
}
catch (CommunicationException ce)
{
Console.WriteLine("An exception occurred: {0}", ce.Message);
selfHost.Abort();
}
}

詳細は、http://msdn.microsoft.com/en-us/library/ms731835.aspxの『How to: Define a Windows Communication Foundation Service Contract』を参照してください。

2. 証明書ファイルを作成して、Webサービス・サーバー上のキーストアにインポートします。
Microsoft Visual Studioを使用する場合、コマンドは次のようになります。

makecert -r -pe -n "CN=wsmcert3" -sky exchange -ss my C:\wsmcert3.cer

このコマンドにより、証明書が作成されてmmcにインポートされます。

コマンドの結果が期待どおりにならない場合は、次のコマンド・シーケンスを試行してください。http://www.microsoft.com/whdc/devtools/WDK/default.mspxのWindows Developer Kit (WDK)をダウンロードする必要があります。

makecert -r -pe -n "CN=wsmcert3" -sky exchange -ss my -sv wscert3.pvk C:\wsmcert3.cer
pvk2pfx.exe -pvk wscert3.pvk -spc wsmcert3.cer -pfx PRF_WSMCert3.pfx -pi welcome1

次に、PRF_WSMCert3.pfxをmmcにインポートします。

3. keytoolコマンドを使用して、Webサービス・サーバー上に作成された証明書をクライアント・サーバーにインポートします。例:

keytool -import -alias wsmcert3 -file C:\wsmcert3.cer -keystore <owsm_client_keystore>

4. Solutions Explorerで「Web service Solution」プロジェクトを右クリックし、「Open Folder In Windows Explorer」をクリックします。

5. bin/Debugフォルダに移動します。

6. <project>.exeファイルをダブルクリックします。このコマンドにより、指定したURLでWebサービスが実行されます。

5.3.2.2 Microsoft WCF/.NET 3.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

OWSM 12cクライアントを構成して、Microsoft WCF/.NET 3.5 Webサービスとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. JDeveloperを使用して、.NET Webサービスを使用するSOAコンポジットを作成します。
詳細は、SOA Suiteの開発者ガイドを参照してください。

2. JDeveloperで、.NETサービスのWSDLを使用してパートナ・リンクを作成します。

3. oracle/wss11_username_token_with_message_protection_client_policyポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

4. csf-keyおよびkeystore.recipient.aliasの構成を指定します。
この情報を指定するには、ポリシーをアタッチするときにポリシー構成をオーバーライドします。

必ず、ステップ1でインポートした証明書(wsmcert3)の別名としてkeystore.recipient.aliasを構成してください。例:

<wsp:PolicyReference
URI="oracle/wss11_username_token_with_message_protection_client_policy"
orawsp:category="security"
orawsp:status="enabled"/>
<property
name="csf-key"
type="xs:string"
many="false">
basic.credentials
</property>
<property
name="keystore.recipient.alias"
type="xs:string"
many="false">
wsmcert3
</property>

詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のポリシー構成プロパティのオーバーライドに関する項を参照してください。

5.4 Microsoft WCF/.NET 3.5クライアント向けのSSL経由のユーザー名トークンの実装

SSL経由のユーザー名トークン・ポリシーは、WS-Security 1.0および1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、SSL経由のユーザー名トークンを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成する方法を説明します。

- Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- Microsoft WCF/.NET 3.5クライアントの構成(SSL経由のユーザー名トークン)

5.4.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

Microsoft 3.5クライアントに対してOWSM 12c Webサービスを使用してSSL経由のユーザー名トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. サーバーをSSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

2. OWSM Webサービスを作成します。

3. セキュアな通信を有効化するかどうかに基づいて、使用するポリシーを選択します。
セキュアな通信を有効化しない場合、次のいずれかのポリシーを使用します。

oracle/wss_username_token_over_ssl_service_policy

oracle/wss_saml_or_username_token_over_ssl_service_policy

セキュアな通信を有効化するには、次のポリシーを使用します。

oracle/wss_username_token_over_ssl_wssc_service_policy

注意:

セキュアな通信を有効化した場合、Microsoft WCF/.NETクライアントの構成(SSL経由のユーザー名トークン)の説明に従って、多少異なる方法でapp.configファイルを構成する必要があります。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

4. 次のようにして、ポリシー設定を編集します。

a. 「必要な作成時間」構成設定を無効化します。

b. 「Nonceが必要」構成設定を無効化します。

c. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

5. ポリシーをアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

5.4.2 Microsoft WCF/.NET 3.5クライアントの構成(SSL経由のユーザー名トークン)

Microsoft WCF/.NET 3.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

Microsoft WCF/.NET 3.5クライアントを構成するには、次のようにします。

1. WebサービスのWSDLを使用して、.NETクライアントを生成します。
詳細は、http://msdn.microsoft.com/en-us/library/ms733133(v=vs.90).aspxの『How to: Create a Windows Communication Foundation Client』を参照してください。

2. クライアント・プロジェクトのSolution Explorerで、「references」を右クリックして「Add reference」を選択し、C:\Windows\Microsoft.NET\framework\v3.0\Windows Communication Foundation\System.Runtime.Serialization.dllを参照することにより、参照を追加します。

3. 次のサンプルに示すように、app.configを編集します。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<bindings>
<customBinding>
<binding name="BPELProcess1Binding">
<!-- To enable secrure conversation, you must use
authenticationMode="SecureConversation"
instead of the value for authenticationMode shown below, under <security -->
<security defaultAlgorithmSuite="Basic128"
authenticationMode="UserNameOverTransport"
requireDerivedKeys="false" securityHeaderLayout="Lax" includeTimestamp="true"
keyEntropyMode="CombinedEntropy" messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversation
February2005WSSecurityPolicy11BasicSecurityProfile10"
requireSignatureConfirmation="true">
<localClientSettings cacheCookies="true" detectReplays="false"
replayCacheSize="900000" maxClockSkew="00:05:00"
maxCookieCachingTime="Infinite"
replayWindow="00:05:00" sessionKeyRenewalInterval="10:00:00"
sessionKeyRolloverInterval="00:05:00" reconnectTransportOnFailure="true"
timestampValidityDuration="00:05:00"
cookieRenewalThresholdPercentage="60"/>
<localServiceSettings detectReplays="true" issuedCookieLifetime="10:00:00"
maxStatefulNegotiations="128" replayCacheSize="900000"
maxClockSkew="00:05:00"
negotiationTimeout="00:01:00" replayWindow="00:05:00"
inactivityTimeout="00:02:00"
sessionKeyRenewalInterval="15:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true" maxPendingSessions="128"
maxCachedCookies="1000" timestampValidityDuration="00:05:00" />
<secureConversationBootstrap />
<!-- To enable secure conversation, add the following properties to
the <secureConversationBootstrap> element:
<secureConversationBootstrap
authenticationMode="UserNameOverTransport"
requireDerivedKeys="false"
securityHeaderLayout="Lax"
includeTimestamp="true"
keyEntropyMode="CombinedEntropy"
messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10"
requireSignatureConfirmation="true"/> -->
</security>
<textMessageEncoding
maxReadPoolSize="64"
maxWritePoolSize="16"
messageVersion="Soap11"
writeEncoding="utf-8">
<readerQuotas
maxDepth="32"
maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096"
maxNameTableCharCount="16384" />
</textMessageEncoding>
<httpsTransport
manualAddressing="false"
maxBufferPoolSize="524288"
maxReceivedMessageSize="65536"
allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true"
maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm=""
transferMode="Buffered"
unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true"  requireClientCertificate="false"/>
</binding>
</customBinding>
</bindings>
<client>
<endpoint
address=" https://host:port/soa-infra/services/default/IO_NET6/bpelprocess1_client_ep"
binding="customBinding" bindingConfiguration="BPELProcess1Binding"
contract="BPELProcess1" name="BPELProcess1_pt" />
</client>
</system.serviceModel>
</configuration>

4. セキュアな通信を有効化するまたはしないように、必要に応じてapp.configファイルを編集します。
セキュアな通信を有効化しない場合、サンプルの通常の書体で示すように、app.configを編集します。

- <security>要素のauthenticationModeプロパティをUserNameOverTransportに設定します。

- secureConversationBootstrap要素のプロパティを構成しないでください。

セキュアな通信を有効化するには、サンプルの太字斜体のコメントに示すように、app.configを編集します。

- <security>要素のauthenticationModeプロパティをSecureConversationに設定します。

- 例に示すように、secureConversationBootstrap要素を追加プロパティとともに構成します。

5. プロジェクトをコンパイルします。

6. コマンド・プロンプトを開いて、プロジェクトのDebugフォルダに移動します。

7. <client_project_name>.exeと入力して[Enter]を押します。

5.5 Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付き相互認証(WS-Security 1.1)の実装

メッセージ保護付き相互認証ポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーとの間の相互運用性およびMicrosoft WCF/.NET 3.5サービス・ポリシーとOWSM 12cクライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてメッセージ保護付相互認証を実装する方法について説明します。

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(相互認証)

- Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(相互認証)

前述のいずれかのシナリオにおいてWebサービスおよびクライアントを構成する前に、相互運用性のための前提条件の構成(相互認証)の手順に従います。

5.5.1 相互運用性のための前提条件の構成(相互認証)

OWSM 12cとMicrosoft WCF/.NET 3.5との間の相互運用性のために、WS-Security 1.1標準に準拠したメッセージ保護付き相互認証を実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. 次のコマンドを使用して、サービス側のキーストアからX.509証明書ファイルを.cerファイル(alice.cerなど)にエクスポートします。

keytool -export -alias alice -file C:\alice.cer -keystore default-keystore.jks

2. Microsoft Management Console (mmc)を使用して、(前にエクスポートした)証明書ファイルをクライアント・サーバー上のキーストアにインポートします。

a. コマンド・プロンプトを開きます。

b. mmcと入力して[Enter]を押します。

c. 「File」→「Add/Remove snap-in」を選択します。

d. 「Add and Choose Certificates」を選択します。

注意:

ローカル・マシン・ストア内の証明書を表示するためには、管理者ロールを持っている必要があります。

e. 「Add」を選択します。

f. 「My user account」→「finish」を選択します。

g. 「OK」をクリックします。

h. 「Console Root」→「Certificates -Current user」→「Personal」→「Certificates」の順に開きます。

i. 「Certificates」を右クリックし、「All tasks」→「Import」を選択してCertificate importウィザードを起動します。

j. 「Next」をクリックし、「Browse」を選択して、前にエクスポートした.cerファイルに移動します。

k. 「Next」をクリックし、デフォルトを受け入れてウィザードを終了します。

詳細は、http://msdn.microsoft.com/en-us/library/ms788967.aspxの『How to: View Certificates with the MMC Snap-in』を参照してください。

5.5.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(相互認証)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付き相互認証を実装できます。

次のトピックでは、メッセージ保護付き相互認証を実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成する方法を説明します。

- Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(相互認証)

- Microsoft WCF/.NET 3.5クライアントの構成(相互認証)

5.5.2.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(相互認証)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 3.5クライアントとの相互運用性のための相互認証を実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. SOAコンポジットを作成してデプロイします。

2. Fusion Middleware Controlを使用して、次のポリシーをWebサービスにアタッチします。
oracle/wss11_x509_token_with_message_protection_service_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

5.5.2.2 Microsoft WCF/.NET 3.5クライアントの構成(相互認証)

Microsoft WCF/.NET 3.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のための相互認証を実装できます。

Microsoft WCF/.NET 3.5クライアントを構成するには、次のようにします。

1. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。
クライアント・プログラムのサンプルは次のとおりです。

namespace IO_NET10_client
{
class Program
{
static void Main(string[] args)
{

BPELProcess1Client client = new BPELProcess1Client();

client.ClientCredentials.ClientCertificate.SetCertificate(
StoreLocation.CurrentUser,
StoreName.My,
X509FindType.FindBySubjectName, "WSMCert3");

client.ClientCredentials.ServiceCertificate.SetDefaultCertificate(
StoreLocation.CurrentUser,
StoreName.My,
X509FindType.FindBySubjectName, "Alice");

process proc = new process();
proc.input = "Test wss11_x509_token_with_message_protection_policy - ";
Console.WriteLine(proc.input);
processResponse response = client.process(proc);

Console.WriteLine(response.result.ToString());
Console.WriteLine("Press <ENTER> to terminate Client.");
Console.ReadLine();
}
}
}

詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.90%29.aspxを参照してください

2. クライアント・プロジェクトのSolution Explorerで、「references」を右クリックして「Add reference」を選択し、C:\Windows\Microsoft.NET\ framework\v3.0\Windows Communication Foundation\System.Runtime.Serialization.dllを参照することにより、参照を追加します。

3. 次の手順を含むapp.config構成ファイルを作成します。
次に示す手順は、例の太字の部分で呼び出されます。

a. 資格証明を使用して動作を定義します。

b. カスタム・バインディングを作成します。

c. メッセージ・リプレイ検出を無効化します。

d. エンドポイント動作を変更します。

次のapp.configファイル・サンプルに、完全なファイルの例を示します。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>

<!-- 1. Define behaviors with credentials ------------------------------------------- -->
<behaviors>
<endpointBehaviors>
<behavior name="secureBehaviour">
<clientCredentials>
<serviceCertificate>
<defaultCertificate findValue="<certificate_cn>"
storeLocation="CurrentUser"
storeName="My"
x509FindType="FindBySubjectName"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<!--  ------------------------------------------------------------------------------- -->

<bindings>
<customBinding>
<binding name="BPELProcess1Binding">

<!-- --- 2. Create a custom binding ------------------------------------------------- -->
<security defaultAlgorithmSuite="Basic128" authenticationMode="MutualCertificate"
<!--  ------------------------------------------------------------------------------- -->

requireDerivedKeys="false" securityHeaderLayout="Lax" includeTimestamp="true"
keyEntropyMode="CombinedEntropy" messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversation
February2005WSSecurityPolicy11BasicSecurityProfile10"
requireSignatureConfirmation="true">

<!-- --- 3. Disable the message replay detection -----------------------------------  -->
<localClientSettings cacheCookies="true" detectReplays="false"
replayCacheSize="900000" maxClockSkew="00:05:00"
maxCookieCachingTime="Infinite"
<!--  ------------------------------------------------------------------------------- -->

replayWindow="00:05:00" sessionKeyRenewalInterval="10:00:00"
sessionKeyRolloverInterval="00:05:00" reconnectTransportOnFailure="true"
timestampValidityDuration="00:05:00" cookieRenewalThresholdPercentage="60" />
<localServiceSettings detectReplays="true"
issuedCookieLifetime="10:00:00"
maxStatefulNegotiations="128"
replayCacheSize="900000" maxClockSkew="00:05:00"
negotiationTimeout="00:01:00" replayWindow="00:05:00"
inactivityTimeout="00:02:00"
sessionKeyRenewalInterval="15:00:00" sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true" maxPendingSessions="128"
maxCachedCookies="1000" timestampValidityDuration="00:05:00" />
<secureConversationBootstrap />
</security>
<textMessageEncoding maxReadPoolSize="64" maxWritePoolSize="16"
messageVersion="Soap11" writeEncoding="utf-8">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
</textMessageEncoding>
<httpTransport manualAddressing="false" maxBufferPoolSize="524288"
maxReceivedMessageSize="65536" allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true" maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm="" transferMode="Buffered" unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true" />
</binding>
</customBinding>

</bindings>
<client>

<!--  - 4. Modify endpoint behavior ------------------------------------------------- -->
<endpoint address="http://<server>:<port>//MyWebService1SoapHttpPort"
binding="customBinding" bindingConfiguration="MyWebService1SoapHttp"
contract="MyWebService1"
name="MyWebService1SoapHttpPort"
behaviorConfiguration="secureBehaviour" >
<identity>
<dns value="<certificate_cn>"/>
</identity>
</endpoint>
<!--  ------------------------------------------------------------------------------- -->

</client>
</system.serviceModel>
</configuration>

4. プロジェクトをコンパイルします。

5. コマンド・プロンプトを開いて、プロジェクトのDebugフォルダに移動します。

6. <client_project_name>.exeと入力して[Enter]を押します。

5.5.3 Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントの構成(相互認証)

Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.1標準に準拠した相互認証を実装できます。

Microsoft WCF/.NET 3.5 WebサービスおよびOWSM 12cクライアントを構成するには、次のようにします。

1. .NET Webサービスを作成します。

詳細は、http://msdn.microsoft.com/en-us/library/ms731835%28v=vs.90%29.aspxの『How to: Define a Windows Communication Foundation Service Contract』を参照してください

2. SymmetricSecurityBindingElementを使用して、Webサービスのカスタム・バインディングを作成します。

SymmetricSecurityBindingElementオブジェクトのサンプルを次に示します。

SymmetricSecurityBindingElement sm =
(SymmetricSecurityBindingElement)SecurityBindingElement.CreateMutualCertificate
BindingElement();

sm.DefaultAlgorithmSuite =
System.ServiceModel.Security.SecurityAlgorithmSuite.Basic128;sm.SetKeyDerivati
on(false);
sm.SecurityHeaderLayout = SecurityHeaderLayout.Lax;sm.IncludeTimestamp =
true;
sm.KeyEntropyMode = SecurityKeyEntropyMode.CombinedEntropy;
sm.MessageProtectionOrder =
MessageProtectionOrder.SignBeforeEncrypt;sm.MessageSecurityVersion =
MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversation
February2005WSSecurityPolicy11BasicSecurityProfile10;
sm.RequireSignatureConfirmation =
true;

詳細は、http://msdn.microsoft.com/en-us/library/ms730305(v=vs.90).aspxの『How to: Create a Custom Binding Using the SecurityBindingElement』を参照してください。

3. アプリケーションをデプロイします。

4. OWSM 12cクライアントを構成するには、JDeveloperを使用して、.NET Webサービスを使用するSOAコンポジットを作成します。

詳細は、SOA Suiteの開発者ガイドを参照してください。

5. JDeveloperで、.NETサービスのWSDLを使用してパートナ・リンクを作成し、次のようにインポートを追加します。

<wsdl:import namespace="<namespace>" location="<WSDL location>"/>

6. Fusion Middleware Controlで、次のポリシーをWebサービス・クライアントにアタッチします。

oracle/wss11_x509_token_with_message_protection_client_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

7. keystore.recipient.aliasの構成を指定します。

この情報を指定するには、ポリシーをアタッチするときにポリシー構成をオーバーライドします。

必ず、ステップ4でインポートした証明書(wsmcert3)の別名としてkeystore.recipient.aliasを構成してください。

詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のポリシー構成プロパティのオーバーライドに関する項を参照してください。

8. クライアントからWebサービス・メソッドを起動します。

5.6 Microsoft WCF/.NET 3.5クライアント向けのメッセージ保護付きKerberosの実装

メッセージ保護付きKerberosポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、メッセージ保護付きKerberosを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成する方法を説明します。

- 相互運用性のための前提条件となるタスクの実行(メッセージ保護付きKerberos)

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

5.6.1 相互運用性のための前提条件となるタスクの実行(メッセージ保護付きKerberos)

OWSM 12cとMicrosoft WCF/.NET 3.5との間の相互運用性のために、メッセージ保護付きKerberosを実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. 鍵配布センター(KDC)およびアクティブ・ディレクトリ(AD)を構成します。

詳細は、http://download.oracle.com/docs/cd/E19316-01/820-3746/gisdn/index.htmlのWindowsのアクティブ・ディレクトリおよびドメイン・コントローラの構成方法(ドメイン・コントローラがKDCの役割を果たします)に関する項を参照してください。

2. 次のKerberos構成ファイルのサンプルに示すように、c:\winntにあるKerberos構成ファイルkrb5.confを設定します。

[logging]
default = c:\log\krb5libs.log
kdc = c:\log\krb5kdc.log
admin_server = c:\log\kadmind.log
[libdefaults]
default_realm = MYCOMPANY.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = false
default_tkt_enctypes = rc4-hmac
default_tgs_enctypes = rc4-hmac
permitted_enctypes = rc4-hmac
kdc = hostname
[realms]
MYCOMPANY.LOCAL =
{ kdc = host:port  admin_server = host:port
default_domain = <domainname>
}
[domain_realm]
.<domainname> = MYCOMPANY.LOCAL
<domainname> = MYCOMPANY.LOCAL
[appdefaults]
pam =
{   debug = false  ticket_lifetime = 36000  renew_lifetime = 36000  forwardable =
true  krb4_convert = false }

5.6.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを使用してメッセージ保護付きKerberosを実装できます。

次のトピックでは、メッセージ保護付きKerberosを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成する方法を説明します。

- Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きKerberos)

- Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

5.6.2.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きKerberos)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 3.5クライアントとの相互運用性のためのメッセージ保護付きKerberosを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。

2. oracle/wss11_kerberos_token_with_message_protection_service_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

3. ポリシー設定を編集して、アルゴリズム・スイートをBasic128Rsa15に設定します。

4. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

5.6.2.2 Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

Microsoft WCF/.NET 3.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのメッセージ保護付きKerberosを実装できます。

Microsoft WCF/.NET 3.5クライアントを構成するには、次のようにします。

1. ADにユーザーを作成して、Webサービスがホストされるホストを指定します。デフォルトでは、ユーザー・アカウントはRC4-HMAC暗号を使用して作成されます。たとえば、ユーザー名付きのfoobarは、HTTP/foobarとなります。

2. 次のようにktpassコマンドを使用して、KDCが実行されているWindowsのADマシンにkeytabファイルを作成します。
ktpass -princ HTTP/foobar@MYCOMPANY.LOCAL -pass Oracle123 -mapuser foobar -out foobar.keytab -ptype KRB5_NT_PRINCIPAL -kvno 4

HTTP/foobarは、ユーザー「foobar」にマッピングされるSPNです。「/desonly」を指定したり、「/cyrpto」に「des-cbc-crc」は指定しないでください。MYCOMPANY.LOCALはKDCのデフォルトのレルムで、krb5.iniファイルで使用可能です。passに指定するパスワードは、ユーザーの作成時のパスワードと一致している必要があります。

FTPのバイナリ・モードを使用して、生成したキータブ・ファイルをSOAコンポジットWebサービスがホストされているマシンに移動します。

3. 次のようにsetSpnコマンドを使用して、サービス・プリンシパルをユーザーにマッピングします。
setSpn -A HTTP/foobar@MYCOMPANY.LOCAL foobar

setSpn -L foobar

ユーザーにマッピングするSPNは1つにしてください。複数のSPNがユーザーにマッピングされている場合は、setSpn -D <spname> <username>コマンドを使用して削除します。

4. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。
Windowsのエクスプローラでアプリケーションを右クリックして、generatedProxy.csファイルおよびapp.configファイルを追加し、既存の項目を追加を選択します。

app.configのendpoint要素に、「HTTP/foobar@MYCOMPANY.LOCAL」というサービス・プリンシパル名(keytabの作成で使用したものと同じ値)の「identity」要素を追加します。

<client>
<endpoint address="http://host:port/HelloServicePort"
binding="customBinding" bindingConfiguration="NewHelloSoap12HttpPortBinding"
contract="NewHello" name="HelloServicePort">
<identity>
<servicePrincipalName value ="HTTP/foobar@MYCOMPANY.LOCAL"/>
</identity>
</endpoint>

</client>

次のカスタム・バインディングのサンプルを参照してください。

<customBinding>
<binding name="NewHelloSoap12HttpPortBinding">
<!--Added by User: Begin-->
<security defaultAlgorithmSuite="Basic128"
authenticationMode="Kerberos"
requireDerivedKeys="false" securityHeaderLayout="Lax"
includeTimestamp="true"
keyEntropyMode="CombinedEntropy"
messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005
WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurity
Profile10"
requireSignatureConfirmation="true">
<localClientSettings cacheCookies="true" detectReplays="true"
replayCacheSize="900000" maxClockSkew="00:05:00"
maxCookieCachingTime="Infinite"
replayWindow="00:05:00"
sessionKeyRenewalInterval="10:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
timestampValidityDuration="00:05:00"
cookieRenewalThresholdPercentage="60" />
<localServiceSettings detectReplays="true"
issuedCookieLifetime="10:00:00"
maxStatefulNegotiations="128" replayCacheSize="900000"
maxClockSkew="00:05:00"
negotiationTimeout="00:01:00" replayWindow="00:05:00"
inactivityTimeout="00:02:00"
sessionKeyRenewalInterval="15:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
maxPendingSessions="128"
maxCachedCookies="1000"
timestampValidityDuration="00:05:00" />
<secureConversationBootstrap />
</security>
<!--Added by User: End-->
<textMessageEncoding maxReadPoolSize="64"
maxWritePoolSize="16"
messageVersion="Soap12" writeEncoding="utf-8">
<readerQuotas maxDepth="32" maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
</textMessageEncoding>
<!--Added by User: Begin-->
<httpTransport manualAddressing="false"
maxBufferPoolSize="524288"
maxReceivedMessageSize="65536" allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true" maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm="" transferMode="Buffered"
unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true" />
<!--Added by User: End-->
</binding>
</customBinding>

詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.90%29.aspxを参照してください。

5. クライアント・プログラムを実行します。

5.7 Microsoft WCF/.NET 3.5クライアント向けの導出キーを使用したメッセージ保護付きKerberosの実装

導出キーを使用したメッセージ保護付きKerberosポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成して、メッセージ保護付きKerberosを導出キーを使用して実装する方法を説明します。

- 相互運用性のための前提条件の構成(導出キーを使用したメッセージ保護付きKerberos)

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

5.7.1 相互運用性のための前提条件の構成(導出キーを使用したメッセージ保護付きKerberos)

OWSM 12cとMicrosoft WCF/.NET 3.5との間の相互運用性のために、メッセージ保護付きKerberosを導出キーを使用して実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. 鍵配布センター(KDC)およびアクティブ・ディレクトリ(AD)を構成します。

詳細は、以下のトピックを参照してください。

- http://download.oracle.com/docs/cd/E19316-01/820-3746/gisdn/index.htmlのWindowsのアクティブ・ディレクトリおよびドメイン・コントローラの構成方法(ドメイン・コントローラがKDCの役割を果します)に関する項

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のKerberosトークンの構成に関する項

2. 次のKerberos構成ファイルのサンプルに示すように、c:\winntにあるKerberos構成ファイルkrb5.confを設定します。

[logging]
default = c:\log\krb5libs.log
kdc = c:\log\krb5kdc.log
admin_server = c:\log\kadmind.log
[libdefaults]
default_realm = MYCOMPANY.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = false
default_tkt_enctypes = rc4-hmac
default_tgs_enctypes = rc4-hmac
permitted_enctypes = rc4-hmac
kdc = hostname
[realms]
MYCOMPANY.LOCAL =
{ kdc = host:port  admin_server = host:port
default_domain = <domainname>
}
[domain_realm]
.<domainname> = MYCOMPANY.LOCAL
<domainname> = MYCOMPANY.LOCAL
[appdefaults]
pam =
{   debug = false  ticket_lifetime = 36000  renew_lifetime = 36000  forwardable =
true  krb4_convert = false }

5.7.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きKerberos)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを使用してメッセージ保護付きKerberosを実装できます。

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。

2. wss11_kerberos_token_with_message_protection_basic128_service_policyポリシーのクローンを作成します。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

3. ポリシー設定を編集して、「Derived Keys」オプションを有効にします。

4. ポリシーをWebサービスにアタッチします。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

5. Microsoft WCF/.NET 3.5クライアントを構成するには、ADにユーザーを作成して、Webサービスがホストされるホストを指定します。デフォルトでは、ユーザー・アカウントはRC4-HMAC暗号を使用して作成されます。たとえば、ユーザー名をfoobarとすると、HTTP/foobarとなります。

6. 次のようにktpassコマンドを使用して、KDCが実行されているWindowsのADマシンにkeytabファイルを作成します。

ktpass -princ HTTP/foobar@MYCOMPANY.LOCAL -pass Oracle123 -mapuser foobar -out foobar.keytab -ptype KRB5_NT_PRINCIPAL -kvno 4

HTTP/foobarがユーザー「foobar」にマッピングされるSPNです。「/desonly」を指定したり、「/cyrpto」に「des-cbc-crc」は指定しないでください。MYCOMPANY.LOCALはKDCのデフォルトのレルムで、krb5.iniファイルで使用可能です。passに指定するパスワードは、ユーザーの作成時のパスワードと一致している必要があります。

FTPのバイナリ・モードを使用して、生成したキータブ・ファイルをSOAコンポジットWebサービスがホストされているマシンに移動します。

7. 次のようにsetSpnコマンドを使用して、サービス・プリンシパルをユーザーにマッピングします。

setSpn -A HTTP/foobar@MYCOMPANY.LOCAL foobar

setSpn -L foobar

ユーザーにマッピングするSPNは1つにしてください。複数のSPNがユーザーにマッピングされている場合は、setSpn -D <spname> <username>コマンドを使用して削除します。

8. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。

Windowsのエクスプローラでアプリケーションを右クリックして、generatedProxy.csファイルおよびapp.configファイルを追加し、既存の項目を追加を選択します。

app.configのendpoint要素に、「HTTP/foobar@MYCOMPANY.LOCAL」というサービス・プリンシパル名(keytabの作成で使用したものと同じ値)の「identity」要素を追加します。

<client>
<endpoint address="http://host:port/HelloServicePort"
binding="customBinding" bindingConfiguration="NewHelloSoap12HttpPortBinding"
contract="NewHello" name="HelloServicePort">
<identity>
<servicePrincipalName value ="HTTP/foobar@MYCOMPANY.LOCAL"/>
</identity>
</endpoint>

</client>

次のカスタム・バインディングのサンプルを参照してください。

<customBinding>
<binding name="NewHelloSoap12HttpPortBinding">
<!--Added by User: Begin-->
<security defaultAlgorithmSuite="Basic128"
authenticationMode="Kerberos"
requireDerivedKeys="true" securityHeaderLayout="Lax"
includeTimestamp="true"
keyEntropyMode="CombinedEntropy"
messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005
WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurity
Profile10"
requireSignatureConfirmation="true">
<localClientSettings cacheCookies="true" detectReplays="true"
replayCacheSize="900000" maxClockSkew="00:05:00"
maxCookieCachingTime="Infinite"
replayWindow="00:05:00"
sessionKeyRenewalInterval="10:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
timestampValidityDuration="00:05:00"
cookieRenewalThresholdPercentage="60" />
<localServiceSettings detectReplays="true"
issuedCookieLifetime="10:00:00"
maxStatefulNegotiations="128" replayCacheSize="900000"
maxClockSkew="00:05:00"
negotiationTimeout="00:01:00" replayWindow="00:05:00"
inactivityTimeout="00:02:00"
sessionKeyRenewalInterval="15:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
maxPendingSessions="128"
maxCachedCookies="1000"
timestampValidityDuration="00:05:00" />
<secureConversationBootstrap />
</security>
<!--Added by User: End-->
<textMessageEncoding maxReadPoolSize="64"
maxWritePoolSize="16"
messageVersion="Soap12" writeEncoding="utf-8">
<readerQuotas maxDepth="32" maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
</textMessageEncoding>
<!--Added by User: Begin-->
<httpTransport manualAddressing="false"
maxBufferPoolSize="524288"
maxReceivedMessageSize="65536" allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true" maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm="" transferMode="Buffered"
unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true" />
<!--Added by User: End-->
</binding>
</customBinding>

9. クライアント・プログラムを実行します。

5.8 Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションによるKerberosの実装

SPNEGOネゴシエーションによるKerberosポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、SPNEGOネゴシエーションによるKerberosを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 3.5クライアントを構成する方法を示します。

- Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOネゴシエーションによるKerberos)

- Microsoft WCF/.NET 3.5クライアントの構成(SPNEGOネゴシエーションによるKerberos)

5.8.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOネゴシエーションによるKerberos)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 3.5クライアントとの相互運用性のためのSPNEGOネゴシエーションによるKerberosを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。

2. http_spnego_token_service_templateアサーション・テンプレートを使用するポリシーを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のSPNEGOネゴシエーションによるKerberosの構成に関する項を参照してください。

3. ポリシーをWebサービスにアタッチします。

5.8.2 Microsoft WCF/.NET 3.5クライアントの構成(SPNEGOネゴシエーションによるKerberos)

Microsoft WCF/.NET 3.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSPNEGOネゴシエーションによるKerberosを実装できます。

Microsoft WCF/.NET 3.5クライアントを構成するには、次のようにします。

1. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。
詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.90%29.aspxを参照してください。

2. Windowsのエクスプローラでアプリケーションを右クリックして、generatedProxy.csファイルおよびapp.configファイルを追加し、既存の項目を追加を選択します。

3. 次のサンプルに示すように、app.configファイルを編集します。

<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BPELProcessBinding">
<security mode= "TransportCredentialOnly">
<transport clientCredentialType="Windows"/>
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint
address="http://host:port/soa-infra/services/default/SOAProxy/bpelpro
cess_client_ep"
binding="basicHttpBinding"
bindingConfiguration="BPELProcessBinding"
contract="BPELProcess" name="BPELProcess_pt"
<identity>
<servicePrincipalName value ="HTTP/host:port@MYCOMPANY.LOCAL" />
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>

このリストでは、エンドポイント要素のcontractおよびname属性の値は、generatedProxy.csファイルから取得されます。

4. クライアントをコンパイルします。

5. デプロイしたWebサービスにOWSMポリシーをアタッチした後、クライアントを実行します。

5.9 Microsoft WCF/.NET 3.5クライアント向けのSPNEGOネゴシエーションおよび資格証明の委任によるKerberosの実装

SPNEGOネゴシエーションおよび資格証明の委任によるKerberosポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 3.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、SPNEGOネゴシエーションおよび資格証明の委任によるKerberosを実装するために、OWSM 12c Webサービスおよび.NET 3.5クライアントを構成する方法を示します。

- Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOおよび資格証明の委任によるKerberos)

- Microsoft WCF/.NET 3.5クライアントの構成(SPNEGOおよび資格証明の委任によるKerberos)

5.9.1 Microsoft WCF/.NET 3.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOおよび資格証明の委任によるKerberos)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 3.5クライアントとの相互運用性のためのSPNEGOおよび資格証明の委任によるKerberosを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。

2. http_spnego_token_service_templateアサーション・テンプレートを使用するポリシーを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のSPNEGOネゴシエーションによるKerberosの構成に関する項を参照してください。

3. ポリシーをWebサービスにアタッチします。

4. credential.delegation構成設定の値をtrueに設定します。
この情報を指定するには、ポリシーをアタッチするときにポリシー構成をオーバーライドします。

詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のポリシー構成プロパティのオーバーライドに関する項を参照してください。

5.9.2 Microsoft WCF/.NET 3.5クライアントの構成(SPNEGOおよび資格証明の委任によるKerberos)

Microsoft WCF/.NET 3.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSPNEGOおよび資格証明の委任によるKerberosを実装できます。

Microsoft WCF/.NET 3.5クライアントを構成するには、次のようにします。

1. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。
詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.90%29.aspxを参照してください。

2. Windowsのエクスプローラでアプリケーションを右クリックして、generatedProxy.csファイルおよびapp.configファイルを追加し、既存の項目を追加を選択します。

3. 次のapp.configファイル・サンプルに示すように、app.configファイルを編集します。

<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BPELProcess1Binding">
<security mode= "TransportCredentialOnly">
<transport clientCredentialType="Windows"/>
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint
address="http://host:port/soa-infra/services/default/SOAProxy/bpelpro
cess1_client_ep"
binding="basicHttpBinding"
bindingConfiguration="BPELProcess1Binding"
contract="BPELProcess1" name="BPELProcess1_pt"
behaviorConfiguration="CredentialDelegation">
<identity>
<servicePrincipalName value ="HTTP/host:port@MYCOMPANY.LOCAL" />
</identity>
</endpoint>
</client>
<behaviors>
<endpointBehaviors>
<behavior name="CredentialDelegation">
<clientCredentials>
<windows allowedImpersonationLevel="Delegation"
allowNtlm="false"/>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
</configuration>

例では、エンドポイント要素のcontractおよびname属性の値は、generatedProxy.csファイルから取得されます。

4. クライアントをコンパイルします。

5. デプロイしたWebサービスにOWSMポリシーをアタッチした後、クライアントを実行します。

5.10 Microsoft Active Directory Federation Services 2.0 (ADFS 2.0) STSを使用するWCF/.NET 3.5クライアント

WCF/.NET 3.5クライアントでは、一方向SSL経由のSAMLベアラー・トークンを利用するポリシーを使用して、Microsoft Active Directory Federation Services 2.0 (ADFS 2.0)セキュア・トークン・サービス(STS)との通信を保護できます。

注意:

SAML送信者保証トークンは、この使用例ではサポートされません。

この項で説明する手順は、ADFS 2.0をWindows Server 2008またはWindows Server 2008 R2システムにインストールして構成することを想定しています。このシステムはSTSロールで設定されます。

この項の内容は、次のとおりです。

- Active Directory Federation Services (ADFS) 2.0のインストールおよび構成

- 信頼できるSAMLトークン発行者としてのADFS 2.0 STSの構成

- Oracle Internet Directoryのユーザーの構成

- ポリシーのアタッチ

- ADFS 2.0のリライイング・パーティとしてのWebサービスの登録

- ADFS 2.0を使用するWCF/.NET 3.5クライアントの保護

5.10.1 Active Directory Federation Services (ADFS) 2.0のインストールおよび構成

Active Directory Federation Services (ADFS) 2.0をWindows Server 2008またはWindows Server R2システムにインストールして構成できます。

Active Directory Federation Services (ADFS) 2.0をインストールおよび構成するには、次のようにします。

1. Active Directoryをインストールして構成します。
詳細は、http://technet.microsoft.com/en-us/windowsserverを参照してください。

2. ADFS 2.0をインストールして、ウィザードを使用して構成します。
ウィザードを使用してADFS 2.0を構成するときは、必ず、「サーバーの役割」ページで、「フェデレーション サーバー」をクリックしてください。

詳細は、http://technet.microsoft.com/en-us/windowsserver/dd448613を参照してください。

ダウンロード情報は、http://go.microsoft.com/fwlink/?linkid=151338を参照してください。

3. インターネット インフォメーション サービス (IIS) マネージャ・コンソールを使用して、IISで自己署名入りサーバー認証証明書を作成して構成し、デフォルトのWebサイトにバインドします。完了したら、SSLサーバー認証を有効にします。
AD FS 2.0設定ウィザードが自動的にシステムのWebサーバー(IIS)サーバー・ロールにインストールされます。

自己署名付きサーバー認証証明書の作成の概要は、http://technet.microsoft.com/en-us/library/cc771041%28v=ws.10%29.aspxに記載されています。この項の手順には、使用例固有の情報があります。

a. インターネット インフォメーション サービス (IIS) マネージャ・コンソールを開きます。

b. 「スタート」メニューで、「すべてのプログラム」→「管理ツール」→「インターネット インフォメーション サービス (IIS) マネージャ」をクリックします。

c. コンソール・ツリーで、システムの名前を含むルート・ノードをクリックしてから、詳細ペインで、IISグループの「サーバー証明書」というアイコンをダブルクリックします。

d. 「操作」ペインで、「自己署名入り証明書の作成」をクリックします。

e. コンソール・ツリーで、「Default Web Site」をクリックします。

f. 「操作」ペインで、「バインド」をクリックします。

g. 「サイト バインド」ダイアログ・ボックスで「追加」をクリックします。

h. 「サイト バインドの追加」ダイアログ・ボックスで、「種類」ドロップダウン・リストの「https」を選択します。「SSL 証明書」ドロップダウン・リストで作成した証明書を選択し、「OK」→「閉じる」をクリックします。

i. インターネット インフォメーション サービス (IIS) マネージャ・コンソールを閉じます。SSLサーバー認証を有効にします。

4. スタンドアロン・フェデレーション・サーバーとしてシステムを構成します。
詳細は、http://technet.microsoft.com/en-us/library/ee913579%28v=ws.10%29.aspxを参照してください。

5. ADFS 2.0トークン署名証明書をエクスポートします。
自己署名入り証明書の場合は、「DER encoded binary X.509 (.cer)」を選択します。

署名証明書が自己署名入りでない場合は、「Cryptographic Message Syntax Standard – PKCS #7 証明書 (.P7B)」を選択し、「証明のパスにある証明書を可能であればすべて含む」を選択します。

詳細は、http://technet.microsoft.com/en-us/library/dd378922%28v=ws.10%29.aspx#BKMK_4を参照してください。

6. ユーザーを作成し、電子メール・アドレスを含めます。後でSTSを有効にして、サービス用の送信SAMLアサーションのサブジェクト名IDとして電子メール・アドレスを送信します。
次の手順に従って、サンプル・ユーザーをActive Directoryに追加します。各ユーザーに電子メール・アドレスを設定してください。

a. ドメイン管理者の資格証明を使用してシステムにログインします。

b. 「スタート」→「管理ツール」→「Active Directoryユーザーとコンピュータ」をクリックします。

c. コンソール・ツリーで、「Users」フォルダを右クリックします。「新規作成」→「ユーザー」をクリックします。

d. 「新しいオブジェクト - ユーザー」ページで、ユーザーを追加し、「次へ」をクリックします。

e. パスワードを入力し、「ユーザーは次回ログオン時にパスワードの変更が必要」チェック・ボックスを選択解除し、「次へ」をクリックします。

f. 「終了」をクリックします。

g. 「Active Directoryユーザーとコンピュータ」の右端のペインで、新しいユーザー・オブジェクトを右クリックし、「プロパティ」をクリックします。

h. 「全般」タブの「電子メール」ボックスに、ユーザーの電子メール・アドレスを入力し、「OK」をクリックします。

5.10.2 信頼できるSAMLトークン発行者としてのADFS 2.0 STSの構成

信頼できるSTSサーバーにSTS署名証明書を追加して、信頼できるSAMLトークン発行者としてADFS 2.0 STSを保護できます。

ADFS 2.0 STSによって発行されたSAMLアサーションを信頼するようにOWSMを構成するには、次のようにします。

1. Active Directory Federation Services (ADFS) 2.0のインストールおよび構成でエクスポートしたSTS署名証明書を取得します。

証明書チェーンの.p7bファイルの場合、IEでファイルを開き、各証明書を.cerファイルのチェーンにコピーします。

2. keytoolを使用して証明書をデフォルトのキーストアの場所にインポートします。

keytool –importcert –file <sts-signing-certs-file> –trustcacerts –alias <alias> –keystore default-keystore.jks

3. http://domain-name/adfs/services/trustをSAMLの信頼できる発行者として追加します。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のSAMLの信頼できる発行者およびDNリストの構成に関する項を参照してください。

4. 信頼できるSTSサーバー・セクションにSTS証明書のサブジェクトDN (RFC 2253で定義)を追加します。CN=abcなど、RFC 2253に準拠する文字列を使用してください。keytoolなどの任意のメカニズムを使用して、証明書を表示し、サブジェクトDNを決定できます。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のSAMLの信頼できる発行者およびDNリストの構成に関する項を参照してください。

5.10.3 Oracle Internet Directoryのユーザーの構成

各ユーザーに、ADFSに設定されるユーザー電子メール・アドレスと一致するメール属性を構成します。

Oracle Internet Directoryでのユーザーの構成の詳細は、『Oracle Internet Directory管理者ガイド』のユーザー作成のためのディレクトリ・エントリの管理を参照してください。

5.10.4 ポリシーのアタッチ

OWSMでは、Webサービスに直接アタッチできる多数のセキュリティ・ポリシーをサポートしています。

次のOWSMポリシーのいずれかをWebサービスにアタッチします。

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

- oracle/wss_saml_token_bearer_over_ssl_service_policy

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy

これらのポリシーは、メッセージ保護(整合性と機密保護)と、WS-Security SOAPヘッダーの、確認方法がベアラーのSAMLトークンに含まれる資格証明を使用する、SAMLベースの認証を実行します。また、トランスポート・プロトコルによりSSLメッセージ保護が提供されることも検証します。

ポリシーをアタッチする方法の詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

5.10.5 ADFS 2.0のリライイング・パーティとしてのWebサービスの登録

電子メール・アドレスまたは名前ID (SAM-Account-Name)をサブジェクト名IDとして使用してWebサービスにSAMLアサーションを発行するようにADFS 2.0を構成できます。この項には、使用例固有の情報があります。

リライング・パーティの詳細は、http://technet.microsoft.com/en-us/library/dd807108%28v=ws.10%29.aspxを参照してください。

Webサービスをリライイング・パーティとして追加するには、次のようにします。

1. ADFS 2.0管理コンソールで、ADFS 2.0をクリックします。

2. 詳細ペインで、「証明書利用者信頼の追加」をクリックし、証明書利用者信頼の追加ウィザードを開始します。

3. 「ようこそ」ページで、「開始」をクリックして開始します。

4. 「証明書利用者についてのデータを手動で入力する」を選択します。

5. 表示名を入力し、必要に応じてメモを入力します。

6. ADFS 2.0プロファイルを選択します。

7. 「証明書の構成」ページで、「次へ」をクリックします。

このページでのトークン暗号化証明書の構成はオプションです。トークンを暗号化する必要がある場合は、このページで構成します。トークン暗号化証明書を構成しない場合、STSによって発行されるトークンはこのサービスで暗号化されません。

8. WS-Trustは常に有効です。「次へ」をクリックします。

9. 「証明書利用者信頼の識別子」に、サービスのURLを入力し、「追加」をクリックします。

10. このリライイング・パーティへのアクセスをすべてのユーザーに許可します。

11. 「次へ」→「閉じる」をクリックします。

5.10.5.1 サービスの要求規則の構成

STSを有効にして、サービス用の送信SAMLアサーションのsubject name idとして電子メール・アドレスまたは名前IDを送信できます。この項には、使用例固有の情報があります。

要求規則の概要は、http://technet.microsoft.com/en-us/library/ee913578%28v=ws.10%29.aspxを参照してください。LDAP属性を要求として送信する規則を作成するには、http://technet.microsoft.com/en-us/library/dd807115%28v=ws.10%29.aspxを参照してください。

テンプレートの異なる2つの要求規則のチェーンを作成するには、次のようにします。

1. サービスのリライイング・パーティを右クリックし、「要求規則の編集」を選択します。

2. 発行変換規則タブで、規則の追加を選択します。

3. 使用する要求規則テンプレートとして「LDAP 属性を要求として送信」を選択します。

4. 要求に、Get LDAP Attributesなどの名前を付けます。

5. 「属性ストア」をActive Directoryに、「LDAP属性」をE-Mail-Addressesに、「出力方向の要求の種類」をE-mail Addressに設定します。

サブジェクト名IDとして、かわりに名前IDを使用する場合は、「LDAP属性」の下でSAM-Account-Nameを選択します。

6. 「終了」を選択します。

7. サブジェクト名IDとして名前IDを使用する場合は、「OK」をクリックして、プロパティ・ページを閉じ、リライイング・パーティの信頼への変更を保存します。

サブジェクト名IDとして電子メール・アドレスを使用する場合は、引き続き、規則を追加します。

8. 規則の追加を選択します。

9. 使用する要求規則テンプレートとして「入力方向の要求の変換」を選択します。

10. Email to Name IDなどの名前を付けます。

11. 「入力方向の要求の種類」をE-mail Addressに設定します。(前の規則の「出力方向の要求の種類」と一致している必要があります。)

12. 「出力方向の要求の種類」をName IDとし、「出力方向の名前 ID の形式」をEmailとして設定します(urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress)。

13. すべての要求値をパス・スルーし、「完了」をクリックします。

14. 「OK」をクリックして、プロパティ・ページを閉じ、リライイング・パーティの信頼への変更を保存します。

5.10.6 ADFS 2.0を使用するWCF/.NET 3.5クライアントの保護

WCF/.NET 3.5クライアントを保護するため、複数のセキュリティおよび認証メカニズムを実装できます。

ADFS 2.0を使用してWCF/.NET 3.5クライアントを保護するには、次のようにします。

1. .NET 3.5およびMicrosoft Visual Studio 2008をインストールします。

2. STSおよびサービス用のSSLサーバー証明書をWindowsにインポートします。
STSまたはサービス用のSSLサーバー証明書が、信頼できるCAから発行されていない、または自己署名入りである場合は、Microsoft WCF/.NET 3.5クライアントの構成(メッセージ保護付きユーザー名トークン)の説明に従って、MMCツールを使用してインポートする必要があります。

3. WCFクライアントを作成して構成します。
ADFS 2.0 STSにより、トークンに対する保険としての複数のセキュリティおよび認証メカニズムがサポートされます。これらはそれぞれ個別のエンドポイントとして公開されます。ユーザー名/パスワード認証では、2つのエンドポイントが提供されます。

- http://<adfs.domain>/adfs/services/trust/13/username - このエンドポイントはメッセージ保護付きユーザー名トークン用です。

- https://<adfs.domain>/adfs/services/trust/13/usernamemixed - このエンドポイントはトランスポート保護(SSL)付きユーザー名トークン用です。

WCFクライアントは、SSLのユーザー名トークン用のhttps://<adfs.domain>/adfs/services/trust/13/usernamemixedエンドポイントを使用して、サービスのSAMLベアラー・トークンを取得します。

a. サービスWSDLを使用して、WCFクライアントを生成します。
Windows Communication Foundationクライアントの作成の詳細は、http://msdn.microsoft.com/en-us/library/ms733133(v=vs.90)を参照してください。

b. クライアントをws2007FederationHttpBindingで構成します。
クライアント・プロジェクトのSolution Explorerで、「references」を右クリックして「Add reference」を選択し、C:\Windows\Microsoft.NET\framework\v3.0\Windows Communication Foundation\System.Runtime.Serialization.dllを参照することにより、参照を追加します。

app.configファイルを編集します。(WS 2007フェデレーションHTTPバインディングの詳細は、http://msdn.microsoft.com/en-us/library/bb472490.aspxを参照してください。)次のサンプルを考えてみます。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="secureBehaviour">
<clientCredentials>
<serviceCertificate>
<defaultCertificate findValue="weblogic"
storeLocation="LocalMachine"
storeName="My"
x509FindType="FindBySubjectName"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<ws2007FederationHttpBinding>
<binding name="JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLSoapHttp">
<security mode="TransportWithMessageCredential">
<message negotiateServiceCredential="false"
algorithmSuite="Basic128"
issuedTokenType ="http://docs.oasis-open.org/wss/oasis-wss-saml-token-

profile-1.1#SAMLV1.1"
issuedKeyType="BearerKey">
<issuer address ="https://domain-name/adfs/services/trust/13/usernamemixed"
binding ="ws2007HttpBinding"

bindingConfiguration="ADFSUsernameMixed"/>
</message>
</security>
</binding>
</ws2007FederationHttpBinding>
<ws2007HttpBinding>
<binding name="ADFSUsernameMixed">
<security mode="TransportWithMessageCredential">
<message clientCredentialType="UserName" establishSecurityContext="false" />
</security>
</binding>
</ws2007HttpBinding>
</bindings>
<client>
<endpoint

address="https://adc2170989:8002/JaxWsWss11SamlOrUsernameOrSamlBearerOverSSL/JaxWsWss11Sam

lOrUsernameOrSamlBearerOverSSLService"
binding="ws2007FederationHttpBinding"

bindingConfiguration="JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLSoapHttp"
contract="JaxWsWss11SamlOrUsernameOrSamlBearerOverSSL"

name="JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLPort">
<identity>
<dns value="weblogic" />
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>

c. program.csファイルを編集し、サービスの呼出しを行います。
まだ存在していない場合は、プロジェクトに.csファイルを作成し、program.csという名前(または任意の名前)を付けます。次と一致するように編集します。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;

namespace Client
{
class Program
{
static void Main(string[] args)
{
JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLClient client =
New JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLClient();

client.ClientCredentials.UserName.UserName = "joe";
client.ClientCredentials.UserName.Password = "eoj";

System.Net.ServicePointManager.ServerCertificateValidationCallback =
((sender, certificate, chain, sslPolicyErrors) => true);

Console.WriteLine(client.echo("Hello"));
Console.Read();
}

}
}

このサンプルprogram.csファイルの場合:

joeはユーザー名、eojはパスワードであり、STSに対して認証するためにクライアントによって使用されます。

System.Net.ServicePointManager.ServerCertificateValidationCallback = ((sender, certificate, chain, sslPolicyErrors) => true);は、サーバー側の自己署名入り証明書を検証するために追加されています。サーバー証明書が信頼できるCAから発行されている場合、これは不要です。テスト用に自己署名入り証明書を使用している場合、この方法を追加してクライアント側の証明書を検証します。

6 Microsoft WCF/.NET 4.5のセキュリティ環境との相互運用性

Oracle Web Services Manager (OWSM)は、Microsoft WCF/.NET 4.5のセキュリティ環境と相互運用できます。OWSMとMicrosoft WCF/.NET 4.5のセキュリティ環境との間の相互運用性を実現するため、WS-Security 1.1標準に準拠するポリシーがWebサービスにアタッチされます。

この章の内容は次のとおりです。

- Microsoft WCF/.NET 4.5のセキュリティ環境の相互運用性の理解

- Microsoft WCF/.NET 4.5クライアント向けのメッセージ送信最適化メカニズムの実装

- Microsoft WCF/.NET4.5クライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

- Microsoft WCF/.NET 4.5クライアント向けのSSL経由のユーザー名トークンの実装

- Microsoft WCF/.NET 4.5クライアント向けのメッセージ保護付き相互認証(WS-Security 1.1)の実装

- Microsoft WCF/.NET 4.5クライアント向けのメッセージ保護付きKerberosの実装

- Microsoft WCF/.NET 4.5クライアント向けの導出キーを使用したメッセージ保護付きKerberosの実装

- Microsoft WCF/.NET 4.5クライアント向けのSPNEGOネゴシエーションによるKerberosの実装

- Microsoft WCF/.NET 4.5クライアント向けのSPNEGOネゴシエーションおよび資格証明の委任によるKerberosの実装

- Microsoft Active Directory Federation Services 2.0 (ADFS 2.0) STSを使用するWCF/.NET 4.5クライアント

6.1 Microsoft WCF/.NET 4.5のセキュリティ環境の相互運用性の理解

オラクル社は、OWSM 12cを使用して作成されたWebサービス・セキュリティ・ポリシーと、Microsoft Windows Communication Foundation (WCF)/.NET 4.5 Frameworkを使用して構成されたWebサービス・ポリシーとの相互運用を可能にするための相互運用性テストを実施しました。

Microsoft .NET 4.5 (以前) Frameworkの詳細は、http://msdn.microsoft.com/en-us/library/ff361664%28v=vs.110%29.aspxの「.NET Development」を参照してください。

OWSMの事前定義済ポリシーおよび相互運用性シナリオは、次の項で説明します。

- Microsoft WCF/.NET 4.5のセキュリティ環境向けのOWSM事前定義済ポリシー

- Microsoft WCF/.NET 4.5の相互運用性シナリオ

6.1.1 Microsoft WCF/.NET 4.5のセキュリティ環境向けのOWSM事前定義済ポリシー

Microsoft WCF/.NET 4.5のセキュリティ環境向けのOWSM事前定義済ポリシーの詳細は、次のトピックを確認してください。

詳細は、次を参照してください。

- OWSM事前定義済ポリシーについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

- OWSM 12cポリシーの構成およびアタッチについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

注意:

ほとんどの場合、アプリケーションのデプロイ前にソース・コード内のOWSMポリシーをアタッチすることも、WLSTまたはFusion Middleware Controlを使用してデプロイメント後にポリシーをアタッチすることもできます。この章の手順を簡略化するには、デプロイメント後にポリシーをアタッチしていることが前提です。デプロイ前にポリシーをアタッチすることが必要な状況の場合、その方法がこの手順で説明されています。

注意:

この章で説明する手順の一部では、Microsoft ServiceModelメタデータ・ユーティリティ・ツール(SvcUtil.exe)を使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成するよう指示します。ただし、SvcUtil.exeは、OWSMで使用される特定のセキュリティ・ポリシー・アサーションでは動作しません。回避策として、OWSMポリシーによって保護されているWebサービスのWCFプロキシを作成する際に、次のことを行います。

- ポリシーをデタッチします。

- SvcUtil.exeを使用してプロキシを作成します。

- ポリシーを再アタッチします。

SvcUtil.exeの詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.110%29.aspxを参照してください。

6.1.2 Microsoft WCF/.NET 4.5の相互運用性シナリオ

OWSM 12cとMicrosoft WCF/.NET 4.5との間の相互運用性には様々なシナリオがあります。

Microsoft .NET 4.5の最も一般的な相互運用性シナリオは、次のセキュリティ要件(認証、メッセージ保護およびトランスポート)に基づいています。

注意:

以降のシナリオでは、v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

また、キーが適切な拡張(DigitalSignature、Non_repudiation、Key_EnciphermentおよびData_Enciphermentなど)を使用していることも確認してください。

次の表に、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーの相互運用性シナリオを示します。

表6-1 OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

MTOM

該当なし

該当なし

該当なし

oracle/wsmtom_policy

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ送信最適化メカニズム)

ユーザー名またはSAML

1.1

はい

いいえ

oracle/wss11_username_token_with_message_protection_service_policy

または

oracle/wss11_saml_or_username_token_with_message_protection_service_policy

Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)

ユーザー名

1.0および1.1

いいえ

はい

oracle/wss_saml_or_username_token_over_ssl_service_policy

または

oracle/wss_username_token_over_ssl_service_policy

Microsoft WCF/.NET 4.5クライアントの構成(SSL経由のユーザー名トークン)

相互認証

1.1

はい

いいえ

oracle/wss11_x509_token_with_message_protection_service_policy

Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付き相互認証)

Kerberos

1.1

はい

いいえ

oracle/wss11_kerberos_token_with_message_protection_service_policy

Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きKerberos)

SAMLベアラー

1.0

いいえ

はい

oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

または

oracle/wss_saml_token_bearer_over_ssl_service_policy

ADFS 2.0を使用するWCF/.NET 4.5クライアントの保護

次の表に、Microsoft WCF/.NET 4.5サービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性シナリオを示します。

表6-2 Microsoft WCF/.NET 4.5サービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

MTOM

該当なし

該当なし

該当なし

Microsoft WCF/.NET 4.5 Webサービスの構成(MTOM)

oracle/wsmtom_policy

ユーザー名

1.1

はい

いいえ

Microsoft WCF/.NET 4.5 Webサービスの構成(メッセージ保護付きユーザー名トークン)

oracle/wss11_username_token_with_message_protection_client_policy

SSL経由のユーザー名トークン

1.0

いいえ

はい

Microsoft WCF/.NET 4.5 Webサービスの構成(SSL経由のユーザー名トークン)

oracle/wss_username_token_over_ssl_client_policy

相互認証

1.1

はい

いいえ

Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付き相互認証)

oracle/wss11_x509_token_with_message_protection_client_policy

6.2 Microsoft WCF/.NET 4.5クライアント向けのメッセージ送信最適化メカニズムの実装

メッセージ送信最適化メカニズム(MTOM)を実装して、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーとの間の相互運用性およびMicrosoft WCF/.NET 4.5サービス・ポリシーとOWSM 12cクライアント・ポリシーとの間の相互運用性を実現できます。

次のトピックでは、様々な相互運用性シナリオにおいてMTOMを実装する方法について説明します。

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ送信最適化メカニズム)

- Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

6.2.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ送信最適化メカニズム)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを使用してメッセージ送信最適化メカニズム(MTOM)を実装できます。

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。

詳細は、『Webサービスの管理』のWebサービス・アプリケーションのデプロイに関する説明を参照してください。

2. oracle/wsmtom_policyポリシーをWebサービスにアタッチします。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

3. Microsoft WCF/.NET 4.5クライアントを構成するには、Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。

MTOM相互運用性のサンプルは、次のapp.configファイルを参照してください。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<bindings>
<customBinding>
<binding name="CustomBinding_IMTOMService">
<mtomMessageEncoding maxReadPoolSize="64"
maxWritePoolSize="16"
messageVersion="Soap12" maxBufferSize="65536"
writeEncoding="utf-8">
<readerQuotas maxDepth="32" maxStringContentLength=
"8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
</mtomMessageEncoding>
<httpTransport manualAddressing="false" maxBufferPoolSize="524288"
maxReceivedMessageSize="65536" allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true" maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm="" transferMode="Buffered"
unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true" />
</binding>
</customBinding>
</bindings>
<client>
<endpoint address="<endpoint_url>"
binding="customBinding" bindingConfiguration="CustomBinding_IMTOMService"
contract="IMTOMService" name="CustomBinding_IMTOMService" >
</endpoint>
</client>
</system.serviceModel>
</configuration>

詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.110%29.aspxの「ServiceModel Metadata Utility Tool (Svcutil.exe)」を参照してください。

4. クライアント・プログラムを実行します。

6.2.2 Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントを使用してメッセージ送信最適化メカニズム(MTOM)を実装できます。

次のトピックでは、Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントを構成してメッセージ送信最適化メカニズムを実装する方法を説明します。

- Microsoft WCF/.NET 4.5 Webサービスの構成(MTOM)

- Microsoft WCF/.NET 4.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

6.2.2.1 Microsoft WCF/.NET 4.5 Webサービスの構成(MTOM)

Microsoft WCF/.NET 4.5 Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ送信最適化メカニズム(MTOM)を実装できます。

Microsoft WCF/.NET 4.5 Webサービスを構成するには、次のようにします。

1. .NET Webサービスを作成します。
例については、次のMTOM相互運用性のための.NET Webサービスのサンプルを参照してください。

static void Main(string[] args)
{
string uri = "http://host:port/TEST/MTOMService/SOA/MTOMService";
// Step 1 of the address configuration procedure: Create a URI to serve as the base address.
Uri baseAddress = new Uri(uri);

// Step 2 of the hosting procedure: Create ServiceHost
ServiceHost selfHost = new ServiceHost(typeof(MTOMService), baseAddress);

try {
HttpTransportBindingElement hb = new HttpTransportBindingElement();
hb.ManualAddressing = false;
hb.MaxBufferPoolSize = 2147483647;
hb.MaxReceivedMessageSize = 2147483647;
hb.AllowCookies = false;
hb.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.KeepAliveEnabled = true;
hb.MaxBufferSize = 2147483647;
hb.ProxyAuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.Realm = "";
hb.TransferMode = System.ServiceModel.TransferMode.Buffered;
hb.UnsafeConnectionNtlmAuthentication = false;
hb.UseDefaultWebProxy = true;
MtomMessageEncodingBindingElement me = new MtomMessageEncodingBindingElement();
me.MaxReadPoolSize=64;
me.MaxWritePoolSize=16;
me.MessageVersion=System.ServiceModel.Channels.MessageVersion.Soap12;
me.WriteEncoding = System.Text.Encoding.UTF8;
me.MaxWritePoolSize = 2147483647;
me.MaxBufferSize = 2147483647;
me.ReaderQuotas.MaxArrayLength = 2147483647;
CustomBinding binding1 = new CustomBinding();
binding1.Elements.Add(me);
binding1.Elements.Add(hb);
ServiceEndpoint ep = selfHost.AddServiceEndpoint(typeof(IMTOMService), binding1,
"MTOMService");
EndpointAddress myEndpointAdd = new EndpointAddress(new Uri(uri),
EndpointIdentity.CreateDnsIdentity("WSMCert3"));
ep.Address = myEndpointAdd;

// Step 4 of the hosting procedure: Enable metadata exchange.
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
selfHost.Description.Behaviors.Add(smb);
using (ServiceHost host = new ServiceHost(typeof(MTOMService)))
{
System.ServiceModel.Description.ServiceDescription svcDesc =
selfHost.Description;
ServiceDebugBehavior svcDebug =
svcDesc.Behaviors.Find<ServiceDebugBehavior>();
svcDebug.IncludeExceptionDetailInFaults = true;
}

// Step 5 of the hosting procedure: Start (and then stop) the service.
selfHost.Open();
Console.WriteLine("The service " + uri + " is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
// Close the ServiceHostBase to shutdown the service.
selfHost.Close();
}
catch (CommunicationException ce)
{
Console.WriteLine("An exception occurred: {0}", ce.Message);
selfHost.Abort();
}
}

詳細は、http://msdn.microsoft.com/en-us/library/ms731835.aspxの『How to: Define a Windows Communication Foundation Service Contract』を参照してください。

2. アプリケーションをデプロイします。

6.2.2.2 Microsoft WCF/.NET 4.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ送信最適化メカニズム)

OWSM 12cクライアントを構成して、Microsoft WCF/.NET 4.5 Webサービスとの相互運用性のためのメッセージ送信最適化メカニズム(MTOM)を実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. JDeveloperを使用して、.NET Webサービスを使用するSOAコンポジットを作成します。
詳細は、SOA Suiteの開発者ガイドを参照してください。

2. oracle/wsmtom_policyポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

6.3 Microsoft WCF/.NET 4.5クライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

メッセージ保護付きユーザー名トークン・ポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーとの間の相互運用性およびMicrosoft WCF/.NET 4.5サービス・ポリシーとOWSM 12cクライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてメッセージ保護付きユーザー名トークンを実装する方法について説明します。

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)

- Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

6.3.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付きユーザー名トークンを実装できます。

次のトピックでは、セキュアな通信を有効化する場合およびしない場合に、メッセージ保護付きユーザー名トークンを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成する方法を示します。

- Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

- Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)

6.3.1.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 4.5クライアントとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. SOAP 1.2準拠のWebサービス・アプリケーションを作成します。

2. セキュアな通信を有効化するかどうかに基づいて、使用するポリシーを選択します。

a. セキュアな通信を有効化しない場合、次のいずれかのポリシーのクローンを作成します。
oracle/wss11_saml_or_username_token_with_message_protection_service_policy

oracle/wss11_username_token_with_message_protection_service_policy

注意:

セキュアな通信を有効化しない場合、Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)の説明に従って、クライアントのestablishSecurityContextプロパティをfalseに設定する必要があります。

b. セキュアな通信を有効化するには、次のポリシーのクローンを作成します。
oracle/wss11_username_token_with_message_protection_wssc_service_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

3. 前述のステップ2でクローン作成されたポリシーのポリシー構成設定を、次のように編集します。

a. X509トークン導出キー構成設定を有効化します。

b. 「署名の暗号化」構成設定を有効化します。

c. 「署名の確認」構成設定を無効化します。

d. それ以外の構成設定はすべてデフォルトの構成設定のままにしておきます。

ポリシーをWebサービスにアタッチします。詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

4. 次のポリシーもアタッチします。
oracle/wsaddr_policy

5. 次のコマンドを使用して、サービス側のキーストアからX.509証明書ファイルを.cerファイル(alice.cerなど)にエクスポートします。

keytool -export -alias alice -file C:\alice.cer -keystore default-keystore.jks

詳細は、「keytool - 鍵および証明書管理ツール」(http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html)を参照してください。

6.3.1.2 Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)

Microsoft WCF/.NET 4.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

Microsoft WCF/.NET 4.5クライアントを構成するには、次のようにします。

1. 次のようにして、Microsoft Management Console (mmc)を使用して、(前にエクスポートした)証明書ファイルをクライアント・サーバー上のキーストアにインポートします。

a. コマンド・プロンプトを開きます。

b. mmcと入力して[Enter]を押します。

c. 「File」→「Add/Remove snap-in」を選択します。

d. 「Add and Choose Certificates」を選択します。

注意:

ローカル・マシン・ストア内の証明書を表示するためには、管理者ロールを持っている必要があります。

e. 「Add」を選択します。

f. 「My user account」→「finish」を選択します。

g. 「OK」をクリックします。

h. 「Console Root」→「Certificates -Current user」→「Personal」→「Certificates」の順に開きます。

i. 「Certificates」を右クリックし、「All tasks」→「Import」を選択してCertificate importウィザードを起動します。

j. 「Next」をクリックし、「Browse」を選択して、前にエクスポートした.cerファイルに移動します。

k. 「Next」をクリックし、デフォルトを受け入れてウィザードを終了します。

詳細は、http://msdn.microsoft.com/en-us/library/ms788967.aspxの『How to: View Certificates with the MMC Snap-in』を参照してください。

2. WebサービスのWSDLを使用して、.NETクライアントを生成します。

注意:

『Oracle WebLogic Server JAX-WS Webサービスの開発』のWS-Addressingアクション・プロパティの暗黙的な関連付けに関する項の説明に従って、クライアントが暗黙的なwsa:Actionヘッダーを送信しないように、WS-Addressingアクション・ヘッダーを設定する必要がある場合があります。

詳細は、http://msdn.microsoft.com/en-us/library/ms733133(v=vs.110).aspxの『How to: Create a Windows Communication Foundation Client』を参照してください

3. 次のサンプルに示すように、.NETプロジェクトのapp.configファイルを編集して、証明書ファイルを更新し、リプレイを無効化します(変更部分は太字で示されています)。デフォルトのキー設定に従う場合は、<certificate_cn>をaliceに設定する必要があります。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="secureBehaviour">
<clientCredentials>
<serviceCertificate>
<defaultCertificate findValue="<certificate_cn>"
storeLocation="CurrentUser" storeName="My"
x509FindType="FindBySubjectName"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<ws2007HttpBinding>
<binding name="Wss11UsernameTokenWithMessageProtectionWSSCServicePortBinding" >
<security mode="Message">
<message clientCredentialType="UserName"
negotiateServiceCredential="false"
algorithmSuite="Basic128"
establishSecurityContext="true" />
<!-- extablishSecurityContext is true by default and therefore does not
have to be specified to enable secure conversation.
Set establishSecurityContext to false if secure conversation is not enabled -->
</security>
</binding>
</ws2007HttpBinding>
</bindings>
<client>
<endpoint address="http://10.244.167.70:7003/OWSMTestApp-Project1-context-root/ws11_username_token_with_message_protection_wsscPort?wsdl"
behaviorConfiguration="PMCert"
binding="ws2007HttpBinding"
bindingConfiguration="Wss11UsernameTokenWithMessageProtectionWSSCServicePortBinding"
contract="ServiceReference1.ws11_username_token_with_message_protection_wssc"
name="ws11_username_token_with_message_protection_wsscPort">
<identity>
<dns value="orakey" />
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>

4. セキュアな通信を有効化しているかどうかに従って、app.configファイルのestablishSecurityContextプロパティを設定する必要があります。
デフォルトでは、establishSecurityContextはtrue (セキュアな通信を有効化している)に設定されます。セキュアな通信を有効化していない場合、establishSecurityContextをfalseに設定します。

例については、サンプル(太字斜体の行)を参照してください。

5. プロジェクトをコンパイルします。

6. コマンド・プロンプトを開いて、プロジェクトのDebugフォルダに移動します。

7. <client_project_name>.exeと入力して[Enter]を押します。

6.3.2 Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付きユーザー名トークンを実装できます。

次のトピックでは、Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントを構成して、メッセージ保護付きユーザー名トークンを実装する方法を説明します。

- Microsoft WCF/.NET 4.5 Webサービスの構成(メッセージ保護付きユーザー名トークン)

- Microsoft WCF/.NET 4.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

6.3.2.1 Microsoft WCF/.NET 4.5 Webサービスの構成(メッセージ保護付きユーザー名トークン)

Microsoft WCF/.NET 4.5 Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

Microsoft WCF/.NET 4.5 Webサービスを構成するには、次のようにします。

1. .NET Webサービスを作成します。

a. 次の.NET Webサービスのサンプルに示すように、SymmetricSecurityBindingElementを使用して、Webサービスのカスタム・バインディングを作成します。この例は、セキュアな通信を有効化していない場合のWebサービスを示しています。

static void Main(string[] args)
{
// Step 1 of the address configuration procedure: Create a URI to serve as the
// base address.
// Step 2 of the hosting procedure: Create ServiceHost
string uri = "http://host:port/TEST/NetService";
Uri baseAddress = new Uri(uri);

ServiceHost selfHost = new ServiceHost(typeof(CalculatorService), baseAddress);

try
{
SymmetricSecurityBindingElement sm =
SymmetricSecurityBindingElement.CreateUserNameForCertificateBindingElement();
sm.DefaultAlgorithmSuite = System.ServiceModel.Security.SecurityAlgorithmSuite.Basic128;
sm.SetKeyDerivation(false);
sm.SecurityHeaderLayout = SecurityHeaderLayout.Lax;
sm.IncludeTimestamp = true;
sm.KeyEntropyMode = SecurityKeyEntropyMode.CombinedEntropy;
sm.MessageSecurityVersion =
MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005
WSSecurityPolicy11BasicSecurityProfile10;
sm.LocalClientSettings.CacheCookies = true;
sm.LocalClientSettings.DetectReplays = true;
sm.LocalClientSettings.ReplayCacheSize = 900000;
sm.LocalClientSettings.MaxClockSkew = new TimeSpan(00, 05, 00);
sm.LocalClientSettings.MaxCookieCachingTime = TimeSpan.MaxValue;
sm.LocalClientSettings.ReplayWindow = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.SessionKeyRenewalInterval = new TimeSpan(10, 00, 00);
sm.LocalClientSettings.SessionKeyRolloverInterval = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.ReconnectTransportOnFailure = true;
sm.LocalClientSettings.TimestampValidityDuration = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.CookieRenewalThresholdPercentage = 60;
sm.LocalServiceSettings.DetectReplays = false;
sm.LocalServiceSettings.IssuedCookieLifetime = new TimeSpan(10, 00, 00);
sm.LocalServiceSettings.MaxStatefulNegotiations = 128;
sm.LocalServiceSettings.ReplayCacheSize = 900000;
sm.LocalServiceSettings.MaxClockSkew = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.NegotiationTimeout = new TimeSpan(00, 01, 00);
sm.LocalServiceSettings.ReplayWindow = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.InactivityTimeout = new TimeSpan(00, 02, 00);
sm.LocalServiceSettings.SessionKeyRenewalInterval = new TimeSpan(15, 00, 00);
sm.LocalServiceSettings.SessionKeyRolloverInterval = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.ReconnectTransportOnFailure = true;
sm.LocalServiceSettings.MaxPendingSessions = 128;
sm.LocalServiceSettings.MaxCachedCookies = 1000;
sm.LocalServiceSettings.TimestampValidityDuration = new TimeSpan(15, 00, 00);
HttpTransportBindingElement hb = new HttpTransportBindingElement();
hb.ManualAddressing = false;
hb.MaxBufferPoolSize = 524288;
hb.MaxReceivedMessageSize = 65536;
hb.AllowCookies = false;
hb.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.KeepAliveEnabled = true;
hb.MaxBufferSize = 65536;
hb.ProxyAuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.Realm = "";
hb.TransferMode = System.ServiceModel.TransferMode.Buffered;
hb.UnsafeConnectionNtlmAuthentication = false;
hb.UseDefaultWebProxy = true;
TextMessageEncodingBindingElement tb1 = new TextMessageEncodingBindingElement();
tb1.MaxReadPoolSize = 64;
tb1.MaxWritePoolSize = 16;
tb1.MessageVersion = System.ServiceModel.Channels.MessageVersion.Soap12;
tb1.WriteEncoding = System.Text.Encoding.UTF8;
CustomBinding binding1 = new CustomBinding(sm);
binding1.Elements.Add(tb1);
binding1.Elements.Add(hb);
ServiceEndpoint ep = selfHost.AddServiceEndpoint(typeof(ICalculator), binding1,
"CalculatorService");

EndpointAddress myEndpointAdd = new EndpointAddress(
new Uri(uri),
EndpointIdentity.CreateDnsIdentity("WSMCert3"));
ep.Address = myEndpointAdd;

// Step 4 of the hosting procedure: Enable metadata exchange.
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
selfHost.Description.Behaviors.Add(smb);
selfHost.Credentials.ServiceCertificate.SetCertificate(StoreLocation.CurrentUser,
StoreName.My,
X509FindType.FindBySubjectName, "WSMCert3");
selfHost.Credentials.ClientCertificate.Authentication.CertificateValidationMode =
X509CertificateValidationMode.PeerOrChainTrust;
selfHost.Credentials.UserNameAuthentication.UserNamePasswordValidationMode =
UserNamePasswordValidationMode.Custom;
CustomUserNameValidator cu = new CustomUserNameValidator();
selfHost.Credentials.UserNameAuthentication.CustomUserNamePasswordValidator = cu;
using (ServiceHost host = new ServiceHost(typeof(CalculatorService)))
{
System.ServiceModel.Description.ServiceDescription svcDesc = selfHost.Description;
ServiceDebugBehavior svcDebug = svcDesc.Behaviors.Find<ServiceDebugBehavior>();
svcDebug.IncludeExceptionDetailInFaults = true;
}

// Step 5 of the hosting procedure: Start (and then stop) the service.
selfHost.Open();
Console.WriteLine("The Calculator service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
selfHost.Close();
}
catch (CommunicationException ce)
{
Console.WriteLine("An exception occurred: {0}", ce.Message);
selfHost.Abort();
}
}

セキュアな通信を有効化するには、例のコードに次の調整を行います。

a. 作成されたSymmetricSecurityBindingElement要素(sm)に基づいて、この要素をもう1つ作成します。たとえば次のようになります。

SymmetricSecurityBindingElement scsm = SymmetricSecurityBindingElement.createSecureConversationBindingELement(sm, false)

b. 新しいカスタム・バインディングを作成します。

CustomBinding binding1 = new CustomBinding(scsm);

詳細は、http://msdn.microsoft.com/en-us/library/ms731835.aspxの『How to: Define a Windows Communication Foundation Service Contract』を参照してください。

2. 証明書ファイルを作成して、Webサービス・サーバー上のキーストアにインポートします。
Microsoft Visual Studioを使用する場合、コマンドは次のようになります。

makecert -r -pe -n "CN=wsmcert3" -sky exchange -ss my C:\wsmcert3.cer

このコマンドにより、証明書が作成されてmmcにインポートされます。コマンドの結果が期待どおりにならない場合は、次のコマンド・シーケンスを試行してください。http://www.microsoft.com/whdc/devtools/WDK/default.mspxのWindows Developer Kit (WDK)をダウンロードする必要があります。

makecert -r -pe -n "CN=wsmcert3" -sky exchange -ss my -sv wscert3.pvk C:\wsmcert3.cer
pvk2pfx.exe -pvk wscert3.pvk -spc wsmcert3.cer -pfx PRF_WSMCert3.pfx -pi welcome1

次に、PRF_WSMCert3.pfxをmmcにインポートします。

3. keytoolコマンドを使用して、Webサービス・サーバー上に作成された証明書をクライアント・サーバーにインポートします。例:

keytool -import -alias wsmcert3 -file C:\wsmcert3.cer -keystore <owsm_client_keystore>

詳細は、「keytool - 鍵および証明書管理ツール」(http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html)を参照してください。

4. Solutions Explorerで「Web service Solution」プロジェクトを右クリックし、「Open Folder In Windows Explorer」をクリックします。

5. bin/Debugフォルダに移動します。

6. <project>.exeファイルをダブルクリックします。このコマンドにより、指定したURLでWebサービスが実行されます。

6.3.2.2 Microsoft WCF/.NET 4.5 WebサービスのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

OWSM 12cクライアントを構成して、Microsoft WCF/.NET 4.5 Webサービスとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. JDeveloperを使用して、.NET Webサービスを使用するSOAコンポジットを作成します。
詳細は、Oracle SOA SuiteでのSOAアプリケーションの開発のOracle JDeveloperでのSOAコンポジット・アプリケーションのデプロイに関する項を参照してください。

2. JDeveloperで、.NETサービスのWSDLを使用してパートナ・リンクを作成します。

3. oracle/wss11_username_token_with_message_protection_client_policyポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

4. csf-keyおよびkeystore.recipient.aliasの構成を指定します。
この情報を指定するには、ポリシーをアタッチするときにポリシー構成をオーバーライドします。詳細は、次を参照してください。

必ず、ステップ1でインポートした証明書(wsmcert3)の別名としてkeystore.recipient.aliasを構成してください。例:

<wsp:PolicyReference
URI="oracle/wss11_username_token_with_message_protection_client_policy"
orawsp:category="security"
orawsp:status="enabled"/>
<property
name="csf-key"
type="xs:string"
many="false">
basic.credentials
</property>
<property
name="keystore.recipient.alias"
type="xs:string"
many="false">
wsmcert3
</property>

詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のポリシー構成プロパティのオーバーライドに関する項を参照してください。

6.4 Microsoft WCF/.NET 4.5クライアント向けのSSL経由のユーザー名トークンの実装

(セキュアな通信を有効化している、および有効化していない) SSL経由のユーザー名トークン・ポリシーは、WS-Security 1.0および1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーとの間の相互運用性およびMicrosoft WCF/.NET 4.5サービス・ポリシーとOWSM 12cクライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、次の相互運用性シナリオにおいてSSL経由のユーザー名トークンを実装する方法について説明します。

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(SSL経由のユーザー名トークン)

- Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

6.4.1 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(SSL経由のユーザー名トークン)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを使用して、セキュアな通信を有効化している、および有効化していないSSL経由のユーザー名トークンを実装できます。

次のトピックでは、SSL経由のユーザー名トークンを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成する方法を説明します。

- Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- Microsoft WCF/.NET 4.5クライアントの構成(SSL経由のユーザー名トークン)

6.4.1.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 4.5クライアントとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. サーバーをSSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

2. OWSM Webサービスを作成します。

3. セキュアな通信を有効化するかどうかに基づいて、使用するポリシーを選択します。
セキュアな通信を有効化しない場合、次のいずれかのポリシーをアタッチします。

oracle/wss_username_token_over_ssl_service_policy

oracle/wss_saml_or_username_token_over_ssl_service_policy

oracle/wss11_saml_or_username_token_with_message_protection_service_policy

注意:

セキュアな通信を有効化しない場合、Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)の説明に従って、クライアントのestablishSecurityContextプロパティをfalseに設定する必要があります。

詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のポリシーのアタッチおよびOracle Web Services ManagerによるWebサービスの保護とポリシーの管理の事前定義済ポリシーを参照してください。

4. 次のようにして、アドレッシングが使用されることを指定します。
Oracle Infrastructure Webサービスの場合:

次のポリシーをアタッチします。

oracle/wssaddr_policy

Java EE Webサービスの場合:

Java EE Webサービスおよびクライアントでは、OWSMセキュリティ・ポリシーのサブセットのみがサポートされるため、oracle/wssaddr_policyをJava EE Webサービスにアタッチできません。かわりに、次の例に示すように、サービスのソース・コードで@Addressing注釈を使用して、アドレッシング情報を追加する必要があります。

package oracle.wsm.qa.wls.service.soap12;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.xml.ws.BindingType;
import javax.xml.ws.soap.Addressing;
import javax.xml.ws.soap.SOAPBinding;
import weblogic.wsee.jws.jaxws.owsm.SecurityPolicy;
@WebService
@BindingType(SOAPBinding.SOAP12HTTP_BINDING)
@Addressing(enabled=true)
public class wss_username_token_over_ssl {
public wss_username_token_over_ssl() {
super();
}
@WebMethod
public String sayHello(@WebParam(name = "arg0") String name){
return "hello "+ name;
}
}

詳細については、次の情報を参照してください。

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のJava EE WebサービスおよびクライアントでサポートされているOWSMポリシーに関する項

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の設計時のJava EE Webサービスおよびクライアントへのポリシーのアタッチに関する項

6.4.1.2 Microsoft WCF/.NET 4.5クライアントの構成(SSL経由のユーザー名トークン)

Microsoft WCF/.NET 4.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

Microsoft WCF/.NET 4.5クライアントを構成するには、次のようにします。

1. WebサービスのWSDLを使用して、.NETクライアントを生成します。
詳細は、http://msdn.microsoft.com/en-us/library/ms733133(v=vs.110).aspxの『How to: Create a Windows Communication Foundation Client』を参照してください。

2. セキュアな通信を有効化しているかどうかに従って、app.configファイルのestablishSecurityContextプロパティを設定する必要があります。
デフォルトでは、establishSecurityContextはtrue (セキュアな通信を有効化している)に設定されます。セキュアな通信を有効化していない場合、establishSecurityContextをfalseに設定します。

例については、次のサンプル(太字斜体の行)を参照してください。

<configuration>
<system.serviceModel>
<bindings>
<ws2007HttpBinding>
<binding name="wss_username_over_ssl_client">
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="None" />
<message clientCredentialType="UserName"
negotiateServiceCredential="false"
establishSecurityContext="true" />
<!-- extablishSecurityContext is true by default and therefore does not
have to be specified to enable secure conversation.
Set establishSecurityContext to false if secure conversation is not enabled -->
</security>
</binding>
</ws2007HttpBinding>
</bindings>
<client>
<endpoint address="https://10.244.167.70:7004/OWSMTestApp-Project1-context-root/wss_username_token_over_sslPort"
binding="ws2007HttpBinding"
bindingConfiguration="wss_username_over_ssl_client"
contract="ServiceReference1.wss_username_token_over_ssl"
name="wss_username_token_over_sslPort" />
</client>
</system.serviceModel>
</configuration>

3. プロジェクトをコンパイルします。

4. コマンド・プロンプトを開いて、プロジェクトのDebugフォルダに移動します。

5. <client_project_name>.exeと入力して[Enter]を押します。

6.4.2 Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントを使用してSSL経由のユーザー名トークンを実装できます。

次のトピックでは、SSL経由のユーザー名トークンを実装するために、Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントを構成する方法を説明します。

- Microsoft WCF/.NET 4.5 Webサービスの構成(SSL経由のユーザー名トークン)

- Microsoft WCF/.NET 4.5クライアントのためのOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

6.4.2.1 Microsoft WCF/.NET 4.5 Webサービスの構成(SSL経由のユーザー名トークン)

Microsoft WCF/.NET 4.5 Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

Microsoft WCF/.NET 4.5 Webサービスを構成するには、次のようにします。

1. サーバーをSSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

2. .NET Webサービスを作成します。

a. 次の.NET Webサービスの例に示すように、SecurityBindingElementを使用して、Webサービスのカスタム・バインディングを作成します。この例は、セキュアな通信を有効化していない場合のWebサービスを示しています。

static void Main(string[] args)
{
// Step 1 of the address configuration procedure: Create a URI to serve as the
// base address.
// Step 2 of the hosting procedure: Create ServiceHost
string uri = "http://host:port/TEST/NetService";
Uri baseAddress = new Uri(uri);

ServiceHost selfHost = new ServiceHost(typeof(CalculatorService), baseAddress);

try
{
SecurityBindingElement sm =
SecurityBindingElement.CreateUserNameOverTransportBindingElement();
sm.DefaultAlgorithmSuite = System.ServiceModel.Security.SecurityAlgorithmSuite.Basic128;
sm.SetKeyDerivation(false);
sm.SecurityHeaderLayout = SecurityHeaderLayout.Lax;
sm.IncludeTimestamp = true;
sm.KeyEntropyMode = SecurityKeyEntropyMode.CombinedEntropy;
sm.MessageSecurityVersion =
MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005
WSSecurityPolicy11BasicSecurityProfile10;
sm.LocalClientSettings.CacheCookies = true;
sm.LocalClientSettings.DetectReplays = true;
sm.LocalClientSettings.ReplayCacheSize = 900000;
sm.LocalClientSettings.MaxClockSkew = new TimeSpan(00, 05, 00);
sm.LocalClientSettings.MaxCookieCachingTime = TimeSpan.MaxValue;
sm.LocalClientSettings.ReplayWindow = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.SessionKeyRenewalInterval = new TimeSpan(10, 00, 00);
sm.LocalClientSettings.SessionKeyRolloverInterval = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.ReconnectTransportOnFailure = true;
sm.LocalClientSettings.TimestampValidityDuration = new TimeSpan(00, 05, 00); ;
sm.LocalClientSettings.CookieRenewalThresholdPercentage = 60;
sm.LocalServiceSettings.DetectReplays = false;
sm.LocalServiceSettings.IssuedCookieLifetime = new TimeSpan(10, 00, 00);
sm.LocalServiceSettings.MaxStatefulNegotiations = 128;
sm.LocalServiceSettings.ReplayCacheSize = 900000;
sm.LocalServiceSettings.MaxClockSkew = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.NegotiationTimeout = new TimeSpan(00, 01, 00);
sm.LocalServiceSettings.ReplayWindow = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.InactivityTimeout = new TimeSpan(00, 02, 00);
sm.LocalServiceSettings.SessionKeyRenewalInterval = new TimeSpan(15, 00, 00);
sm.LocalServiceSettings.SessionKeyRolloverInterval = new TimeSpan(00, 05, 00);
sm.LocalServiceSettings.ReconnectTransportOnFailure = true;
sm.LocalServiceSettings.MaxPendingSessions = 128;
sm.LocalServiceSettings.MaxCachedCookies = 1000;
sm.LocalServiceSettings.TimestampValidityDuration = new TimeSpan(15, 00, 00);
HttpTransportBindingElement hb = new HttpTransportBindingElement();
hb.ManualAddressing = false;
hb.MaxBufferPoolSize = 524288;
hb.MaxReceivedMessageSize = 65536;
hb.AllowCookies = false;
hb.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.KeepAliveEnabled = true;
hb.MaxBufferSize = 65536;
hb.ProxyAuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hb.Realm = "";
hb.TransferMode = System.ServiceModel.TransferMode.Buffered;
hb.UnsafeConnectionNtlmAuthentication = false;
hb.UseDefaultWebProxy = true;
TextMessageEncodingBindingElement tb1 = new TextMessageEncodingBindingElement();
tb1.MaxReadPoolSize = 64;
tb1.MaxWritePoolSize = 16;
tb1.MessageVersion = System.ServiceModel.Channels.MessageVersion.Soap12;
tb1.WriteEncoding = System.Text.Encoding.UTF8;
CustomBinding binding1 = new CustomBinding(sm);
binding1.Elements.Add(tb1);
binding1.Elements.Add(hb);
ServiceEndpoint ep = selfHost.AddServiceEndpoint(typeof(ICalculator), binding1,
"CalculatorService");

EndpointAddress myEndpointAdd = new EndpointAddress(
new Uri(uri),
EndpointIdentity.CreateDnsIdentity("WSMCert3"));
ep.Address = myEndpointAdd;

// Step 4 of the hosting procedure: Enable metadata exchange.
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
selfHost.Description.Behaviors.Add(smb);
selfHost.Credentials.ServiceCertificate.SetCertificate(StoreLocation.CurrentUser,
StoreName.My,
X509FindType.FindBySubjectName, "WSMCert3");
selfHost.Credentials.ClientCertificate.Authentication.CertificateValidationMode =
X509CertificateValidationMode.PeerOrChainTrust;
selfHost.Credentials.UserNameAuthentication.UserNamePasswordValidationMode =
UserNamePasswordValidationMode.Custom;
CustomUserNameValidator cu = new CustomUserNameValidator();
selfHost.Credentials.UserNameAuthentication.CustomUserNamePasswordValidator = cu;
using (ServiceHost host = new ServiceHost(typeof(CalculatorService)))
{
System.ServiceModel.Description.ServiceDescription svcDesc = selfHost.Description;
ServiceDebugBehavior svcDebug = svcDesc.Behaviors.Find<ServiceDebugBehavior>();
svcDebug.IncludeExceptionDetailInFaults = true;
}

// Step 5 of the hosting procedure: Start (and then stop) the service.
selfHost.Open();
Console.WriteLine("The Calculator service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.WriteLine();
Console.ReadLine();
selfHost.Close();
}
catch (CommunicationException ce)
{
Console.WriteLine("An exception occurred: {0}", ce.Message);
selfHost.Abort();
}
}

セキュアな通信を有効化するには、例のコードに次の調整を行います。

a. 作成されたSecurityBindingElement要素(sm)に基づいて、この要素をもう1つ作成します。たとえば次のようになります。

SecurityBindingElement scsm = SecurityBindingElement.createSecureConversationBindingElement(sm)

b. scsmを使用してカスタム・バインディングを作成します。

CustomBinding binding1 = new CustomBinding(scsm);

詳細は、http://msdn.microsoft.com/en-us/library/ms731835.aspxの『How to: Define a Windows Communication Foundation Service Contract』を参照してください。

6.4.2.2 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

OWSM 12cクライアントを構成して、Microsoft WCF/.NET 4.5 Webサービスとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. WebサービスのWSDLを使用して、OWSMクライアントを生成します。
詳細は、SOA Suiteの開発者ガイドを参照してください。

2. 次のポリシーをクライアントにアタッチします。
oracle/wss_username_token_over_ssl_client_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

6.5 Microsoft WCF/.NET 4.5クライアント向けのメッセージ保護付き相互認証(WS-Security 1.1)の実装

メッセージ保護付き相互認証ポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーとの間の相互運用性およびMicrosoft WCF/.NET 4.5サービス・ポリシーとOWSM 12cクライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてメッセージ保護付相互認証を実装する方法について説明します。

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付き相互認証)

- Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付き相互認証)

前述のいずれかのシナリオにおいてWebサービスおよびクライアントを構成する前に、メッセージ保護付き相互認証のための構成前提条件の実行の手順に従います。

6.5.1 メッセージ保護付き相互認証のための構成前提条件の実行

OWSM 12cとMicrosoft WCF/.NET 4.5との間の相互運用性のために、WS-Security 1.1標準に準拠したメッセージ保護付き相互認証を実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. 次のコマンドを使用して、サービス側のキーストアからX.509証明書ファイルを.cerファイル(alice.cerなど)にエクスポートします。

keytool -export -alias alice -file C:\alice.cer -keystore default-keystore.jks

詳細は、「keytool - 鍵および証明書管理ツール」(http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html)を参照してください。

2. Microsoft Management Console (mmc)を使用して、(前にエクスポートした)証明書ファイルをクライアント・サーバー上のキーストアにインポートします。具体的な手順については、Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)のステップ1を参照してください。

詳細は、http://msdn.microsoft.com/en-us/library/ms788967.aspxの『How to: View Certificates with the MMC Snap-in』を参照してください。

6.5.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付き相互認証)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付き相互認証を実装できます。

次のトピックでは、メッセージ保護付き相互認証を実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成する方法を説明します。

- Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付き相互認証)

- Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付き相互認証)

6.5.2.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付き相互認証)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 4.5クライアントとの相互運用性のためのメッセージ保護付き相互認証を実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. SOAP 1.2準拠のSOAコンポジットを作成してデプロイします。

2. Fusion Middleware Controlを使用して、次のポリシーをWebサービスにアタッチします。
oracle/wss11_x509_token_with_message_protection_service_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

3. wss11_x509_token_with_message_protection_service_policy_netをエクスポートします。encrypted="true"を"false"に変更し、再びインポートします。

<orasp:x509-token
orasp:enc-key-ref-mech="thumbprint"
orasp:is-encrypted="false"
orasp:is-signed="false"
orasp:sign-key-ref-mech="direct"/>

詳細は、次のリンクを参照してください。

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのエクスポートに関する項。

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのインポートに関する項。

4. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

5. 次のポリシーをアタッチします。
oracle/wsaddr_policy

6.5.2.2 Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付き相互認証)

Microsoft WCF/.NET 4.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのメッセージ保護付き相互認証を実装できます。

Microsoft WCF/.NET 4.5クライアントを構成するには、次のようにします。

1. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシ(「クライアント・プログラム」を参照)および構成ファイルを作成します。
次のクライアント・プログラムのサンプルを参照してください。

namespace IO_NET10_client
{
class Program
{
static void Main(string[] args)
{

BPELProcess1Client client = new BPELProcess1Client();

client.ClientCredentials.ClientCertificate.SetCertificate(
StoreLocation.CurrentUser,
StoreName.My,
X509FindType.FindBySubjectName, "WSMCert3");

client.ClientCredentials.ServiceCertificate.SetDefaultCertificate(
StoreLocation.CurrentUser,
StoreName.My,
X509FindType.FindBySubjectName, "Alice");

process proc = new process();
proc.input = "Test wss11_x509_token_with_message_protection_policy - ";
Console.WriteLine(proc.input);
processResponse response = client.process(proc);

Console.WriteLine(response.result.ToString());
Console.WriteLine("Press <ENTER> to terminate Client.");
Console.ReadLine();
}
}
}

詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.110%29.aspxを参照してください。

2. 次のサンプルに示すように、app.config構成ファイルを作成します。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="secureBehaviour">
<clientCredentials>
<serviceCertificate>
<defaultCertificate findValue="<certificate_cn>"
storeLocation="CurrentUser"
storeName="My"
x509FindType="FindBySubjectName"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<ws2007HttpBinding>
<binding name="wss_username_over_ssl_client">
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="None" />
<message clientCredentialType="UserName"
negotiateServiceCredential="false"
establishSecurityContext="false" />
</security>
</binding>
</ws2007HttpBinding>
</bindings>
<client>
<endpoint address="http://<server>:<port>//MyWebService1SoapHttpPort"
binding="ws2007HttpBinding"
contract="MyWebService1"
name="MyWebService1SoapHttpPort"
behaviorConfiguration="secureBehaviour" >
<identity>
<dns value="<certificate_cn>"/>
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>

3. プロジェクトをコンパイルします。

4. コマンド・プロンプトを開いて、プロジェクトのDebugフォルダに移動します。

5. <client_project_name>.exeと入力して[Enter]を押します。

6.5.3 Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付き相互認証)

Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.1標準に準拠した相互認証を実装できます。

Microsoft WCF/.NET 4.5 WebサービスおよびOWSM 12cクライアントを構成するには、次のようにします。

1. .NET Webサービスを作成します。

詳細は、http://msdn.microsoft.com/en-us/library/ms731835%28v=vs.90%29.aspxの『How to: Define a Windows Communication Foundation Service Contract』を参照してください。

2. SymmetricSecurityBindingElementを使用して、Webサービスのカスタム・バインディングを作成します。

SymmetricSecurityBindingElementオブジェクトのサンプルを次に示します。

SymmetricSecurityBindingElement sm =
(SymmetricSecurityBindingElement)SecurityBindingElement.CreateMutualCertificate
BindingElement();
sm.DefaultAlgorithmSuite =
System.ServiceModel.Security.SecurityAlgorithmSuite.Basic128;sm.SetKeyDerivati
on(false);
sm.SecurityHeaderLayout = SecurityHeaderLayout.Lax;sm.IncludeTimestamp =
true;
sm.KeyEntropyMode = SecurityKeyEntropyMode.CombinedEntropy;
sm.MessageProtectionOrder =
MessageProtectionOrder.SignBeforeEncrypt;sm.MessageSecurityVersion =
MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversation
February2005WSSecurityPolicy11BasicSecurityProfile10;
sm.RequireSignatureConfirmation =
true;

詳細は、http://msdn.microsoft.com/en-us/library/ms730305%28v=vs.90%29.aspxの『How to: Create a Custom Binding Using the SecurityBindingElement』を参照してください。

3. アプリケーションをデプロイします。

4. OWSM 12cクライアントを構成するには、JDeveloperを使用して、.NET Webサービスを使用するSOAコンポジットを作成します。

詳細は、SOA Suiteの開発者ガイドを参照してください。

5. JDeveloperで、.NETサービスのWSDLを使用してパートナ・リンクを作成し、次のようにインポートを追加します。

<wsdl:import namespace="<namespace>" location="<WSDL location>"/>

6. Fusion Middleware Controlで、次のポリシーをWebサービス・クライアントにアタッチします。

oracle/wss11_x509_token_with_message_protection_client_policy

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

7. keystore.recipient.aliasの構成を指定します。

この情報を指定するには、ポリシーをアタッチするときにポリシー構成をオーバーライドします。

必ず、ステップ4でインポートした証明書(wsmcert3)の別名としてkeystore.recipient.aliasを構成してください。

詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のポリシー構成プロパティのオーバーライドに関する項を参照してください。

8. クライアントからWebサービス・メソッドを起動します。

6.6 Microsoft WCF/.NET 4.5クライアント向けのメッセージ保護付きKerberosの実装

メッセージ保護付きKerberosポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成してメッセージ保護付きKerberosを実装する方法を説明します。

- メッセージ保護付きKerberosの相互運用性のための前提条件タスクの実行

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きKerberos)

6.6.1 メッセージ保護付きKerberosの相互運用性のための前提条件タスクの実行

OWSM 12c WebサービスとMicrosoft WCF/.NET 4.5クライアントとの間の相互運用性のために、メッセージ保護付きKerberosを実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. 鍵配布センター(KDC)およびアクティブ・ディレクトリ(AD)を構成します。

詳細は、http://download.oracle.com/docs/cd/E19316-01/820-3746/gisdn/index.htmlのWindowsのアクティブ・ディレクトリおよびドメイン・コントローラの構成方法(ドメイン・コントローラがKDCの役割を果たします)に関する項を参照してください。

2. 次のKerberos構成ファイルのサンプルに示すように、c:\winntにあるKerberos構成ファイルkrb5.confを設定します。

[logging]
default = c:\log\krb5libs.log
kdc = c:\log\krb5kdc.log
admin_server = c:\log\kadmind.log
[libdefaults]
default_realm = MYCOMPANY.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = false
default_tkt_enctypes = rc4-hmac
default_tgs_enctypes = rc4-hmac
permitted_enctypes = rc4-hmac
kdc = hostname
[realms]
MYCOMPANY.LOCAL =
{ kdc = host:port  admin_server = host:port
default_domain = <domainname>
}
[domain_realm]
.<domainname> = MYCOMPANY.LOCAL
<domainname> = MYCOMPANY.LOCAL
[appdefaults]
pam =
{   debug = false  ticket_lifetime = 36000  renew_lifetime = 36000  forwardable =
true  krb4_convert = false }

6.6.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きKerberos)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを使用してメッセージ保護付きKerberosを実装できます。

次のトピックでは、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成してメッセージ保護付きKerberosを実装する方法を説明します。

- Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きKerberos)

- Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きKerberos)

6.6.2.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(メッセージ保護付きKerberos)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 4.5クライアントとの相互運用性のためのメッセージ保護付きKerberosを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。
詳細は、『Webサービスの管理』のWebサービス・アプリケーションのデプロイに関する説明を参照してください。

2. oracle/wss11_kerberos_token_with_message_protection_service_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

3. ポリシー設定を編集して、アルゴリズム・スイートをBasic128Rsa15に設定します。

4. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

6.6.2.2 Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きKerberos)

Microsoft WCF/.NET 4.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのメッセージ保護付きKerberosを実装できます。

Microsoft WCF/.NET 4.5クライアントを構成するには、次のようにします。

1. ADにユーザーを作成して、Webサービスがホストされるホストを指定します。デフォルトでは、ユーザー・アカウントはRC4-HMAC暗号を使用して作成されます。たとえば、ユーザー名付きのfoobarは、HTTP/foobarとなります。

2. 次のようにktpassコマンドを使用して、KDCが実行されているWindowsのADマシンにkeytabファイルを作成します。
ktpass -princ HTTP/foobar@MYCOMPANY.LOCAL -pass Oracle123 -mapuser foobar -out foobar.keytab -ptype KRB5_NT_PRINCIPAL -kvno 4

HTTP/foobarは、ユーザー「foobar」にマッピングされるSPNです。「/desonly」を指定したり、「/cyrpto」に「des-cbc-crc」は指定しないでください。MYCOMPANY.LOCALはKDCのデフォルトのレルムで、krb5.iniファイルで使用可能です。passに指定するパスワードは、ユーザーの作成時のパスワードと一致している必要があります。

FTPのバイナリ・モードを使用して、生成したキータブ・ファイルをSOAコンポジットWebサービスがホストされているマシンに移動します。

3. setSpn -L foobar
setSpn -A HTTP/foobar@MYCOMPANY.LOCAL foobar

ユーザーにマッピングするSPNは1つにしてください。複数のSPNがユーザーにマッピングされている場合は、setSpn -D <spname> <username>コマンドを使用して削除します。

次のようにsetSpnコマンドを使用して、サービス・プリンシパルをユーザーにマッピングします。

setSpn -A HTTP/foobar@MYCOMPANY.LOCAL foobar

setSpn -L foobar

ユーザーにマッピングするSPNは1つにしてください。複数のSPNがユーザーにマッピングされている場合は、setSpn -D <spname> <username>コマンドを使用して削除します。

4. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。
Windowsのエクスプローラでアプリケーションを右クリックして、generatedProxy.csファイルおよびapp.configファイルを追加し、既存の項目を追加を選択します。

app.configのendpoint要素に、「HTTP/foobar@MYCOMPANY.LOCAL」というサービス・プリンシパル名(keytabの作成で使用したものと同じ値)の「identity」要素を追加します。

<client>
<endpoint address="http://host:port/HelloServicePort"
binding="customBinding" bindingConfiguration="NewHelloSoap12HttpPortBinding"
contract="NewHello" name="HelloServicePort">
<identity>
<servicePrincipalName value ="HTTP/foobar@MYCOMPANY.LOCAL"/>
</identity>
</endpoint>

</client>

次のカスタム・バインディングのサンプルを参照してください。

<customBinding>
<binding name="NewHelloSoap12HttpPortBinding">
<!--Added by User: Begin-->
<security defaultAlgorithmSuite="Basic128"
authenticationMode="Kerberos"
requireDerivedKeys="false" securityHeaderLayout="Lax"
includeTimestamp="true"
keyEntropyMode="CombinedEntropy"
messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005
WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurity
Profile10"
requireSignatureConfirmation="true">
<localClientSettings cacheCookies="true" detectReplays="true"
replayCacheSize="900000" maxClockSkew="00:05:00"
maxCookieCachingTime="Infinite"
replayWindow="00:05:00"
sessionKeyRenewalInterval="10:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
timestampValidityDuration="00:05:00"
cookieRenewalThresholdPercentage="60" />
<localServiceSettings detectReplays="true"
issuedCookieLifetime="10:00:00"
maxStatefulNegotiations="128" replayCacheSize="900000"
maxClockSkew="00:05:00"
negotiationTimeout="00:01:00" replayWindow="00:05:00"
inactivityTimeout="00:02:00"
sessionKeyRenewalInterval="15:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
maxPendingSessions="128"
maxCachedCookies="1000"
timestampValidityDuration="00:05:00" />
<secureConversationBootstrap />
</security>
<!--Added by User: End-->
<textMessageEncoding maxReadPoolSize="64"
maxWritePoolSize="16"
messageVersion="Soap12" writeEncoding="utf-8">
<readerQuotas maxDepth="32" maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
</textMessageEncoding>
<!--Added by User: Begin-->
<httpTransport manualAddressing="false"
maxBufferPoolSize="524288"
maxReceivedMessageSize="65536" allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true" maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm="" transferMode="Buffered"
unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true" />
<!--Added by User: End-->
</binding>
</customBinding>

詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.110%29.aspxを参照してください。

5. クライアント・プログラムを実行します。

6.7 Microsoft WCF/.NET 4.5クライアント向けの導出キーを使用したメッセージ保護付きKerberosの実装

導出キーを使用したメッセージ保護付きKerberosポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成して、メッセージ保護付きKerberosを導出キーを使用して実装する方法を説明します。

- 導出キーを使用したメッセージ保護付きKerberosの構成前提条件タスクの実行

- OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(導出キーを使用したKerberosメッセージ)

6.7.1 導出キーを使用したメッセージ保護付きKerberosの構成前提条件タスクの実行

OWSM 12c WebサービスとMicrosoft WCF/.NET 4.5クライアントとの間の相互運用性のために、導出キーを使用してメッセージ保護付きKerberosを実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. 鍵配布センター(KDC)およびアクティブ・ディレクトリ(AD)を構成します。

詳細は、以下のトピックを参照してください。

- http://download.oracle.com/docs/cd/E19316-01/820-3746/gisdn/index.htmlのWindowsのアクティブ・ディレクトリおよびドメイン・コントローラの構成方法(ドメイン・コントローラがKDCの役割を果します)に関する項

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のKerberosトークンの構成に関する項

2. 次のKerberos構成ファイルのサンプルに示すように、c:\winntにあるKerberos構成ファイルkrb5.confを設定します。

[logging]
default = c:\log\krb5libs.log
kdc = c:\log\krb5kdc.log
admin_server = c:\log\kadmind.log
[libdefaults]
default_realm = MYCOMPANY.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = false
default_tkt_enctypes = rc4-hmac
default_tgs_enctypes = rc4-hmac
permitted_enctypes = rc4-hmac
kdc = hostname
[realms]
MYCOMPANY.LOCAL =
{ kdc = host:port  admin_server = host:port
default_domain = <domainname>
}
[domain_realm]
.<domainname> = MYCOMPANY.LOCAL
<domainname> = MYCOMPANY.LOCAL
[appdefaults]
pam =
{   debug = false  ticket_lifetime = 36000  renew_lifetime = 36000  forwardable =
true  krb4_convert = false }

6.7.2 OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントの構成(導出キーを使用したKerberosメッセージ)

OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを使用して、導出キーを使用したメッセージ保護付きKerberosを実装できます。

次のトピックでは、メッセージ保護付きKerberosを導出キーを使用して実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成する方法を説明します。

- Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(導出キーを使用したメッセージ保護付きKerberos)

- Microsoft WCF/.NET 4.5クライアントの構成(導出キーを使用したメッセージ保護付きKerberos)

6.7.2.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(導出キーを使用したメッセージ保護付きKerberos)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 4.5クライアントとの相互運用性のための、導出キーを使用したメッセージ保護付きKerberosを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。
詳細は、『Webサービスの管理』のWebサービス・アプリケーションのデプロイに関する説明を参照してください。

2. wss11_kerberos_token_with_message_protection_basic128_service_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

3. ポリシー設定を編集して、「Derived Keys」オプションを有効にします。

4. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

6.7.2.2 Microsoft WCF/.NET 4.5クライアントの構成(導出キーを使用したメッセージ保護付きKerberos)

Microsoft WCF/.NET 4.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のための、導出キーを使用したメッセージ保護付きKerberosを実装できます。

Microsoft WCF/.NET 4.5クライアントを構成するには、次のようにします。

1. ADにユーザーを作成して、Webサービスがホストされるホストを指定します。デフォルトでは、ユーザー・アカウントはRC4-HMAC暗号を使用して作成されます。たとえば、ユーザー名をfoobarとすると、HTTP/foobarとなります。

2. 次のようにktpassコマンドを使用して、KDCが実行されているWindowsのADマシンにkeytabファイルを作成します。
ktpass -princ HTTP/foobar@MYCOMPANY.LOCAL -pass Oracle123 -mapuser foobar -out foobar.keytab -ptype KRB5_NT_PRINCIPAL -kvno 4

HTTP/foobarがユーザー「foobar」にマッピングされるSPNです。「/desonly」を指定したり、「/cyrpto」に「des-cbc-crc」は指定しないでください。MYCOMPANY.LOCALはKDCのデフォルトのレルムで、krb5.iniファイルで使用可能です。passに指定するパスワードは、ユーザーの作成時のパスワードと一致している必要があります。

FTPのバイナリ・モードを使用して、生成したキータブ・ファイルをSOAコンポジットWebサービスがホストされているマシンに移動します。

3. 次のようにsetSpnコマンドを使用して、サービス・プリンシパルをユーザーにマッピングします。
setSpn -A HTTP/foobar@MYCOMPANY.LOCAL foobar

setSpn -L foobar

ユーザーにマッピングするSPNは1つにしてください。複数のSPNがユーザーにマッピングされている場合は、setSpn -D <spname> <username>コマンドを使用して削除します。

4. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。
Windowsのエクスプローラでアプリケーションを右クリックして、generatedProxy.csファイルおよびapp.configファイルを追加し、既存の項目を追加を選択します。

app.configのendpoint要素に、「HTTP/foobar@MYCOMPANY.LOCAL」というサービス・プリンシパル名(keytabの作成で使用したものと同じ値)の「identity」要素を追加します。

<client>
<endpoint address="http://host:port/HelloServicePort"
binding="customBinding" bindingConfiguration="NewHelloSoap12HttpPortBinding"
contract="NewHello" name="HelloServicePort">
<identity>
<servicePrincipalName value ="HTTP/foobar@MYCOMPANY.LOCAL"/>
</identity>
</endpoint>
</client>

次のカスタム・バインディングのサンプルを参照してください。

<customBinding>
<binding name="NewHelloSoap12HttpPortBinding">
<!--Added by User: Begin-->
<security defaultAlgorithmSuite="Basic128"
authenticationMode="Kerberos"
requireDerivedKeys="true" securityHeaderLayout="Lax"
includeTimestamp="true"
keyEntropyMode="CombinedEntropy"
messageProtectionOrder="SignBeforeEncrypt"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005
WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurity
Profile10"
requireSignatureConfirmation="true">
<localClientSettings cacheCookies="true" detectReplays="true"
replayCacheSize="900000" maxClockSkew="00:05:00"
maxCookieCachingTime="Infinite"
replayWindow="00:05:00"
sessionKeyRenewalInterval="10:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
timestampValidityDuration="00:05:00"
cookieRenewalThresholdPercentage="60" />
<localServiceSettings detectReplays="true"
issuedCookieLifetime="10:00:00"
maxStatefulNegotiations="128" replayCacheSize="900000"
maxClockSkew="00:05:00"
negotiationTimeout="00:01:00" replayWindow="00:05:00"
inactivityTimeout="00:02:00"
sessionKeyRenewalInterval="15:00:00"
sessionKeyRolloverInterval="00:05:00"
reconnectTransportOnFailure="true"
maxPendingSessions="128"
maxCachedCookies="1000"
timestampValidityDuration="00:05:00" />
<secureConversationBootstrap />
</security>
<!--Added by User: End-->
<textMessageEncoding maxReadPoolSize="64"
maxWritePoolSize="16"
messageVersion="Soap12" writeEncoding="utf-8">
<readerQuotas maxDepth="32" maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
</textMessageEncoding>
<!--Added by User: Begin-->
<httpTransport manualAddressing="false"
maxBufferPoolSize="524288"
maxReceivedMessageSize="65536" allowCookies="false"
authenticationScheme="Anonymous"
bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
keepAliveEnabled="true" maxBufferSize="65536"
proxyAuthenticationScheme="Anonymous"
realm="" transferMode="Buffered"
unsafeConnectionNtlmAuthentication="false"
useDefaultWebProxy="true" />
<!--Added by User: End-->
</binding>
</customBinding>

5. クライアント・プログラムを実行します。

6.8 Microsoft WCF/.NET 4.5クライアント向けのSPNEGOネゴシエーションによるKerberosの実装

SPNEGOネゴシエーションによるKerberosポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

次のトピックでは、SPNEGOネゴシエーションによるKerberosを実装するために、OWSM 12c WebサービスおよびMicrosoft WCF/.NET 4.5クライアントを構成する方法を示します。

- Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOネゴシエーションによるKerberos)

- Microsoft WCF/.NET 4.5クライアントの構成(SPNEGOネゴシエーションによるKerberos)

6.8.1 Microsoft WCF/.NET 4.5クライアントのためのOWSM 12c Webサービスの構成(SPNEGOネゴシエーションによるKerberos)

OWSM 12c Webサービスを構成して、Microsoft WCF/.NET 4.5クライアントとの相互運用性のためのSPNEGOネゴシエーションによるKerberosを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。
詳細は、『Webサービスの管理』のWebサービス・アプリケーションのデプロイに関する説明を参照してください。

2. http_spnego_token_service_templateアサーション・テンプレートを使用するポリシーを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の「SPNEGOネゴシエーションによるKerberosの構成」を参照してください。

3. ポリシーをWebサービスにアタッチします。

6.8.2 Microsoft WCF/.NET 4.5クライアントの構成(SPNEGOネゴシエーションによるKerberos)

Microsoft WCF/.NET 4.5クライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSPNEGOネゴシエーションによるKerberosを実装できます。

Microsoft WCF/.NET 4.5クライアントを構成するには、次のようにします。

1. Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。
詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.110%29.aspxを参照してください。

2. Windowsのエクスプローラでアプリケーションを右クリックして、generatedProxy.csファイルおよびapp.configファイルを追加し、既存の項目を追加を選択します。

3. 次のサンプルに示すように、app.configファイルを編集します。

<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BPELProcessBinding">
<security mode= "TransportCredentialOnly">
<transport clientCredentialType="Windows"/>
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint
address="http://host:port/soa-infra/services/default/SOAProxy/bpelpro
cess_client_ep"
binding="basicHttpBinding"
bindingConfiguration="BPELProcessBinding"
contract="BPELProcess" name="BPELProcess_pt"
<identity>
<servicePrincipalName value ="HTTP/host:port@MYCOMPANY.LOCAL" />
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>

このリストでは、エンドポイント要素のcontractおよびname属性の値は、generatedProxy.csファイルから取得されます。

4. クライアントをコンパイルします。

5. デプロイしたWebサービスにOWSMポリシーをアタッチした後、クライアントを実行します。

6.9 Microsoft WCF/.NET 4.5クライアント向けのSPNEGOネゴシエーションおよび資格証明の委任によるKerberosの実装

SPNEGOネゴシエーションおよび資格証明の委任によるKerberosポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12cサービス・ポリシーとMicrosoft WCF/.NET 4.5クライアント・ポリシーとの間の相互運用性を実現するために実装されます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービス・アプリケーションを作成してデプロイします。

詳細は、『Webサービスの管理』のWebサービス・アプリケーションのデプロイに関する説明を参照してください。

2. http_spnego_token_service_templateアサーション・テンプレートを使用するポリシーを作成します。

3. ポリシーをWebサービスにアタッチします。

4. credential.delegation構成設定の値をtrueに設定します。

この情報を指定するには、ポリシーをアタッチするときにポリシー構成をオーバーライドします。

詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のポリシー構成プロパティのオーバーライドに関する項を参照してください。

5. Microsoft WCF/.NET 4.5クライアントを構成するには、Microsoft SvcUtilユーティリティを使用して、デプロイされたWebサービスからクライアント・プロキシおよび構成ファイルを作成します。

詳細は、http://msdn.microsoft.com/en-us/library/aa347733%28v=vs.110%29.aspxを参照してください。

6. Windowsのエクスプローラでアプリケーションを右クリックして、generatedProxy.csファイルおよびapp.configファイルを追加し、既存の項目を追加を選択します。

7. 次のサンプルに示すように、app.configファイルを編集します。

<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BPELProcess1Binding">
<security mode= "TransportCredentialOnly">
<transport clientCredentialType="Windows"/>
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint
address="http://host:port/soa-infra/services/default/SOAProxy/bpelpro
cess1_client_ep"
binding="basicHttpBinding"
bindingConfiguration="BPELProcess1Binding"
contract="BPELProcess1" name="BPELProcess1_pt"
behaviorConfiguration="CredentialDelegation">
<identity>
<servicePrincipalName value ="HTTP/host:port@MYCOMPANY.LOCAL" />
</identity>
</endpoint>
</client>
<behaviors>
<endpointBehaviors>
<behavior name="CredentialDelegation">
<clientCredentials>
<windows allowedImpersonationLevel="Delegation"
allowNtlm="false"/>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
</configuration>

例では、エンドポイント要素のcontractおよびname属性の値は、generatedProxy.csファイルから取得されます。

8. クライアントをコンパイルします。

9. デプロイしたWebサービスにOWSMポリシーをアタッチした後、クライアントを実行します。

6.10 Microsoft Active Directory Federation Services 2.0 (ADFS 2.0) STSを使用するWCF/.NET 4.5クライアント

セキュリティ・ポリシーを使用して、Microsoft Active Directory Federation Services 2.0 (ADFS 2.0)セキュア・トークン・サービス(STS)を使用するWCF/.NET 4.5クライアントを保護できます。

次のポリシーが、ADFS 2.0を使用するWCF/.NET 4.5クライアントの保護に使用されます。

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

- oracle/wss_saml_token_bearer_over_ssl_service_policy

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy

注意:

SAML送信者保証トークンは、この使用例ではサポートされません。

この項で説明する手順は、Windows Server 2008またはWindows Server 2008 R2へのADFS 2.0のインストールに基づいています。

次のトピックでは、ADFS 2.0をインストールおよび構成する方法を説明します。

- Active Directory Federation Services (ADFS) 2.0のインストールおよび構成

- ADFS 2.0 STSによって発行されたSAMLアサーションを信頼するためのOWSMの構成

- Oracle Internet Directoryのユーザーの構成

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

- ADFS 2.0のリライイング・パーティとしてのWebサービスの登録

- ADFS 2.0を使用するWCF/.NET 4.5クライアントの保護

6.10.1 Active Directory Federation Services (ADFS) 2.0のインストールおよび構成

ADFS 2.0をWindows Server 2008またはWindows Server 2008 R2システムにインストールして構成できます。

Active Directory Federation Services (ADFS) 2.0をインストールおよび構成するには、次のようにします。

1. STSロールでシステムを設定します。

2. インターネット インフォメーション サービス (IIS) マネージャ・コンソールを使用して、IISで自己署名入りサーバー認証証明書を作成して構成し、デフォルトのWebサイトにバインドします。完了したら、SSLサーバー認証を有効にします。

注意:

ADFS 2.0設定ウィザードによって、Webサーバー(IIS)サーバー・ロールが自動的にシステムにインストールされます。

3. スタンドアロン・フェデレーション・サーバーとしてADFS 2.0を構成します。

4. ADFS 2.0トークン署名証明書をエクスポートします。

自己署名入り証明書の場合は、「DER encoded binary X.509 (.cer)」を選択します。

署名証明書が自己署名入りでない場合は、「Cryptographic Message Syntax Standard - PKCS #7 証明書 (.P7B)」を選択し、証明のパスにある証明書をすべて含めることを指定します。

5. ユーザーを作成し、電子メール・アドレスを含めます。後でSTSを有効にして、サービス用の送信SAMLアサーションのサブジェクト名IDとして電子メール・アドレスを送信します。

詳細については、次の情報を参照してください。

- http://technet.microsoft.com/en-us/library/dd349801%28v=ws.10%29.aspxの「Windows Server 2008 R2 and Windows Server 2008」

- http://technet.microsoft.com/en-us/library/dd578336%28v=ws.10%29.aspxの「Active Directory Services」

- http://technet.microsoft.com/library/cc772128%28WS.10%29.aspxの「Active Directory Federation Services」

- http://technet.microsoft.com/en-us/library/cc731443%28v=ws.10%29.aspxの「AD FS Step-by-Step Guide」

- http://technet.microsoft.com/en-us/library/dd807092%28v=ws.10%29.aspxの「AD FS 2.0 Deployment Guide」

6.10.2 ADFS 2.0 STSによって発行されたSAMLアサーションを信頼するためのOWSMの構成

信頼できるSTSサーバーにSTS署名証明書を追加して、信頼できるSAMLトークン発行者としてADFS 2.0 STSを保護できます。

ADFS 2.0 STSによって発行されたSAMLアサーションを信頼するようにOWSMを構成するには、次のようにします。

1. Active Directory Federation Services (ADFS) 2.0のインストールおよび構成でエクスポートしたSTS署名証明書を取得します。

証明書チェーンの.p7bファイルの場合、IEでファイルを開き、各証明書を.cerファイルのチェーンにコピーします。

2. keytoolを使用して証明書をデフォルトのキーストアの場所にインポートします。

keytool –importcert –file <sts-signing-certs-file> –trustcacerts –alias <alias> –keystore default-keystore.jks

詳細は、「keytool - 鍵および証明書管理ツール」(http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html)を参照してください。

3. http://domain-name/adfs/services/trustをSAMLの信頼できる発行者として追加します。

4. 信頼できるSTSサーバー・セクションにSTS証明書のサブジェクトDN (RFC 2253で定義)を追加します。CN=abcなど、RFC 2253に準拠する文字列を使用してください。keytoolなどの任意のメカニズムを使用して、証明書を表示し、サブジェクトDNを決定できます。

詳細は、次のトピックを参照してください。

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のSAMLの信頼できる発行者およびDNリストの構成に関する項。

- http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.htmlのkeytool - 鍵および証明書管理ツールに関するトピック

6.10.3 Oracle Internet Directoryのユーザーの構成

各ユーザーに、ADFSに設定されるユーザー電子メール・アドレスと一致するメール属性を構成します。

Oracle Internet Directoryでのユーザーの構成の詳細は、『Oracle Internet Directory管理者ガイド』のユーザー作成のためのディレクトリ・エントリの管理を参照してください。

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

OWSMでは、Webサービスに直接アタッチできる多数のセキュリティ・ポリシーをサポートしています。

次のOWSMポリシーのいずれかをWebサービスにアタッチします。

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

- oracle/wss_saml_token_bearer_over_ssl_service_policy

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy

詳細は、次を参照してください。

- 『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明

- Oracle Web Services ManagerによるWebサービスの保護およびポリシーの管理の事前定義済のポリシー

6.10.5 ADFS 2.0のリライイング・パーティとしてのWebサービスの登録

電子メール・アドレスまたは名前ID (SAM-Account-Name)をサブジェクト名IDとして使用してWebサービスにSAMLアサーションを発行するようにADFS 2.0を構成できます。

ADFS 2.0をリライイング・パーティとして構成するには、次のようにします。

1. Webサービスをリライイング・パーティとして追加します。

詳細は、http://technet.microsoft.com/en-us/library/dd807108.aspxの「Create a Relying Party Trust Manually」を参照してください。

2. サービスの要求規則を構成します。

STSを有効にして、サービス用の送信SAMLアサーションのsubject name idとして電子メール・アドレスまたは名前IDを送信し、テンプレートの異なる2つの要求規則のチェーンを作成します。

STSを有効にして、サービス用の送信SAMLアサーションのsubject name idとして電子メール・アドレスまたは名前IDを送信するには、この項の手順を使用して、テンプレートの異なる2つの要求規則のチェーンを作成します。

詳細は、以下のトピックを参照してください。

- http://technet.microsoft.com/en-us/library/ee913578%28v=ws.10%29.aspxの「Checklist: Creating Claim Rules for a Relying Party Trust」。

- http://technet.microsoft.com/en-us/library/dd807115%28v=ws.10%29.aspxの「Create a Rule to Send LDAP Attributes as Claims」。

6.10.6 ADFS 2.0を使用するWCF/.NET 4.5クライアントの保護

WCF/.NET 4.5クライアントを保護するため、複数のセキュリティおよび認証メカニズムを実装できます。

ADFS 2.0を使用してWCF/.NET 4.5クライアントを保護するには、次のようにします。

1. STSおよびサービス用のSSLサーバー証明書をWindowsにインポートします。

STSまたはサービス用のSSLサーバー証明書が、信頼できるCAから発行されていない、または自己署名入りである場合は、Microsoft WCF/.NET 4.5クライアントの構成(メッセージ保護付きユーザー名トークン)のステップ1の説明に従って、MMCツールを使用してインポートする必要があります。

詳細は、http://msdn.microsoft.com/en-us/library/ms788967.aspxの『How to: View Certificates with the MMC Snap-in』を参照してください。

2. 後述のステップ3および4の説明に従って、WCF/.NETクライアントを作成および構成します。

ADFS 2.0 STSにより、トークンに対する保険としての複数のセキュリティおよび認証メカニズムがサポートされます。これらはそれぞれ個別のエンドポイントとして公開されます。ユーザー名/パスワード認証では、2つのエンドポイントが提供されます。

- http://<adfs.domain>/adfs/services/trust/13/username - このエンドポイントはメッセージ保護付きユーザー名トークン用です。

- https://<adfs.domain>/adfs/services/trust/13/usernamemixed - このエンドポイントはトランスポート保護(SSL)付きユーザー名トークン用です。

WCFクライアントは、SSLのユーザー名トークン用のhttps://<adfs.domain>/adfs/services/trust/13/usernamemixedエンドポイントを使用して、サービスのSAMLベアラー・トークンを取得します。

3. サービスWSDLを使用して、WCFクライアントを生成します。

詳細は、http://msdn.microsoft.com/en-us/library/ms733133(v=vs.110).aspxの『How to: Create a Windows Communication Foundation Client』を参照してください。

4. 次のようにして、ws2007FederationHttpBindingを使用するクライアントを構成し、app.configファイルを編集します。

例6-16に、次のポリシーを使用したWebサービスで使用するapp.configのサンプルを示します。

- oracle/wss_sts_issued_saml_bearer_token_over_ssl_service_policy

- oracle/wss_saml_token_bearer_over_ssl_service_policy

- oracle/wss11_saml_or_username_token_with_message_protection_service_policy

詳細は、http://msdn.microsoft.com/en-us/library/bb472490.aspxの「WS 2007 Federation HTTP Binding」を参照してください

5. program.csファイルを編集し、サービスの呼出しを行います。

まだ存在していない場合は、プロジェクトに.csファイルを作成し、program.csという名前(または任意の名前)を付けます。例6-17のコードと一致するように編集します。

この例では、次のとおりです。

joeはユーザー名、eojはパスワードであり、STSに対して認証するためにクライアントによって使用されます。

System.Net.ServicePointManager.ServerCertificateValidationCallback = ((sender, certificate, chain, sslPolicyErrors) => true);は、サーバー側の自己署名入り証明書を検証するために追加されています。サーバー証明書が信頼できるCAから発行されている場合、これは不要です。テスト用に自己署名入り証明書を使用している場合、この方法を追加してクライアント側の証明書を検証します。

次の様々なSAMLベースの認証を実装するためのapp.configファイルのサンプルを参照してくささい。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="secureBehaviour">
<clientCredentials>
<serviceCertificate>
<defaultCertificate findValue="weblogic"
storeLocation="LocalMachine"
storeName="My"
x509FindType="FindBySubjectName"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<ws2007FederationHttpBinding>
<binding name="JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLSoapHttp">
<security mode="TransportWithMessageCredential">
<message negotiateServiceCredential="false"
algorithmSuite="Basic128"
issuedTokenType ="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV1.1"
issuedKeyType="BearerKey">
<issuer address ="https://domain-name/adfs/services/trust/13/usernamemixed"
binding ="ws2007HttpBinding"
bindingConfiguration="ADFSUsernameMixed"/>
</message>
</security>
</binding>
</ws2007FederationHttpBinding>
<ws2007HttpBinding>
<binding name="ADFSUsernameMixed">
<security mode="TransportWithMessageCredential">
<message clientCredentialType="UserName"
establishSecurityContext="false" />
</security>
</binding>
</ws2007HttpBinding>
</bindings>
<client>
<endpoint address="https://host:8002/JaxWsWss11SamlOrUsernameOrSamlBearerOverSSL/JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLService"
binding="ws2007FederationHttpBinding"
bindingConfiguration="JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLSoapHttp"
contract="JaxWsWss11SamlOrUsernameOrSamlBearerOverSSL"
name="JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLPort">
<identity>
<dns value="weblogic" />
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>

次のprogram.csファイルのサンプルを参照してください。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;

namespace Client
{
class Program
{
static void Main(string[] args)
{
JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLClient client =
New JaxWsWss11SamlOrUsernameOrSamlBearerOverSSLClient();

client.ClientCredentials.UserName.UserName = "joe";
client.ClientCredentials.UserName.Password = "eoj";

System.Net.ServicePointManager.ServerCertificateValidationCallback =
((sender, certificate, chain, sslPolicyErrors) => true);

Console.WriteLine(client.echo("Hello"));
Console.Read();
}

}
}

7 Oracle Service Bus 10gのセキュリティ環境との相互運用性

Oracle Web Services Manager (OWSM)は、Oracle Service Bus 10gのセキュリティ環境と相互運用できます。OWSM 12cとOracle Service Bus 10gとの間の相互運用性を実現するため、WS-Security 1.0標準に準拠するポリシーがWebサービスにアタッチされます。

この章の内容は次のとおりです。

- Oracle Service Bus 10gのセキュリティ環境の相互運用性の理解

- Oracle Service Bus 10gクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)の実装

- Oracle Service Bus 10gクライアント向けのWS-Security 1.0メッセージ保護付きSAML送信者保証トークンの実装

- Oracle Service Bus 10gクライアント向けのSSL経由のSAMLまたはユーザー名トークンの実装

- Oracle Service Bus 10gクライアント向けのWS-Security 1.0メッセージ保護付き相互認証の実装

7.1 Oracle Service Bus 10gのセキュリティ環境の相互運用性の理解

Oracle Service Bus 10gでは、ポリシーをアタッチして、インバウンド・リクエストとアウトバウンド・リクエストに対してセキュリティ環境を構成します。Oracle Service Busでは、そのセキュリティ・サービスのビルディング・ブロックとして、基礎となるWebLogicセキュリティ・フレームワークを使用します。

ポリシーを構成およびアタッチする方法の詳細は、http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.htmlのOracle Service Busのセキュリティ・ガイドで、Oracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項を参照してください。

注意:

パッチ・ツールを使用して、Oracle Service Bus 10.3用にリリースされたTYBNおよびU37Zパッチをダウンロードし、適用しておく必要があります。

OWSMポリシーおよびOracle Service Bus 10gの相互運用性シナリオは、次の項で説明します。

- OWSMポリシーおよびアサーション

- Oracle Service Bus 10gの相互運用性シナリオ

7.1.1 OWSMポリシーおよびアサーション

OWSM 12cでは、ポリシーをWebサービス・エンドポイントにアタッチします。ポリシーはドメインレベルで定義された1つ以上のアサーションで構成されています。アサーションはセキュリティ要件の定義です。そのまま使用できる事前定義のポリシーとアサーションのセットが用意されています。

詳細は、次を参照してください。

- OWSM事前定義済ポリシーについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

- OWSM 12cポリシーの構成およびアタッチについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

- Oracle Service Bus 10gポリシーを構成およびアタッチする方法の詳細は、http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.htmlのOracle Service Busのセキュリティ・ガイドで、Oracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項を参照してください。

7.1.2 Oracle Service Bus 10gの相互運用性シナリオ

OWSM 12cとOracle Service Bus 10gとの間の相互運用性には様々なシナリオがあります。

Oracle Service Bus 10gの相互運用性シナリオは、次のセキュリティ要件(認証、メッセージ保護およびトランスポート)に基づいています。

注意:

以降のシナリオでは、v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

また、キーが適切な拡張(DigitalSignature、Non_repudiation、Key_EnciphermentおよびData_Enciphermentなど)を使用していることも確認してください。

次の表に、OWSM 12cサービス・ポリシーとOracle Service Bus 10gクライアント・ポリシーの相互運用性シナリオを示します。

表7-1 OWSM 12cサービス・ポリシーとOracle Service Bus 10gクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

ユーザー名

1.0

はい

いいえ

oracle/wss10_username_token_with_message_protection_service_policy

Encrypt.xml

Sign.xml

SAML

1.0

はい

いいえ

oracle/wss10_saml_token_with_message_protection_service_policy

Encrypt.xml

Sign.xml

SAMLまたはユーザー名

1.0および1.1

いいえ

はい

oracle/wss_saml_or_username_token_over_ssl_service_policy

Auth.xml

相互認証

1.0

はい

いいえ

oracle/wss10_x509_token_with_message_protection_service_policy

Encrypt.xml

Sign.xml

次の表に、Oracle Service Bus 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性シナリオを示します。

表7-2 Oracle Service Bus 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

ユーザー名

1.0

はい

いいえ

Encrypt.xml

Sign.xml

oracle/wss10_username_token_with_message_protection_client_policy

SAML

1.0

はい

Encrypt.xml

Sign.xml

oracle/wss10_saml_token_with_message_protection_client_policy

相互認証

1.0

はい

いいえ

Encrypt.xml

Sign.xml

oracle/wss10_x509_token_with_message_protection_client_policy

7.2 Oracle Service Bus 10gクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)の実装

メッセージ保護付きユーザー名トークン・ポリシーは、WS-Security 1.0標準に準拠します。このポリシーは、OWSM 12c WebサービスとOracle Service Bus 10gクライアントとの間の相互運用性およびOracle Service Bus 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次の相互運用シナリオがサポートされています。

- Oracle Service Bus 10gクライアントを使用したOWSM 12c Webサービス

- OWSM 12cクライアントを使用したOracle Service Bus 10g Webサービス

どちらのシナリオの場合も、Oracle Service Busが稼働しているWebLogic Serverに対して、前提条件タスクを実行する必要があります。相互運用性のための前提条件の構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)を参照してください。

前提条件タスクの完了後、サポートされているシナリオの詳細な手順を参照してください。

- OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

- Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

7.2.1 相互運用性のための前提条件の構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)

OWSM 12cとOracle Service Bus 10gとの間の相互運用性のために、WS-Security 1.0メッセージ保護付きユーザー名トークンを実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. default-keystore.jksおよびtrust.jksファイルをドメイン・ディレクトリにコピーします。
default-keystore.jksは、WebLogicドメイン内のSOAPメッセージの公開鍵と秘密鍵を格納するために使用されます。trust.jksは、WebLogic Server環境でのアイデンティティと信頼の確立および検証に使用される公開鍵、デジタル証明書、および信頼できる認証局証明書を格納するために使用されます。

2. WebLogic管理コンソールを起動します。

3. カスタム・アイデンティティ・キーストアおよびカスタム信頼キーストアを構成します。

4. SSLを構成します。

5. 秘密鍵の別名を指定します。例: oratest。

6. 資格証明マッピング・プロバイダを構成します。
PKICredentialMapperを作成し、次のように構成します(その他の値はすべてデフォルト設定のままにしておきます)。

a. キーストア・プロバイダ: なし

b. キーストアのタイプ: jks

c. キーストア・ファイル名: default_keystore.jks

d. キーストアのパスフレーズ: <password>

e. キーストアのパスフレーズを確認: <password>

7. Oracle WebLogic Serverを再起動します。

8. OSBコンソールを起動します。例:

http://<host name>:<port number>/servicebus

9. ServiceKeyProviderを作成します。

10. 「暗号化鍵」および「デジタル署名鍵」を指定します。
OWSMサーバーとOracle Service Busサーバーでは別々のキーを使用する必要があります。必要であれば、暗号化と署名には同じキーを使用できます。

7.2.2 OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントを使用してメッセージ保護(WS-Security 1.0)付きユーザー名トークンを実装できます。

次のトピックでは、OWSM 12c Webサービスを構成してから、Oracle Service Bus 10gクライアントを構成する方法を説明します。

- Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)

- Oracle Service Bus 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

7.2.2.1 Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)

OWSM 12c Webサービスを構成して、Oracle Service Bus 10gクライアントとの相互運用性のためのWS-Security 1.0メッセージ保護付きユーザー名トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. wss10_username_token_with_message_protection_service_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

2. 次のようにして、ポリシー設定を編集します。

a. 「暗号化キー参照メカニズム」を「issuerserial」に設定します。

b. 「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。

c. 「タイムスタンプを含める」構成設定を有効化します。

d. ユーザー名トークン要素の場合のみ、「暗号化」を「false」に設定します。

3. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

7.2.2.2 Oracle Service Bus 10gクライアントの構成(メッセージ保護付きユーザー名トークン)

Oracle Service Bus 10gクライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのWS-Security 1.0メッセージ保護付きユーザー名トークンを実装できます。

Oracle Service Bus 10gクライアントを構成するには、次のようにします。

1. Encrypt.xmlおよびSign.xmlポリシー・ファイルのクローンを作成します。

たとえば、ファイルをmyEncrypt.xmlおよびmySign.xmlにコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。

2. 暗号化準拠の失敗を回避するために、myEncrypt.xmlファイル内の暗号化アルゴリズムを次のように編集します。

<wssp:Target>
<wssp:EncryptionAlgorithm
URI="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/>
<wssp:MessageParts
Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">
wsp:Body()
</wssp:MessageParts>
</wssp:Target>

3. ユーザー名トークンに署名する目的のみで、Oracle Service Busビジネス・サービス・リクエストにアタッチされたmySign.xmlポリシー・ファイルを編集します。これには、次のターゲットを含めます。

<wssp:Target>
<wssp:DigestAlgorithm URI=
"http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts Dialect=
"http://www.bea.com/wls90/security/policy/wsee#part">
wls:SecurityHeader(wsse:UsernameToken)
</wssp:MessageParts>
</wssp:Target>

4. セキュリティ・トークンを無署名にすることを指定する目的のみで、Oracle Service Busビジネス・サービス・レスポンスにアタッチされたmySign.xmlポリシー・ファイルを編集します。

<wssp:Integrity SignToken="false">

また、SOAクライアントの場合のみ、次に示すようにシステム・ヘッダーのターゲットをコメント・アウトします。

<!-- wssp:Target>
<wssp:DigestAlgorithm
URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts
Dialect="http://www.bea.com/wls90/security/policy/wsee#part">
wls:SystemHeaders()
</wssp:MessageParts>
</wssp:Target -->

5. クライアントからWebサービス・メソッドを起動します。

詳細情報

『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローン作成に関する項

http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.htmlにあるOracle Service Busのセキュリティ・ガイドのOracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項

7.2.3 Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.0メッセージ保護付きユーザー名トークンを実装できます。

次のトピックでは、Oracle Service Bus 10g Webサービスを構成してから、OWSM 12cクライアントを構成する方法を説明します。

- Oracle Service Bus 10g Webサービスの構成(メッセージ保護付きユーザー名トークン)

- Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)

7.2.3.1 Oracle Service Bus 10g Webサービスの構成(メッセージ保護付きユーザー名トークン)

Oracle Service Bus 10g Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

Oracle Service Bus 10g Webサービスを構成するには、次のようにします。

1. Encrypt.xmlおよびSign.xmlポリシー・ファイルのクローンを作成します。
たとえば、ファイルをmyEncrypt.xmlおよびmySign.xmlにコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。

2. 暗号化準拠の失敗を回避するために、myEncrypt.xmlファイル内の暗号化アルゴリズムを次のように編集します。

<wssp:Target>
<wssp:EncryptionAlgorithm
URI="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/>
<wssp:MessageParts
Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">
wsp:Body()
</wssp:MessageParts>
</wssp:Target>

詳細は、http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.htmlにあるOracle Service Busのセキュリティ・ガイドのOracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項を参照してください。

3. セキュリティ・トークンを無署名にすることを指定する目的のみで、プロキシ・サービス・リクエストにアタッチされたmySign.xmlポリシー・ファイルを編集します。

<wssp:Integrity SignToken="false">

また、SOAクライアントの場合のみ、次に示すようにシステム・ヘッダーのターゲットをコメント・アウトします。

<!-- wssp:Target>
<wssp:DigestAlgorithm
URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts
Dialect="http://www.bea.com/wls90/security/policy/wsee#part">
wls:SystemHeaders()
</wssp:MessageParts>
</wssp:Target -->

4. Oracle Service Busルーティング・サービスを起動するWebサービス・アプリケーションを作成します。

7.2.3.2 Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)

OWSM 12cクライアントを構成して、Oracle Service Bus 10g Webサービスとの相互運用性のためのWS-Security 1.0メッセージ保護付きユーザー名トークンを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. wss10_username_token_with_message_protection_client_policyポリシーのクローンを作成します。
次のようにして、ポリシー設定を編集します。

a. 「暗号化キー参照メカニズム」を「issuerserial」に設定します。

b. 「受信者暗号化キー参照メカニズム」を「issuerserial」に設定します。

c. 「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。

d. 「タイムスタンプを含める」構成設定を無効化します。

e. 「暗号化」を「false」に設定します。

f. メッセージの署名および暗号化については、デフォルト構成設定のままにしておきます。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

2. ポリシーをWebサービス・クライアントにアタッチします。

3. クライアントからWebサービスを起動します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

7.3 Oracle Service Bus 10gクライアント向けのWS-Security 1.0メッセージ保護付きSAML送信者保証トークンの実装

メッセージ保護付きSAML送信者保証トークン・ポリシーは、WS-Security 1.0標準に準拠します。このポリシーは、OWSM 12c WebサービスとOracle Service Bus 10gクライアントとの間の相互運用性およびOracle Service Bus 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次の相互運用シナリオがサポートされています。

- Oracle Service Bus 10gクライアントを使用したOWSM 12c Webサービス

- OWSM 12cクライアントを使用したOracle Service Bus 10g Webサービス

どちらのシナリオの場合も、Oracle Service Busが稼働しているWebLogic Serverに対して、前提条件タスクを完了する必要があります。前提条件の詳細は、相互運用性のための前提条件の構成(SAML送信者保証トークン)を参照してください。前提条件タスクの完了後、特定のデプロイメントに応じて次のタスクのいずれかを完了させます。

- OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(SAML送信者保証トークン)

- Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(SAML送信者保証トークン)

7.3.1 相互運用性のための前提条件の構成(SAML送信者保証トークン)

OWSM 12cとOracle Service Bus 10gとの間の相互運用性のために、WS-Security 1.0メッセージ保護付きSAML送信者保証トークンを実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. default-keystore.jksおよびtrust.jksファイルをドメイン・ディレクトリにコピーします。
default-keystore.jksは、WebLogicドメイン内のSOAPメッセージの公開鍵と秘密鍵を格納するために使用されます。trust.jksは、WebLogic Server環境でのアイデンティティと信頼の確立および検証に使用される秘密鍵、デジタル証明書、および信頼できる認証局証明書を格納するために使用されます。詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のメッセージ保護用のキーストアの構成に関する項を参照してください。

2. WebLogic管理コンソールを起動します。
詳細は、『Webサービスの管理』のOracle WebLogic管理コンソールへのアクセスに関する説明を参照してください。

3. SAMLIdentityAsserterV2認証プロバイダを作成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください。

4. WebLogic Serverを再起動して、新しいプロバイダを管理サーバーのランタイムMBeanサーバーに追加します。

5. ステップ3で作成した認証プロバイダを選択します。

6. SAMLアサーティング・パーティを作成および構成します。
次のようにSAMLアサーティング・パーティを構成します(その他の値はデフォルトの設定のままにしておきます)。

- プロファイル: WSS/sender-vouches

- ターゲットURL: <OSB Proxy Service Endpoint URI>

- 発行者URI: www.oracle.com

「有効」チェック・ボックスを選択し、「保存」をクリックします。

7. SamlCredentialMapperV2資格証明マッピング・プロバイダを作成します。
ドロップダウン・リストからSamlCredentialMapperV2を選択し、資格証明マッパーにたとえば、UC2_SamlCredentialMapperV2のように名前を付けます。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML IDアサータV2: アサーティング・パーティの作成に関する項およびSAML IDアサータV2: アサーティング・パーティ: 構成に関する項を参照してください。

8. WebLogic Serverを再起動します。

9. 次のように資格証明マッパーを構成します(その他の値はデフォルトの設定のままにしておきます)。

- 発行者URI: www.oracle.com

注意:

この値は、ポリシー・ファイルに指定されます。

- 名前修飾子: oracle.com

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください。

10. SAMLリライイング・パーティを作成および構成します。
次のようにSAMLリライイング・パーティを構成します(その他の値はデフォルトの設定のままにしておきます)。

- プロファイル: WSS/sender-vouches

- ターゲットURL: <OWSM 12c Web Service>

- 説明: <your_description>

「有効」チェック・ボックスを選択し、「保存」をクリックします。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML資格証明マッピング・プロバイダV2: リライイング・パーティの作成およびSAML資格証明マッピング・プロバイダV2: リライイング・パーティ: 構成に関する説明を参照してください。

11. WebLogic Serverを再起動します。

7.3.2 OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(SAML送信者保証トークン)

OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントを使用して、WS-Security 1.0メッセージ保護付きSAML送信者保証を実装できます。

次のトピックでは、OWSM 12c Webサービスを構成してから、Oracle Service Bus 10gクライアントを構成する方法を説明します。

- Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(SAML送信者保証トークン)

- Oracle Service Bus 10gクライアントの構成(SAML送信者保証トークン)

7.3.2.1 Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(SAML送信者保証トークン)

OWSM 12c Webサービスを構成して、Oracle Service Bus 10gクライアントとの相互運用性のためのSAML送信者保証トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. oracle/wss10_saml_token_with_message_protection_service_policyポリシーのクローンを作成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

a. 「暗号化キー参照メカニズム」を「issuerserial」に設定します。

b. 「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。

c. ユーザー名トークン要素の場合のみ、「暗号化」を「false」に設定します。

d. メッセージの署名および暗号化については、デフォルト構成設定のままにしておきます。

2. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

7.3.2.2 Oracle Service Bus 10gクライアントの構成(SAML送信者保証トークン)

Oracle Service Bus 10gクライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSAML送信者保証トークンを実装できます。

Oracle Service Bus 10gクライアントを構成するには、次のようにします。

1. Encrypt.xmlおよびSign.xmlポリシー・ファイルのクローンを作成します。
たとえば、myEncrypt.xmlおよびmySign.xmlにコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。

2. 暗号化準拠の失敗を回避するために、myEncrypt.xmlファイル内の暗号化アルゴリズムを次のように編集します。

<wssp:Target>
<wssp:EncryptionAlgorithm
URI="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/>
<wssp:MessageParts
Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">
wsp:Body()
</wssp:MessageParts>
</wssp:Target>

詳細は、http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.htmlにあるOracle Service Busのセキュリティ・ガイドのOracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項を参照してください。

3. SAMLアサーションに署名する目的のみで、Oracle Service Busビジネス・サービス・リクエストにアタッチされたmySign.xmlファイルを編集します。これには、次のターゲットを含めます。

<wssp:Target>
<wssp:DigestAlgorithm URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts Dialect=
"http://www.bea.com/wls90/security/policy/wsee#part">
wls:SecurityHeader(wsse:Assertion)
</wssp:MessageParts>
</wssp:Target>

4. セキュリティ・トークンを無署名にすることを指定する目的のみで、Oracle Service Busビジネス・サービス・レスポンスにアタッチされたmySign.xmlファイルを次のように編集します。

<wssp:Integrity SignToken="false">

また、SOAクライアントの場合のみ、次に示すようにシステム・ヘッダーのターゲットをコメント・アウトします。

<!-- wssp:Target>
<wssp:DigestAlgorithm
URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts
Dialect="http://www.bea.com/wls90/security/policy/wsee#part">
wls:SystemHeaders()
</wssp:MessageParts>
</wssp:Target -->

5. 次のカスタムSAMLポリシーサンプルに示すカスタムSAMLポリシー・ファイルを使用します。

<?xml version="1.0"?>
<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:wsu="
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
wsu:Id="custom_saml">
<wssp:Identity xmlns:wssp="http://www.bea.com/wls90/security/policy">
<wssp:SupportedTokens>
<wssp:SecurityToken
TokenType=
"http://docs.oasis-open.org/wss/2004/01/oasis-2004-01-saml-token-profile-1.0#SAMLAssertionID">
<wssp:Claims>
<wssp:ConfirmationMethod>
sender-vouches
</wssp:ConfirmationMethod>
</wssp:Claims>
</wssp:SecurityToken>
</wssp:SupportedTokens>
</wssp:Identity>
</wsp:Policy>

6. クライアントからWebサービスを起動します。

7.3.3 Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(SAML送信者保証トークン)

Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.0メッセージ保護付きSAML送信者保証を実装できます。

次のトピックでは、Oracle Service Bus 10g Webサービスを構成してから、OWSM 12cクライアントを構成する方法を説明します。

- Oracle Service Bus 10g Webサービスの構成(SAML送信者保証トークン)

- Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(SAML送信者保証トークン)

7.3.3.1 Oracle Service Bus 10g Webサービスの構成(SAML送信者保証トークン)

Oracle Service Bus 10g Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのSAML送信者保証トークンを実装できます。

Oracle Service Bus 10g Webサービスを構成するには、次のようにします。

1. Encrypt.xmlおよびSign.xmlポリシー・ファイルのクローンを作成します。
たとえば、myEncrypt.xmlおよびmySign.xmlにコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。

2. 暗号化準拠の失敗を回避するために、myEncrypt.xmlポリシー・ファイル内の暗号化アルゴリズムを次のように編集します。

<wssp:Target>
<wssp:EncryptionAlgorithm
URI="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/>
<wssp:MessageParts
Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">
wsp:Body()
</wssp:MessageParts>
</wssp:Target>

詳細は、http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.htmlにあるOracle Service Busのセキュリティ・ガイドのOracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項を参照してください。

3. セキュリティ・トークンを無署名にすることを指定する目的のみで、プロキシ・サービス・リクエストにアタッチされたmySign.xmlポリシー・ファイルを編集します。

<wssp:Integrity SignToken="false">

また、SOAクライアントの場合のみ、次に示すようにシステム・ヘッダーのターゲットをコメント・アウトします。

<!-- wssp:Target>
<wssp:DigestAlgorithm
URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts
Dialect="http://www.bea.com/wls90/security/policy/wsee#part">
wls:SystemHeaders()
</wssp:MessageParts>
</wssp:Target -->

4. 次のカスタムSAMLポリシーサンプルに示すカスタムSAMLポリシー・ファイルを使用します。

<?xml version="1.0"?>
<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:wsu="
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
wsu:Id="custom_saml">
<wssp:Identity xmlns:wssp="http://www.bea.com/wls90/security/policy">
<wssp:SupportedTokens>
<wssp:SecurityToken
TokenType=
"http://docs.oasis-open.org/wss/2004/01/oasis-2004-01-saml-token-profile-1.0#SAMLAssertionID">
<wssp:Claims>
<wssp:ConfirmationMethod>
sender-vouches
</wssp:ConfirmationMethod>
</wssp:Claims>
</wssp:SecurityToken>
</wssp:SupportedTokens>
</wssp:Identity>
</wsp:Policy>

7.3.3.2 Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(SAML送信者保証トークン)

OWSM 12cクライアントを構成して、Oracle Service Bus 10g Webサービスとの相互運用性のためのSAML送信者保証トークンを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. wss10_saml_token_with_message_protection_client_policyポリシーのクローンを作成します。
次のようにして、ポリシー設定を編集します。

a. 「暗号化キー参照メカニズム」を「issuerserial」に設定します。

b. 「受信者暗号化キー参照メカニズム」を「issuerserial」に設定します。

c. 「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。

d. 「タイムスタンプを含める」構成設定を無効化します。

e. メッセージの署名および暗号化については、デフォルト構成設定のままにしておきます。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

2. ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

3. クライアントからWebサービスを起動します。

7.4 Oracle Service Bus 10gクライアント向けのSSL経由のSAMLまたはユーザー名トークンの実装

SSL経由のSAMLまたはユーザー名トークン・ポリシーは、WS-Security 1.0および1.1標準に準拠します。このポリシーは、OWSM 12c WebサービスとOracle Service Bus 10gクライアントとの間の相互運用性を実現するために実装されます。

注意:

この項で説明する相互運用性シナリオは、SSL経由のSAMLトークンおよびSSL経由のユーザー名トークンのポリシーにも適用されます。

このシナリオでは、次の各項の説明に従って、Oracle Service Busが稼働しているWebLogic Serverに対して、まず前提条件タスクを実行する必要があります。

- ユーザー名トークンを構成します。

- SAMLトークンを構成します。

- SAMLの場合、相互運用性のためのSAMLの前提条件の構成に示すように、Oracle Service Busが稼働しているWebLogic Serverに対して、前提条件の手順を実行します。

サポートされているシナリオの構成手順は、OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(SSL経由のSAMLまたはユーザー名トークン)を参照してください。

7.4.1 相互運用性のためのSAMLの前提条件の構成

OWSM 12c WebサービスとOracle Service Bus 10gクライアントとの間の相互運用性のために、SSL経由のSAMLまたはユーザー名トークンを実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のためのSAML前提条件を構成するには、次のようにします。

1. SamlCredentialMapperV2資格証明マッピング・プロバイダを作成します。
ドロップダウン・リストからSamlCredentialMapperV2を選択し、資格証明マッパーにたとえば、UC2_SamlCredentialMapperV2のように名前を付けます。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください。

2. WebLogic Serverを再起動します。

3. 次のように資格証明マッパーを構成します(その他の値はデフォルトの設定のままにしておきます)。

- 発行者URI: www.oracle.com

注意:

この値は、ポリシー・ファイルに指定されます。

- 名前修飾子: oracle.com

4. SAMLリライイング・パーティを作成および構成します。
次のようにSAMLリライイング・パーティを構成します(その他の値はデフォルトの設定のままにしておきます)。

- プロファイル: WSS/sender-vouches

- ターゲットURL: <OWSM 12c Web Service>

- 説明: <your_description>

「有効」チェック・ボックスを選択し、「保存」をクリックします。

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML資格証明マッピング・プロバイダV2: リライイング・パーティの作成およびSAML資格証明マッピング・プロバイダV2: リライイング・パーティ: 構成に関する説明を参照してください。

5. WebLogic Serverを再起動します。

7.4.2 OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(SSL経由のSAMLまたはユーザー名トークン)

OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントを使用して、SSLポリシー経由のSAMLまたはユーザー名トークンを実装できます。SAMLトークン・クライアントとユーザー名トークン・クライアントはいずれもサポートされています。

次のトピックでは、OWSM 12c Webサービスを構成してから、Oracle Service Bus 10gクライアントを構成する方法を説明します。

- Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLまたはユーザー名トークン)

- Oracle Service Bus 10gクライアントの構成(SSL経由のSAMLまたはユーザー名トークン)

7.4.2.1 Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLまたはユーザー名トークン)

OWSM 12c Webサービスを構成して、Oracle Service Bus 10gクライアントとの相互運用性のためのSSL経由のSAMLまたはユーザー名トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. サーバーを双方向SSL用に構成します。

- サービス・ポリシーがSSL経由のユーザー名トークンの場合、「相互クライアント証明書の動作」を「クライアント証明書をリクエスト(強制しない)」に設定します。

- サービス・ポリシーがSSL経由のSAML名トークンの場合、「相互クライアント証明書の動作」を「クライアント証明書をリクエスト(強制する)」に設定します。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(双方向)に関する説明を参照してください。

2. wss_saml_or_username_token_over_ssl_service_policyポリシーのクローンを作成します。

- wss_username_token_over_ssl_service_policyに対して、「要素およびNonceの作成」構成設定を無効化します。

- wss_saml_token_over_ssl_service_policyに対して、「タイムスタンプを含める」構成設定を無効化します。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

3. JDeveloperを使用して、単純なSOAコンポジットを作成します。

4. wss_saml_or_username_token_over_ssl_service_policyポリシーのコピーをコンポジットにアタッチし、デプロイします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

7.4.2.2 Oracle Service Bus 10gクライアントの構成(SSL経由のSAMLまたはユーザー名トークン)

Oracle Service Bus 10gクライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSSL経由のSAMLまたはユーザー名トークンを実装できます。

Oracle Service Bus 10gクライアントを構成するには、次のようにします。

1. サーバーを双方向SSL用に構成します。

- クライアント・ポリシーがSSL経由のユーザー名トークンに相当するポリシーの場合、「相互クライアント証明書の動作」を「クライアント証明書をリクエスト(強制しない)」に設定します。

- クライアント・ポリシーがSSL経由のSAMLトークンに相当するポリシーの場合、「相互クライアント証明書の動作」を「クライアント証明書をリクエスト(強制する)」に設定します。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(双方向)に関する説明を参照してください。

2. Oracle Service Busコンソールで、リライイング・パーティのWSDLをインポートします。いずれのポリシーもアタッチされていないことを確認してください(このサービスではポリシー・アサーションは許可されていません。)

3. SAMLトークンに対して、ビジネス・サービスを作成します。

a. ポリシーをリクエストにアタッチします。
次のカスタムSAMLポリシーサンプルに示すカスタムSAMLポリシー・ファイルを使用します。

<?xml version="1.0"?>
<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:wsu="
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
wsu:Id="custom_saml">
<wssp:Identity xmlns:wssp="http://www.bea.com/wls90/security/policy">
<wssp:SupportedTokens>
<wssp:SecurityToken
TokenType=
"http://docs.oasis-open.org/wss/2004/01/oasis-2004-01-saml-token-profile-1.0#SAMLAssertionID">
<wssp:Claims>
<wssp:ConfirmationMethod>
sender-vouches
</wssp:ConfirmationMethod>
</wssp:Claims>
</wssp:SecurityToken>
</wssp:SupportedTokens>
</wssp:Identity>
</wsp:Policy>

b. WSDLをHTTPからHTTPSに変更します。

4. ユーザー名トークンに対して、ビジネス・サービスを作成します。

a. auth.xmlポリシーをリクエストにアタッチします。

b. WSDLをHTTPからHTTPSに変更します。

5. プロキシ・サービスを作成し、ビジネス・サービスへのルートを作成します。
「HTTPトランスポート構成」で、「認証」を「基本」に設定します。

「セキュリティ」ページで、サービス・キー・プロバイダを関連付けます。これは、Oracle Service Busがクライアント証明書をSOAに送信するために必要となります。

6. Oracle Service Busコンソールから、ユーザー名とパスワードを使用してプロキシ・サービスを実行します。

7.5 Oracle Service Bus 10gクライアント向けのWS-Security 1.0メッセージ保護付き相互認証の実装

メッセージ保護付き相互認証ポリシーは、WS-Security 1.0標準に準拠します。このポリシーは、OWSM 12c WebサービスとOracle Service Bus 10gクライアントとの間の相互運用性およびOracle Service Bus 10g WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次のシナリオがサポートされています。

- Oracle Service Bus 10gクライアントを使用したOWSM 12c Webサービス

- OWSM 12cクライアントを使用したOracle Service Bus 10g Webサービス

どちらのシナリオの場合も、まず前提条件タスクを実行する必要があります。

- Oracle WebLogic Serverの前提条件の構成

- OWSMの前提条件の構成

前提条件タスクの完了後、特定のデプロイメントに応じて次のタスクのいずれかを完了させます。

- OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

- Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

7.5.1 Oracle WebLogic Serverの前提条件の構成

OWSM 12cとOracle Service Bus 10gとの間の相互運用性のために、WS-Security 1.0メッセージ保護付き相互認証を実装する前に、Oracle WebLogic Serverの多くの高度なタスクを完了する必要があります。

Oracle WebLogic Serverの前提条件を構成するには、次のようにします。

1. default-keystore.jksおよびtrust.jksファイルをドメイン・ディレクトリにコピーします。
default-keystore.jksは、WebLogicドメイン内のSOAPメッセージの公開鍵と秘密鍵を格納するために使用されます。trust.jksは、Oracle WebLogic Server環境でのアイデンティティと信頼の確立および検証に使用される公開鍵、デジタル証明書、および信頼できる認証局証明書を格納するために使用されます。

詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のメッセージ保護用のキーストアの構成に関する項を参照してください。

2. WebLogic管理コンソールを起動します。
詳細は、『Webサービスの管理』のOracle WebLogic管理コンソールへのアクセスに関する説明を参照してください。

3. カスタム・アイデンティティ・キーストアおよびカスタム信頼キーストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのキーストアの構成に関する項を参照してください。

4. SSLを構成します。
秘密鍵の別名を指定します。例: oratest。

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSSLの設定に関する項を参照してください。

5. 資格証明マッピング・プロバイダを構成します。

6. PKICredentialMapperを作成し、次のように構成します(その他の値はすべてデフォルト設定のままにしておきます)。

- キーストア・プロバイダ: なし

- キーストアのタイプ: jks

- キーストア・ファイル名: default_keystore.jks

- キーストアのパスフレーズ: <password>

- キーストアのパスフレーズを確認: <password>

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください。

7. 「認証」タブを選択し、次のように構成します。

- 「DefaultIdentityAsserter」をクリックし、「X.509」を「選択済み」アクティブ・タイプに追加します。

- 「プロバイダ固有」をクリックし、次のように構成します。

- デフォルト・ユーザー名マッパーの属性のタイプ: CN

- アクティブなタイプ: X.509

- デフォルト・ユーザー名マッパーの使用: True

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください。

8. トークン・ハンドラを構成して、メッセージ保護付きのWebサービスを起動するクライアントがX.509証明書を使用してアイデンティティを確立することを指定します。WebLogic管理コンソールで、ドメインの「Webサービス・セキュリティ」ページにナビゲートし、次のようにインバウンド・メッセージとアウトバウンド・メッセージを構成します。

注意:

常に使用できるのは、メッセージ保護付きユーザー名トークンまたはメッセージ保護付き相互認証のみです。メッセージ保護付き相互認証を有効にすると、以降のユーザー名認証は失敗します。

- 「_SERVICE_BUS_INBOUND_WEB_SERVICE_SECURITY_MBEAN_」をクリックし、「トークン・ハンドラ」タブを選択します。

- 「X.509」トークン・ハンドラをクリックし、次のように構成します。

- 名前: UseX509ForIdentity

- 値: True

- アウトバウンドOracle Service Bus MBeanの_SERVICE_BUS_OUTBOUND_WEB_SERVICE_SECURITY_MBEAN_に対しても、同じ手順を実行します。

9. ユーザーを追加していない場合、証明書で指定されている一般名(CN)ユーザーを追加します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのユーザーの作成に関する項を参照してください。

10. Oracle WebLogic Serverを再起動します。

7.5.2 OWSMの前提条件の構成

OWSM 12cとOracle Service Bus 10gとの間の相互運用性のために、WS-Security 1.0メッセージ保護付き相互認証を実装する前に、多くの高度なタスクを完了する必要があります。

OWSMの前提条件を構成するには、次のようにします。

1. 認証を構成します。
「認証」タブを選択し、次のように構成します。

- 「DefaultIdentityAsserter」をクリックし、「X.509」を「選択済み」アクティブ・タイプに追加します。

- 「プロバイダ固有」をクリックし、次のように構成します。

- デフォルト・ユーザー名マッパーの属性のタイプ: CN

- アクティブなタイプ: X.509

- デフォルト・ユーザー名マッパーの使用: True

詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください。

2. ユーザーを追加していない場合、証明書で指定されている一般名(CN)ユーザーを追加します。

3. Oracle WebLogic Serverを再起動します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのユーザーの作成に関する項を参照してください。

7.5.3 OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

OWSM 12c WebサービスおよびOracle Service Bus 10gクライアントを使用して、WS-Security 1.0メッセージ保護付き相互認証を実装できます。Webサービスを構成してから、クライアントを構成します。

OWSM 12c Webサービスを構成するには、次のようにします。

1. SOAコンポジットを作成してデプロイします。

2. wss10_x509_token_with_message_protection_service_policyポリシーのクローンを作成します。
次のようにして、ポリシー設定を編集します。

a. 「暗号化キー参照メカニズム」を「issuerserial」に設定します。

b. 「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

3. ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

4. Oracle Service Bus 10gクライアントを構成するには、Oracle Service Busビジネス・サービスを作成します。

5. Encrypt.xmlおよびSign.xmlポリシー・ファイルのクローンを作成します。
たとえば、ファイルをmyEncrypt.xmlおよびmySign.xmlにコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。

6. この手順の最後のサンプルに示すX.509ポリシーを、Oracle Service Busビジネス・サービス・リクエストにアタッチします。

7. Sign.xmlポリシー・ファイルをOracle Service Busビジネス・サービス・リクエストにアタッチします。

8. この手順の最後のサンプルに示すようにmyEncrypt.xmlを編集し、それをOracle Service Busビジネス・サービス・リクエストにアタッチします。
詳細は、http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.htmlにあるOracle Service Busのセキュリティ・ガイドのOracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項を参照してください。

9. セキュリティ・トークンを無署名にすることを指定するために、Oracle Service Busビジネス・サービス・レスポンスにアタッチされたmySign.xmlポリシー・ファイルを編集します。

<wssp:Integrity SignToken="false">

また、SOAクライアントの場合のみ、この手順の最後のサンプルに示すようにシステム・ヘッダーのターゲットをコメント・アウトします。

10. 手順6で編集したmyEncrypt.xmlポリシー・ファイルをOracle Service Busビジネス・サービス・レスポンスにアタッチします。

11. ServiceKeyProviderを作成します。

12. 「暗号化鍵」および「デジタル署名鍵」を指定します。
OWSMサーバーとOracle Service Busサーバーでは別々のキーを使用する必要があります。必要であれば、暗号化と署名には同じキーを使用できます。

13. プロキシ・サービスを作成し、ビジネス・サービスへのルートを作成します。
「セキュリティ」ページで、サービス・キー・プロバイダを関連付けます。これは、Oracle Service Busがクライアント証明書をSOAに送信するために必要となります。

14. Oracle Service Busコンソールからプロキシ・サービスを実行します。
次のX.509ポリシーのサンプルを参照してください。

<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:s0="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
s0:Id="X509Auth">
<wssp:Identity xmlns:wssp="http://www.bea.com/wls90/security/policy">
<wssp:SupportedTokens>
<wssp:SecurityToken TokenType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"/>
</wssp:SupportedTokens>
</wssp:Identity>
</wsp:Policy>

次のmyEncrypt.xmlポリシーのサンプルを参照してください。

<?xml version="1.0"?>
<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
wsu:Id="X509Encrypt">
<wssp:Confidentiality>
<wssp:KeyWrappingAlgorithm URI="http://www.w3.org/2001/04/xmlenc#rsa-1_5"/>
<wssp:Target>
<wssp:EncryptionAlgorithm URI="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/>
<wssp:MessageParts Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">wsp:Body()</wssp:MessageParts>
</wssp:Target>
<wssp:KeyInfo/>
</wssp:Confidentiality>
</wsp:Policy>

次のmySignポリシーのサンプルを参照してください。

<?xml version="1.0"?>
<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"

xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
utility-1.0.xsd"
xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
wsu:Id="X509Sign">
<wssp:Integrity SignToken="false">
<wssp:SignatureAlgorithm URI="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<wssp:CanonicalizationAlgorithm
URI="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<!--wssp:Target>
<wssp:DigestAlgorithm URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts
Dialect="http://www.bea.com/wls90/security/policy/wsee#part">
wls:SystemHeaders()
</wssp:MessageParts>
</wssp:Target-->
<wssp:Target>
<wssp:DigestAlgorithm URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts
Dialect="http://www.bea.com/wls90/security/policy/wsee#part">
wls:SecurityHeader(wsu:Timestamp)
</wssp:MessageParts>
</wssp:Target>
<wssp:Target>
<wssp:DigestAlgorithm URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts
Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">
wsp:Body()
</wssp:MessageParts>
</wssp:Target>
</wssp:Integrity>
<wssp:MessageAge/>
</wsp:Policy>

7.5.4 Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

Oracle Service Bus 10g WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.0メッセージ保護付き相互認証を実装できます。

次のトピックでは、Oracle Service Bus 10g Webサービスを構成してから、OWSM 12cクライアントを構成する方法を説明します。

- Oracle Service Bus 10g Webサービスの構成(WS-Security 1.0メッセージ保護付き相互認証)

- Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

7.5.4.1 Oracle Service Bus 10g Webサービスの構成(WS-Security 1.0メッセージ保護付き相互認証)

Oracle Service Bus 10g Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ保護付き相互認証を実装できます。

Oracle Service Bus 10g Webサービスを構成するには、次のようにします。

1. Oracle Service Busプロキシ・サービスを作成します。

2. Encrypt.xmlおよびSign.xmlポリシー・ファイルのクローンを作成します。
たとえば、myEncrypt.xmlおよびmySign.xmlにコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。

3. X.509ポリシーをプロキシ・サービス・リクエストにアタッチします。

4. プロキシ・サービス・リクエストにアタッチされたmySign.xmlポリシー・ファイルを編集し、この手順の最後のサンプルに示すようにシステム・ヘッダーとタイムスタンプのターゲットをコメント・アウトします。
詳細は、http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.htmlにあるOracle Service Busのセキュリティ・ガイドのOracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項を参照してください。

5. この手順の最後のサンプルに示すように、プロキシ・サービス・リクエストにアタッチされたmyEncrypt.xmlファイル内の暗号化アルゴリズムを編集します。

6. 前の手順で編集したmySign.xmlおよびmyEncrypt.xmlポリシー・ファイルをプロキシ・サービス・レスポンスにアタッチします。

7. サービス・キー・プロバイダを作成します。
mySign.xmlポリシーのサンプル:

<?xml version="1.0"?>
<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:s0="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
s0:Id="X509SignRequest">
<wssp:Integrity
xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-
utility-1.0.xsd">
<wssp:SignatureAlgorithm URI="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
<wssp:CanonicalizationAlgorithm URI="http://www.w3.org/2001/10/xml-exc-c14n#"
/>
<!-- wssp:Target>
<wssp:DigestAlgorithm URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts Dialect="http://www.bea.com/wls90/security/policy/wsee#part">wls:SystemHeaders
()</wssp:MessageParts>
</wssp:Target -->
<!-- wssp:Target>
<wssp:DigestAlgorithm URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts
Dialect="http://www.bea.com/wls90/security/policy/wsee#part">wls:SecurityHeader
(wsu:Timestamp)</wssp:MessageParts>
</wssp:Target -->
<wssp:Target>
<wssp:DigestAlgorithm URI="http://www.w3.org/2000/09/xmldsig#sha1" />
<wssp:MessageParts Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">wsp:Body()</wssp:MessageParts>
</wssp:Target>
</wsp:Policy>

myEncrypt.xmlのサンプル:

<?xml version="1.0"?>
<wsp:Policy
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wssp="http://www.bea.com/wls90/security/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
wsu:Id="X509Encrypt">
<wssp:Confidentiality>
<wssp:KeyWrappingAlgorithm URI="http://www.w3.org/2001/04/xmlenc#rsa-1_5"/>
<wssp:Target>
<wssp:EncryptionAlgorithm URI="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/>
<wssp:MessageParts Dialect="http://schemas.xmlsoap.org/2002/12/wsse#part">wsp:Body()</wssp:MessageParts>
</wssp:Target>
<wssp:KeyInfo/>
</wssp:Confidentiality>

</wsp:Policy>

7.5.4.2 Oracle Service Bus 10gのためのOWSM 12cクライアントの構成(WS-Security 1.0メッセージ保護付き相互認証)

OWSM 12cクライアントを構成して、Oracle Service Bus 10g Webサービスとの相互運用性のためのWS-Security 1.0メッセージ保護付き相互認証を実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. wss10_x509_token_with_message_protection_client_policyポリシーのクローンを作成します。
Fusion Middleware Controlで、ポリシー設定を次のように編集します。

a. 「暗号化キー参照メカニズム」を「issuerserial」に設定します。

b. 「受信者暗号化キー参照メカニズム」を「issuerserial」に設定します。

c. 「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。

d. 「タイムスタンプを含める」構成設定を無効化します。

詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。

2. Fusion Middleware Controlで、クライアント構成にkeystore.recipient.aliasを指定します。クライアントに指定するkeystore.recipient.aliasキーが、Webサービスに対して構成されている信頼ストア内に信頼できる証明書エントリとして存在していることを確認してください。

3. ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

4. クライアントからWebサービスを起動します。

8 Axis 1.4およびWSS4J 1.5.8のセキュリティ環境との相互運用性

Oracle Web Services Manager (OWSM)は、Axis 1.4およびWSS4J 1.5.8のセキュリティ環境と相互運用できます。OWSMとAxis 1.4およびWSS4J 1.5.8のセキュリティ環境との間の相互運用性を実現するため、WS-Security 1.0および1.1標準に準拠するポリシーがWebサービスにアタッチされます。

この章の内容は次のとおりです。

- Axis 1.4およびWSS4J 1.5.8のセキュリティ環境の相互運用性の理解

- Axis/WSS4Jとの相互運用性に必要なファイルの作成

- Axis/WSS4Jクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)の実装

- Axis/WSS4Jクライアント向けのメッセージ保護付きSAMLトークン(WS-Security 1.0)の実装

- Axis/WSS4Jクライアント向けのSSL経由のユーザー名トークンの実装

- Axis/WSS4Jクライアント向けのSSL経由のSAMLトークン(送信者保証)の実装

8.1 Axis 1.4およびWSS4J 1.5.8のセキュリティ環境の相互運用性の理解

Axis 1.4およびWSS4J 1.5.8では、ハンドラおよびデプロイメント・ディスクリプタを使用してインバウンド・リクエストとアウトバウンド・リクエストのセキュリティ環境を構成します。

OWSMポリシーおよび相互運用性シナリオの詳細は、次のシナリオで説明します。

- Axis/WSS4JのOWSMポリシー

- Axis/WSS4Jのサービス・ポリシーの相互運用性シナリオ

詳細は、http://ws.apache.org/wss4j/axis.htmlの『Axis Deployment Tutorial』を参照してください。

8.1.1 Axis/WSS4JのOWSMポリシー

OWSM 12cでは、ポリシーをWebサービス・エンドポイントにアタッチします。ポリシーはドメインレベルで定義された1つ以上のアサーションで構成されています。アサーションはセキュリティ要件の定義です。そのまま使用できる事前定義のポリシーとアサーションのセットが用意されています。

詳細は、次を参照してください。

- OWSM事前定義済ポリシーについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

- OWSM 12cポリシーの構成およびアタッチについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

- Axis/WSS4Jでポリシーを構成およびアタッチする方法の詳細は、http://ws.apache.org/wss4j/axis.htmlの『Axis Deployment Tutorial』を参照してください。

8.1.2 Axis/WSS4Jのサービス・ポリシーの相互運用性シナリオ

OWSM 12cとAxis/WSS4Jとの間の相互運用性には様々なシナリオがあります。

次の表に、OWSM 12cサービス・ポリシーとAxis/WSS4Jクライアント・ポリシーの相互運用性シナリオを示します。

表8-1 OWSM 12cサービス・ポリシーとAxis WSS4Jクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

ユーザー名

1.0

はい

いいえ

oracle/wss10_username_token_with_message_protection_service_policy

UsernameToken Timestamp Signature Encrypt

SAML

1.0

はい

いいえ

oracle/wss10_saml_token_with_message_protection_service_policy

SAMLTokenUnsigned Timestamp Signature Encrypt

ユーザー名

1.0および1.1

いいえ

はい

oracle/wss_username_token_over_ssl_service_policy

UsernameToken Timestamp

SAML

1.0および1.1

いいえ

はい

oracle/wss_saml_token_over_ssl_service_policy

SAMLTokenUnsigned Timestamp

次の表に、Axis/WSS4Jサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性シナリオを示します。

表8-2 Axis WSS4Jサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

ユーザー名

1.0

はい

いいえ

UsernameToken Timestamp Signature Encrypt

oracle/wss10_username_token_with_message_protection_client_policy

SAML

1.0

はい

いいえ

SAMLTokenUnsigned Timestamp Signature Encrypt

oracle/wss10_saml_token_with_message_protection_client_policy

ユーザー名

1.0および1.1

いいえ

はい

Timestamp UsernameToken

oracle/wss_username_token_over_ssl_client_policy

SAML

1.0および1.1

いいえ

はい

Timestamp SAMLTokenUnsigned

oracle/wss_saml_token_over_ssl_client_policy

8.2 Axis/WSS4Jとの相互運用性に必要なファイルの作成

Axis/WSS4Jの相互運用性シナリオそれぞれに、ハンドラおよびプロパティ・ファイルが必要です。

ハンドラおよびプロパティ・ファイルを作成する手順は、次のとおりです。

1. ユーザー名およびキーストア別名に必要なパスワードを解決できるPWCallback.javaというパスワード・コールバック・クラスを作成し、コンパイルします。

以降の各項で定義するデプロイメント・ディスクリプタには、ユーザー名情報は含まれますが、パスワード情報は含まれません。パスワードのような機密的な情報は、デプロイメント・ディスクリプタ内にクリア・テキストで保存しないほうが賢明です。Axisハンドラは、パスワードを取得するためにパスワード・コールバック・クラスをコールします。このメカニズムはJAASと似ています。詳細は、http://ws.apache.org/wss4jのWSS4Jドキュメントを参照してください。

2. 次に示すように、キーストア・プロパティ・ファイル(crypto.properties)を作成します。このファイルをクラス・ディレクトリに含めてください。

org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
org.apache.ws.security.crypto.merlin.keystore.type=jks
org.apache.ws.security.crypto.merlin.keystore.password=welcome1
org.apache.ws.security.crypto.merlin.file=default-keystore.jks

3. 次に示すようなsaml.propertiesファイルを作成します。これは、SAMLの相互運用性シナリオのみに必要なファイルです。

org.apache.ws.security.saml.issuerClass=org.apache.ws.security.saml.SAMLIssuerImpl
org.apache.ws.security.saml.issuer.cryptoProp.file=crypto.properties
org.apache.ws.security.saml.issuer.key.name=orakey
org.apache.ws.security.saml.issuer.key.password=orakey
org.apache.ws.security.saml.issuer=www.oracle.com
org.apache.ws.security.saml.subjectNameId.name=weblogic
org.apache.ws.security.saml.authenticationMethod=password
org.apache.ws.security.saml.confirmationMethod=senderVouches

8.3 Axis/WSS4Jクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.0)の実装

メッセージ保護付きユーザー名トークン・ポリシーは、WS-Security 1.0標準に準拠します。このポリシーは、OWSM 12c WebサービスとAxis/WSS4Jクライアントとの間の相互運用性およびAxis/WSS4J WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてメッセージ保護付きユーザー名トークンを実装する方法について説明します。

- OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(メッセージ保護付きユーザー名トークン)

- Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

8.3.1 OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(メッセージ保護付きユーザー名トークン)

OWSM 12c WebサービスとAxis/WSS4Jクライアントを使用して、WS-Security 1.0標準に準拠したメッセージ保護付きユーザー名トークンを実装できます。

次のトピックでは、メッセージ保護付きユーザー名トークンを実装するために、OWSM 12c WebサービスおよびAxis/WSS4Jクライアントを構成する方法を示します。

- Axis/WSS4JのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

- Axis/WSS4Jクライアントの構成(メッセージ保護付きユーザー名トークン)

8.3.1.1 Axis/WSS4JのためのOWSM 12c Webサービスの構成(メッセージ保護付きユーザー名トークン)

OWSM 12c Webサービスを構成して、Axis/WSS4Jクライアントとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. oracle/wss10_username_token_with_message_protection_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

2. Webサービスをデプロイします。

8.3.1.2 Axis/WSS4Jクライアントの構成(メッセージ保護付きユーザー名トークン)

Axis/WSS4Jクライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

Axis/WSS4Jクライアントを構成するには、次のようにします。

1. Webサービス・クライアント・プロキシを構築します。

2. パスワード・コールバック・クラスPWCallback.java、およびキーストア・プロパティ・ファイルcrypto.propertiesを作成します。
詳細は、Axis/WSS4Jとの相互運用性に必要なファイルの作成を参照してください。

3. キーストア・ファイル(default-keystore.jksなど)およびcrypto.propertiesファイルをclassesフォルダの直下に配置します。
v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

4. client_deploy.wsddデプロイメント・ディスクリプタを次のclient_deploy.wsddデプロイメント・ディスクリプタ・サンプルのように編集します。

<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<transport name="http"
pivot="java:org.apache.axis.transport.http.HTTPSender"/>
<globalConfiguration >
<!-- wss10_username_token_with_message_protection -->
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="passwordCallbackClass"
value="com.oracle.xmlns.ConfigOverride_jws.CO_SOA.BPELProcess1.PWCallback"/>
<parameter name="passwordType" value="PasswordText"/>
<parameter name="user" value="weblogic"/>
<parameter name="action" value="UsernameToken Timestamp Signature Encrypt"/>
<parameter name="encryptionKeyTransportAlgorithm"
value="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p"/>
<parameter name="encryptionKeyIdentifier" value="DirectReference" />
<parameter name="encryptionPropFile" value="crypto.properties" />
<parameter name="encryptionUser" value="orakey" />
<parameter name="encryptionParts" value=
"{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}
UsernameToken;{Content}{http://schemas.xmlsoap.org/soap/envelope/}Body" />
<parameter name="signatureUser" value="orakey" />
<parameter name="signaturePropFile" value="crypto.properties" />
<parameter name="signatureKeyIdentifier" value="DirectReference" />
<parameter name="signatureParts" value=
"{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}
UsernameToken;{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-
1.0.xsd}
Timestamp;{Element}{http://schemas.xmlsoap.org/soap/envelope/}Body" />
</handler>
</requestFlow>
<responseFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="passwordCallbackClass" value="com.oracle.xmlns.ConfigOverride_jws.CO
_SOA.BPELProcess1.PWCallback"/>
<parameter name="action" value="Timestamp Signature Encrypt" />
<parameter name="signaturePropFile" value="crypto.properties" />
<parameter name="decryptionPropFile" value="crypto.properties" />
<parameter name="enableSignatureConfirmation"  value="false" />
</handler>
</responseFlow>
</globalConfiguration >
</deployment>

この例では、受信者がユーザー名トークンの復号化、確認および検証を行い、送信者がユーザー名トークンの挿入、タイムスタンプの追加、本体、ユーザー名トークンおよびタイムスタンプへの署名、本体とユーザー名トークンの暗号化を行います。この例に示されているように、暗号化キー・トランスポートは、OWSMのデフォルト要件と一致するようにオーバーライドされます。

5. 前の手順で定義したデプロイメント・ディスクリプタを使用するために、クライアント・コード内に次のプロパティを設定します。

System.setProperty("axis.ClientConfigFile", "client_deploy.wsdd");

6. Webサービス・クライアントをデプロイします。

8.3.2 Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

Axis/WSS4J WebサービスとOWSM 12cクライアントを使用して、WS-Security 1.0標準に準拠したメッセージ保護付きユーザー名トークンを実装できます。

次のトピックでは、メッセージ保護付きユーザー名トークンを実装するために、Axis/WSS4J WebサービスおよびOWSM 12cクライアント・サービスを構成する方法を示します。

- Axis/WSS4J Webサービスの構成(メッセージ保護付きユーザー名トークン)

- Axis/WSS4JのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

8.3.2.1 Axis/WSS4J Webサービスの構成(メッセージ保護付きユーザー名トークン)

Axis/WSS4J Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

Axis/WSS4J Webサービスを構成するには、次のようにします。

1. Webサービスを構築します。

2. Axis/WSS4Jとの相互運用性に必要なファイルの作成の説明に従って、パスワード・コールバック・クラス(PWCallback.java)とキーストア・プロパティ・ファイル(crypto.properties)を作成します。

3. キーストア・ファイル(default-keystore.jksなど)およびcrypto.propertiesファイルをclassesフォルダの直下に配置します。
v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

4. server_deploy.wsddデプロイメント・ディスクリプタを次のサンプルのように編集します。

<ns1:service name="HelloWorld" provider="java:RPC" style="wrapped" use="literal">
<!-- wss10_username_token_with_message_protection -->
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="passwordCallbackClass" value="PWCallback1"/>
<parameter name="user" value="wss4j"/>
<parameter name="action" value="Signature UsernameToken Timestamp Encrypt"/>
<parameter name="signaturePropFile" value="crypto.properties" />
<parameter name="decryptionPropFile" value="crypto.properties" />
</handler>
</requestFlow>
<responseFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="passwordCallbackClass" value="PWCallback1"/>
<parameter name="user" value="orakey"/>
<parameter name="action" value="Timestamp Signature Encrypt"/>
<parameter name="encryptionKeyTransportAlgorithm"
value="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p"/>
<parameter name="signaturePropFile" value="crypto.properties" />
<parameter name="signatureKeyIdentifier" value="DirectReference" />
<parameter name="signatureParts"
value="{Element}{http://schemas.xmlsoap.org/soap/envelope/}Body;{Element}
{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp" />
<parameter name="encryptionKeyIdentifier" value="DirectReference" />
</handler>
</responseFlow>
</ns1:service>

この例では、受信者がユーザー名トークンの復号化、確認および検証を行い、送信者がユーザー名トークンの挿入、タイムスタンプの追加、本体、ユーザー名トークンおよびタイムスタンプへの署名、本体とユーザー名トークンの暗号化を行います。この例に示されているように、暗号化キー・トランスポートは、OWSMのデフォルト要件と一致するようにオーバーライドされます。

注意:

WSS4Jはヘッダー内の要素の順序を強制します。サンプルに示すように、server_deploy.wsddでアクションの順序が更新されていることを確認してください。

5. Webサービスをデプロイします。

8.3.2.2 Axis/WSS4JのためのOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

OWSM 12cクライアントを構成して、Axis/WSS4J Webサービスとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. oracle/wss10_username_token_with_message_protection_client_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

2. Java SEクライアントの場合のみ、次のようにWebサービス・クライアント・プロパティを構成します。

注意:

Java EEクライアントの場合、この手順を行う必要はありません。

myPort.setProperty(ClientConstants.WSS_KEYSTORE_TYPE,"JKS");
myPort.setProperty(ClientConstants.WSS_KEYSTORE_LOCATION,
"/keystore-path/default-keystore.jks");
myPort.setProperty(ClientConstants.WSS_KEYSTORE_PASSWORD, "welcome1");
myPort.setProperty(ClientConstants.WSS_RECIPIENT_KEY_ALIAS,"orakey");
...

setPropertyの定義は次のとおりです。

public void setProperty(String name, String value) {
((Stub) _port)._setProperty(name, value);
}

3. Webサービス・クライアントをデプロイします。

8.4 Axis/WSS4Jクライアント向けのメッセージ保護付きSAMLトークン(WS-Security 1.0)の実装

メッセージ保護付きSAMLトークン・ポリシーは、WS-Security 1.0標準に準拠します。このポリシーは、OWSM 12c WebサービスとAxis/WSS4Jクライアントとの間の相互運用性およびAxis/WSS4J WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてメッセージ保護付きSAML名トークンを実装する方法について説明します。

- OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(メッセージ保護付きSAMLトークン)

- Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

8.4.1 OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(メッセージ保護付きSAMLトークン)

OWSM 12c WebサービスとAxis/WSS4Jクライアントを使用して、WS-Security 1.0標準に準拠したメッセージ保護付きSAMLトークンを実装できます。

次のトピックでは、メッセージ保護付きSAMLトークンを実装するために、OWSM 12c WebサービスおよびAxis/WSS4Jクライアントを構成する方法を示します。

- Axis/WSS4JのためのOWSM 12c Webサービスの構成(SAMLトークン)

- Axis/WSS4Jクライアントの構成(SAMLトークン)

8.4.1.1 Axis/WSS4JのためのOWSM 12c Webサービスの構成(SAMLトークン)

OWSM 12c Webサービスを構成して、Axis/WSS4Jクライアントとの相互運用性のためのSAMLトークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. oracle/wss10_saml_token_with_message_protection_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

2. Webサービスをデプロイします。

8.4.1.2 Axis/WSS4Jクライアントの構成(SAMLトークン)

Axis/WSS4Jクライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSAMLトークンを実装できます。

Axis/WSS4Jクライアントを構成するには、次のようにします。

1. Webサービス・クライアント・プロキシを構築します。

2. Axis/WSS4Jとの相互運用性に必要なファイルの作成の説明に従って、パスワード・コールバック・クラス(PWCallback.java)、キーストア・プロパティ・ファイル(crypto.properties)およびsaml.propertiesファイルを作成します。

3. キーストア・ファイル(default-keystore.jksなど)およびcrypto.propertiesファイルをclassesフォルダの直下に配置します。
v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

4. client_deploy.wsddデプロイメント・ディスクリプタをこの手順の最後にあるサンプルのように編集します。
この例では、受信者がSAMLトークンの復号化、確認および検証を行い、送信者がSAMLトークンの挿入、タイムスタンプの追加、本体、SAMLトークンおよびタイムスタンプへの署名、本体の暗号化を行います。この例に示されているように、暗号化キー・トランスポートは、OWSMのデフォルト要件と一致するようにオーバーライドされます。

5. 前の手順で定義したデプロイメント・ディスクリプタを使用するために、クライアント・コード内に次のプロパティを設定します。

System.setProperty("axis.ClientConfigFile", "client_deploy.wsdd");

6. Webサービス・クライアントをデプロイします。
次のclient_deploy.wsddデプロイメント・ディスクリプタのサンプルを参照してください。

<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<transport name="http"
pivot="java:org.apache.axis.transport.http.HTTPSender"/>
<globalConfiguration >
<!-- wss10_saml_token_with_message_protection -->
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="passwordCallbackClass"
value="com.oracle.xmlns.ConfigOverride_jws.CO_SOA.BPELProcess1.PWCallback"/>
<parameter name="passwordType" value="PasswordText"/>
<parameter name="user" value="weblogic"/>
<parameter name="action" value="Timestamp Signature SAMLTokenSigned Encrypt"/>
<parameter name="samlPropFile" value="saml.properties"/>
<parameter name="encryptionKeyTransportAlgorithm"
value="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p"/>
<parameter name="encryptionKeyIdentifier" value="DirectReference" />
<parameter name="encryptionPropFile" value="crypto.properties" />
<parameter name="encryptionUser" value="orakey" />
<parameter name="encryptionParts"
value="{Content}{http://schemas.xmlsoap.org/soap/envelope/}Body" />
<parameter name="signatureUser" value="orakey" />
<parameter name="signaturePropFile" value="crypto.properties" />
<parameter name="signatureKeyIdentifier" value="DirectReference" />
<parameter name="signatureParts" value="{Element}
{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}
Timestamp;{Element}
{http://schemas.xmlsoap.org/soap/envelope/}Body" />
</handler>
</requestFlow>
<responseFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="passwordCallbackClass"
value="com.oracle.xmlns.ConfigOverride_jws.CO_SOA.BPELProcess1.PWCallback" />
<parameter name="action" value="Timestamp Signature Encrypt" />
<parameter name="signaturePropFile" value="crypto.properties" />
<parameter name="decryptionPropFile" value="crypto.properties" />
<parameter name="enableSignatureConfirmation" value="false" />
</handler>
</responseFlow>
</globalConfiguration >
</deployment>

8.4.2 Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

Axis/WSS4J WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.0標準に準拠したメッセージ保護付きSAMLトークンを実装できます。

次のトピックでは、メッセージ保護付きSAMLトークンを実装するために、Axis/WSS4J WebサービスおよびOWSM 12cクライアントを構成する方法を示します。

- Axis/WSS4J Webサービスの構成(SAMLトークン)

- Axis/WSS4JのためのOWSM 12cクライアントの構成(SAMLトークン)

8.4.2.1 Axis/WSS4J Webサービスの構成(SAMLトークン)

Axis/WSS4J Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ保護付きSAMLトークンを実装できます。

Axis/WSS4J Webサービスを構成するには、次のようにします。

1. Webサービスを構築します。

2. Axis/WSS4Jとの相互運用性に必要なファイルの作成の説明に従って、パスワード・コールバック・クラス(PWCallback.java)、キーストア・プロパティ・ファイル(crypto.properties)およびsaml.propertiesファイルを作成します。

3. キーストア・ファイル(default-keystore.jksなど)およびcrypto.propertiesファイルをclassesフォルダの直下に配置します。
v3証明書付きのキーストアを使用していることを確認してください。JDK 1.5キーツールでは、デフォルトでv1証明書付きのキーストアが生成されます。

4. server_deploy.wsddデプロイメント・ディスクリプタを次のサンプルのように編集します。

<ns1:service name="HelloWorld" provider="java:RPC" style="wrapped" use="literal">
<!-- wss10_username_token_with_message_protection -->
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="passwordCallbackClass" value="PWCallback1"/>
<parameter name="user" value="wss4j"/>
<parameter name="action" value="Signature SAMLTokenUnsigned Timestamp Encrypt"/>
<parameter name="signaturePropFile" value="crypto.properties" />
<parameter name="decryptionPropFile" value="crypto.properties" />
</handler>
</requestFlow>
<responseFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="passwordCallbackClass" value="PWCallback1"/>
<parameter name="user" value="orakey"/>
<parameter name="action" value="Timestamp Signature Encrypt"/>
<parameter name="encryptionKeyTransportAlgorithm"
value="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p"/>
<parameter name="signaturePropFile" value="crypto.properties" />
<parameter name="signatureKeyIdentifier" value="DirectReference" />
<parameter name="signatureParts"
value="{Element}{http://schemas.xmlsoap.org/soap/envelope/}Body;{Element}
{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp" />
<parameter name="encryptionKeyIdentifier" value="DirectReference" />
</handler>
</responseFlow>
</ns1:service>

この例では、受信者がSAMLトークンの復号化、確認および検証を行い、送信者がSAMLトークンの挿入、タイムスタンプの追加、本体、SAMLトークンおよびタイムスタンプへの署名、本体の暗号化を行います。この例に示されているように、暗号化キー・トランスポートは、OWSMのデフォルト要件と一致するようにオーバーライドされます。

注意:

WSS4Jはヘッダー内の要素の順序を強制します。サンプルに示すように、server_deploy.wsddでアクションの順序が更新されていることを確認してください。

5. Webサービスをデプロイします。

8.4.2.2 Axis/WSS4JのためのOWSM 12cクライアントの構成(SAMLトークン)

OWSM 12cクライアントを構成して、Axis/WSS4J Webサービスとの相互運用性のためのSSL経由のSAMLトークンを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. oracle/wss10_saml_token_with_message_protection_client_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

2. JSEクライアントの場合のみ、次のようにWebサービス・クライアント・プロパティを構成します。

注意:

Java EEクライアントの場合、この手順を行う必要はありません。

myPort.setProperty(ClientConstants.WSS_KEYSTORE_TYPE,"JKS");
myPort.setProperty(ClientConstants.WSS_KEYSTORE_LOCATION,
"/keystore-path/default-keystore.jks");
myPort.setProperty(ClientConstants.WSS_KEYSTORE_PASSWORD, "welcome1");
myPort.setProperty(ClientConstants.WSS_RECIPIENT_KEY_ALIAS,"orakey");
...

setPropertyの定義は次のとおりです。

public void setProperty(String name, String value) {
((Stub) _port)._setProperty(name, value);
}

3. Webサービス・クライアントをデプロイします。

8.5 Axis/WSS4Jクライアント向けのSSL経由のユーザー名トークンの実装

SSL経由のユーザー名トークン・ポリシーは、WS-Security 1.0および1.1標準に準拠します。このポリシーは、OWSM 12c WebサービスとAxis/WSS4Jクライアントとの間の相互運用性およびAxis/WSS4J WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてSSL経由のユーザー名トークンを実装する方法について説明します。

- OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(SSL経由のユーザー名トークン)

- Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

8.5.1 OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(SSL経由のユーザー名トークン)

OWSM 12c WebサービスおよびAxis/WSS4Jクライアント使用してSSL経由のユーザー名トークンを実装できます。

次のトピックでは、OWSM 12c WebサービスおよびAxis/WSS4Jクライアントを構成する方法を示します。

- Axis/WSS4JのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

- Axis/WSS4Jクライアントの構成(SSL経由のユーザー名トークン)

8.5.1.1 Axis/WSS4JのためのOWSM 12c Webサービスの構成(SSL経由のユーザー名トークン)

OWSM 12c Webサービスを構成して、Axis/WSS4Jクライアントとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. サーバーをSSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

2. oracle/wss_username_token_over_ssl_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

3. Webサービスをデプロイします。

8.5.1.2 Axis/WSS4Jクライアントの構成(SSL経由のユーザー名トークン)

Axis/WSS4Jクライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

Axis/WSS4Jクライアントを構成するには、次のようにします。

1. Webサービス・クライアント・プロキシを構築します。

2. Axis/WSS4Jとの相互運用性に必要なファイルの作成の説明に従って、パスワード・コールバック・クラス(PWCallback.java)とキーストア・プロパティ・ファイル(crypto.properties)を作成します。

3. デプロイメント・ディスクリプタclient_deploy.wsddを次の例のように編集します。この例では、受信者がユーザー名トークンとタイムスタンプを検証し、送信者がタイムスタンプを挿入します。

<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<transport name="http"
pivot="java:org.apache.axis.transport.http.HTTPSender"/>
<globalConfiguration >
<!-- wss_username_token -->
<requestFlow >
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="action" value="UsernameToken Timestamp"/>
<parameter name="user" value="weblogic"/>
<parameter name="passwordCallbackClass"
value="com.oracle.xmlns.ConfigOverride_jws.CO_SOA.BPELProcess1.PWCallback"/>
<parameter name="passwordType" value="PasswordText"/>
</handler>
</requestFlow >
</globalConfiguration >
</deployment>

4. 前の手順で定義したデプロイメント・ディスクリプタを使用するために、クライアント・コード内に次のプロパティを設定します。

System.setProperty("axis.ClientConfigFile", "client_deploy.wsdd");

5. Webサービス・クライアントをデプロイします。

8.5.2 Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

Axis/WSS4J WebサービスとOWSM 12cクライアントを使用してSSL経由のユーザー名トークンを実装できます。

次のトピックでは、Axis/WSS4J WebサービスとOWSM 12cクライアントを構成する方法を示します。

- Axis/WSS4J Webサービスの構成(SSL経由のユーザー名トークン)

- Axis/WSS4JのためのOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

8.5.2.1 Axis/WSS4J Webサービスの構成(SSL経由のユーザー名トークン)

Axis/WSS4J Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

Axis/WSS4J Webサービスを構成するには、次のようにします。

1. サーバーをSSL用に構成します。

2. Webサービスを構築します。

3. Axis/WSS4Jとの相互運用性に必要なファイルの作成の説明に従って、パスワード・コールバック・クラスPWCallback.javaおよびcrypto.propertiesファイルを作成します。

4. デプロイメント・ディスクリプタserver_deploy.wsddを次の例のように編集します。この例では、受信者がユーザー名トークンとタイムスタンプを検証し、送信者がタイムスタンプを挿入します。

<ns1:service name="HelloWorld" provider="java:RPC" style="wrapped"
use="literal">
<!-- wss_username_token_over_ssl -->
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="passwordCallbackClass" value="PWCallback1"/>
<parameter name="action" value="Timestamp UsernameToken"/>
</handler>
</requestFlow>
<responseFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="action" value="Timestamp"/>
</handler>
</responseFlow>
</ns1:service>

5. Webサービスをデプロイします。

8.5.2.2 Axis/WSS4JのためのOWSM 12cクライアントの構成(SSL経由のユーザー名トークン)

OWSM 12cクライアントを構成して、Axis/WSS4J Webサービスとの相互運用性のためのSSL経由のユーザー名トークンを実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. wss_username_token_over_ssl_client_policyポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

2. JSEクライアントの場合のみ、Webサービス・クライアント・プロパティを次のように構成します。ユーザー名とパスワードは、ユーザー名トークンを生成するためにクライアントが設定する必要があります。

注意:

Java EEクライアントの場合、この手順を行う必要はありません。

myPort.setUsername("wss4j");
myPort.setPassword("security"););

3. Webサービス・クライアントをデプロイします。
クライアントを実行している場合は、次のクライアント・システム・プロパティを含めます。ここで、default-keystore.jksは、サーバー証明書に対応する証明書が含まれるキーストアを示します。

-Djavax.net.ssl.trustStore=default-keystore.jks

8.6 Axis/WSS4Jクライアント向けのSSL経由のSAMLトークン(送信者保証)の実装

SSL経由のSAMLトークン(送信者保証)ポリシーは、WS-Security 1.0および1.1標準に準拠します。このポリシーは、OWSM 12c WebサービスとAxis/WSS4Jクライアントとの間の相互運用性およびAxis/WSS4J WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてSSL経由のSAMLトークン(送信者保証)を実装する方法について説明します。

- OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(SSL経由のSAMLトークン送信者保証)

- Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

8.6.1 OWSM 12c WebサービスとAxis/WSS4Jクライアントの構成(SSL経由のSAMLトークン送信者保証)

OWSM 12c WebサービスおよびAxis/WSS4Jクライアント使用してSSL経由のSAMLトークン(送信者保証)を実装できます。

次の手順では、SSL経由のSAMLトークン(送信者保証)を実装するために、OWSM 12c WebサービスおよびAxis/WSS4Jクライアントを構成する方法を説明します。

- Axis/WSS4JクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLトークン送信者保証)

- Axis/WSS4Jクライアントの構成(SSL経由のSAMLトークン送信者保証)

8.6.1.1 Axis/WSS4JクライアントのためのOWSM 12c Webサービスの構成(SSL経由のSAMLトークン送信者保証)

OWSM 12c Webサービスを構成して、Axis/WSS4Jクライアントとの相互運用性のためのSSL経由のSAMLトークン送信者保証を実装できます。

OWSM 12c Webサービスを構成するには、次のようにします。

1. サーバーをSSL用に構成します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のトランスポート・レベルのセキュリティ(SSL)の構成に関する説明を参照してください。

2. wss_saml_token_over_ssl_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

3. Webサービスをデプロイします。

8.6.1.2 Axis/WSS4Jクライアントの構成(SSL経由のSAMLトークン送信者保証)

Axis/WSS4Jクライアントを構成して、OWSM 12c Webサービスとの相互運用性のためのSSL経由のSAMLトークン送信者保証を実装できます。

Axis/WSS4Jクライアントを構成するには、次のようにします。

1. Webサービス・クライアント・プロキシを構築します。

2. Axis/WSS4Jとの相互運用性に必要なファイルの作成の説明に従って、パスワード・コールバック・クラス(PWCallback.java)、キーストア・プロパティ・ファイル(crypto.properties)およびSAMLプロパティ・ファイル(saml.properties)を作成します。

3. デプロイメント・ディスクリプタclient_deploy.wsddを次の例のように編集します。この例では、受信者がSAMLトークンとタイムスタンプを検証し、送信者がタイムスタンプを挿入します。

<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<transport name="http"
pivot="java:org.apache.axis.transport.http.HTTPSender"/>
<globalConfiguration >
<!-- wss_saml_token -->
<requestFlow >
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="action" value="SAMLTokenSigned Timestamp"/>
<parameter name="samlPropFile" value="saml.properties"/>
<parameter name="user" value="weblogic"/>
<parameter name="passwordCallbackClass"
value="com.oracle.xmlns.ConfigOverride_jws.CO_SOA.BPELProcess1.PWCallback"/>
<parameter name="passwordType" value="PasswordText"/>
<parameter name="signatureUser" value="orakey" />
<parameter name="signatureKeyIdentifier" value="DirectReference" />
<parameter name="signaturePropFile" value="crypto.properties" />
</handler>
</requestFlow >
</globalConfiguration >
</deployment>

4. 前の手順で定義したデプロイメント・ディスクリプタを使用するために、クライアント・コード内に次のプロパティを設定します。

System.setProperty("axis.ClientConfigFile", "client_deploy.wsdd");

5. Webサービス・クライアントをデプロイします。

8.6.2 Axis/WSS4J WebサービスとOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

Axis/WSS4J WebサービスとOWSM 12cクライアントを使用してSSL経由のSAMLトークン(送信者保証)を実装できます。

次のトピックでは、SSL経由のSAMLトークン(送信者保証)を実装するために、Axis/WSS4J WebサービスおよびOWSM 12cクライアントを構成する方法を示します。

- Axis/WSS4J Webサービスの構成(SSL経由のSAMLトークン送信者保証)

- Axis/WSS4JのためのOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

8.6.2.1 Axis/WSS4J Webサービスの構成(SSL経由のSAMLトークン送信者保証)

Axis/WSS4J Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのSSL経由のSAMLトークン送信者保証を実装できます。

Axis/WSS4J Webサービスを構成するには、次のようにします。

1. サーバーをSSL用に構成します。

2. Webサービスを構築します。

3. Axis/WSS4Jとの相互運用性に必要なファイルの作成の説明に従って、パスワード・コールバック・クラスPWCallback.javaおよびcrypto.propertiesファイルを作成します。

4. デプロイメント・ディスクリプタserver_deploy.wsddを次の例のように編集します。
この例では、受信者がSAMLトークンとタイムスタンプを検証し、送信者がタイムスタンプを挿入します。

<ns1:service name="HelloWorld" provider="java:RPC" style="wrapped"
use="literal">
<!-- wss_saml_token_over_ssl -->
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="passwordCallbackClass" value="PWCallback1"/>
<parameter name="action" value="Timestamp SAMLTokenUnsigned"/>
</handler>
</requestFlow>
<responseFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="action" value="Timestamp"/>
</handler>
</responseFlow>
</ns1:service>

5. Webサービスをデプロイします。

8.6.2.2 Axis/WSS4JのためのOWSM 12cクライアントの構成(SSL経由のSAMLトークン送信者保証)

OWSM 12cクライアントを構成して、Axis/WSS4J Webサービスとの相互運用性のためのSSL経由のSAMLトークン送信者保証を実装できます。

OWSM 12cクライアントを構成するには、次のようにします。

1. wss_saml_token_over_ssl_client_policyポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

2. JSEクライアントの場合は、Webサービス・クライアント・プロパティを次のように構成します。ユーザー名とパスワードは、SAMLアサーションを生成するためにクライアントが設定する必要があります。

myPort.setUsername("wss4j");

注意:

Java EEクライアントの場合、この手順を行う必要はありません。

3. Webサービス・クライアントをデプロイします。
クライアントを実行している場合は、次のクライアント・システム・プロパティを含めます。ここで、default-keystore.jksは、サーバー証明書に対応する証明書が含まれるキーストアを示します。

-Djavax.net.ssl.trustStore=default-keystore.jks

9 Oracle GlassFish Serverリリース3.0.1との相互運用性

Oracle Web Services Manager (OWSM)は、Oracle GlassFish Serverリリース3.0.1と相互運用できます。OWSMとOracle GlassFish Serverとの間の相互運用性を実現するため、WS-Security 1.1標準に準拠するポリシーがWebサービスにアタッチされます。

この章の内容は次のとおりです。

- Oracle GlassFishのセキュリティ環境の相互運用性の理解

- GlassFishクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

- GlassFishクライアント向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)の実装

9.1 Oracle GlassFishのセキュリティ環境の相互運用性の理解

Oracle GlassFish Serverリリース3.0.1は、Java EEプラットフォーム用のオープン・ソース・アプリケーション・サーバーです。Metroは、Oracle GlassFish Serverを構成するオープンソースWebサービス・スタックの1つです。

OWSMポリシーおよび相互運用性シナリオの詳細は、次の各トピックで説明します。

- Oracle GlassFishのOWSMポリシー

- GlassFishサービス・ポリシーの相互運用性シナリオ

9.1.1 Oracle GlassFishのOWSMポリシー

OWSM 12cでは、ポリシーをWebサービス・エンドポイントにアタッチします。ポリシーはドメインレベルで定義された1つ以上のアサーションで構成されています。アサーションはセキュリティ要件の定義です。そのまま使用できる事前定義のポリシーとアサーションのセットが用意されています。

詳細は、次を参照してください。

- OWSM事前定義済ポリシーについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』の事前定義済ポリシーに関する説明を参照してください。

- OWSM 12cポリシーの構成およびアタッチについては、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスの保護に関する説明およびポリシーのアタッチに関する説明を参照してください。

- Oracle GlassFishの構成の詳細は、http://download.oracle.com/docs/cd/E18930_01/index.htmlを参照してください。

- Metro Webサービスの構成の詳細は、http://metro.java.net/guide/を参照してください。

9.1.2 GlassFishサービス・ポリシーの相互運用性シナリオ

OWSM 11gとGlassFishサーバーとの間の相互運用性には様々なシナリオがあります。

次の表に、OWSM 11gサービス・ポリシーとGlassFishクライアント・ポリシーの相互運用性シナリオを示します。

表9-1 OWSM 11gサービス・ポリシーとGlassFishクライアントの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

SAML

1.1

はい

いいえ

oracle/wss11_saml_token_with_message_protection_service_policy

OWSM 12c WebサービスおよびGlassFishクライアントの構成

次の表に、GlassFishサービス・ポリシーとOWSM 11gクライアント・ポリシーの相互運用性シナリオを示します。

表9-2 GlassFishサービスとOWSM 11gクライアント・ポリシーの相互運用性

アイデンティティ・トークン

WS-Securityバージョン

メッセージ保護

トランスポート・セキュリティ

サービス・ポリシー

クライアント・ポリシー

SAML

1.1

はい

いいえ

GlassFish WebサービスおよびOWSM 12cクライアントの構成

oracle/wss11_saml_token_with_message_protection_client_policy

9.2 GlassFishクライアント向けのメッセージ保護付きユーザー名トークン(WS-Security 1.1)の実装

メッセージ保護付きユーザー名トークン・ポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12c WebサービスとGlassFishクライアントとの間の相互運用性およびGlassFish WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次の各トピックでは、様々な相互運用性シナリオにおいて、WS-Security 1.1標準に準拠するメッセージ保護付きユーザー名トークンを実装する方法について説明します。

- OWSM 12c WebサービスおよびGlassFishクライアントの構成(メッセージ保護付きユーザー名トークン)

- GlassFish WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

9.2.1 OWSM 12c WebサービスおよびGlassFishクライアントの構成(メッセージ保護付きユーザー名トークン)

OWSM 12c WebサービスおよびGlassFishクライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付きユーザー名トークンを実装できます。

相互運用性のための前提条件を構成するには、次のようにします。

1. 次のコマンドを使用して、default-keystore.jksファイルを作成します。

$JAVA_HOME/bin/keytool -genkeypair -alias orakey -keypass welcome -keyalg RSA

-dname "CN=orakey, O=oracle C=us" -keystore default-keystore.jks -storepass

welcome

2. default-keystore.jksをドメインのfmwconfigディレクトリにコピーします。

3. 次のコマンドを使用して、GlassFish内にファイル・ユーザーを作成します。

$<GLASSFISHV3_HOME>/glassfish/bin/asadmin create-file-user

詳細は、次の章を参照してください。

http://download.oracle.com/docs/cd/E18930_01/html/821-2433/create-file-user-1.html

4. default-keystore.jksからorakeyをGlassFishのキーストアおよび信頼ストアにインポートします。これらは<domain-dir>/configディレクトリ内にあります。

$JAVA_HOME/bin/keytool -importkeystore -srckeystore

<path-to>/default-keystore.jks -destkeystore

<path-to-gf-domain>/config/cacerts.jks -srcalias  orakey -destalias orakey

-srckeypass welcome -destkeypass changeit

5. ドメインのfmwconfigディレクトリからjps-config.xmlおよびdefault-keystore.jksをローカル・フォルダにコピーします。

OWSM 12c Webサービスを構成するには、次のようにします。

1. Webサービスを作成します。

2. oracle/wss11_username_token_with_message_protection_service_policyポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

GlassFish/Metroクライアントを構成するには、次のようにします。

1. NetBeansを使用して、「新規プロジェクト」→「Java」→「Javaアプリケーション」を選択することにより、Metroクライアントを作成します。プロジェクトの名前と場所を指定し、「終了」を選択します。

2. プロジェクトを右クリックします。「New」→「Web service Client」を選択します。ウィザードに従って、WebLogic内にデプロイされるサービスのWSDL URLを入力します。

3. 「Edit Web Services Attributes」を選択します。

4. 「Use Development Defaults」を選択して、Metroライブラリをプロジェクトに組み込みます。

5. 「Use Development Defaults」を選択解除します。ユーザー名のサブジェクトおよびパスワードを指定します。

6. Metro SEクライアントの場合:

a. 信頼ストア構成を編集します。ステップ5で作成したものと同じdefault-keystore.jksを選択します。

b. Webサービス操作をmainクラスのmainメソッドにドラッグ・アンド・ドロップします。

c. プロジェクトを右クリックし、「run」を選択してプロジェクトを実行します。

7. Metro Java EEクライアントの場合:

a. Webサービス操作を、起動するEJBまたはサーブレットにドラッグ・アンド・ドロップします。

b. アプリケーションをGlassFishにデプロイし、Webサービスを起動します。

9.2.2 GlassFish WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きユーザー名トークン)

GlassFish WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付きユーザー名トークンを実装できます。

相互運用性のための前提条件を構成するには、次のようにします。

1. 次のコマンドを使用して、default-keystore.jksファイルを作成します。

$JAVA_HOME/bin/keytool -genkeypair -alias orakey -keypass welcome -keyalg RSA
-dname "CN=orakey, O=oracle C=us" -keystore default-keystore.jks -storepass
welcome

2. default-keystore.jksをドメインのfmwconfigディレクトリにコピーします。

3. WLSTコマンドを使用して、資格証明を資格証明ストアに保存します。例:

$<ORACLE_HOME>/common/bin/wlst.sh
> connect()
> createCred(map="oracle.wsm.security", key="keystore-csf-key",
user="keystore", password="welcome")
> createCred(map="oracle.wsm.security", key="sign-csf-key", user="orakey",
password="welcome")
> createCred(map="oracle.wsm.security", key="enc-csf-key", user="orakey",
password="welcome")
>createCred(map="oracle.wsm.security", key="glassfish.credentials" ,
user="wlsUser" , password="welcome1" , description="Glassfish user
credentials");

cwallet.ssoというファイルがDOMAIN_HOME/config/fmwconfigディレクトリ内に作成されます。

4. 次のコマンドを使用して、GlassFish内にファイル・ユーザーを作成します。

$<GLASSFISHV3_HOME>/glassfish/bin/asadmin create-file-user

詳細は、http://download.oracle.com/docs/cd/E18930_01/html/821-2433/create-file-user-1.htmlを参照してください。

5. default-keystore.jksからorakeyをGlassFishのキーストアおよび信頼ストアにインポートします。これらは<domain-dir>/configディレクトリ内にあります。

$JAVA_HOME/bin/keytool -importkeystore -srckeystore

<path-to>/default-keystore.jks -destkeystore

<path-to-gf-domain>/config/keystore.jks -srcalias  orakey -destalias orakey

-srckeypass welcome -destkeypass changeit

6. ドメインのfmwconfigディレクトリからcwallet.sso、jps-config.xmlおよびdefault-keystore.jksをローカル・フォルダにコピーします。

GlassFish/Metro Webサービスを構成するには、次のようにします。

1. Metro Webサービスを作成します。詳細は、http://metro.java.net/guide/ch02.html#using_metro-developing_with_nbを参照してください。

2. 適切なセキュリティ・メカニズムを構成します。詳細は、http://metro.java.net/guide/ch12.html#ahicuを参照してください。

OWSM 11gクライアントを構成するには、次のようにします。

1. JDeveloperを使用して、GlassFishサービスのWebサービス・プロキシを作成します。ウィザードでoracle/wss11_username_token_with_message_protection_client_policyポリシーを選択します。

2. Webサービス・プロキシの「プロパティのオーバーライド」オプションで、csf-keyをglassfish.credentialsに設定します。

3. Webサービス・プロキシのメイン・クラス内で、oracle.security.jps.configのシステム・プロパティを、ステップ6でコピーしたjps-config.xmlに設定します。

注意:

次を使用している場合:

- Oracle Service Busビジネス・サービス: 「セキュリティ」ページでプロパティのオーバーライドをglassfish.credentialsに設定します。詳細は、http://docs.oracle.com/docs/html/E15866_01/owsm.htmの『Oracle Service Busでのサービスの開発』で、ポリシーのオーバーライドに関する項を参照してください。

- SOA Webサービス参照: 「セキュリティ」ページでプロパティのオーバーライドをglassfish.credentialsに設定します。詳細は、Oracle SOA SuiteでのSOAアプリケーションの開発のポリシー構成プロパティ値のオーバーライド方法に関する項を参照してください。

9.3 GlassFishクライアント向けのメッセージ保護付きSAMLトークン(送信者保証)(WS-Security 1.1)の実装

メッセージ保護付きSAMLトークン・ポリシーは、WS-Security 1.1標準に準拠します。このポリシーは、OWSM 12c WebサービスとGlassFishクライアントとの間の相互運用性およびGlassFish WebサービスとOWSM 12cクライアントとの間の相互運用性を実現するために実装されます。

次のトピックでは、様々な相互運用性シナリオにおいてメッセージ保護付きSAMLトークン(送信者保証)を実装する方法について説明します。

- OWSM 12c WebサービスおよびGlassFishクライアントの構成(メッセージ保護付きSAMLトークン)

- GlassFish WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

9.3.1 OWSM 12c WebサービスおよびGlassFishクライアントの構成(メッセージ保護付きSAMLトークン)

OWSM 12c WebサービスおよびGlassFishクライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付きSAMLトークン(送信者保証)を実装できます。

次のトピックでは、メッセージ保護付きSAMLトークン(送信者保証)を実装するために、OWSM 12c WebサービスおよびGlassFishクライアントを構成する方法を説明します。

- GlassFishクライアントの相互運用性のための前提条件の構成

- OWSM 11g Webサービスの構成(メッセージ保護付きSAMLトークン)

- GlassFish/Metroクライアントの構成(メッセージ保護付きSAMLトークン)

9.3.1.1 GlassFishクライアントの相互運用性のための前提条件の構成

OWSM 12c WebサービスとGlassFishクライアントとの間の相互運用性のために、メッセージ保護付きSAMLトークン(送信者保証)を実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. 次のコマンドを使用して、default-keystore.jksファイルを作成します。

$JAVA_HOME/bin/keytool -genkeypair -alias orakey -keypass welcome -keyalg RSA
-dname "CN=orakey, O=oracle C=us" -keystore default-keystore.jks -storepass
welcome

2. default-keystore.jksをドメインのfmwconfigディレクトリにコピーします。

3. 次のコマンドを使用して、GlassFish内にファイル・ユーザーを作成します。

$<GLASSFISHV3_HOME>/glassfish/bin/asadmin create-file-user

詳細は、http://download.oracle.com/docs/cd/E18930_01/html/821-2433/create-file-user-1.htmlを参照してください。

4. ユーザーを追加します。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのユーザーの作成に関する項を参照してください。

5. default-keystore.jksからorakeyをGlassFishのキーストアおよび信頼ストアにインポートします。これらは<domain-dir>/configディレクトリ内にあります。

$JAVA_HOME/bin/keytool -importkeystore -srckeystore
<path-to>/default-keystore.jks -destkeystore
<path-to-gf-domain>/config/cacerts.jks -srcalias  orakey -destalias orakey
-srckeypass welcome -destkeypass changeit

6. ドメインのfmwconfigディレクトリからjps-config.xmlおよびdefault-keystore.jksをローカル・フォルダにコピーします。

9.3.1.2 OWSM 11g Webサービスの構成(メッセージ保護付きSAMLトークン)

OWSM 11g Webサービスを作成し、メッセージ保護付きSAMLトークン・サービス・ポリシーをアタッチして、GlassFishクライアントとの相互運用性実現できます。

OWSM 11g Webサービスを構成するには、次のようにします。

1. Webサービスを作成します。

2. 次のポリシーをWebサービスにアタッチします。 oracle/wss11_saml_token_with_message_protection_service_policy
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。

9.3.1.3 GlassFish/Metroクライアントの構成(メッセージ保護付きSAMLトークン)

GlassFishクライアントを構成して、OWSM 11g Webサービスとの相互運用性のためのメッセージ保護付きSAMLトークンを実装できます。

GlassFish/Metroクライアントを構成するには、次のようにします。

1. NetBeansを使用して、「新規プロジェクト」→「Java」→「Javaアプリケーション」を選択することにより、Metroクライアントを作成します。プロジェクトの名前と場所を指定します。デプロイするサーバーを選択し、「終了」を選択します。

2. プロジェクトを右クリックします。「New」→「Web Service Client」を選択します。ウィザードに従って、WebLogic内にデプロイされるサービスのWSDL URLを入力します。

3. NetBeansでサポートされるWSIT SAMLセキュリティ・メカニズムとともに使用されるSAML CallbackHandlerを作成します。

a. ファイルをプロジェクトのソース・フォルダに置きます。

b. 発行者の変数の値が、GlassFishクライアントの相互運用性のための前提条件の構成のステップ5で作成したjps-config.xmlファイルのものと同じであることを確認します。

c. urnの参照を、urn:oasis:names:tc:SAML:1.1:nameid-format:unspecifiedに設定します。

d. GlassFishクライアントの相互運用性のための前提条件の構成のステップ3およびステップ4で作成したユーザーを設定します。たとえば、ユーザーをwlsuserに設定するには、次のようにファイルを変更します。CN=wlsuser,OU=SU,O=wlsuser,L=Los Angeles,ST=CA,C=US

4. JVMを構成するには、GlassFishの管理コンソールにログオンします。

a. 左側のペインで「構成」を開き、JVM設定をクリックします。

b. 右側のペインで「JVMオプション」タブをクリックします。

c. JVMオプションの追加をクリックします。新規のテキスト・フィールドが表示されます。-DWSIT_HOME=${com.sun.aas.installRoot}と入力します。

d. 左側のペインで「エンタープライズ・サーバー」をクリックします。

e. 右側のペインで「再起動」をクリックして、サーバーを再起動します。

詳細は、Oracle GlassFish Server 3.1管理者ガイド(http://download.oracle.com/docs/cd/E18930_01/html/821-2416/gepzd.html)を参照してください。

5. Webサービス参照ノードを開きます。NetBeansを使用して、「サービス参照」を右クリックしてWebサービス属性の編集を選択します。

6. SAMLのコールバック・ハンドラのオプションのため、「参照」をクリックして、ステップ3からファイルを選択します。

7. キーストアおよび信頼ストアのエイリアスを設定します。

8. index.jspファイルを開きます。右クリックしてWebサービス・クライアント参照を選択します。起動する操作の選択ダイアログボックスから操作を選択して、「OK」をクリックします。

9. プロジェクトを実行します。

9.3.2 GlassFish WebサービスおよびOWSM 12cクライアントの構成(メッセージ保護付きSAMLトークン)

GlassFish WebサービスおよびOWSM 12cクライアントを使用して、WS-Security 1.1標準に準拠したメッセージ保護付きSAMLトークン(送信者保証)を実装できます。

次のトピックでは、メッセージ保護付きSAMLトークン(送信者保証)を実装するために、GlassFish WebサービスおよびOWSM 12cクライアントを構成する方法を説明します。

- GlassFish Webサービスの相互運用性のための前提条件の構成

- GlassFish/Metro Webサービスの構成

- OWSM 11gクライアントの構成

9.3.2.1 GlassFish Webサービスの相互運用性のための前提条件の構成

GlassFish WebサービスとOWSM 12cクライアントとの間の相互運用性のために、メッセージ保護付きSAMLトークン(送信者保証)を実装する前に、多くの高度なタスクを完了する必要があります。

相互運用性のための前提条件を構成するには、次のようにします。

1. 次のコマンドを使用して、default-keystore.jksファイルを作成します。

$JAVA_HOME/bin/keytool -genkeypair -alias orakey -keypass welcome -keyalg RSA
-dname "CN=orakey, O=oracle C=us" -keystore default-keystore.jks -storepass
welcome

2. default-keystore.jksをドメインのfmwconfigディレクトリにコピーします。

3. WLSTコマンドを使用して、資格証明を資格証明ストアに保存します。

例:

$<ORACLE_HOME>/common/bin/wlst.sh
> connect()
> createCred(map="oracle.wsm.security", key="keystore-csf-key",
user="keystore", password="welcome")
> createCred(map="oracle.wsm.security", key="sign-csf-key", user="orakey",
password="welcome")
> createCred(map="oracle.wsm.security", key="enc-csf-key", user="orakey",
password="welcome")
>createCred(map="oracle.wsm.security", key="glassfish.credentials" ,
user="wlsUser" , password="welcome1" , description="Glassfish user
credentials");

cwallet.ssoというファイルがDOMAIN_HOME/config/fmwconfigディレクトリ内に作成されます。

4. 次のコマンドを使用して、GlassFish内にファイル・ユーザーを作成します。

$<GLASSFISHV3_HOME>/glassfish/bin/asadmin create-file-user

詳細は、http://download.oracle.com/docs/cd/E18930_01/html/821-2433/create-file-user-1.htmlを参照してください。

5. default-keystore.jksからorakeyをGlassFishのキーストアおよび信頼ストアにインポートします。これらは<domain-dir>/configディレクトリ内にあります。

$JAVA_HOME/bin/keytool -importkeystore -srckeystore
<path-to>/default-keystore.jks -destkeystore
<path-to-gf-domain>/config/keystore.jks -srcalias  orakey -destalias orakey
-srckeypass welcome -destkeypass changeit

6. ドメインのfmwconfigディレクトリからcwallet.sso、jps-config.xmlおよびdefault-keystore.jksをローカル・フォルダにコピーします。

9.3.2.2 GlassFish/Metro Webサービスの構成

GlassFish Webサービスを作成し、メッセージ保護付きSAMLトークン・サービス・ポリシーをアタッチして、OWSM 11g Webクライアントとの相互運用性実現できます。

GlassFish/Metro Webサービスを構成するには、次のようにします。

1. Metro Webサービスを作成します。
詳細は、http://metro.java.net/guide/ch02.html#using_metro-developing_with_nbを参照してください。

2. 適切なセキュリティ・メカニズムを構成します。詳細は、http://metro.java.net/guide/ch12.html#ahicuを参照してください。

9.3.2.3 OWSM 11gクライアントの構成

OWSM 11gクライアントを構成して、GlassFish Webサービスとの相互運用性のためのメッセージ保護付きSAMLトークン(送信者保証)を実装できます。

OWSM 11gクライアントを構成するには、次のようにします。

1. JDeveloperを使用して、GlassFishサービスのWebサービス・プロキシを作成します。ウィザードでoracle/wss11_saml_token_with_message_protection_client_policyポリシーを選択します。
詳細は、『Oracle JDeveloperによるアプリケーションの開発』のWebサービスの開発と保護に関する項を参照してください。

2. GlassFish Webサービスの相互運用性のための前提条件の構成のステップ6で作成したjps-config.xmlファイルへのパスを設定します。

3. USERNAME_PROPERTYを次のように設定します。((BindingProvider) sAMLTokenEchoService).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "wlsUser");

4. Webサービスを起動します。

Oracleの法律上の注意点

コピーライト

Copyright © 1994-2017, 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)を参照してください。