Oracle WebLogic Serverでは、Oracle Identity Managerメタデータを変更できるユーティリティが3つ提供されます。これらを次に示します。
weblogicExportMetadata.sh
またはWeblogicExportMetadata.bat
: MDSデータベースから特定のメタデータ・ファイルをエクスポートします。
weblogicImportMetadata.sh
またはWeblogicImportMetadata.bat
: 特定のメタデータ・ファイルをMDSデータベースにインポートします。
weblogicDeleteMetadata.sh
またはWeblogicDeleteMetadata.bat
: MDSデータベースから特定のメタデータ・ファイルを削除します。
この項ではユーティリティの使用方法について説明します。トピックは次のとおりです。
MDSユーティリティの環境を設定するには、次の2つの手順を実行する必要があります。
環境変数の設定
ユーティリティに必要なパラメータを指定するプロパティ・ファイルの設定
環境変数の設定
OIM_ORACLE_HOME
環境変数をMiddlewareホーム・ディレクトリ内のOracle Identity ManagementのOracleホーム・ディレクトリに設定します。たとえば、Microsoft Windowsの場合は、OIM_ORACLE_HOME
環境変数をC:\Oracle\Middleware\Oracle_IDM1\ディレクトリに設定します。
プロパティ・ファイルの設定
ユーティリティと同じフォルダにあるweblogic.properties
ファイルで必要なプロパティを設定します。
表33-1 プロパティ・ファイルのパラメータ
プロパティ名 | 説明 | 注意 |
---|---|---|
wls_servername |
Oracle Identity ManagerがデプロイされているOracle WebLogic Serverの名前。 |
|
application_name |
アプリケーションの名前。 |
値は次のとおりです。
カスタム・データをインポートまたはエクスポートする場合は、application_nameを |
metadata_from_loc |
XMLファイルのインポート元となるディレクトリの場所。このプロパティは、weblogicImportMetadata.shスクリプトで使用されます。 |
Microsoft Windowsのパスには、ファイルまたはディレクトリのセパレータとして//が含まれます。 |
metadata_to_loc |
XMLファイルのエクスポート先となるディレクトリの場所。このプロパティは、weblogicExportMetadata.shスクリプトで使用されます。 |
Microsoft Windowsのパスには、ファイルまたはディレクトリのセパレータとして//が含まれます。 |
metadata_files |
XMLファイルのフルパスと名前。このプロパティは、weblogicExportMetadata.shスクリプトおよびweblogicDeleteMetadata.shスクリプトで使用されます。 |
たとえば、/file/User.xmlを指定して、ユーザー・エンティティ定義をエクスポートします。複数のxmlファイルをカンマ区切りの値として指定できます。 |
weblogicImportMetadata.sh
ユーティリティを実行すると、metadata_from_loc
に指定されているすべてのファイルがインポートされます。
たとえば、/scratch/johnny/temp/oim/file/User.xml
のUser.xml
をインポートするとします。この場合、metadata_from_loc
を/scratch/johnny/temp/oim
として定義する必要があります。
注意: metadata_from_locで指定したディレクトリまたはそのサブディレクトリにその他のファイルが存在しないことを確認してください。インポート・ユーティリティでは、そのディレクトリの下のすべてのファイルを再帰的にインポートすることを試みます。 |
すべてのインポート・ユーティリティ、エクスポート・ユーティリティおよび削除ユーティリティは、OIM_ORACLE_HOME/server/bin/ディレクトリに配置されています。
weblogicExportMetadata.sh
ユーティリティを実行すると、metadata_files
に指定されているファイルがmetadata_to_loc
によって指定されているフォルダにエクスポートされます。
注意: ファイル名にスペースが含まれている場合は、引用符などのエスケープ文字を使用しないでファイル名をそのまま指定する必要があります。たとえば、ProvisionResourceeBusiness Suite User.xmlという名前のファイルをエクスポートする場合(パスは/db/ProvisionResourceeBusiness Suite User.xml)、メタデータ・ファイル・プロパティを次のように指定する必要があります。 metadata_files=/db/ProvisionResourceeBusiness Suite User.xml |
weblogicDeleteMetadata.sh
ユーティリティを実行すると、metadata_files
に指定されているファイルがMDSから削除されます。
注意: ファイル名にスペースが含まれている場合は、引用符などのエスケープ文字を使用しないでファイル名をそのまま指定する必要があります。たとえば、ProvisionResourceeBusiness Suite User.xmlという名前のファイルを削除する場合(パスは/db/ProvisionResourceeBusiness Suite User.xml)、メタデータ・ファイル・プロパティを次のように指定する必要があります。 metadata_files=/db/ProvisionResourceeBusiness Suite User.xml |
プロパティ・ファイルは次のようになります。
# Weblogic Server Name on which OIM application is running wls_servername=@servername # If you are importing or exporting any out of box event handlers, value is oim. # For rest of the out of box metadata, value is OIMMetadata. # If you are importing or exporting any custom data, always use application name as OIMMetadata. application_name=@appname # Directory location from which XML file should be imported. # Lets say I want to import User.xml and it is in the location /scratch/johnny/temp/oim/file/User.xml, # I should give from location value as /scratch/johnny/temp/oim. Make sure no other files exist # in this folder or in its sub folders. Import utility tries to recursively import all the files under the # from location folder. This property is only used by weblogicImportMetadata.sh metadata_from_loc=@metadata_from_loc # Directory location to which XML file should be exported to metadata_to_loc=@metadata_to_loc # For example /file/User.xml to export user entity definition. You can specify multiple xml files as comma separated values. # This property is only used by weblogicExportMetadata.sh and weblogicDeleteMetadata.sh scripts metadata_files=@metadata_files
次のメタデータを使用して、LDAPでユーザーおよびロールがどのコンテナに作成されるかを設定するLDAPコンテナ・ルールを構成します。
注意: Oracle Identity Managerでは、/metadataまたは/dbで始まるファイル・パスのMDSのみを確認します。このため、XMLドキュメントのパスまたはディレクトリ名の先頭は、/metadataまたは/dbのいずれかにする必要があります。 |
/db/LDAPContainerRules.xml
次のメタデータは、LDAPユーザー、ロール、ロール階層およびロール・メンバーシップ・リコンシリエーションの、リコンシリエーション・プロファイルとリコンシリエーション水平表のエンティティ定義を構成するために使用します。
/db/LDAPUser /db/LDAPRole /db/LDAPRoleHierarchy /db/LDAPRoleMembership /db/RA_LDAPROLE.xml /db/RA_LDAPROLEHIERARCHY.xml /db/RA_LDAPROLEMEMBERSHIP.xml /db/RA_LDAPUSER.xml /db/RA_MLS_LDAPROLE.xml /db/RA_MLS_LDAPUSER.xml /db/oim-config.xml
次のメタデータは、LDAPユーザー、ロール・エンティティ定義とメンバーシップおよび階層関係定義を構成するために使用します。
/metadata/iam-features-ldap-sync/LDAPRole.xml /metadata/iam-features-ldap-sync/LDAPRoleMembership.xml /metadata/iam-features-ldap-sync/LDAPUser.xml /metadata/iam-features-ldap-sync/LDAPUserMembership.xml
次のメタデータには、デフォルトのリクエスト・タイプのリクエスト・モデルおよびデータセット定義が含まれています。
/metadata/iam-features-requestactions/model-data/AssignRolesDataset.xml /metadata/iam-features-requestactions/model-data/CreateRoleDataSet.xml /metadata/iam-features-requestactions/model-data/CreateUserDataSet.xml /metadata/iam-features-requestactions/model-data/DeleteRoleDataSet.xml /metadata/iam-features-requestactions/model-data/DeleteUserDataset.xml /metadata/iam-features-requestactions/model-data/DeleteUserRequest.xml /metadata/iam-features-requestactions/model-data/DisableUserDataset.xml /metadata/iam-features-requestactions/model-data/DisableUserRequest.xml /metadata/iam-features-requestactions/model-data/EnableUserDataset.xml /metadata/iam-features-requestactions/model-data/EnableUserRequest.xml /metadata/iam-features-requestactions/model-data/ModifyRoleDataSet.xml /metadata/iam-features-requestactions/model-data/ModifyUserDataset.xml /metadata/iam-features-requestactions/model-data/RemoveRolesDataset.xml /metadata/iam-features-requestactions/model-data/ResourceCommonDataset.xml /metadata/iam-features-requestactions/model-data/SelfCreateUserDataset.xml
次のメタデータには、Oracle Identity Managerの操作の事前定義済イベント・ハンドラ定義が含まれています。
注意: これらは読取り専用ドキュメントです。これらのメタデータ・ファイルで定義されているイベント・ハンドラを変更および削除する必要がある場合は、Oracleサポートに連絡してください。 |
/db/ldapMetadata/EventHandlers.xml /metadata/iam-features-OIMMigration/EventHandlers.xml /metadata/iam-features-Scheduler/EventHandlers.xml /metadata/iam-features-accesspolicy/event-definition/EventHandlers.xml /metadata/iam-features-asyncwsclient/EventHandlers.xml /metadata/iam-features-autoroles/event-definition/EventHandlers.xml /metadata/iam-features-callbacks/event_configuration/EventHandlers.xml /metadata/iam-features-configservice/event-definition/EventHandlers.xml /metadata/iam-features-identity/event-definition/EventHandlers.xml /metadata/iam-features-notification/EventHandlers.xml /metadata/iam-features-passwordmgmt/event-definition/EventHandlers.xml /metadata/iam-features-reconciliation/event-definition/EventHandlers.xml /metadata/iam-features-request/event-definition/EventHandlers.xml /metadata/iam-features-requestactions/event-definition/EventHandlers.xml /metadata/iam-features-selfservice/event-definition/EventHandlers.xml /metadata/iam-features-sod/EventHandlers.xml /metadata/iam-features-system-configuration/EventHandlers.xml /metadata/iam-features-tasklist/EventHandlers.xml /metadata/iam-features-templatefeature/EventHandlers.xml /metadata/iam-features-transUI/EventHandlers.xml /metadata/iam-features-spmlws/EventHandlers.xml
任意のカーネル操作のために追加のイベント・ハンドラを作成するには、そのイベント・ハンドラをXMLファイルで定義して、MDSに送信する必要があります。
たとえば、ユーザーIDを生成するユーザー作成操作に対する事前処理イベント・ハンドラを作成する必要があるとします。次に、イベント・ハンドラ定義の例を示します。
<eventhandlers> <preprocess-handler class="oracle.iam.user.ComputeUserID" entity-type="User" operation="CREATE" name="Compute User ID" order="1001" stage="preprocess" sync="TRUE"> </preprocess-handler> </eventhandlers>
EventHandlers.xmlというXMLファイルにこの内容を含めて、/metadata/user/custom/
などのパスを持つ、/scratch/data
などのディレクトリに配置します。
注意: Oracle Identity Managerでは、/metadataまたは/dbで始まるファイル・パスのMDSのみを確認します。このため、XMLドキュメントのパスまたはディレクトリ名の先頭は、/metadataまたは/dbのいずれかにする必要があります。 |
このファイルをMDSにインポートするには、weblogic.properties
ファイルの次の値を変更し、weblogicImportMetadata.sh/weblogicImportMetadata.bat
ファイルを実行します。
wls_servername=oim server name, for example oim_server1
application_name=oim
metadata_from_loc=/scratch/data
このメタデータ/XMLファイルは、フルパスが/metadata/user/custom/EventHandlers.xml
であるMDSにインポートされます。たとえば、ドキュメントを更新し、このイベント・ハンドラが実行される順序を変更するとします。この場合、最初に、weblogic.properties
ファイルの次の値を変更し、weblogicExportMetadata.sh/weblogicExportMetadata.bat
ファイルを実行して、このドキュメントをエクスポートします。
wls_servername=oim server name, for example oim_server1
application_name=oim
metadata_to_loc=/scratch/data
metadata_files=/metadata/user/custom/EventHandlers.xml
ドキュメントは/scratch/data/metadata/user/customフォルダにエクスポートされます。/scratch/dataにフォルダ構造/metadata/user/customがない場合は、MDSによって作成されます。
これで、ファイルを編集して順序を変更し、前述と同様にインポート・コマンドを実行できます。
最後に、ユーザーIDが、計算されるのではなく、ユーザー作成時に指定されるようにするとします。この場合、このドキュメント/XMLを削除する必要があります。ドキュメントを削除するには、weblogic.properties
ファイルの次の値を変更し、weblogicDeleteMetadata.sh/weblogicDeleteMetadata.bat
ファイルを実行します。
wls_servername=oim server name, for example oim_server1
application_name=oim
metadata_files=/metadata/user/custom/EventHandlers.xml