Oracle® Fusion Middleware Oracle SOA Suiteエンタープライズ・デプロイメント・ガイド 11g リリース1 (11.1.1) B55899-07 |
|
前 |
次 |
この章では、Oracle SOA SuiteをOracle Identity Managementと統合する方法について説明します。ここでは、次の項目について説明します。
Oracle Fusion Middlewareエンタープライズ・デプロイメントをOracle Identity Manager 10gまたは11gと統合できます。次の項では、資格証明ストアとポリシー・ストアの最初の構成方法とそれらの資格証明ストアおよびポリシー・ストアの再関連付けの方法を説明し、Oracle Identity Manager 10gまたは11gと統合します。
表15-1は、Oracle Identity Manager 10gをOracle SOAエンタープライズ・デプロイメントに統合するための大まかな手順を示しています。
表15-2は、Oracle Identity Manager 11gをOracle SOAエンタープライズ・デプロイメントに統合するための大まかな手順を示しています。
注意: Oracle Identity Managementとの統合時には、Oracle Identity Managementサーバーで現在使用されているトランスポート・モードを使用します。たとえば、オープン、簡易、証明書などです。 |
表15-1 Oracle Identity Manager 10gとの統合手順
手順 | 説明 | 詳細 |
---|---|---|
資格証明ストアの構成 |
Oracle Fusion Middleware SOA Suiteエンタープライズ・デプロイメント・トポロジの資格証明ストアとしてOracle Internet Directory LDAPを構成します。 |
|
ポリシー・ストアの構成 |
Oracle Fusion Middleware SOA Suiteエンタープライズ・デプロイメント・トポロジのポリシー・ストアとしてOracle Internet Directory LDAPを構成します。 |
|
OAM構成ツールの使用 |
OAM構成ツール(oamcfg)は、一連のスクリプトを起動して必要なポリシーを設定します。 |
|
WebGateのインストールと構成 |
各WEBHOSTnマシンにWebGateをインストールし、Web層を保護します。 |
|
Oracle BAMのSOA_EDG_AGでのCacheControlヘッダーの変更 |
SOA_EDG_AGアクセス・ゲートでCacheControlヘッダーの設定を変更します。 |
第15.5.5項「Oracle BAMのSOA_EDG_AGでのCacheControlヘッダーの変更」 |
WebGateのIP検証の構成 |
アクセス・システム・コンソールを使用して、WebGateのIP検証を構成します。 |
|
WebLogic認証プロバイダの設定 |
構成ファイルのバックアップ、OAM IDアサータの設定およびプロバイダの順序設定によって、WebLogic認証プロバイダを設定します。 |
|
表15-2 Oracle Identity Manager 11gとの統合手順
手順 | 説明 | 詳細 |
---|---|---|
資格証明ストアの構成 |
Oracle Fusion Middleware SOA Suiteエンタープライズ・デプロイメント・トポロジの資格証明ストアとしてOracle Internet Directory LDAPを構成します。 |
|
ポリシー・ストアの構成 |
Oracle Fusion Middleware SOA Suiteエンタープライズ・デプロイメント・トポロジのポリシー・ストアとしてOracle Internet Directory LDAPを構成します。 |
|
WebGateのインストール |
HTTPサーバーがすでにインストールされている各WEBHOSTマシンにWebGateをインストールします。 |
|
WebGateエージェントの登録 |
RREGツールを使用したWebGateエージェントの登録 |
|
soa-infraのBAMWorkflowAdminアプリケーション・ロールのロール・メンバーの設定 |
ユーザーweblogicを持たないアイデンティティ・ストアにドメインを関連付ける場合は、アプリケーション・ロールBAMWorkflowAdminに別の有効なユーザーを割り当てる必要があります。 |
第15.6.5項「soa-infraのBAMWorkflowAdminアプリケーション・ロールのロール・メンバーの設定」 |
WebLogic認証プロバイダの設定 |
構成ファイルのバックアップ、OAM IDアサータの設定およびプロバイダの順序設定によって、WebLogic認証プロバイダを設定します。 |
第15.6.6項「WebLogicオーセンティケータのセットアップ」 |
Oracle Fusion Middlewareでは、WebLogicドメインで異なるタイプの資格証明ストアおよびポリシー・ストアを使用できます。ドメインでは、XMLファイルまたは様々なタイプのLDAPプロバイダに基づいてストアを使用できます。ドメインがLDAPストアを使用する場合は、ポリシーと資格証明のデータはすべて、一元化されたストアで保持および保守されます。ただし、XMLポリシー・ストアを使用している場合、管理対象サーバーへの変更は、同じドメイン・ホームを使用していなければ管理サーバーには伝播されません。Oracle Fusion Middleware SOA Suiteエンタープライズ・デプロイメント・トポロジでは、管理サーバーと管理対象サーバーで異なるドメイン・ホームを使用するので、整合性および一貫性を保持するために、ポリシー・ストアおよび資格証明ストアとしてLDAPストアを使用する必要があります。デフォルトでは、Oracle WebLogic Serverドメインはポリシー・ストアにXMLファイルを使用します。次の各項では、資格証明およびポリシーのデフォルトのストアをOracle Internet Directory LDAPに変更するために必要な手順について説明します。
注意: ポリシー・ストアと資格証明ストアのバックエンド・リポジトリは、同じ種類のLDAPサーバーを使用する必要があります。この一貫性を保持するために、一方のストアを再関連付けるともう一方も再関連付けることになります。つまり、資格証明ストアとポリシー・ストアの両方の再関連付けは、Enterprise Manager Fusion Middleware ControlまたはWLSTコマンド |
資格証明ストアは、セキュリティ・データ(資格証明)のリポジトリです。資格証明には、ユーザー名とパスワードの組合せ、チケットまたは公開鍵証明書を保持できます。資格証明は、プリンシパルをサブジェクトに移入する際の認証時、さらにはサブジェクトが実行できるアクションを決定する際の認可時に使用されます。この項では、Oracle Fusion Middleware SOA Suiteエンタープライズ・デプロイメント・トポロジの資格証明ストアとしてOracle Internet Directory LDAPを構成する手順について説明します。資格証明ストアの構成の詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』の資格証明ストアの構成に関する章を参照してください。
次の各項では、資格証明ストアの構成について説明します。
この項では、WebLogic Server管理コンソールを使用して、LDAP認証プロバイダを作成する方法について説明します。
前提条件
LDAP認証プロバイダを作成する前に、関連構成ファイルをバックアップする必要があります。
ORACLE_BASE/admin/domain_name/aserver/domain_name/config/config.xml ORACLE_BASE/admin/domain_name/aserver/domain_name/config/fmwconfig/jps-config.xml ORACLE_BASE/admin/domain_name/aserver/domain_name/config/fmwconfig/system-jazn-data.xml
次のディレクトリにある、管理サーバーのboot.properties
ファイルをバックアップします。
ORACLE_BASE/admin/domain_name/aserver/domain_name/servers/AdminServer/security
LDAPを使用するように資格証明ストアを構成する手順は次のとおりです。
WebLogic Serverコンソールにログインします。
左のナビゲーション・バーにある「セキュリティ・レルム」リンクをクリックします。
myrealmデフォルト・レルム・エントリをクリックして構成します。
このレルムにある「プロバイダ」タブを開きます。
このレルム用に構成したDefaultAuthenticator
プロバイダがあることを確認します。
「ロックして編集」をクリックします。
「新規」ボタンをクリックし、新しいプロバイダを追加します。
Oracle Internet Directoryを使用する場合はOIDAuthenticator、Oracle Virtual Directoryを使用する場合はOVDAuthenticatorのように、プロバイダの名前を入力します。
認証プロバイダのリストから、OracleInternetDirectoryAuthenticator (Oracle Internet Directoryが使用される場合)、またはOracleVirtualDirectoryAuthenticator (Oracle Virtual Directoryが使用される場合)のいずれかのタイプを選択し、「OK」をクリックします。
「プロバイダ」画面で、新しく作成した認証プロバイダをクリックします。
「制御フラグ」を「SUFFICIENT」に設定します。このフラグは、この認証プロバイダによって正常に認証されたユーザーは、その認証を受け入れたうえで、他の認証プロバイダを呼び出さないようにすることを示しています。認証に失敗した場合、そのユーザーは、チェーンにある次の順番の認証プロバイダに引き継がれます。移行のすべての認証プロバイダの制御フラグも「SUFFICIENT」に設定されていることを確認してください。特に「DefaultAuthenticator」を確認し、その制御フラグを「SUFFICIENT」に設定します。
「保存」をクリックしてこの設定を保存します。
「プロバイダ固有」タブを開き、LDAPサーバーの詳細情報を入力します。
次の表に示すように、使用しているLDAPサーバーに固有の詳細情報を入力します。
パラメータ | 値 | 値の説明 |
---|---|---|
ホスト |
例: |
LDAPサーバーのサーバーID。 |
ポート |
例: |
LDAPサーバーのポート番号。 |
プリンシパル |
例: |
LDAPサーバーへの接続に使用されるLDAPユーザーのDN。 |
資格証明 |
なし |
LDAPサーバーへの接続に使用されるパスワード。 |
SSL有効 |
チェック済 |
LDAPサーバーに接続するときにSSLプロトコルを使用するかどうかを指定します。 |
ユーザー・ベースDN |
例: |
ユーザーが開始時に使用するDNを指定します。 |
グループ・ベースDN |
例: |
グループ・ノードを指すDNを指定します。 |
取得したユーザー名をプリンシパルとして使用する |
チェック済 |
オンにする必要があります。 |
「保存」をクリックします。
「変更のアクティブ化」をクリックして、変更を伝播します。
認証プロバイダの並替え
OID/OVD認証プロバイダおよびデフォルト認証プロバイダを並べ替えて、それぞれの認証プロバイダの制御フラグが次のように設定されていることを確認します。
認証プロバイダの順序を設定する手順は次のとおりです。
WebLogicコンソールにログインしていない場合は、ログインします。
「ロックして編集」をクリックします。
「SecurityRealms」→デフォルト・レルム名→「Providers」に移動します。
OID/OVD認証プロバイダおよびデフォルト認証プロバイダの制御フラグが次のように設定されていることを確認し、これらの認証プロバイダを並べ替えます。
OID LDAP認証プロバイダ(またはOVD LDAP認証プロバイダ): SUFFICIENT
デフォルト認証プロバイダ: SUFFICIENT
「OK」をクリックします。
「変更のアクティブ化」をクリックして、変更を伝播します。
管理サーバーとすべての管理対象サーバーを再起動します。
この項では、Oracle Fusion Middleware SOA Suiteエンタープライズ・デプロイメントWebLogicドメインを管理するための、新しい管理ユーザーおよびグループのプロビジョニングの詳細について説明します。この項で説明するタスクは次のとおりです。
この項の冒頭で述べたように、複数のWebLogicドメインのユーザーおよびグループは、中央のLDAPユーザー・ストアにプロビジョニングできます。そのような場合、あるWebLogic管理ユーザーがエンタープライズ内のすべてのドメインにアクセスできてしまうことにもなります。これはお薦めしません。WebLogic管理ユーザーがすべてのドメインにアクセスできるような状況にならないようにするために、プロビジョニングされるユーザーおよびグループには、ディレクトリ・ツリー内で一意の識別名を付与しておく必要があります。このガイドで説明するSOAエンタープライズ・デプロイメントのWebLogicドメインでは、管理ユーザーおよびグループは、次のDNでプロビジョニングされます。
管理ユーザーDN:
cn=weblogic_soa,cn=Users,dc=us,dc=mycompany,dc=com
管理グループDN:
cn=SOA Administrators,cn=Groups,dc=us,dc=mycompany,dc=com
管理ユーザーおよび管理グループをOracle Internet Directoryにプロビジョニングする手順は次のとおりです。
次に示す内容を指定してadmin_user.ldif
という名前のldifファイルを作成し、保存します。
dn: cn=weblogic_soa, cn=Users, dc=us, dc=mycompany, dc=com orclsamaccountname: weblogic_soa givenname: weblogic_soa sn: weblogic_soa userpassword: Welcome1 mail: weblogic_soa objectclass: top objectclass: person objectclass: organizationalPerson objectclass: inetorgperson objectclass: orcluser objectclass: orcluserV2 uid: weblogic_soa cn: weblogic_soa description: Admin User for the SOA Domain
ORACLE_HOME/bin
ディレクトリにあるldapadd
コマンドを実行して、Oracle Internet Directoryにユーザーをプロビジョニングします。
注意: ここで使用するORACLE_HOMEは、Oracle Internet Directoryが存在するアイデンティティ管理インストールのORACLE_HOMEです。 |
たとえば、次のように指定します(この例では読みやすくするためにコマンドを2行にわたり記載していますが、実際にはコマンドは1行で入力してください)。
OIDHOST1> ORACLE_HOME/bin/ldapadd -h oid.mycompany.com -p 389 -D
cn="orcladmin" -w welcome1 -c -v -f admin_user.ldif
次に示す内容を指定してadmin_group.ldif
という名前のldifファイルを作成し、保存します。
dn: cn=SOA Administrators, cn=Groups, dc=us, dc=mycompany, dc=com displayname: SOA Administrators objectclass: top objectclass: groupOfUniqueNames objectclass: orclGroup uniquemember: cn=weblogic_soa,cn=users,dc=us,dc=mycompany,dc=com cn: SOA Administrators description: Administrators Group for the SOA Domain
ORACLE_HOME/bin/ディレクトリにあるldapadd
コマンドを実行して、Oracle Internet Directoryにグループをプロビジョニングします(この例では読みやすくするためにコマンドを2行にわたり記載していますが、実際にはコマンドは1行で入力してください)。
OIDHOST1> ORACLE_HOME/bin/ldapadd -h oid.mycompany.com -p 389 -D
cn="orcladmin" -w welcome1 -c -v -f admin_group.ldif
Oracle Internet Directoryにユーザーおよびグループを追加したら、WebLogicドメインのセキュリティ・レルム内で、グループに管理ロールを割り当てる必要があります。これにより、そのグループに属するすべてのユーザーをそのドメインの管理者にできます。
管理ロールを管理グループに割り当てる手順は次のとおりです。
WebLogic Server管理コンソールにログインします。
コンソールの左ペインで「セキュリティ・レルム」をクリックします。
「セキュリティ・レルムのサマリー」ページで、「レルム」表の下の「myrealm」をクリックします。
「myrealm」の「設定」ページで、「ロールとポリシー」タブをクリックします。
「レルム・ロール」ページの表「ロール」の「グローバル・ロール」エントリを開きます。すると、「ロール」のエントリが表示されます。「ロール」リンクをクリックして、「グローバル・ロール」ページを表示します。
「グローバル・ロール」ページで、「管理」ロールをクリックして「グローバル・ロールの編集」ページを開きます。
「グローバル・ロールの編集」ページの表「ロール条件」の「条件の追加」ボタンをクリックします。
「述部の選択」ページで、述部のドロップダウン・リストから「グループ」を選択し、「次へ」をクリックします。
「引数の編集」ページのグループ引数フィールドでSOA管理者を指定し、「追加」をクリックします。
「終了」をクリックして、「グローバル・ロールの編集」ページに戻ります。
これで、「ロール条件」表にSOA管理者グループのエントリが表示されるようになりました。
「保存」をクリックすると、SOA管理者グループに管理ロールを追加する処理が終了します。
Webブラウザを使用してWebLogic Server管理コンソールを開き、変更が正しく行われたことを確認します。ログインにはweblogic_soaユーザーの資格証明を使用します。
注意: それぞれのSOAアプリケーションには、管理および監視用に事前定義された独自のロールおよびグループがあります。デフォルトでは、「管理者」グループでその作業を実行できます。ただし、「管理者」グループは広範になりすぎることもあります。たとえば、B2B管理者をSOAが稼働するWebLogic Serverドメインの管理者にしたくない場合があります。そのため、「SOA管理者」のような、より具体的なグループを作成することもできます。様々なアプリケーションで、SOA管理者グループによって様々なシステムを管理できるようにするには、必要なロールをSOA管理者グループに追加する必要があります。たとえば、B2Bの管理の場合はSOA管理者グループにB2BAdminロールを追加し、ワークリスト・アプリケーションの管理の場合はSOAAdminロールを追加します。それぞれのケースで必要なロールについては、各コンポーネントの固有のロールを参照してください。 |
管理サーバーのboot.properties
ファイルは、Oracle Internet Directoryで作成されたWebLogic管理ユーザーで更新する必要があります。次の手順に従って、boot.properties
ファイルを更新します。
SOAHOST1で、次のディレクトリに移動します。
cd ORACLE_BASE/admin/domainName/aserver/domainName/servers/ AdminServer/security
既存のboot.properties
ファイルの名前を変更します。
mv boot.properties boot.properties.backup
テキスト・エディタを使用して、securityディレクトリの下にboot.properties
というファイルを作成します。次のエントリをこのファイルに入力します。
username=weblogic_soa password=welcome1
ファイルを保存します。
次のコマンドを使用して、管理サーバーを停止します。
wls:/nm/domain_name>nmKill("AdminServer")
管理サーバーは、第8.4.3項「SOAHOST1での管理サーバーの起動」の手順で起動します。
構成が済んだら、資格証明ストアとポリシー・ストアを再度関連付けます。Enterprise Manager Fusion Middleware ControlまたはWLSTコマンドreassociateSecurityStore
を使用して、資格証明ストアとポリシー・ストアを再度関連付けます。詳細な手順は、第15.4項「資格証明およびポリシーの再関連付け」を参照してください。
ドメインのポリシー・ストアは、システムおよびアプリケーション固有のポリシーのリポジトリです。あるドメインには、そのドメインにデプロイされたすべてのアプリケーションで使用できるポリシーがすべて格納されたストアが1つあります。この項では、Oracle Fusion Middleware SOA Suiteエンタープライズ・デプロイメント・トポロジのポリシー・ストアとして、Oracle Internet Directory LDAPを構成する手順について説明します。この手順は、2つの部分で構成されています。
ポリシー・ストアの構成の詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』のOPSS認可およびポリシー・ストアに関する章を参照してください。
ポリシー・ストアとして使用されるLDAPサーバー・ディレクトリ(Oracle Internet Directory)に正しくアクセスできるようにするには、サーバー・ディレクトリにノードを設定する必要があります。この手順はOracle Internet Directory管理者が実行する必要があります。
Oracle Internet Directoryサーバーに適切なノードを作成する手順は次のとおりです。
次のDNエントリおよびCNエントリを指定して、LDIFファイル(この例ではjpstestnode.ldif
と想定)を作成します。
dn: cn=jpsroot_soa cn: jpsroot_soa objectclass: top objectclass: OrclContainer
(前述の文字列jpsroot_soa
で示された)ルート・ノードの識別名は、他の識別名と区別できるようにする必要があります。1つのルート・ノードは、複数のWebLogicドメインで共有できます。サブツリーに対する読取りアクセス権および書込みアクセス権がOracle Internet Directory管理者に付与されていれば、このノードを最上位レベルに作成する必要はありません。
次の例に示すように、コマンドldapadd
を使用して、Oracle Internet Directoryサーバーにこのデータをインポートします(この例では読みやすくするためにコマンドを2行にわたり記載していますが、実際にはコマンドは1行で入力してください)。
OIDHOST1> ORACLE_HOME/bin/ldapadd -h ldap_host -p ldap_port -D cn=orcladmin -w password -c -v -f jpstestnode.ldif
次の例に示すように、コマンドldapsearch
を使用して、ノードが正しく挿入されていることを確認します(この例では読みやすくするためにコマンドを2行にわたり記載していますが、実際にはコマンドは1行で入力してください)。
OIDHOST1> ORACLE_HOME/bin/ldapsearch -h ldap_host -p ldap_port -D cn=orcladmin -w password -b "cn=jpsroot_soa" objectclass="orclContainer"
Oracle internet DirectoryをLDAPベースのポリシー・ストアとして使用している場合は、INFRADBHOSTsでユーティリティoidstats.sql
を実行して、データベースのパフォーマンスを最適化するためのデータベースの統計を生成します。
ORACLE_HOME/bin/sqlplus
ユーザー名にODSを入力します。ODSユーザーの資格証明を入力するよう求められます。SQL*Plus内では次のコマンドを入力して、統計情報を収集します。
SQLPLUS> @ORACLE_HOME/ldap/admin/oidstats.sql
oidstats.sql
ユーティリティは、初期プロビジョニング後に1回だけ実行する必要があります。このユーティリティの詳細は、『Oracle Fusion Middleware Oracle Identity Managementユーザー・リファレンス』を参照してください。
ファイルまたはLDAPベースのリポジトリから、LDAPベースのリポジトリにポリシー・データを移行して、ポリシー・ストアを再度関連付けます。再関連付けでは、格納データの整合性を維持しながらリポジトリが変更されます。ソース・ポリシー・ストアの各ポリシーに対して再関連付けを行うと、ターゲットのLDAPディレクトリが検索され、一致が見つかると、一致したポリシーが必要に応じて更新されます。何も見つからない場合は、ポリシーがそのまま移行されます。
ドメイン・ポリシー・ストアをインスタンス化したら、ファイルベースまたはLDAPベースのポリシー・ストアを、同じデータを格納するLDAPベースのポリシー・ストアにいつでも再関連付けできます。これをサポートするには、必要に応じてLDAPポリシー・ストアを使用するようにドメインを構成する必要があります。
この項では、WLST reassociateSecurityStore
コマンドによる、ポリシー・ストアと資格証明ストアのOracle Internet Directoryへの再関連付け手順を説明します。
ポリシー・ストアおよび資格証明ストアの再関連付け手順は次のとおりです。
SOAHOST1からwlst
シェルを起動します。
cd ORACLE_COMMONHOME/common/bin
./wlst.sh
次のようにwlst connect
コマンドを使用して、WebLogic管理サーバーに接続します。
構文:
connect("AdminUser","AdminUserPassword","t3://hostname:port)"
例:
connect("weblogic","welcome1","t3://ADMINVHN:7001")
次のようにreassociateSecurityStore
コマンドを実行します。
構文:
reassociateSecurityStore(domain="domainName",admin="cn=orcladmin", password="orclPassword",ldapurl="ldap://LDAPHOST:LDAPPORT",servertype="OID", jpsroot="cn=jpsroot_soa")
例:
wls:/SOAEDGDomain/serverConfig>reassociateSecurityStore(domain="soaedg_domain", admin="cn=orcladmin",password="welcome1",ldapurl="ldap://oid.mycompany.com:389",servertype="OID",jpsroot="cn=jpsroot_soa")
このコマンドの出力は次のようになります。
{servertype=OID,jpsroot_soa=cn=jpsroot_soa_idm_idmhost1,admin=cn=orcladmin, domain=IDMDomain,ldapurl=ldap://oid.mycompany.com:389,password=welcome1} Location changed to domainRuntime tree. This is a read-only tree with DomainMBean as the root. For more help, use help(domainRuntime) Starting Policy Store reassociation. LDAP server and ServiceConfigurator setup done. Schema is seeded into LDAP server Data is migrated to LDAP server Service in LDAP server after migration has been tested to be available Update of jps configuration is done Policy Store reassociation done. Starting credential Store reassociation LDAP server and ServiceConfigurator setup done. Schema is seeded into LDAP server Data is migrated to LDAP server Service in LDAP server after migration has been tested to be available Update of jps configuration is done Credential Store reassociation done Jps Configuration has been changed. Please restart the server.
コマンドが正しく実行されたら、管理サーバーを再起動します。
管理サーバーを再起動するには、第8.4.3項「SOAHOST1での管理サーバーの起動」の手順を使用します。
注意: 資格証明およびポリシーの変更を有効にするには、ドメインのサーバーを再起動する必要があります。 |
Oracle Internet Directoryの属性のカタログ化
検索フィルタで使用するOracle Internet Directoryの属性に索引を付けます。索引付けは、パフォーマンス向上のためのオプションの手順です。このOracle Internet Directory内の属性への索引付けが済んでいない場合は、catalog
ツールを使用して索引付けます。
たとえば、orclerolescope
属性に索引付けを行う場合は、次のようにします。
catalog connect="orcl" add=true attribute="orclrolescope" verbose="true"
ファイルに複数の属性名を記載してバッチとして処理すると、複数の属性名に索引を付けることができます。
orclrolescope orclassignedroles orclApplicationCommonName orclAppFullName orclCSFAlias orclCSFKey orclCSFName orclCSFDBUrl orclCSFDBPort orclCSFCredentialType orclCSFExpiryTime modifytimestamp createtimestamp orcljpsassignee
OID属性の索引付けの詳細は、『Oracle Fusion Middleware Oracle Identity Managementユーザー・リファレンス』のタスクおよびカタログの例に関する項を参照してください。
この項では、Oracle SOA Suiteエンタープライズ・デプロイメント・トポロジのシングル・サインオン・ソリューションとしてOracle Access Manager 10gを設定する方法について説明します。
この項の内容は次のとおりです。
Oracle Fusion Middleware 11g リリース1に推奨されるシングル・サインオン・ソリューションはOracle Access Manager(OAM)です。OAMインストールのインストールおよび構成の詳細は、『Oracle Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド』を参照してください。この章では、既存のOAM 11gインストールおよびその基礎となるディレクトリ・サービスでSOAインストールを構成する手順を説明します。Oracle Internet Directory(OID)またはOracle Virtual Directory(OVD)のいずれか、あるいはこの両方のディレクトリ・サービスの使用をお薦めします。
注意: このガイドで説明するSOAエンタープライズ・デプロイメント・トポロジでは、シングル・サインオン構成を使用します。ここでは、SOAシステムとシングル・サインオン・システムの両方が、同一のネットワーク・ドメイン(mycompany.com)内に存在しています。複数ドメイン構成の場合は、『Oracle Access Managerアクセス管理ガイド』の第7章「シングル・サインオンの構成」に記載されている、必要な構成手順を参照してください。 |
SOAコンポジット・アプリケーションおよびOracle Access Managerのログアウトのガイドライン
Oracle Access Managerのログアウト・ガイドラインに準拠するSOAコンポジット・アプリケーション(特に/adfAuthentication?logout=true&end_url=<someURI>
によってログアウトを起動するコンポジット)をOracle Access Manager 10g環境に統合するとき、WebGateがend_urlを処理するための追加の設定が必要です。この追加設定を行わないと、Oracle Access Manager 10g WebGateがend_urlを処理しないのでログアウトされても終了URLにはリダイレクトされません。
構成手順の詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』を参照してください。
Oracle Access Manager(OAM)の設定では、Access Managerおよびポリシー・マネージャを保護するポリシーを完備した、OAMインストールが存在することを前提としています。OAMインストールのインストールおよび構成の詳細は、『Oracle Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド』を参照してください。この設定には、スタンドアロンのOracle Virtual Directory(OVD)構成またはその一部としてのOracle Internet Directory(OID)などのディレクトリ・サービスがあります。この章では、SOAをインストールした環境をOIDまたはOVDを使用して構成する際に必要な手順を説明します。
さらに、OAMのインストール環境にはWebGateで構成した専用のWebサーバーが必要です。またこの項では、OAM Webサーバーを委任認証サーバーとして使用する手順についても説明します。
OAM構成ツール(oamcfg)は、一連のスクリプトを起動して必要なポリシーを設定します。そのためには、入力情報として様々なパラメータが必要となります。具体的には次の項目が作成されます。
OAMのフォーム認証スキーム
WebLogic Serverでの認証を可能にするポリシー
Web層にあるOracle HTTP Server WebGateで構成済アプリケーションを保護できるようにOAMで指定するWebGateエントリ
選択したシナリオに応じたホスト識別子(指定しない場合は、デフォルトのホスト識別子が使用されます) アプリケーション固有のURLを保護するポリシーと保護しないポリシー
この項の項目は次のとおりです。
OAM構成ツールを実行する前に次の前提条件を確認します。
パスワード: セキュアなパスワードを作成します。このパスワードは、この後に作成するWebGateインストールのパスワードとして使用します。
LDAPホスト: 高可用性やエンタープライズ・デプロイメントの構成の場合は、ディレクトリ・サーバーのホスト名またはロード・バランサのアドレスを用意します。
LDAPポート: ディレクトリ・サーバーのポートを用意します。
LDAP USER DN: LDAP管理ユーザーのDNを用意します。これは「cn=orcladmin」などの値です。
LDAPパスワード: LDAP管理ユーザーのパスワードを用意します。
oam_aa_host: Oracle Access Managerのホスト名を用意します。
oam_aa_port: Oracle Access Managerのポートを用意します。
OAM構成ツールは次の場所にあります。
ORACLE_COMMON_HOME/modules/oracle.oamprovider_11.1.1
ORACLE_COMMON_HOMEは構成ツールを実行するマシンによって異なります。このツールは、必要なインストール・ファイルがあればすべてのマシンから実行できます。この項で説明する手順では、SOAHOST1からツールを実行します。
OAM構成ツールは、保護されているリソースやパブリック・リソースをOAMシステムに登録する手段を提供します。OAMシステムに追加される、保護されているリソースのリストは次のとおりです。
/integration/worklistapp /integration/worklistapp/…/* /workflow/sdpmessagingsca-ui-worklist /workflow/sdpmessagingsca-ui-worklist/…/* /b2bconsole /b2bconsole/…/* /sdpmessaging/userprefs-ui /sdpmessaging/userprefs-ui/…/* /DefaultToDoTaskFlow /DefaultToDoTaskFlow/…/* /em /em/…/* /console /console/…/* /soa/composer /soa/composer/.../ /OracleBAM (For BAM systems only) /OracleBAM/…/* (For BAM systems only) /BAM/composer (For BAM systems only) /BAM/composer/…/* (For BAM systems only) /BAM/workspace /BAM/workspace/…/* /soa-infra /soa-infra/deployer /soa-infra/events/edn-db-log /soa-infra/cluster/info /inspection.wsil/ /sbconsole/ /sbconsole/…/*
パブリック・リソースのリストは次のとおりです。
/soa-infra/services/…/* /soa-infra/directWSDL /soa-infra/directWSDL/…/* /OracleBAMWS /OracleBAMWS/…/* /ucs/messaging/webservice /ucs/messaging/webservice/…/* /sbinspection.wsil /sbinpection.wsil/…/* /osb /osb/…/* /sbresource /sbresource/…/*
「/…/*」は、urlコンテキストの下のすべてのリソースを表します。
OAM構成ツールを実行する手順は次のとおりです。
OAM 10gへの登録のため、次のコマンドを使用して1行のコマンド・ラインでOAM構成ツールを実行します。
MW_HOME/jrockit_160_<version>/bin/java -jar oamcfgtool.jar mode=CREATE app_domain="SOA_EDG" protected_uris="$URI_LIST" app_agent_password=<Password_to_be_provisioned_for_App_Agent> ldap_host=OID.MYCOMPANY.COM ldap_port=389 ldap_userdn="cn=orcladmin" ldap_userpassword=<Password_of_LDAP_Admin_User> oam_aaa_host=OAMHOST1 oam_aaa_port=OAMPORT1
保護するURIのリストを含めるよう、$URI_LIST
変数を次のように定義します。
########################### #Product Name: SOA ########################### ######################## protected_uris ######################## /integration/worklistapp /workflow/sdpmessagingsca-ui-worklist /b2bconsole /sdpmessaging/userprefs-ui /DefaultToDoTaskFlow /em /console /soa/composer /soa-infra /soa-infra/deployer /soa-infra/events/edn-db-log /soa-infra/cluster/info /inspection.wsil #(For BAM systems only) /OracleBAM # For BAM systems only) /BAM/composer /BAM/workspace /sbconsole /sbconsole/…/*
保護対象またはパブリックとして設定しないURIのリストを含めるよう、$PUBLIC_URI_LIST変数を次のように定義します。
########################### public_uris ########################### /soa-infra/services /soa-infra/directWSDL /OracleBAMWS /ucs/messaging/webservice /sbinspection.wsil /osb /sbresource
注意: OAM 10gでは、URL接頭辞に含まれるすべてのリソースは、ポリシーを介してより個別性の高いルールが適用されている場合を除いて、ポリシー・ドメインのデフォルト・ルールによって保護されます。特別な保護パターンを使用する必要がある場合は、10g版の『Oracle Access Managerアクセス管理ガイド』を参照して、使用可能な他のパターンを確認してください。 |
コマンドが正常に実行されたかどうかを確認するには、次の出力を確認します。
Processed input parameters Initialized Global Configuration Successfully completed the Create operation Operation Summary: Policy Domain: SOA_EDG Host Identifier: SOA_EDG Access Gate ID: SOA_EDG_AG
注意: BAMを後でインストールする場合または別のURLの保護が必要になった場合は、同じ |
ポリシー・ドメインとAccessGateの作成を検証する手順は2つの部分で構成されます。
ポリシー・ドメインを検証する手順は次のとおりです。
次のURLを使用してOracle Access Managerにログオンします。
http://OAMADMINHOST:port/access/oblix/
「ポリシー・マネージャ」をクリックします。
左側のパネルで「ポリシー・ドメイン」リンクをクリックします。
すべてのポリシー・ドメインのリストが表示されます。先ほど作成したドメインがここに表示されます。その接尾辞は_PD(たとえば、SOA_EDG_PD
)となります。3番目の列「URL接頭辞」には、このドメインの作成時に指定したURIが表示されます。
先ほど作成したポリシー・ドメインのリンクをクリックします。
このリンクから、このドメインの「一般」エリアに移動できます。
「リソース」タブをクリックします。
指定したURIが表示されます。他のタブをクリックし、他の設定を表示することもできます。
AccessGate構成を検証する手順は次のとおりです。
右上にある「アクセス・システム・コンソール」リンクをクリックします。
これはトグルのように機能し、クリックすると「ポリシー・マネージャ」リンクに切り替わります。
「アクセス・システム構成」タブをクリックします。
左のパネルにある「アクセス・ゲート構成」リンクをクリックします。
検索条件にSOA_EDGと入力し(または第15.5.3.2項「OAM構成ツールの実行」でapp_domain
名として使用した他のサブストリングなどを入力)、「実行」をクリックします。
作成したドメインのアクセス・ゲートが表示されたら(アクセス・ゲートの接尾辞は_AGなので、たとえばSOA_EDG_AG
など)、それをクリックすると作成したばかりのアクセス・ゲートの詳細が表示されます。
OAM構成ツールは、app_domain
パラメータの値を使用してポリシー・ドメインのホスト識別子を作成します。構成が正常に機能するためには、ホストに対するすべてのホスト名バリエーションを反映してホスト識別子を更新する必要があります。OAM構成ツールで作成したホスト識別子を更新する手順は次のとおりです。
Webブラウザで次のURLを指定し、アクセス・システム・コンソールに移動します。
http://hostname
:port
/access/oblix
hostname
にはWebPass Oracle HTTP Serverインスタンスを実行しているWebPassのホストを指定し、port
にはOracle HTTP ServerインスタンスのHTTPポートを指定します。
ユーザー名とパスワードの入力を求められたら、管理者としてログインします。「OK」をクリックします。
「アクセス・システム(Access System)」メイン・ページで、「アクセス・システム・コンソール」リンクをクリックします。
「アクセス・システム・コンソール」ページで、「アクセス・システム構成」タブをクリックします。
「アクセス・システム構成」ページで、左下にある「ホスト識別子」をクリックします。
「すべてのホスト識別子をリスト」ページで、OAM構成ツールで作成したホスト識別子をクリックします。たとえば、「SOA_EDG
」を選択します。
「ホスト識別子詳細」ページで「変更」をクリックします。
アクセス・システム構成で使用される「優先HTTPホスト」値を追加します。次に、SSOおよびWebGateを使用する、考えられるホスト名のバリエーションをすべて示します。
webhost1.mydomain.com:7777
webhost2.mydomain.com:7777
soahost1vhn1.mycompany.com:8001
soahost2vhn1.mycompany.com:8001
soahost1vhn1.mycompany.com:8010
soahost2vhn1.mycompany.com:8010
bamhost1.mycompany.com:9001
bamhost2.mycompany.com:9001
admin.mycompany.com:80
adminvhn.mycompany.com:7001
soahost1vhn1:8001
soahost2vhn1:8001
soahost1vhn1:8010
soahost2vhn1:8010
adminvhn:7001
soahost1vhn2:8011
soahost2vhn2:8011
「キャッシュの更新」の横にあるチェック・ボックスを選択し、「保存」をクリックします。
次のメッセージ・ボックスが表示されます。「現時点でキャッシュを更新すると、システム内のすべてのキャッシュがフラッシュされます。よろしいですか。」
「OK」をクリックして、構成変更の保存を終了します。
「ホスト識別子詳細」ページで変更内容を確認します。
OAM構成ツールでは、app_domain
パラメータの値で作成したWebGateプロファイルのPreferred_HTTP_Host
およびホスト名属性に値が移入されます。正しく機能する構成とするには、この2つの属性の両方を適切な値で更新する必要があります。OAM CFGツールで作成したWebGateプロファイルを更新する手順は次のとおりです。
Webブラウザで次のURLを指定し、アクセス・システム・コンソールに移動します。
http://hostname
:port
/access/oblix
hostname
にはWebPass Oracle HTTP Serverインスタンスを実行しているWebPassのホストを指定し、port
にはOracle HTTP ServerインスタンスのHTTPポートを指定します。
「アクセス・システム(Access System)」メイン・ページで、「アクセス・システム・コンソール」リンクをクリックし、管理者としてログインします。
「アクセス・システム・コンソール」メイン・ページで、「アクセス・システム構成」をクリックし、左ペインで「アクセス・ゲート構成」リンクをクリックし、アクセス・ゲート検索ページを表示します。
適切な検索条件を入力して、「実行」をクリックし、アクセス・ゲートのリストを表示します。
OAM構成ツールで作成したアクセス・ゲートを選択します。たとえば、SOA_EDG_AGを選択します。
「アクセス・ゲート詳細」ページで、「変更」を選択し、「アクセス・ゲートの変更」ページを表示します。
「アクセス・ゲートの変更」ページで、次のように更新します。
ホスト名: WebGateを実行しているコンピュータの名前にホスト名を更新します(webhost1.mycompany.com
など)。
優先HTTPホスト: Preferred_HTTP_Hostを、前述の項で指定したホスト名バリエーションの1つに更新します(admin.mycompany.com:80
など)。
プライマリHTTP Cookieドメイン: ホスト識別子のドメイン接尾辞にプライマリHTTP Cookieドメインを更新します(mycompany.comなど)。
「保存」をクリックします。「これらの変更をコミットしますか。」という内容のメッセージ・ボックスが表示されます。
「OK」をクリックして、構成の更新を終了します。
「アクセス・ゲートの詳細」ページに表示される値を確認し、正常に更新されたことを確認します。
WebGateにアクセス・サーバーを割り当てる手順は次のとおりです。
管理者としてアクセス・システム・コンソールにログインします。
必要に応じて、「アクセス・ゲート」ページの「詳細」に移動します。アクセス・システム・コンソールから、「アクセス・システム構成」を選択して「アクセス・ゲート構成を選択し、WebGateのリンク(SOA_EDG_AG)を選択します。
「アクセス・ゲート」ページの「詳細」で、「アクセス・サーバーをリスト」をクリックします。
ページが開き、このWebGateに現在構成されているプライマリ・アクセス・サーバーまたはセカンダリ・アクセス・サーバーが表示されます。
「追加」をクリックします。
「新規アクセス・サーバーの追加」ページで、「サーバーの選択」リストから「アクセス・サーバー」を選択して、「プライマリ・サーバー」を指定し、WebGateの2つの接続を定義します。
「追加」ボタンをクリックすると、関連付けが完了します。
ページが開き、アクセス・サーバーとWebGateが関連付けられていることが示されます。リンクをクリックすると概要が表示されます。後で使用する場合に備えてこのページを印刷しておきます。
ステップ3から6を繰り返して、さらに多くのアクセス・サーバーをWebGateに関連付けます。
OAMインストールとともにインストールしたWebGateにリダイレクトするようにフォーム認証を構成する手順は次のとおりです。
「アクセス・システム・コンソール」を開きます。
「アクセス・システム構成」画面で、左側のバーから「認証管理」を選択します。
「OraDefaultFormAuthNScheme」を選択します。
「変更」をクリックします。
「チャレンジ・リダイレクト」フィールドで、IDMインストールのホストとポートを入力します(http://sso.mycompany.com
など)。
IDMインストールにすでにWebGateがインストールされている必要があります。詳細は、『Oracle Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド』を参照してください。
各WEBHOSTnマシンにWebGateをインストールし、Web層を保護します。
WebGateをインストールし構成する手順は次のとおりです。
次のコマンドを使用して、WebGateインストーラ(取得場所の詳細は、第2.3項「インストールするソフトウェア・コンポーネントの特定」を参照)を起動します。
./Oracle_Access_Manager10_1_4_3_0_linux_OHS11g_WebGate –gui
「ようこそ」画面が表示されます。「次へ」をクリックします。
「顧客情報」画面(図15-1)で、Webサーバーを実行しているユーザー名とユーザー・グループを入力します。「次へ」をクリックして続行します。
インストール先画面(図15-2)で、WebGateをインストールするディレクトリを指定します。「次へ」をクリックして続行します。
インストールの概要の画面で「次へ」をクリックします。
WebGate構成画面(図15-3)の説明に従って、WebGateに必要なGCCランタイム・ライブラリをダウンロードし、「参照」を使用して、このGCCランタイム・ライブラリのローカル・コンピュータ上の場所を指定します。「次へ」をクリックして続行します。
この段階で、インストーラにより必要なアーティファクトが作成されます。作成が完了したら、「次へ」をクリックして続行します。
「トランスポート・セキュリティ・モード」画面(図15-4)で、「オープン・モード: 暗号化なし」を選択し、「次へ」をクリックして続行します。
WebGate構成画面で、使用するアクセス・サーバーの詳細を入力します。入力する情報は次のとおりです。
WebGate ID: OAM構成ツールを実行したときの指定のID
WebGateのパスワード
アクセス・サーバーID: OAMアクセス・サーバー構成から報告されたID
アクセス・サーバーのホスト名: OAMアクセス・サーバー構成から報告された名前
アクセス・サーバーのポート番号: OAMアクセス・サーバー構成から報告された番号
注意: アクセス・サーバーのID、ホスト名およびポートは、すべて入力が必須の項目です。 |
これらの詳細は、Oracle Access Manager管理者から取得できます。「次へ」をクリックして続行します。
「Webサーバーの構成」画面で「はい」をクリックすると、自動的にWebサーバーが更新されます。「次へ」をクリックして続行します。
次の「Webサーバーの構成画面で、httpd.conf
ファイルが格納されているディレクトリのフルパスを指定します。このファイルは、次のディレクトリに格納されています。
ORACLE_BASE/admin/OHS_Instance/config/OHS/OHS_ComponentName
例:
ORACLE_BASE/admin/ohs_instance2/config/OHS/ohs2/httpd.conf
「次へ」をクリックして続行します。
表示された「Webサーバーの構成」ページに、Webサーバー構成がWebGate向けに変更されたことを示すメッセージが示されます。「はい」をクリックして確認します。
Webサーバーをいったん停止してから再起動し、構成の更新を有効にします。「次へ」をクリックして続行します。
表示された「Webサーバーの構成」画面に、次のメッセージが示されます: 「WebサーバーをSSLモードで設定する場合、SSL関連パラメータを使用してhttpd.confファイルを構成する必要があります。SSL構成を手動で調整するには、表示される指示に従ってください。」。「次へ」をクリックして続行します。
次の「Webサーバーの構成」画面に、製品設定とWebサーバーの構成の残りの部分に関する情報が記載されているドキュメントの場所を示すメッセージが表示されます。「いいえ」を選択し、「次へ」をクリックして続行します。
最後の「Webサーバーの構成」画面が表示されます。Webサーバーの構成に関する詳細情報を得るには、手動でブラウザを起動し、該当のHTMLドキュメントを開くように指示するメッセージが表示されます。「次へ」をクリックして続行します。
「Oracle COREid Readme」画面が表示されます。画面の情報を確認し、「次へ」をクリックして続行します。
正常にインストールが完了したことを示すメッセージが、インストールの詳細とともに表示されます。
一部のOracle BAMオブジェクトを実行するには、それがブラウザのキャッシュまたは一時フォルダに存在している必要があります。Oracle Access ManagerをOracle BAMのシングル・サインオンとして使用する場合、WebページのHTTPキャッシュ・ヘッダーは、セキュリティ上の理由から、デフォルトで「no-cache」に設定されています。これにより、Microsoftサポート技術情報(http://support.microsoft.com/kb/316431
)に説明があるように、Internet Explorerから一部のオブジェクトにアクセスできず、Oracle BAMのコンソールで別のメニュー項目をクリックしたときに例外が発生することがあります。このようなエラーが発生しないようにするには、SOA_EDG_AGアクセス・ゲートでCacheControlヘッダーの設定を変更します。
CacheControlヘッダーの設定を変更する手順は次のとおりです。
次のURLを使用して、アクセス・システム・コンソールに移動します。
http://hostname:port/access/oblix
hostnameにはWebPass Oracle HTTP Serverインスタンスを実行しているホストを指定し、portにはOracle HTTP ServerインスタンスのHTTPポートを指定します。
「アクセス・システム(Access System)」メイン・ページで、「アクセス・システム・コンソール」リンクをクリックし、管理者としてログインします。
「アクセス・システム・コンソール」メイン・ページで、「アクセス・システム構成」をクリックし、左ペインで「アクセス・ゲート構成」リンクをクリックし、アクセス・ゲート検索ページを表示します。
適切な検索条件を入力して、「実行」をクリックし、アクセス・ゲートのリストを表示します。
Oracle Access Manager構成ツールで作成したアクセス・ゲートを選択します。
ページの一番下にある「変更」をクリックします。
「CachePragmaHeader」フィールドおよび「CacheControlHeader」フィールドで、「no-cache」フィールドを「private」に置き換えます。
ページの一番下にある「保存」をクリックします。
IP検証により、クライアントのIPアドレスが、シングル・サインオン用に生成されてObSSOCookie
に格納されたIPアドレスと同じかどうかが判定されます。IPターミネーションを実行するように構成されたロード・バランサ・デバイスを使用しているシステムにおいては、また認証するWebGateのフロントエンドのロード・バランサがエンタープライズ・デプロイメントのフロントエンドのロード・バランサと異なる場合は、IP検証で問題が発生することがあります。
このような場合に検証が行われないようにロード・バランサを構成する手順は次のとおりです。
次のURLを使用して、アクセス・システム・コンソールに移動します。
http://hostname:port/access/oblix
hostnameにはWebPass Oracle HTTP Serverインスタンスを実行しているホストを指定し、portにはOracle HTTP ServerインスタンスのHTTPポートを指定します。
「アクセス・システム(Access System)」メイン・ページで、「アクセス・システム・コンソール」リンクをクリックし、管理者としてログインします。
「アクセス・システム・コンソール」メイン・ページで、「アクセス・システム構成」をクリックし、左ペインで「アクセス・ゲート構成」リンクをクリックし、アクセス・ゲート検索ページを表示します。
適切な検索条件を入力して、「実行」をクリックし、アクセス・ゲートのリストを表示します。
Oracle Access Manager構成ツールで作成したアクセス・ゲートを選択します。
ページの一番下にある「変更」をクリックします。
「IPValidationException」フィールドに、デプロイメントのフロントエンドに位置するロード・バランサのアドレスを入力します。
ページの一番下にある「保存」をクリックします。
この項では、WebLogic認証プロバイダの設定方法を説明します。
前提条件
LDAP認証プロバイダをまだ作成していない場合は、作成してからこの項を読み進めてください。LDAP認証プロバイダを設定するには、第15.2.1項「LDAP認証プロバイダの作成」の手順を実行します。
この項の内容は次のとおりです。
まず、次の関連する構成ファイルをバックアップします。
ORACLE_BASE/admin/domain_name/aserver/domain_name/config/config.xml ORACLE_BASE/admin/domain_name/aserver/domain_name/config/fmwconfig/jps-config.xml ORACLE_BASE/admin/domain_name/aserver/domain_name/config/fmwconfig/system-jazn-data.xml
管理サーバーのboot.properties
ファイルもバックアップします。
Weblogicコンソールを使用してOAM IDアサータを設定します。
OAM IDアサータを設定するには:
WebLogicコンソールにログインしていない場合は、ログインします。
次の場所に移動します。
SecurityRealms\Default_Realm_Name\Providers
「新規」をクリックし、ドロップダウン・メニューから「OAM Identity Asserter」を選択します。
アサータの名前(OAM ID Asserterなど)を入力し、「保存」をクリックします。
新しく追加したアサータをクリックし、OAMアイデンティティ・アサータの構成画面を確認します。
「制御フラグ」を「REQUIRED」に設定して、「保存」をクリックします。
「プロバイダ固有」タブを開き、必要な設定を次のように構成します。
プライマリ・アクセス・サーバー: OAMサーバーのエンドポイント情報をHOST:PORT形式で指定します。
アクセス・ゲート名: アクセス・ゲートの名前(SOA_EDG_AG
など)。
アクセス・ゲートのパスワード: アクセス・ゲートのパスワード(オプション)。
設定を保存します。
プロバイダの順序を設定する手順は次のとおりです。
WebLogicコンソールにログインしていない場合は、ログインします。
「ロックして編集」をクリックします。
「SecurityRealms」→デフォルト・レルム名→「Providers」に移動します。
OAMアイデンティティ・アサータ、OID/OVD認証プロバイダおよびデフォルト認証プロバイダの制御フラグが次のように設定されていることを確認し、これらの認証プロバイダを並べ替えます。
OAMアイデンティティ・アサータ: REQUIRED
OID LDAP認証プロバイダ(またはOVD LDAP認証プロバイダ): SUFFICIENT
デフォルト認証プロバイダ: SUFFICIENT
「OK」をクリックします。
「変更のアクティブ化」をクリックして、変更を伝播します。
管理サーバーとすべての管理対象サーバーを再起動します。
この項では、Oracle SOAエンタープライズ・デプロイメント・トポロジのシングル・サインオン・ソリューションとしてOracle Access Manager 11gを設定する方法について説明します。
この章の項目は次のとおりです。
Oracle Fusion Middleware 11g リリース1に推奨されるシングル・サインオン・ソリューションはOracle Access Manager(OAM)です。OAMインストールのインストールおよび構成の詳細は、『Oracle Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド』を参照してください。ここでは、既存のOAM 11gインストールおよびその基礎となるディレクトリ・サービスでSOAインストールを構成する手順を説明します。Oracle Internet Directory(OID)またはOracle Virtual Directory(OVD)のいずれか、あるいはこの両方のディレクトリ・サービスの使用をお薦めします。
注意: このガイドで説明するSOAトポロジでは、シングル・サインオン構成を使用します。ここでは、SOAシステムとシングル・サインオン・システムの両方が、同一のネットワーク・ドメイン(mycompany.com)内に存在しています。複数ドメイン構成の場合は、『Oracle Access Managerアクセス管理ガイド』の第7章「シングル・サインオンの構成」に記載されている、必要な構成手順を参照してください。 |
この項の手順を実行する前に、Access Managersおよびポリシー・マネージャを保護するポリシーを備えた既存のOracle Access Manager (OAM)のインストールが必要です。OAMインストールのインストールおよび構成の詳細は、『Oracle Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド』を参照してください。この設定には、スタンドアロンのOracle Virtual Directory (OVD)構成またはその一部としてのOracle Internet Directory (OID)などのディレクトリ・サービスがあります。この章では、SOAをインストールした環境をOIDまたはOVDを使用して構成する際に必要な手順を説明します。
さらに、OAMのインストール環境にはWebGateで構成した専用のWebサーバーが必要です。またこの項では、OAM Webサーバーを委任認証サーバーとして使用する手順についても説明します。
この項では、HTTPサーバーがすでにインストールされている各WEBHOSTマシンにWebGateをインストールする方法を説明します。
WebGateをインストールする前に、マシンにサード・パーティ製GCCライブラリをダウンロードおよびインストールする必要があります。次のサードパーティWebサイトから該当するGCCライブラリをダウンロードできます。
http://gcc.gnu.org/
32ビットのLinuxの場合、必要なライブラリはバージョン3.3.2のlibgcc_s.so.1およびlibstdc++.so.5です。表15-3は、LinuxおよびSolarisのGCCサード・パーティ製ライブラリのバージョンを示しています。
この項では、WebGateをインストールする手順を説明します。
Oracle HTTP Server 11g Webgate for Oracle Access Managerのインストーラ・プログラムは、webgate.zipファイルに含まれています。
WebGateをインストールする手順は次のとおりです。
webgate.zipファイルのコンテンツを、ディレクトリに解凍します。
デフォルトでは、このディレクトリはwebgate
と名前が付けられています。
Disk1ディレクトリをwebgateフォルダの下に移動します。
MW_HOME環境変数をWeb層のミドルウェア・ホームに設定します。
export MW_HOME=ORACLE_BASE/product/fmw/web
次のコマンドを使用し、インストーラを開始します。
$ ./runInstaller -jreLoc MW_HOME/jdk
注意: Oracle HTTP Serverをインストールすると、WebTier_Homeディレクトリの下にjdkディレクトリが作成されます。インストーラの開始時には、このJDK内にあるJREディレクトリの絶対パスを入力する必要があります。 |
インストーラが起動すると、「ようこそ」画面が表示されます。
「ようこそ」画面で「次へ」をクリックします。
「前提条件のチェック」画面で、「次へ」をクリックします。
「インストール場所の指定」画面で、Oracleミドルウェア・ホームとOracleホームの場所を指定します。
ORACLE_BASE/product/fmw
Oracle_OAMWebGate1 (デフォルト名のまま)
注意: MiddleWareホームには、Oracle Web層のOracleホームがあります。このOracleホームのデフォルト名はOracle_OAMWebGate1で、これはミドルウェア・ホームの下に作成されます。 |
「次へ」をクリックします。
GCCライブラリの指定画面で、GCCライブラリを含むディレクトリを指定し、「次へ」をクリックします。
「インストール・サマリー」画面で情報を確認し、「インストール」をクリックしインストールを開始します。
「インストールの進行状況」画面で、ファイルおよびディレクトリに対して正しい権限を設定するために、ORACLE_HOME/oracleRoot.shスクリプトの実行を求められる場合があります。
「次へ」をクリックして続行します。
「インストール完了」画面で、「終了」をクリックしてインストーラを終了します。
Oracle HTTP Server 11g Webgate for Oracle Access Managerのインストール後、次の手順を完了します。
Oracleホーム下のWebgateの次のディレクトリの下に移動します。
$ cd Webgate_Home/webgate/ohs/tools/deployWebGate
コマンドラインから次のコマンドを実行し、Webgate_HomeディレクトリからWebgateインスタンスの場所へ必要なエージェント・ビットをコピーします。
$ ./deployWebGateInstance.sh -w ORACLE_BASE/admin/webN/config/OHS/ohsN -oh Webgate_Oracle_Home
ここでWebgate_Oracle_Homeは、次の例で示すように、Oracle HTTP Server Webgateをインストールし、WebgateのOracleホームとして作成したディレクトリです。
MW_HOME/Oracle_OAMWebGate1
次のディレクトリはOracle HTTP Serverのインスタンス・ホームです(Nはインストールの連番で、たとえば、WEBHOST1は1、WEBHOST2は2のようになります)。
ORACLE_BASE/admin/webN/config/OHS/ohsN
注意: Oracle HTTP Serverのインスタンス・ホームはOracle HTTP Serverの構成後に作成されます。 |
次のコマンドを実行し、LD_LIBRARY_PATH変数にOracle_Home_for_Oracle_HTTP_Server/libが含まれることを確認します。
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:Oracle_Home_for_Oracle_HTTP_Server/lib
現在の作業ディレクトリから1レベル上位のディレクトリに移動します。
$ cd Webgate_Oracle_Home/webgate/ohs/tools/setup/InstallTools
コマンドラインで次のコマンドを実行し、apache_webgate.template
をWebgate_HomeディレクトリからWebgateのインスタンスの場所(webgate.confに名前が変更されている)にコピーし、httpd.conf
ファイルを更新してwebgate.confの名前を含めるよう1行追加します。
$ ./EditHttpConf -w ORACLE_BASE/admin/webN/config/OHS/ohsN [-oh Webgate_Oracle_Home] [-o output_file]]
注意: -oh WebGate_Oracle_Homeパラメータおよび-o output_fileパラメータはオプションです。 |
ここでWebgate_Oracle_Homeは、次の例で示すように、Oracle HTTP Server Webgate for Oracle Access Managerをインストールし、WebgateのOracleホームとして作成したディレクトリです。
MW_HOME/Oracle_OAMWebGate1
Webgate_Instance_Directoryは、Webgateインスタンス・ホームの場所で、次の例のようにOracle HTTP Serverのインスタンス・ホームと同じです。
MW_HOME/Oracle_WT1/instances/instance1/config/OHS/ohs1
output_fileは、ツールが使用する一時出力ファイルであり、次の例に示すとおりです。
Edithttpconf.log
この項では、WebGateエージェントを登録する手順を説明します。
RREGツールはOAM 11gインストールの一部に含まれています。見つからない場合は、次の手順を使用して抽出します。
Oracle Access Managerのインストールおよび構成後、次の場所に移動します。
IDM_Home/oam/server/rreg/client
コマンドラインから、次の例のとおり、gunzipを使用してRREG.tar.gz
ファイルを解凍します。
gunzip RREG.tar.gz tar -xvf RREG.tar
エージェントを登録するためのツールは次の場所にあります。
RREG_Home/bin/oamreg.sh
RREG_Homeは、RREG.tar.gz/rregの内容の抽出先ディレクトリです。
RREG構成ツールは、保護されているリソースやパブリック・リソースをOAMシステムに登録する手段を提供します。OAMシステムに追加される、保護されているリソースのリストは次のとおりです。
/integration/worklistapp /integration/worklistapp/…/* /workflow/sdpmessagingsca-ui-worklist /workflow/sdpmessagingsca-ui-worklist/…/* /b2bconsole /b2bconsole/…/* /sdpmessaging/userprefs-ui /sdpmessaging/userprefs-ui/…/* /DefaultToDoTaskFlow /DefaultToDoTaskFlow/…/* /em /em/…/* /console /console/…/* /soa/composer /soa/composer/.../ /OracleBAM (For BAM systems only) /OracleBAM/…/* (For BAM systems only) /BAM/composer (For BAM systems only) /BAM/composer/…/* (For BAM systems only) /BAM/workspace /BAM/workspace/…/* /soa-infra /soa-infra/deployer /soa-infra/events/edn-db-log /soa-infra/cluster/info /inspection.wsil/ /sbconsole /sbconsole/…/*
パブリック・リソースのリストは次のとおりです。
/soa-infra/services/…/* /soa-infra/directWSDL /soa-infra/directWSDL/…/* /OracleBAMWS /OracleBAMWS/…/* /ucs/messaging/webservice /ucs/messaging/webservice/…/* /wsm-pm /wsm-pm/.../*
「/…/*」は、urlコンテキストの下のすべてのリソースを表します。
RREG_Home/inputディレクトリには、OAM11gRequest.xml
という名前のテンプレート・ファイルがあります。このファイルをコピーおよび編集して、SOAインストールのポリシーを作成します。
oamreg.sh
スクリプトの実行権限を追加します。
chmod u+x /RREG_Home/bin/oamreg.sh
編集後のファイルは次のようになります。
注意:
|
<?xml version="1.0" encoding="UTF-8"?> <!-- Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. NAME: OAM11GRequest_short.xml - Template for OAM 11G Agent Registration request file (Shorter version - Only mandatory values - Default values will be used for all other fields) DESCRIPTION: Modify with specific values and pass file as input to the tool. --> <OAM11GRegRequest> <serverAddress>http://$$oamhost$$:$$oamadminserverport$$</serverAddress> <hostIdentifier>$$webtierhost$$_soa</hostIdentifier> <agentName>$$webtierhost$$_soa</agentName> <applicationDomain>$$webtierhost$$_soa</applicationDomain> <cachePragmaHeader>private</cachePragmaHeader <cacheControlHeader>private</cacheControlHeader> <ipValidation>1</ipValidation> <ValList ListName="ipValidationExceptions"> <ValListMember Value="10.1.1.1"/> </ValList> <logOutUrls> <url></url> </logOutUrls> <protectedResourcesList> <resource>/integration/worklistapp</resource> <resource>/integration/worklistapp/…/*</resource> <resource>/workflow/sdpmessagingsca-ui-worklist</resource> <resource>/workflow/sdpmessagingsca-ui-worklist/…/*</resource> <resource>/b2bconsole</resource> <resource>/b2bconsole/…/*</resource> <resource>/sdpmessaging/userprefs-ui</resource> <resource>/sdpmessaging/userprefs-ui/…/*</resource> <resource>/DefaultToDoTaskFlow</resource> <resource>/DefaultToDoTaskFlow/…/*</resource> <resource>/em</resource> <resource>/em/…/*</resource> <resource>/console</resource> <resource>/console/…/*</resource> <resource>/sbconsole</resource> <resource>/sbconsole/…/*</resource> <-- (For OSB systems only) --> <resource>/soa/composer</resource> <resource>/soa/composer/…/*</resource> <resource>/OracleBAM </resource><!-- (For BAM systems only) --> <resource>/OracleBAM/…/*</resource><!-- (For BAM systems only) --> <resource>/BAM/composer</resource> <!-- (For BAM systems only) --> <resource>/BAM/composer/…/*</resource> <!-- (For BAM systems only) --> <resource>/BAM/workspace</resource><!-- (For BAM systems only) --> <resource>/BAM/workspace/…/*</resource><!-- (For BAM systems only) --> <resource>/soa-infra</resource> <resource>/soa-infra/deployer</resource> <resource>/soa-infra/deployer/…/*</resource> <resource>/soa-infra/events/edn-db-log</resource> <resource>/soa-infra/events/edn-db-log/…/*</resource> <resource>/soa-infra/cluster/info</resource> <resource>/soa-infra/cluster/info/…/*</resource> <resource>/inspection.wsil</resource> </protectedResourcesList> <publicResourcesList> <resource>/soa-infra/directWSDL</resource> <resource>/sbinspection.wsil</resource> <!-- (For OSB systems only) --> </publicResourcesList> <excludedResourcesList> <resource>/wsm-pm</resource> <resource>/wsm-pm/…/*</resource> <resource>/soa-infra/services/…/*</resource> <resource>/OracleBAMWS</resource> <!-- (For BAM systems only) --> <resource>/OracleBAMWS/…/*</resource><!-- (For BAM systems only) --> <resource>/ucs/messaging/webservice</resource> <resource>/ucs/messaging/webservice/…/*</resource> <resource>/osb</resource> <!-- (For OSB systems only) --> <resource>/osb/…/*</resource> <!-- (For OSB systems only) --> <resource>/sbresource</resource> <!-- (For OSB systems only) --> <resource>/sbresource/…/*</resource> <!-- (For OSB systems only) --> </excludedResourcesList> </OAM11GRegRequest>
次のコマンドを使用し、oamregツールを実行します。
$ ./RREG_Home/bin/oamreg.sh inband input/SOAOAM11GRequest.xml
実行すると次のように表示されます。
------------------------------------------------ Welcome to OAM Remote Registration Tool! Parameters passed to the registration tool are: Mode: inband Filename: MW_HOME/Oracle_IDM1/oam/server/rreg/input/SOAOAM11gRequest.xml Enter your agent username:weblogic Username: weblogic Enter agent password: Do you want to enter a Webgate password?(y/n): y Enter webgate password: Enter webgate password again: Password accepted. Proceeding to register.. Aug 16, 2010 1:22:30 AM oracle.security.am.engines.rreg.client.handlers.request.OAM11GRequestHandler getWebgatePassword INFO: Passwords matched and accepted. Do you want to import an URIs file?(y/n): n ---------------------------------------- Request summary: OAM11G Agent Name:WEBHOST1_soa URL String:WEBHOST1_soa Registering in Mode:inband Your registration request is being been sent to the Admin server at: http://oamserver.mycompany.com:7001 ---------------------------------------- Inband registration process completed successfully! Output artifacts are created in the output folder.
次の2つのファイルがRREG_Home/output/$$webtierhost$$_soaに生成されます。
ObAccessClient.xml
cwallet.sso
これらのファイルを、WEBHOSTマシン上のWebGateインスタンスの場所にコピーします。
scp ObAccessClient.xml oracle@WEBHOSTN:ORACLE_BASE/admin/webN/config/OHS/ohsN/
webgate/config/ scp cwallet.sso oracle@WEBHOSTN:ORACLE_BASE/admin/webN/config/OHS/ohsN/
webgate/config/
scp
コマンドの、N
はインストールの連番で、たとえば、WEBHOST1
は1
、WEBHOST2
は2
です。
ユーザーweblogicを持たないアイデンティティ・ストアにドメインを関連付ける場合は、アプリケーション・ロールBAMWorkflowAdminに別の有効なユーザーを割り当てる必要があります。
このロールを有効なユーザーに割り当てる手順は次のとおりです。
この場合は、LDAPストアにSOAAdminという名前のユーザーを作成します。このユーザーがロールに割り当てられます。
ロールを割り当てます。この作業は、SOAのOracleホームからWLSTを使用して実行できます。
例:
cd ORACLE_HOME/common/bin/
wlst.sh
connect('weblogic','weblogic', 'SOAADMINHOST:7001')
revokeAppRole(appStripe="soa-infra", appRoleName="BAMWorkflowAdmin", principalClass="oracle.security.jps.service.policystore.ApplicationRole", principalName="SOAAdmin")
grantAppRole(appStripe="soa-infra", appRoleName="BAMWorkflowAdmin", principalClass="weblogic.security.principal.WLSUserImpl", principalName="SOAAdmin")
構成ファイルのバックアップ、OAM IDアサータの設定およびプロバイダの順序設定によって、WebLogic認証プロバイダを設定します。
前提条件
WebLogic認証プロバイダを設定する前に、第15.2.1項「LDAP認証プロバイダの作成」の手順に従ってLDAP認証プロバイダを設定しておく必要があります。まだLDAP認証を作成していない場合は、それを作成してからこの項の続きを実行してください。
この項の内容は次のとおりです。
まず、次の関連する構成ファイルをバックアップします。
ORACLE_BASE/admin/domain_name/aserver/domain_name/config/config.xml ORACLE_BASE/admin/domain_name/aserver/domain_name/config/fmwconfig/jps-config.xml ORACLE_BASE/admin/domain_name/aserver/domain_name/config/fwmconfig/system-jazn-data.xml
さらに、管理サーバー用にboot.properties
ファイルをバックアップします。
OAM IDアサータを設定するには:
WebLogicコンソールにログインしていない場合は、ログインします。
「ロックして編集」をクリックします。
「SecurityRealms」→「<デフォルト・レルム名>」→「Providers」に移動します。
「新規」をクリックし、ドロップダウン・メニューから「OAM Identity Asserter」を選択します。
アサータの名前(OAM ID Asserterなど)を入力し、「保存」をクリックします。
新しく追加したアサータをクリックし、OAMアイデンティティ・アサータの構成画面を確認します。
「制御フラグ」を「REQUIRED」に設定します。
「選択済み」タイプで「ObSSOCookie」および「OAM_REMOTE_USER」の2つのオプションを選択します。
設定を保存します。
「変更を適用」をクリックします。
最後にWLSTコンソールにadminとしてログインし、次のコマンドを実行します。
addOAMSSOProvider(loginuri="/${app.context}/adfAuthentication",logouturi="oamsso/logout.html")
WebLogic管理コンソールを使用してプロバイダの順序を設定します。
プロバイダの順序を設定する手順は次のとおりです。
WebLogicコンソールにログインします。
「ロックして編集」をクリックします。
「SecurityRealms」→デフォルト・レルム名→「Providers」に移動します。
OAMアイデンティティ・アサータ、OID/OVD認証プロバイダおよびデフォルト認証プロバイダの制御フラグが次のように設定されていることを確認し、これらの認証プロバイダを並べ替えます。
OAMアイデンティティ・アサータ: REQUIRED
OID LDAP認証プロバイダ(またはOVD LDAP認証プロバイダ): SUFFICIENT
デフォルト認証プロバイダ: SUFFICIENT
「OK」をクリックします。
「変更のアクティブ化」をクリックして、変更を伝播します。
管理サーバーとすべての管理対象サーバーを再起動します。
拡張したドメインが正常に動作していることを確認した後、そのドメイン構成をバックアップします。このバックアップは、この後の手順でエラーが発生した場合にすぐにリストアできるようにすることが目的です。構成をローカル・ディスクにバックアップします。エンタープライズ・デプロイメントが完了すれば、このバックアップは破棄してかまいません。エンタープライズ・デプロイメントが完了すれば、バックアップとリカバリの通常のデプロイメント固有プロセスを開始できます。
環境のバックアップの詳細は、『Oracle Fusion Middleware管理者ガイド』の環境のバックアップに関する項を参照してください。情報のリカバリの詳細は、『Oracle Fusion Middleware管理者ガイド』の環境のリカバリに関する項を参照してください。
この時点で構成をバックアップする手順は次のとおりです。
Web層をバックアップする手順は次のとおりです。
opmnctl
を使用してインスタンスを停止します。
ORACLE_BASE/admin/instance_name/bin/opmnctl stopall
次のコマンドをroot権限で実行して、Web層のミドルウェア・ホームをバックアップします。
tar -cvpf BACKUP_LOCATION/web.tar $MW_HOME
次のコマンドをroot権限で実行して、Web層のインスタンス・ホームをバックアップします。
tar -cvpf BACKUP_LOCATION/web_instance.tar $ORACLE_INSTANCE
opmnctl
を使用してインスタンスを起動します。
ORACLE_BASE/admin/instance_name/bin/opmnctl startall
データベースをバックアップします。これは、Oracle Recovery Manager(推奨)またはtar
などのOSツールを使用したデータベース全体のホット・バックアップまたはコールド・バックアップです。OSツールを使用する場合は、可能なかぎりコールド・バックアップをお薦めします。
管理サーバーのドメイン・ディレクトリをバックアップしてドメイン構成を保存します。構成ファイルは次のディレクトリにあります。
ORACLE_BASE/ admin/domain_name
管理サーバーをバックアップするには、SOAHOST1で次のコマンドを実行します。
tar -cvpf edgdomainback.tar ORACLE_BASE/admin/domain_name