ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Web Services Manager相互運用性ソリューション・ガイド
12c (12.1.3)
E59426-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
 

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

この章では、Oracle Glassfish Serverリリース3.0.1とOracle Web Services Manager (OWSM)の相互運用性について説明します。

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

9.1 Oracle GlassFishのセキュリティ環境との相互運用性の概要

Oracle GlassFish Serverリリース3.0.1は、Java EEプラットフォーム用のオープン・ソース・アプリケーション・サーバーです。Metroは、Oracle GlassFish Serverを構成するオープンソースWebサービス・スタックの1つです。

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および表9-2は、セキュリティ要件(認証、メッセージ保護およびトランスポート)に基づいたGlassFish Serverの最も一般的な相互運用性シナリオをまとめたものです。

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

アイデンティティ・トークン WS-Securityバージョン メッセージ保護 トランスポート・セキュリティ サービス・ポリシー クライアント・ポリシー

SAML

1.1

はい

いいえ

oracle/wss11_saml_token_with_message_protection_service_policy

「OWSM 12c WebサービスおよびGlassFishクライアントの構成」を参照してください。


表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 メッセージ保護付きユーザー名トークン(WS-Security 1.1)

この項では、次の相互運用性シナリオにおいて、WS-Security 1.1標準に準拠するメッセージ保護付きユーザー名トークンを実装する方法について説明します。

9.2.1 OWSM 12c WebサービスおよびGlassFishクライアントの構成

次の手順では、WS-Security 1.1標準に準拠するメッセージ保護付きユーザー名トークンを実装するために、OWSM 12c WebサービスおよびGlassFishクライアントを構成する方法を示します。

表9-3 相互運用性のための構成の前提条件

タスク 説明 参照先

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をローカル・フォルダにコピーします。

--


表9-4 OWSM 12c Webサービスの構成

タスク 説明 参照先

1

Webサービスを作成します。

--

2

oracle/wss11_username_token_with_message_protection_service_policyポリシーをWebサービスにアタッチします。

Oracle Web Services ManagerによるWebサービスの保護およびポリシーの管理のポリシーのアタッチ


表9-5 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クライアントの場合:

  1. 信頼ストア構成を編集します。表9-3「相互運用性のための構成の前提条件」で作成したdefault-keystore.jksと同じものを選択します。

  2. Webサービス操作をmainクラスのmainメソッドにドラッグ・アンド・ドロップします。

  3. プロジェクトを右クリックし、「run」を選択してプロジェクトを実行します。

--

7

Metro Java EEクライアントの場合:

  1. Webサービス操作を、起動するEJBまたはサーブレットにドラッグ・アンド・ドロップします。

  2. アプリケーションをGlassFishにデプロイし、Webサービスを起動します。

--


9.2.2 GlassFish WebサービスおよびOWSM 12cクライアントの構成

次の手順では、WS-Security 1.1標準に準拠するメッセージ保護付きユーザー名トークンを実装するために、GlassFish WebサービスおよびOWSM 12cクライアントを構成する方法を示します。

表9-6 相互運用性のための構成の前提条件

タスク 説明 参照先

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.ssojps-config.xmlおよびdefault-keystore.jksをローカル・フォルダにコピーします。

--


表9-7 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-8 OWSM 11gクライアントの構成

タスク 説明 参照先

1

JDeveloperを使用して、GlassFishサービスのWebサービス・プロキシを作成します。ウィザードでoracle/wss11_username_token_with_message_protection_client_policyポリシーを選択します。

--

2

Webサービス・プロキシの「プロパティのオーバーライド」オプションで、csf-keyglassfish.credentialsに設定します。

--

3

Webサービス・プロキシのメイン・クラス内で、oracle.security.jps.configのシステム・プロパティを、表9-6「相互運用性のための構成の前提条件」のステップ6でコピーしたjps-config.xmlに設定します。

--



注意:

次を使用している場合:
  • Oracle Service Busビジネス・サービス: 「セキュリティ」ページでプロパティのオーバーライドをglassfish.credentialsに設定します。詳細は、http://docs.oracle.com/html/E15866_01/owsm.htm『Oracle Fusion Middleware Oracle Service Bus開発者ガイド』のポリシーのオーバーライドに関する項を参照してください。

  • SOA Webサービス参照: 「セキュリティ」ページでプロパティのオーバーライドをglassfish.credentialsに設定します。詳細は、http://docs.oracle.com/middleware/1213/soasuite/develop-soa/soa-security-policies-jdev.htm#SOASE85427のSOA Suiteの開発者ガイドの構成プロパティ値をオーバーライドする方法に関する項を参照してください。


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

