7 Oracle Service Bus 10gのセキュリティ環境との相互運用性
この章の内容は次のとおりです。
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の相互運用性シナリオは、次の項で説明します。
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 |
はい |
いいえ |
|
|
SAML |
1.0 |
はい |
いいえ |
|
|
SAMLまたはユーザー名 |
1.0および1.1 |
いいえ |
はい |
|
|
相互認証 |
1.0 |
はい |
いいえ |
|
|
次の表に、Oracle Service Bus 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性シナリオを示します。
表7-2 Oracle Service Bus 10gサービス・ポリシーとOWSM 12cクライアント・ポリシーの相互運用性
アイデンティティ・トークン | WS-Securityバージョン | メッセージ保護 | トランスポート・セキュリティ | サービス・ポリシー | クライアント・ポリシー |
---|---|---|---|---|---|
ユーザー名 |
1.0 |
はい |
いいえ |
|
|
SAML |
1.0 |
はい |
|
|
|
相互認証 |
1.0 |
はい |
いいえ |
|
|
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メッセージ保護付きユーザー名トークン)を参照してください。
前提条件タスクの完了後、サポートされているシナリオの詳細な手順を参照してください。
7.2.1 相互運用性のための前提条件の構成(WS-Security 1.0メッセージ保護付きユーザー名トークン)
OWSM 12cとOracle Service Bus 10gとの間の相互運用性のために、WS-Security 1.0メッセージ保護付きユーザー名トークンを実装する前に、多くの高度なタスクを完了する必要があります。
相互運用性のための前提条件を構成するには、次のようにします。
-
default-keystore.jks
およびtrust.jks
ファイルをドメイン・ディレクトリにコピーします。default-keystore.jks
は、WebLogicドメイン内のSOAPメッセージの公開キーと秘密キーを格納するために使用されます。trust.jks
は、WebLogic Server環境でのアイデンティティと信頼の確立および検証に使用される公開キー、デジタル証明書、および信頼できる認証局証明書を格納するために使用されます。 -
WebLogic管理コンソールを起動します。
-
カスタム・アイデンティティ・キーストアおよびカスタム信頼キーストアを構成します。
-
SSLを構成します。
-
秘密キーの別名を指定します。例:
oratest
。 -
資格証明マッピング・プロバイダを構成します。
PKICredentialMapperを作成し、次のように構成します(その他の値はすべてデフォルト設定のままにしておきます)。
-
キーストア・プロバイダ: なし
-
キーストアのタイプ: jks
-
キーストア・ファイル名: default_keystore.jks
-
キーストアのパスフレーズ: <password>
-
キーストアのパスフレーズを確認: <password>
-
-
Oracle WebLogic Serverを再起動します。
-
OSBコンソールを起動します。次に例を示します。
http://<host name>:<port number>/servicebus
-
ServiceKeyProviderを作成します。
-
「暗号化キー」および「デジタル署名キー」を指定します。
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クライアントを構成する方法を説明します。
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サービスを構成するには、次のようにします。
-
wss10_username_token_with_message_protection_service_policy
ポリシーのクローンを作成します。詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。
-
次のようにして、ポリシー設定を編集します。
-
「暗号化キー参照メカニズム」を「
issuerserial
」に設定します。 -
「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。
-
「タイムスタンプを含める」構成設定を有効化します。
-
ユーザー名トークン要素の場合のみ、「暗号化」を「false」に設定します。
-
-
ポリシーを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クライアントを構成するには、次のようにします。
詳細情報
『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローン作成に関する項
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クライアントを構成する方法を説明します。
7.2.3.1 Oracle Service Bus 10g Webサービスの構成(メッセージ保護付きユーザー名トークン)
Oracle Service Bus 10g Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのメッセージ保護付きユーザー名トークンを実装できます。
Oracle Service Bus 10g Webサービスを構成するには、次のようにします。
-
Encrypt.xml
およびSign.xml
ポリシー・ファイルのクローンを作成します。たとえば、ファイルを
myEncrypt.xml
およびmySign.xml
にコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。 -
暗号化準拠の失敗を回避するために、
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の使用に関する項を参照してください。 -
セキュリティ・トークンを無署名にすることを指定する目的のみで、プロキシ・サービス・リクエストにアタッチされた
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 -->
-
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クライアントを構成するには、次のようにします。
-
wss10_username_token_with_message_protection_client_policy
ポリシーのクローンを作成します。次のようにして、ポリシー設定を編集します。
-
「暗号化キー参照メカニズム」を「issuerserial」に設定します。
-
「受信者暗号化キー参照メカニズム」を「issuerserial」に設定します。
-
「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。
-
「タイムスタンプを含める」構成設定を無効化します。
-
「暗号化」を「false」に設定します。
-
メッセージの署名および暗号化については、デフォルト構成設定のままにしておきます。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。
-
-
ポリシーをWebサービス・クライアントにアタッチします。
-
クライアントから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送信者保証トークン)を参照してください。前提条件タスクの完了後、特定のデプロイメントに応じて次のタスクのいずれかを完了させます。
7.3.1 相互運用性のための前提条件の構成(SAML送信者保証トークン)
OWSM 12cとOracle Service Bus 10gとの間の相互運用性のために、WS-Security 1.0メッセージ保護付きSAML送信者保証トークンを実装する前に、多くの高度なタスクを完了する必要があります。
相互運用性のための前提条件を構成するには、次のようにします。
-
default-keystore.jks
およびtrust.jks
ファイルをドメイン・ディレクトリにコピーします。default-keystore.jks
は、WebLogicドメイン内のSOAPメッセージの公開キーと秘密キーを格納するために使用されます。trust.jks
は、WebLogic Server環境でのアイデンティティと信頼の確立および検証に使用される秘密キー、デジタル証明書、および信頼できる認証局証明書を格納するために使用されます。詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のメッセージ保護用のキーストアの構成に関する項を参照してください。 -
WebLogic管理コンソールを起動します。
詳細は、『Webサービスの管理』のOracle WebLogic管理コンソールへのアクセスに関する説明を参照してください。
-
SAMLIdentityAsserterV2認証プロバイダを作成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください。
-
WebLogic Serverを再起動して、新しいプロバイダを管理サーバーのランタイムMBeanサーバーに追加します。
-
ステップ3で作成した認証プロバイダを選択します。
-
SAMLアサーティング・パーティを作成および構成します。
次のようにSAMLアサーティング・パーティを構成します(その他の値はデフォルトの設定のままにしておきます)。
-
プロファイル: WSS/sender-vouches
-
ターゲットURL: <OSB Proxy Service Endpoint URI>
-
発行者URI: www.oracle.com
「有効」チェック・ボックスを選択し、「保存」をクリックします。
-
-
SamlCredentialMapperV2資格証明マッピング・プロバイダを作成します。
ドロップダウン・リストからSamlCredentialMapperV2を選択し、資格証明マッパーにたとえば、UC2_SamlCredentialMapperV2のように名前を付けます。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML IDアサータV2: アサーティング・パーティの作成に関する項およびSAML IDアサータV2: アサーティング・パーティ: 構成に関する項を参照してください。
-
WebLogic Serverを再起動します。
-
次のように資格証明マッパーを構成します(その他の値はデフォルトの設定のままにしておきます)。
-
発行者URI: www.oracle.com
注意:
この値は、ポリシー・ファイルに指定されます。
-
名前修飾子: oracle.com
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください。
-
-
SAMLリライイング・パーティを作成および構成します。
次のようにSAMLリライイング・パーティを構成します(その他の値はデフォルトの設定のままにしておきます)。
-
プロファイル: WSS/sender-vouches
-
ターゲットURL: <OWSM 12c Web Service>
-
説明: <your_description>
「有効」チェック・ボックスを選択し、「保存」をクリックします。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML資格証明マッピング・プロバイダV2: リライイング・パーティの作成およびSAML資格証明マッピング・プロバイダV2: リライイング・パーティ: 構成に関する説明を参照してください。
-
-
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クライアントを構成する方法を説明します。
7.3.2.1 Oracle Service Bus 10gクライアントのためのOWSM 12c Webサービスの構成(SAML送信者保証トークン)
OWSM 12c Webサービスを構成して、Oracle Service Bus 10gクライアントとの相互運用性のためのSAML送信者保証トークンを実装できます。
OWSM 12c Webサービスを構成するには、次のようにします。
-
oracle/wss10_saml_token_with_message_protection_service_policy
ポリシーのクローンを作成します。詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。
-
「暗号化キー参照メカニズム」を「issuerserial」に設定します。
-
「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。
-
ユーザー名トークン要素の場合のみ、「暗号化」を「false」に設定します。
-
メッセージの署名および暗号化については、デフォルト構成設定のままにしておきます。
-
-
ポリシーを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クライアントを構成するには、次のようにします。
-
Encrypt.xml
およびSign.xml
ポリシー・ファイルのクローンを作成します。たとえば、
myEncrypt.xml
およびmySign.xml
にコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。 -
暗号化準拠の失敗を回避するために、
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の使用に関する項を参照してください。 -
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>
-
セキュリティ・トークンを無署名にすることを指定する目的のみで、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 -->
-
次のカスタム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>
-
クライアントから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クライアントを構成する方法を説明します。
7.3.3.1 Oracle Service Bus 10g Webサービスの構成(SAML送信者保証トークン)
Oracle Service Bus 10g Webサービスを構成して、OWSM 12cクライアントとの相互運用性のためのSAML送信者保証トークンを実装できます。
Oracle Service Bus 10g Webサービスを構成するには、次のようにします。
-
Encrypt.xml
およびSign.xml
ポリシー・ファイルのクローンを作成します。たとえば、
myEncrypt.xml
およびmySign.xml
にコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。 -
暗号化準拠の失敗を回避するために、
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の使用に関する項を参照してください。 -
セキュリティ・トークンを無署名にすることを指定する目的のみで、プロキシ・サービス・リクエストにアタッチされた
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 -->
-
次のカスタム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クライアントを構成するには、次のようにします。
-
wss10_saml_token_with_message_protection_client_policy
ポリシーのクローンを作成します。次のようにして、ポリシー設定を編集します。
-
「暗号化キー参照メカニズム」を「issuerserial」に設定します。
-
「受信者暗号化キー参照メカニズム」を「issuerserial」に設定します。
-
「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。
-
「タイムスタンプを含める」構成設定を無効化します。
-
メッセージの署名および暗号化については、デフォルト構成設定のままにしておきます。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。
-
-
ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。
-
クライアントから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前提条件を構成するには、次のようにします。
-
SamlCredentialMapperV2資格証明マッピング・プロバイダを作成します。
ドロップダウン・リストからSamlCredentialMapperV2を選択し、資格証明マッパーにたとえば、UC2_SamlCredentialMapperV2のように名前を付けます。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください。
-
WebLogic Serverを再起動します。
-
次のように資格証明マッパーを構成します(その他の値はデフォルトの設定のままにしておきます)。
-
発行者URI: www.oracle.com
注意:
この値は、ポリシー・ファイルに指定されます。
-
名前修飾子: oracle.com
-
-
SAMLリライイング・パーティを作成および構成します。
次のようにSAMLリライイング・パーティを構成します(その他の値はデフォルトの設定のままにしておきます)。
-
プロファイル: WSS/sender-vouches
-
ターゲットURL: <OWSM 12c Web Service>
-
説明: <your_description>
「有効」チェック・ボックスを選択し、「保存」をクリックします。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSAML資格証明マッピング・プロバイダV2: リライイング・パーティの作成およびSAML資格証明マッピング・プロバイダV2: リライイング・パーティ: 構成に関する説明を参照してください。
-
-
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クライアントを構成する方法を説明します。
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サービスを構成するには、次のようにします。
-
サーバーを双方向SSL用に構成します。
-
サービス・ポリシーがSSL経由のユーザー名トークンの場合、「相互クライアント証明書の動作」を「クライアント証明書をリクエスト(強制しない)」に設定します。
-
サービス・ポリシーがSSL経由のSAML名トークンの場合、「相互クライアント証明書の動作」を「クライアント証明書をリクエスト(強制する)」に設定します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(双方向)に関する説明を参照してください。
-
-
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サービス・ポリシーのクローニングに関する説明を参照してください。
-
-
JDeveloperを使用して、単純なSOAコンポジットを作成します。
-
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クライアントを構成するには、次のようにします。
-
サーバーを双方向SSL用に構成します。
-
クライアント・ポリシーがSSL経由のユーザー名トークンに相当するポリシーの場合、「相互クライアント証明書の動作」を「クライアント証明書をリクエスト(強制しない)」に設定します。
-
クライアント・ポリシーがSSL経由のSAMLトークンに相当するポリシーの場合、「相互クライアント証明書の動作」を「クライアント証明書をリクエスト(強制する)」に設定します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebLogic ServerへのSSLの構成(双方向)に関する説明を参照してください。
-
-
Oracle Service Busコンソールで、リライイング・パーティのWSDLをインポートします。いずれのポリシーもアタッチされていないことを確認してください(このサービスではポリシー・アサーションは許可されていません。)
-
SAMLトークンに対して、ビジネス・サービスを作成します。
-
ポリシーをリクエストにアタッチします。
次のカスタム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>
-
WSDLをHTTPからHTTPSに変更します。
-
-
ユーザー名トークンに対して、ビジネス・サービスを作成します。
-
auth.xml
ポリシーをリクエストにアタッチします。 -
WSDLをHTTPからHTTPSに変更します。
-
-
プロキシ・サービスを作成し、ビジネス・サービスへのルートを作成します。
「HTTPトランスポート構成」で、「認証」を「基本」に設定します。
「セキュリティ」ページで、サービス・キー・プロバイダを関連付けます。これは、Oracle Service Busがクライアント証明書をSOAに送信するために必要となります。
-
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サービス
どちらのシナリオの場合も、まず前提条件タスクを実行する必要があります。
前提条件タスクの完了後、特定のデプロイメントに応じて次のタスクのいずれかを完了させます。
7.5.1 Oracle WebLogic Serverの前提条件の構成
OWSM 12cとOracle Service Bus 10gとの間の相互運用性のために、WS-Security 1.0メッセージ保護付き相互認証を実装する前に、Oracle WebLogic Serverの多くの高度なタスクを完了する必要があります。
Oracle WebLogic Serverの前提条件を構成するには、次のようにします。
-
default-keystore.jksおよびtrust.jksファイルをドメイン・ディレクトリにコピーします。
default-keystore.jks
は、WebLogicドメイン内のSOAPメッセージの公開キーと秘密キーを格納するために使用されます。trust.jks
は、Oracle WebLogic Server環境でのアイデンティティと信頼の確立および検証に使用される公開キー、デジタル証明書、および信頼できる認証局証明書を格納するために使用されます。詳細は、Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理のメッセージ保護用のキーストアの構成に関する項を参照してください。
-
WebLogic管理コンソールを起動します。
詳細は、『Webサービスの管理』のOracle WebLogic管理コンソールへのアクセスに関する説明を参照してください。
-
カスタム・アイデンティティ・キーストアおよびカスタム信頼キーストアを構成します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのキーストアの構成に関する項を参照してください。
-
SSLを構成します。
秘密キーの別名を指定します。例:
oratest
。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのSSLの設定に関する項を参照してください。
-
資格証明マッピング・プロバイダを構成します。
-
PKICredentialMapperを作成し、次のように構成します(その他の値はすべてデフォルト設定のままにしておきます)。
-
キーストア・プロバイダ: なし
-
キーストアのタイプ: jks
-
キーストア・ファイル名: default_keystore.jks
-
キーストアのパスフレーズ: <password>
-
キーストアのパスフレーズを確認: <password>
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの資格証明マッピング・プロバイダの構成に関する項を参照してください。
-
-
「認証」タブを選択し、次のように構成します。
-
「DefaultIdentityAsserter」をクリックし、「X.509」を「選択済み」アクティブ・タイプに追加します。
-
「プロバイダ固有」をクリックし、次のように構成します。
-
デフォルト・ユーザー名マッパーの属性のタイプ: CN
-
アクティブなタイプ: X.509
-
デフォルト・ユーザー名マッパーの使用: True
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください。
-
-
-
トークン・ハンドラを構成して、メッセージ保護付きの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_に対しても、同じステップを実行します。
-
-
ユーザーを追加していない場合、証明書で指定されている一般名(CN)ユーザーを追加します。
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのユーザーの作成に関する項を参照してください。
-
Oracle WebLogic Serverを再起動します。
7.5.2 OWSMの前提条件の構成
OWSM 12cとOracle Service Bus 10gとの間の相互運用性のために、WS-Security 1.0メッセージ保護付き相互認証を実装する前に、多くの高度なタスクを完了する必要があります。
OWSMの前提条件を構成するには、次のようにします。
-
認証を構成します。
「認証」タブを選択し、次のように構成します。
-
「DefaultIdentityAsserter」をクリックし、「X.509」を「選択済み」アクティブ・タイプに追加します。
-
「プロバイダ固有」をクリックし、次のように構成します。
-
デフォルト・ユーザー名マッパーの属性のタイプ: CN
-
アクティブなタイプ: X.509
-
デフォルト・ユーザー名マッパーの使用: True
-
詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください。
-
-
ユーザーを追加していない場合、証明書で指定されている一般名(CN)ユーザーを追加します。
-
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サービスを構成するには、次のようにします。
-
SOAコンポジットを作成してデプロイします。
-
wss10_x509_token_with_message_protection_service_policy
ポリシーのクローンを作成します。次のようにして、ポリシー設定を編集します。
-
「暗号化キー参照メカニズム」を「issuerserial」に設定します。
-
「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。
-
-
ポリシーをWebサービスにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。
-
Oracle Service Bus 10gクライアントを構成するには、Oracle Service Busビジネス・サービスを作成します。
-
Encrypt.xml
およびSign.xml
ポリシー・ファイルのクローンを作成します。たとえば、ファイルを
myEncrypt.xml
およびmySign.xml
にコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。 -
この手順の最後のサンプルに示すX.509ポリシーを、Oracle Service Busビジネス・サービス・リクエストにアタッチします。
-
Sign.xml
ポリシー・ファイルをOracle Service Busビジネス・サービス・リクエストにアタッチします。 -
この手順の最後のサンプルに示すように
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の使用に関する項を参照してください。 -
セキュリティ・トークンを無署名にすることを指定するために、Oracle Service Busビジネス・サービス・レスポンスにアタッチされた
mySign.xml
ポリシー・ファイルを編集します。<wssp:Integrity SignToken="false">
また、SOAクライアントの場合のみ、この手順の最後のサンプルに示すようにシステム・ヘッダーのターゲットをコメント・アウトします。
-
ステップ6で編集した
myEncrypt.xml
ポリシー・ファイルをOracle Service Busビジネス・サービス・レスポンスにアタッチします。 -
ServiceKeyProviderを作成します。
-
「暗号化キー」および「デジタル署名キー」を指定します。
OWSMサーバーとOracle Service Busサーバーでは別々のキーを使用する必要があります。必要であれば、暗号化と署名には同じキーを使用できます。
-
プロキシ・サービスを作成し、ビジネス・サービスへのルートを作成します。
「セキュリティ」ページで、サービス・キー・プロバイダを関連付けます。これは、Oracle Service Busがクライアント証明書をSOAに送信するために必要となります。
-
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クライアントを構成する方法を説明します。
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サービスを構成するには、次のようにします。
-
Oracle Service Busプロキシ・サービスを作成します。
-
Encrypt.xml
およびSign.xml
ポリシー・ファイルのクローンを作成します。たとえば、
myEncrypt.xml
およびmySign.xml
にコピーします。事前定義済ポリシー・ファイルを直接編集することはお薦めしません。 -
X.509ポリシーをプロキシ・サービス・リクエストにアタッチします。
-
プロキシ・サービス・リクエストにアタッチされた
mySign.xml
ポリシー・ファイルを編集し、この手順の最後のサンプルに示すようにシステム・ヘッダーとタイムスタンプのターゲットをコメント・アウトします。詳細は、
http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/ws_policy.html
にあるOracle Service Busのセキュリティ・ガイドのOracle Service Busプロキシおよびビジネス・サービスでのWS-Policyの使用に関する項を参照してください。 -
この手順の最後のサンプルに示すように、プロキシ・サービス・リクエストにアタッチされた
myEncrypt.xml
ファイル内の暗号化アルゴリズムを編集します。 -
前のステップで編集した
mySign.xml
およびmyEncrypt.xml
ポリシー・ファイルをプロキシ・サービス・レスポンスにアタッチします。 -
サービス・キー・プロバイダを作成します。
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クライアントを構成するには、次のようにします。
-
wss10_x509_token_with_message_protection_client_policy
ポリシーのクローンを作成します。Fusion Middleware Controlで、ポリシー設定を次のように編集します。
-
「暗号化キー参照メカニズム」を「issuerserial」に設定します。
-
「受信者暗号化キー参照メカニズム」を「issuerserial」に設定します。
-
「アルゴリズム・スイート」を、Oracle Service Busに使用されるアルゴリズム・スイートに合わせて「Basic128Rsa15」に設定します。
-
「タイムスタンプを含める」構成設定を無効化します。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービス・ポリシーのクローニングに関する説明を参照してください。
-
-
Fusion Middleware Controlで、クライアント構成にkeystore.recipient.aliasを指定します。クライアントに指定するkeystore.recipient.aliasキーが、Webサービスに対して構成されている信頼ストア内に信頼できる証明書エントリとして存在していることを確認してください。
-
ポリシーをWebサービス・クライアントにアタッチします。
詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のポリシーのアタッチに関する説明を参照してください。
-
クライアントからWebサービスを起動します。