Oracle® Fusion Middleware Oracle Platform Security Servicesによるアプリケーションの保護 12c (12.1.2) E47967-02 |
|
![]() 前 |
![]() 次 |
この章では、ドメインの作成時または拡張時に、アプリケーションで、ドメイン・セキュリティ・ストアにアプリケーション固有のセキュリティ・アーティファクトのシードを指定する方法を説明します。ここでは、12.1.2へのアップグレード手順も説明します。
この章は次の項に分かれています:
11gドメインでは、デプロイメント・ディスクリプタが適切に設定されている場合に製品固有のセキュリティ・アーティファクトを指定すると、通常、それらのアーティファクトはアプリケーションEARファイルにバンドルされ、アプリケーションのデプロイ時にセキュリティ・ストアに移行されました。
12cドメインでは、製品テンプレートに製品固有のセキュリティ・アーティファクトをバンドルすると、それらのアーティファクトをドメイン・セキュリティ・ストアにシードできます。
JRFテンプレートを使用して作成または拡張されたドメインは、FMWドメインと呼ばれます。つまり、このテンプレートによって、ドメイン・セキュリティ・ストアのセキュリティ・アーティファクトのプロビジョニングが指定されます。具体的には、FMWドメインの作成時または拡張時に、次のタスクが自動的に実行されます。
OPSSセキュリティ・アーティファクトの作成
暗号化鍵でシードされるブートストラップ・ウォレットの作成
追加設定なしの、次を含むキーストア・サービスの作成
ドメイン・トラスト・ストア
デモCAキーストア
Oracle WebLogic Serverで使用するドメイン・アイデンティティ・キー・ストア
追加設定なしの、キーストア・サービスに接続されたトラスト・サービスの作成
拡張ドメインでは、前述の事項に加えて、次も指定されます。
追加設定なしの、DBベースのセキュリティ・ストアの構成
デフォルトでの、DBベースの監査リポジトリの構成
重要事項: JRFテンプレートでは、管理対象サーバーは作成されません。JRFテンプレートによって作成または拡張されたドメインでは、そのすべてのリソースが管理サーバーにのみターゲット指定されます。後で管理対象サーバーをドメインに追加するときは、 つまり、再構成後のOPSSと監査データ・ソースを管理対象サーバーにターゲット指定するには、 applyJRF('managedServer1', '<domain_dir>') |
コンポーネント・テンプレートの詳細は、「階層型コンポーネントのセキュリティ・アーティファクト」を参照してください。
本番FMWドメインは拡張ドメインである必要があり、拡張ドメインにはDBベースのOPSSセキュリティ・ストアが必要です。このデータベースは、新しいデータベースにすることも、既存のデータベースを他のFMWドメインに関連付けて共有データベースにすることもできます。管理対象サーバーにターゲット指定されているリソースおよびapplyJRF
ユーティリティの使用については、「FMWドメイン」の「重要事項」を参照してください。
次の各項では、FMWドメインの作成方法を説明します。
新しいデータベースと関連付けられたFMWドメインを作成または拡張するには、次の手順を実行します。
新しいデータベース・スキーマを作成します。詳細は、第9.3.1項「DBベースのセキュリティ・ストアを使用する場合の前提条件」を参照してください。
『Oracle Fusion Middleware構成ウィザードによるWebLogicドメインの作成』の第5章「構成画面」で説明されているように、構成ウィザードを使用してドメインを作成または拡張します。
このタスクでは特に、手順1で作成したデータベース・スキーマなど、使用するデータベース・スキーマに関する情報を指定したり、使用するJFRテンプレートを選択します。
注意1: 作成中のドメインに関連付けられるデータベース・スキーマは、新しいものである必要があり、以前に使用したものにすることはできません。 |
注意2: JRFテンプレートが処理されると、ドメインの作成時または拡張時に、OPSSスキーマ用、OPSS監査ビューア・スキーマ用およびOPSS監査追加スキーマ用に3つのデータ・ソースが自動作成されます。JRFテンプレートのその他の機能の詳細は、「FMWドメイン」を参照してください。 |
ドメインの作成、拡張またはアップグレードのためのすべてのツールの詳細は、『Oracle Fusion Middlewareドメイン・テンプレート・リファレンス』のテンプレート・ツールに関する説明を参照してください。
ドメインの既存のデータベースと関連付けられる拡張FMWドメインを作成するには、次の手順を実行します。
注意: 前述の手順では構成ウィザードを使用できたのに対して、次の手順では、WLSTコマンドのみを使用できます。 |
ドメインdomain1
で(他のドメインを結合する必要のある)既存のデータベースdb1
を使用していると仮定した場合、次に示すWLSTオフライン・コマンドexportEncryptionKey
を使用して、domain1
から、指定された場所に暗号化鍵をエクスポートします。
exportEncryptionKey(location, password)
コマンドの詳細は、『Oracle Fusion Middlewareインフラストラクチャ・セキュリティWLSTコマンド・リファレンス』を参照してください。
WLSTコマンドを使用して新しいFMWドメインを作成し、そのドメインでデータベースdb1
を共有します。ここで使用するスクリプトは、拡張ドメインの作成に使用するスクリプトと同様ですが、次の行を含む必要がある点が異なります。
setSharedSecretStoreWithPassword(location, password)
location
およびpassword
の値は、exportEncryptionKey
へのコールで使用した値と同じです。前述のコールは、スクリプト内でupdateDomain
へのコールの直前に配置されています。コマンド構文の詳細は、『Oracle Fusion Middlewareインフラストラクチャ・セキュリティWLSTコマンド・リファレンス』を参照してください。
セキュリティ・アーティファクトのシードおよびプロセスを簡略化するには、ドメインの作成または拡張時に、OPSSを使用するコンポーネントによってテンプレートが指定される必要があります。このテンプレートは、コンポーネントの実行に必要な、コンポーネントのみに固有のアーティファクトを定義およびバンドルし、表7-1に示すファイルを含みます。
表7-1 OPSSで使用されるコンポーネント・テンプレートのファイル
ファイル名 | 説明 | テンプレートのルート・フォルダからの場所 |
---|---|---|
component-security-info.xml |
必須。セキュリティ・アーティファクトのライフサイクルを指定します。 |
./security/component-security-info.xml |
jazn-data.xml |
オプション。認可ポリシーを指定します。 |
./security/authorization/jazn-data.xml |
keystore.xml |
オプション。キーストアのメタデータを指定します。 |
./security/keystore/keystore.xml |
credentials.xml |
オプション。コンポーネントで使用される資格証明メタデータを指定します。 |
./security/credential/credentials.xml |
component_events.xml |
オプション。監査メタデータを指定します。 |
./security/audit/component_events.xml |
component_events_xlf.jar |
オプション。ローカライズされた監査メタデータを指定します。 |
./security/audit/component_events_xlf.jar |
注意: 製品テンプレートにバンドルされたOPSSセキュリティ・アーティファクトでは、 |
この項では、セキュリティ・アーティファクトをリリース11.1.1.6または11.1.1.7からリリース12.1.2にアップグレードする手順を説明します。
12.1.2へのOPSSのアップグレードには、次の作業が必要です。
Oracle Fusion Middlewareのアップグレード・アシスタントを使用した、OPSSスキーマのアップグレード(OPSSセキュリティ・ストア・スキーマおよび監査スキーマのアップグレード)。
再構成ウィザードを使用した次の作業:
ポリシー・ストア・データが格納されている、ポリシー・ストアのディレクトリ情報ツリーのアップグレード。
OPSSセキュリティ・ストアのデータのアップグレード。
ファイルjps-config.xml
およびjps-config-jse.xml
のサービス構成のアップグレード。OPSSセキュリティ・ストアがDBベースの場合は、監査ログ・リポジトリもDBベースに設定されます。
アップグレード対象のOPSSセキュリティ・ストアがLDAPベースまたはDBベースの場合は、アップグレードが失敗した際に備えて、リカバリ用にセキュリティ・ストアをバックアップしておいてください。詳細は、「OPSSセキュリティ・ストアのバックアップとリカバリ」を参照してください。
OIDベースまたはDBベースのOPSSセキュリティ・ストアを11.1.1.6または11.1.1.7から12.1.2にアップグレードするには、次の手順を実行します。
Oracle Fusion Middlewareアップグレード・アシスタントを実行して、OPSSスキーマをアップグレードします。「使用可能なコンポーネント」ページで、必ず「Oracle Platform Security Services」を選択してください。アップグレード・アシスタントの詳細は、『Oracle Fusion Middleware Upgrade Assistantによるアップグレード』を参照してください。
リポジトリ作成ユーティリティ(RCU)を実行して、サービス表のスキーマのみを作成します。この表の詳細は、自動的に「データベース構成タイプ」ページに挿入されます。RCUの詳細は、『Repository Creation Utilityによるスキーマの作成』を参照してください。
再構成ウィザードを実行してドメインの再構成を有効にし、OPSSデータ、DIT、構成アーティファクトおよび製品のセキュリティ・アーティファクトをアップグレードします。
この手順では、次の点に注意してください。
「データベース構成タイプ」ページで「RCUデータ」を選択し、手順2で作成したサービス表のスキーマを入力して、「RCU構成の取得」をクリックします。
「コンポーネント・データソース」ページで次のコンポーネントを選択し、スキーマの詳細を入力します。
OPSS監査スキーマ - IAU_APPEND
OPSS監査ビューア - IAU_VIEWER
OPSSスキーマ - OPSS
製品の再構成テンプレートが自動的に選択され、処理されます。テンプレートの詳細は、第7.4項「階層型コンポーネントのセキュリティ・アーティファクト」を参照してください。
11.1.1.6ドメインからアップグレードする場合のみ、11g JARファイル${common.components.home}/modules/oracle.jps_11.1.1/jps-wls-trustprovider.jar
をアップグレード済ドメインの${domain.home}/lib/mbeantypes
にコピーします。
注意: 12c拡張ドメインから12cのアップグレード済ドメインへの結合は、サポートされていません。 |
Oracle Fusion Middlewareのアップグレードの詳細は、『Oracle Fusion Middleware Oracle Fusion Middlewareのアップグレードのプランニング』を参照してください。
ファイルベースのOPSSセキュリティ・ストアを11.1.1.6または11.1.1.7から12.1.2にアップグレードするには、次の手順を実行します。
コマンドreassociateSecurityStore
を使用して、ファイルベースのセキュリティ・ストアをOIDベースまたはDBベースのセキュリティ・ストアに再度関連付けします(詳細は、第10.3.1項「reassociateSecurityStore」を参照してください)。
前述の手順に従って、再度関連付けした(OIDベースまたはDBベースの)セキュリティ・ストアを12.1.2にアップグレードします。
この項では、ドメインのOPSSセキュリティ・ストアのバックアップ方法とリカバリ方法を説明します。その手順は、処理対象であるOPSSストアの種類(DBベースまたはOIDベース)によって異なります。
セキュリティ・ストアのバックアップに加え、リカバリを可能にするために、次のセキュリティ・ストア用の構成ファイルとデータ・ファイルも保存してください(アスタリスクでディレクトリ内のすべてのファイルを指定可能)。
{domain}/Config/config.xml {domain}/Config/Fmwconfig/jps-config.xml {domain}/Config/Fmwconfig/jps-config-jse.xml {domain}/Config/Fmwconfig/cwallet.sso {domain}/Config/Fmwconfig/keystores.cml {domain}/Config/Fmwconfig/audit-store.xml {domain}/Config/Fmwconfig/system-jazn-data.xml {domain}/Config/Fmwconfig/ids-config.xml {domain}/Config/Fmwconfig/mbeans/jps_mbeans.xml {domain}/Config/Fmwconfig/bootstrap/cwallet.sso
前述のファイルは通常、Oracle WebLogic Serverドメイン・バックアップの一部としてバックアップされます。Oracle WebLogicドメイン・バックアップの詳細は、『Oracle Fusion Middlewareの管理』の次のトピックを参照してください。
第17.3項「バックアップの実行」
第18.2.2項「Oracle WebLogic Serverドメインのリカバリ」
この項には次のトピックが含まれます:
この項の手順では、アクティブなデータベース複製を可能にするOracle DatabaseクライアントのRecovery Manager (RMAN)を使用します。これは、バックアップ戦略とリカバリの自動化でも一般的に使用されるツールです。RMANの詳細は、Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイドの次のトピックを参照してください。
RMANの概要
データベースの完全リカバリの実行
次の手順では、ホストAにあるドメインのDBベースのセキュリティ・ストア・インスタンスをホストBのインスタンスにバックアップする方法を説明します。ここでは、ホストAのセキュリティ・ストアのjdbc urlがproddb
に設定されていることが想定されており、その同じドメインで、jdbc urlがtestdb
(ホストB)に設定されている(クローニングされた) DBベース・ストアを使用できるようにすることが目標です。
前述の想定でDBベースのセキュリティ・ストアをバックアップするには、次の手順を実行します。
次のように、ホストBのインスタンスtestdb
を準備します。
新規インスタンス用のpfileを作成します。つまり、次の行の内容を持つinittestdb.oraファイルを作成します。
# db_name=testdb #
次の行に示すように、testdb
をlistener.oraに追加します。
(SID_DESC=(SID_NAME=testdb)(GLOBAL_DBNAME=testdb)(ORACLE_HOME=/ade/b/3882746433/oracle))
次の行に示すように、testdb/proddbをtnsnames.oraに追加します。
proddb=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hostA.com)(PORT=XXXX))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME= proddb)))
testdb=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hostB.com)(PORT=YYYY))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=testdb)))
次の行に示すように、リスナーを再起動します。
lsnrctl stop, lsnrctl start
次の行に示すように、nomountモードのpfileを使用して新規インスタンスを起動します。
$ export ORACLE_SID=testdb
$ sqlplus / as sysdba
SYS@testdb SQL>startup nomount pfile=/scratch/rdbms/dbs/inittestdb.ora
次のように、RMANを使用してproddb
をtestdb
にクローニングします。
次の行に示すように、testdb/proddbをtnsnames.oraに追加します。
proddb=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myhostA.com)(PORT=XXXX))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME= proddb)))
testdb=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myhostB.com)(PORT=YYYY))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=testdb)))
インスタンスproddb
がspfileを使用していることを確認してください。そうでない場合は、sysdbaとしてログインし、create spfile from pfileを実行することで、初期化ファイルからバイナリspfileを生成します。次にサーバーを再起動します。
次の行に示すように、リスナーを再起動します。
lsnrctl stop, lsnrctl start
複製データベース・ファイルの名前の生成方法を決定します。具体的には、制御ファイル、データファイル、オンラインREDOログ・ファイルおよび一時ファイルの命名方法を決定します。
たとえば、proddb
では/oradata/proddbディレクトリにあるホストAのファイルを、ホストBの/oradata/testdbに保存する場合は、DB_FILE_NAME_CONVERT '/proddb',' /testdb'を次のシーケンスで指定します。
次の行に示すように、RMANを実行してproddb
をtestdb
にクローニングします。
$rman RMAN> CONNECT TARGET SYS@proddb RMAN> CONNECT AUXILIARY SYS@testdb RMAN> DUPLICATE TARGET DATABASE TO testdb FROM ACTIVE DATABASE DB_FILE_NAME_CONVERT '/proddb','/testdb' SPFILE PARAMETER_VALUE_CONVERT '/proddb','/testdb' SET LOG_FILE_NAME_CONVERT '/proddb','/testdb';
前述のRMANシーケンスが正常に実行されたことを確認してください。
(オプション)ドメインを切り替えて、バックアップされたばかりのデータベースをOPSSセキュリティ・ストアとして使用することで、バックアップ済のDBインスタンスtestdb
が正しく機能することを確認します。
Oracle WebLogic Serverを停止します。
ファイル{domain}/config/fmwconfig/jps-config.xml
および{domain}/config/jdbc/*xml
で、jdbc urlをproddb
からtestdb
に変更します。
Oracle WebLogic Serverを再起動します。
ドメイン・セキュリティが正しく機能することを確認します。
バックアップ元のOracle Internet Directoryストアをバックアップ先のOracle Internet Directoryストアにバックアップするには、次の手順を実行します。
移行元のOracle Internet Directoryがあるシステムで、次の行に示すようにldifwrite
を実行してLDIFファイルを生成します。
>ldifwrite connect="srcOidDbConnectStr" basedn="cn=jpsnode, c=us" ldiffile="srcOid.ldif"
このコマンドでは、ノードcn=jpsnode, c=us
以下のすべてのエントリがファイルsrcOid.ldif
に書き込まれます。このファイルを、次に実行するコマンドで使用できるように、バックアップ先のOracle Internet Directoryファイル・システムに移動します。
バックアップ先のOracle Internet Directoryシステムで、JPSスキーマがシードされていることを確認します。
移行元のOracle Internet Directoryシステムで、次の行に示すようにbulkload
を実行してスキーマ・エラーや不適切なエントリがないことを確認します。
>bulkload connect="dstOidDbConnectStr" check=true generate=true restore=true file="fullPath2SrcOidLdif"
重複するDN(バックアップ元のディレクトリとバックアップ先のディレクトリとの間で共通するエントリ)が検出された場合は、予期しない結果が生じないようにそれらのDNを確認します。
次の行に示すようにbulkload
を実行して、移行先のOracle Internet Directoryにデータをロードします。
>bulkload connect="dstOidDbConnectStr" load=true file="fullPath2SrcOidLdif"
前述のコマンドの詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の次のトピックを参照してください。
第15.6項「ldifwriteを使用したOracle Internet Directoryからファイルへのデータのダンプ」
第37.2.1項「LDIFファイルとbulkloadを使用したLDAPデータの移行」
企業で設定したスケジュールに従って、定期的にOPSSセキュリティ・ストアをバックアップすることをお薦めします。また、次のイベントが発生した直後は、予定外のバックアップを実行してください。
ドメイン用の新しい暗号化キーの(自動)生成
新しいポリシーの作成
新しいバインディング資格証明の設定