この項では、次の相互運用性シナリオにおいて、WS-Security 1.1標準に準拠するメッセージ保護付きSAMLトークン(送信者保証)を実装する方法を示します。

9.3.1 OWSM 12c WebサービスおよびGlassFishクライアントの構成

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

表9-9 相互運用性のための構成の前提条件

タスク 説明 参照先

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-10 OWSM 11g Webサービスの構成

タスク 説明 参照先

1

Webサービスを作成します。

--

2

oracle/wss11_saml_token_with_message_protection_service_policyポリシーをWebサービスにアタッチします。

Oracle Web Services ManagerによるWebサービスの保護およびポリシーの管理のポリシーのアタッチ


表9-11 GlassFish/Metroクライアントの構成

タスク 説明 参照先

1

NetBeansを使用して、「新規プロジェクト」→「Java」→「Javaアプリケーション」を選択することにより、Metroクライアントを作成します。プロジェクトの名前と場所を指定します。デプロイするサーバーを選択し、「終了」を選択します。

--

2

プロジェクトを右クリックします。「New」→「Web Service Client」を選択します。ウィザードに従って、WebLogic内にデプロイされるサービスのWSDL URLを入力します。

--

3

NetBeansでサポートされるWSIT SAMLセキュリティ・メカニズムとともに使用されるSAML CallbackHandlerを作成します。

  1. ファイルをプロジェクトのソース・フォルダに置きます。

  2. 発行者の変数の値が、表9-9「相互運用性のための構成の前提条件」のステップ5で作成したjps-config.xmlファイルのものと同じであることを確認します。

  3. urnの参照を、urn:oasis:names:tc:SAML:1.1:nameid-format:unspecifiedに設定します。

  4. 表9-12「相互運用性のための構成の前提条件」のステップ3およびステップ4で作成したユーザーを設定します。たとえば、ユーザーをwlsuserに設定するには、次のようにファイルを変更します。CN=wlsuser,OU=SU,O=wlsuser,L=Los Angeles,ST=CA,C=US

--

4

JVMを構成するには、GlassFishの管理コンソールにログオンします。

  1. 左側のペインで「構成」を開き、JVM設定をクリックします。

  2. 右側のペインで「JVMオプション」タブをクリックします。

  3. JVMオプションの追加をクリックします。新規のテキスト・フィールドが表示されます。-DWSIT_HOME=${com.sun.aas.installRoot}と入力します。

  4. 左側のペインで「エンタープライズ・サーバー」をクリックします。

  5. 右側のペインで「再起動」をクリックして、サーバーを再起動します。

http://download.oracle.com/docs/cd/E18930_01/html/821-2416/gepzd.htmlOracle GlassFish Server 3.1管理ガイド

5

Webサービス参照ノードを開きます。NetBeansを使用して、「サービス参照」を右クリックしてWebサービス属性の編集を選択します。

--

6

SAMLのコールバック・ハンドラのオプションのため、「参照」をクリックして、ステップ3からファイルを選択します。

--

7

キーストアおよび信頼ストアのエイリアスを設定します。

--

8

index.jspファイルを開きます。右クリックしてWebサービス・クライアント参照を選択します。起動する操作の選択ダイアログボックスから操作を選択して、「OK」をクリックします。

--

9

プロジェクトを実行します。

--


9.3.2 GlassFish WebサービスおよびOWSM 12cクライアントの構成

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

表9-12 相互運用性のための構成の前提条件

タスク 説明 参照先

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.ssojps-config.xmlおよびdefault-keystore.jksをローカル・フォルダにコピーします。

--


表9-13 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-14 OWSM 11gクライアントの構成

タスク 説明 参照先

1

JDeveloperを使用して、GlassFishサービスのWebサービス・プロキシを作成します。ウィザードでoracle/wss11_saml_token_with_message_protection_client_policyポリシーを選択します。

Oracle JDeveloperによるアプリケーションの開発のWebサービスの開発と保護に関する項

2

表9-12「相互運用性のための構成の前提条件」のステップ6で作成したjps-config.xmlへのパスを設定します。

--

3

USERNAME_PROPERTYを次のように設定します。((BindingProvider) sAMLTokenEchoService).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "wlsUser");

--

4

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

--