プライマリ・コンテンツに移動
Oracle® Identity Manager Database User Managementコネクタ・ガイド
リリース11.1.1
B72411-10
目次へ移動
目次

前
次

3 MSSQLでのコネクタの使用および拡張

要件に合せてアプリケーションを構成したら、MSSQL用のDatabase User Managementコネクタを使用してリコンシリエーション操作とプロビジョニング操作を実行できます。また、特定のビジネス要件に対応するようにコネクタの機能を拡張することもできます。

この章は、次の項目が含まれます。

ノート:

この項では、コネクタの構成に関する、概念的な情報と手順の情報の両方を提供します。手順を実行する前に、概念的な情報を参照することをお薦めします。

Oracle Identity ManagerがMicrosoft Windowsコンピュータでホストされている場合、すでにインストールされているコネクタがあれば、新しいコネクタをインストールする前にコネクタ・バンドルのzipファイルを再度抽出する必要があります。

3.1 MSSQLとOracle Identity Managerの間のセキュアな通信の構成

ノート:

この項で説明されている手順を実行し、ターゲット・システムおよびOracle Identity Manager間の通信を保護することをお薦めします。

Microsoft SQL ServerとOracle Identity Manager間にセキュアな通信を構成するには、次のステップを実行します:

  1. Microsoft SQL Serverとクライアント・システム間のSSL通信の有効化の詳細は、Microsoft SQL Serverのドキュメントを参照してください。このコンテキストでは、クライアントはOracle Identity Managerです。

    Microsoft SQL Serverのホスト・コンピュータに証明書をエクスポートしてから、データベース・サービスを再起動します。

  2. Oracle Identity Managerのホスト・コンピュータに証明書をコピーします。
  3. Oracle Identity Managerが実行されているアプリケーション・サーバーのJVMトラストストアに証明書をインポートします。

    トラストストアに証明書をインポートするには、次のコマンドを実行します。

    ..\..\bin\keytool -import -file FILE_LOCATION -keystore TRUSTSTORE_LOCATION -storepass TRUSTSTORE_PASSWORD -trustcacerts -alias ALIAS
    

    コマンドの説明は次のとおりです:

    • FILE_LOCATIONは、証明書ファイルのフルパスおよび名前に置き換えます。

    • ALIASは、証明書の別名に置き換えます。

    • TRUSTSTORE_PASSWORDは、トラストストアのパスワードに置き換えます。

    • TRUSTSTORE_LOCATIONは、using-and-extending-connector-mssql.htm#GUID-6E320317-426C-414E-AC71-A0A1997AC6A9__CHDDIGHFのトラストストア・パスの1つに置き換えます。この表には、サポートされている各アプリケーション・サーバーのトラストストアの場所が示されています。

    ノート:

    Oracle Identity Managerクラスタでは、このファイルをクラスタの各ノードのトラストストアにインポートします。

    表3-1 サポートされているアプリケーション・サーバーのトラストストアの場所

    アプリケーション・サーバー トラストストアの場所

    Oracle WebLogic Server

    • Oracle jrockit_R27.3.1-jdkを使用している場合は、次のディレクトリのキーストアに証明書をインポートします。

      JROCKIT_HOME/jre/lib/security

    • デフォルトのOracle WebLogic Server JDKを使用している場合は、次のディレクトリのキーストアに証明書をインポートします。

      WEBLOGIC_HOME/java/jre/lib/security/cacerts

    • Oracle jrockit_R27.3.1-jdkおよびOracle WebLogic Server JDK以外のJDKを使用している場合は、次のディレクトリのキーストアに証明書をインポートします。

      JAVA_HOME/jre/lib/security/cacerts

  4. Microsoft SQL ServerとOracle Identity Managerの間のセキュアな通信を有効化するには、UseSSL ITリソース・パラメータの値をtrueに設定します。このパラメータの値は、「コネクタ・サーバーのITリソースの構成」で説明されている手順の実行中に指定する必要があります。

3.2 MSSQLでのJDBC URLパラメータおよび接続プロパティ・パラメータの値の指定に関するガイドライン

この項では、JDBC URLパラメータおよび接続プロパティ・パラメータについて説明します。この項に示す情報は、「ターゲット・システムのITリソースの構成」に記載されている手順を実行する際に適用してください。

データベースURLパラメータおよび接続プロパティ・パラメータに指定する値は、ターゲット・システムによって異なります。

ノート:

Microsoft SQL Serverのドキュメントでは、JDBC URLではなく接続URLという用語が使用されています。

  • JDBC URLパラメータ

    接続URLの次のコンポーネントをJDBC URLプロバイダの値として入力します。

    jdbc:sqlserver://[SERVER_NAME][:PORT_NUMBER][;database=DATABASE_NAME] 
    

    この書式の意味は次のとおりです:

    • SERVER_NAMEは、ターゲット・システムのホスト・コンピュータのIPアドレスです(ホスト名ではありません)。

    • PORT_NUMBERは、ターゲット・システム・データベースがリスニングしているポートです。

    • DATABASE_NAMEは、接続先のデータベース名です。

    ノート:

    「データベース名」パラメータと「JDBC URL」パラメータの両方にデータベース名を指定した場合、コネクタは、「データベース名」パラメータに指定されているデータベースに接続します。

    次に、データベースURLパラメータのサンプル値を示します。

    jdbc:sqlserver://192.168.16.76:1433;database=model
    
  • 接続プロパティ・パラメータ

    接続URLの次のコンポーネントを、接続プロパティ・パラメータの値として入力します。

    [;PROPERTY=VALUE[;PROPERTY=VALUE]] . . .
    

    この書式の意味は次のとおりです:

    • PROPERTYは、applicationNamedisableStatementPoolingなど、1つ以上のデータベース接続プロパティの名前です。

    • VALUEは、PROPERTYプレースホルダを使用して名前を指定する各データベース接続プロパティの値です。

    ノート:

    指定する値では、セミコロンを番号記号(#)に変更する必要があります。

    次に、接続プロパティ・パラメータのサンプル値を示します。

    databaseName=sales#port=1433
    

    Microsoft SQL ServerおよびOracle Identity Managerの間でSSL通信を有効化する場合は、接続プロパティ・パラメータに指定する値に、encryptおよびhostNameInCertificateプロパティを含める必要があります。つまり、次の内容が、パラメータの値として入力する文字列の一部であることが必要です。

    encrypt=true#hostNameInCertificate=HOST_NAME
    

    HOST_NAMEは、使用する証明書に指定されているホスト名に置き換えます。

    また、Oracle Identity ManagerのJVMトラストストア以外のトラストストアに証明書をインポートする場合は、トラストストアの場所を指定する必要があります。トラストストアの場所を指定するには、接続プロパティ・パラメータに指定する値に次のプロパティを含めます。

    encrypt=true#hostNameInCertificate=HOST_NAME#trustStore=STORE_LOCATION#trustStorePassword=STORE_PASSWORD
    

    この値を指定する際には、STORE_LOCATIONをトラストストアのフルパスと名前に、STORE_PASSWORDをトラストストアのパスワードに置き換えます。

3.3 MSSQLでの参照定義

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

ヒント:

このトピックで示される参照定義のエントリの一部には、デコード値を指定する必要があります。参照定義のエントリにデコード値を設定するには、次のようにします。

  1. Design Consoleで、「Administration」を開き、「Lookup Definition」をダブルクリックします。

  2. 変更する参照定義を検索して開きます。

  3. 設定する「Code Key」の「Decode」列に値を入力します。

  4. 保存アイコンをクリックします。

3.3.1 MSSQLと同期される参照定義

プロビジョニング操作時に、プロセス・フォームの参照フィールドを使用して値セットから1つの値を指定します。たとえば、「ロール」参照フィールドを使用して、ユーザーに割り当てるロールを使用可能なロールのリストから選択します。コネクタをデプロイすると、ターゲット・システムの参照フィールドに対応する参照定義がOracle Identity Managerに作成されます。参照フィールド同期では、ターゲット・システムの参照フィールドに対して行われた追加または変更が、Oracle Identity Managerの参照定義にコピーされます。

コネクタには、ターゲット・システムの参照フィールドからOracle Identity Managerの参照定義に値をフェッチするための事前定義済SQL問合せが用意されています。これらの事前定義済SQL問合せは、コネクタ・バンドルのLoVSearch.queriesファイルに格納されています。

参照定義の同期後、データは次の形式で保存されます。

  • コード・キー値: IT_RESOURCE_KEY~LOOKUP_FIELD_ID

    この書式の意味は次のとおりです:

    • IT_RESOURCE_KEYは、Oracle Identity Managerの各ITリソースに割り当てられる数値コードです。

    • LOOKUP_FIELD_IDは、各参照フィールド・エントリに割り当てられるターゲット・システム・コードです。

    サンプル値: 1~SYS_ADM

  • デコード値: IT_RESOURCE_NAME~LOOKUP_FIELD_ID

    この書式の意味は次のとおりです:

    • IT_RESOURCE_NAMEは、Oracle Identity ManagerのITリソース名です。

    • LOOKUP_FIELD_IDは、各参照フィールド・エントリに割り当てられるターゲット・システム・コードです。

Oracle Identity Self Serviceでプロビジョニング操作を実行する際、操作を実行するターゲット・システムのITリソースを選択します。このアクションを実行すると、ページの参照定義に、選択したITリソース(ターゲット・システム・インスタンス)に対応する値が自動的に移入されます。ターゲット・システムの複数のインストールが存在する環境では、すべてのITリソースに対応する値が表示されます。

using-and-extending-connector-mssql.htm#GUID-C9F7EF26-00DD-4699-B410-BB916D1B8DD1__CHDBEBECに、Oracle Identity Managerの対応する参照定義と同期されるMicrosoft SQL Serverの表の列名を示します。

表3-2 Microsoft SQL Serverと同期される参照定義

参照定義 ターゲット列名

Lookup.DBUM.MSSQL.AuthType

authType

Lookup.DBUM.MSSQL.DBNames

name

Lookup.DBUM.MSSQL.DBRoles

name

Lookup.DBUM.MSSQL.DefaultLang

alias

Microsoft SQL Serverでは、Windows認証またはSQL Server認証を使用するアカウント(ログインまたはユーザー)を作成できます。

Lookup.DBUM.MSSQL.AuthType参照定義には、Oracle Identity Managerを使用して作成したターゲット・システム・アカウント(ログインまたはユーザー)に対して選択できる認証タイプに関する情報が含まれます。

MSSQLは、次の2つのいずれかの認証タイプで動作します。

  • Windows認証

    Windows認証では、ユーザーはMicrosoft Windowsユーザー・アカウントを使用して接続できます。これがデフォルトの認証タイプです。

  • SQL Server認証

    SQL Server認証は、SQL Serverコンピュータでメンテナンスされている内部ユーザー・リストに依存しています。このリストはSQL Serverコンピュータに固有のものであり、Windowsユーザーは含まれていません。ユーザーの作成と構成は、SQL Server Enterprise Managerを使用して行います。

この参照定義のコード・キー値とデコード値の形式は次のとおりです。

  • コード・キー: 認証のタイプ

  • デコード: 認証タイプの説明

using-and-extending-connector-mssql.htm#GUID-C9F7EF26-00DD-4699-B410-BB916D1B8DD1__CHDJADEHに、この参照定義のデフォルト・エントリを示します。

表3-3 Lookup.DBUM.MSSQL.AuthType参照定義のエントリ

コード・キー デコード

SQL_SERVER_AUTHENTICATION

SQL_SERVER_AUTHENTICATION

WINDOWS_AUTHENTICATION

WINDOWS_AUTHENTICATION

3.3.2 MSSQLでの構成用の参照定義

この項では、コネクタのデプロイ時にOracle Identity Managerで作成される構成参照定義について説明します。これらの参照定義には、値が事前移入されるか、コネクタのデプロイ後に値を手動で入力する必要があります。

この項では、次の参照定義について説明します。

3.3.2.1 Lookup.DBUM.MSSQL.Configuration

Lookup.DBUM.MSSQL.Configuration参照定義には、ターゲット・リソースのリコンシリエーションおよびプロビジョニング操作時に使用されるコネクタ構成エントリが含まれます。

ノート:

この参照定義にエントリを追加することはできません。ただし、既存のエントリの「デコード」の値は変更できます。

using-and-extending-connector-mssql.htm#GUID-4365441A-0849-4008-BC60-15D027012560__CHDGFGGGに、この参照定義のデフォルト・エントリを示します。

表3-4 Lookup.DBUM.MSSQL.Configuration参照定義のエントリ

コード・キー デコード 説明

Bundle Name

org.identityconnectors.dbum

このエントリには、コネクタ・バンドル・パッケージの名前が保持されます。このエントリは変更できません。

Bundle Version

1.0.1116

このエントリには、コネクタ・バンドル・クラスのバージョンが保持されます。このエントリは変更できません。

Connector Name

org.identityconnectors.dbum.DBUMConnector

このエントリには、コネクタ・クラスの名前が保持されます。このエントリは変更できません。

disableValuesSet

"true"

このエントリは内部で使用されます。このエントリは変更できません。

User Configuration Lookup

Lookup.DBUM.MSSQL.UM.Configuration

このエントリには、ユーザー特有の構成プロパティを含む参照定義の名前が保持されます。このエントリは変更できません。

USERLOGIN Configuration Lookup

Lookup.DBUM.MSSQL.Login.Configuration

このエントリには、ログイン固有の構成プロパティを含む参照定義の名前が含まれます。このエントリは変更できません。

3.3.2.2 Lookup.DBUM.MSSQL.Login.Configuration

Lookup.DBUM.MSSQL.Login.Configuration参照定義には、ターゲット・リソースのリコンシリエーションおよびプロビジョニング操作時に使用される、Microsoft SQL Serverログイン・エンティティの構成エントリが含まれます。

using-and-extending-connector-mssql.htm#GUID-DF563F84-637C-428B-BD4B-A23092A915B3__CHDJJDJHに、この参照定義のデフォルト・エントリを示します。

表3-5 Lookup.DBUM.MSSQL.Login.Configurationのエントリ

コード・キー デコード・キー

Provisioning Attribute Map

Lookup.DBUM.MSSQL.Login.ProvAttrMap

Provisioning Exclusion List

Lookup.DBUM.MSSQL.Login.ProvExclusions

Provisioning Validation Lookup

Lookup.DBUM.MSSQL.Login.ProvValidations

Recon Attribute Defaults

Lookup.DBUM.MSSQL.Login.ReconDefaults

Recon Attribute Map

Lookup.DBUM.MSSQL.Login.ReconAttrMap

Recon Exclusion List

Lookup.DBUM.MSSQL.Login.ReconExclusions

Recon Transformation Lookup

Lookup.DBUM.MSSQL.Login.ReconTransformation

Recon Validation Lookup

Lookup.DBUM.MSSQL.Login.ReconValidation

3.3.2.3 Lookup.DBUM.MSSQL.UM.Configuration

Lookup.DBUM.MSSQL.UM.Configuration参照定義には、ターゲット・リソースのリコンシリエーションおよびプロビジョニング操作時に使用される、Microsoft SQL Serverユーザー・エンティティのコネクタ構成エントリが含まれます。

using-and-extending-connector-mssql.htm#GUID-128B872E-1985-42B4-B202-3F46D70425F8__CHDGHIBEに、この参照定義のデフォルト・エントリを示します。

表3-6 Lookup.DBUM.MSSQL.UM.Configurationのエントリ

コード・キー デコード・キー

Provisioning Attribute Map

Lookup.DBUM.MSSQL.UM.ProvAttrMap

Provisioning Exclusion List

Lookup.DBUM.MSSQL.UM.ProvExclusions

Provisioning Validation Lookup

Lookup.DBUM.MSSQL.UM.ProvValidations

Recon Attribute Defaults

Lookup.DBUM.MSSQL.UM.ReconDefaults

Recon Attribute Map

Lookup.DBUM.MSSQL.UM.ReconAttrMap

Recon Exclusion List

Lookup.DBUM.MSSQL.UM.ReconExclusions

Recon Transformation Lookup

Lookup.DBUM.MSSQL.UM.ReconTransformations

Recon Validation Lookup

Lookup.DBUM.MSSQL.UM.ReconValidation

3.3.2.4 Lookup.DBUM.MSSQL.Configuration.Trusted

Lookup.DBUM.MSSQL.Configuration.Trusted参照定義には、信頼できるソース・モードでのリコンシリエーションおよびプロビジョニング操作時に使用されるコネクタ構成エントリが含まれます。

ノート:

この参照定義にエントリを追加することはできません。ただし、既存のエントリの「デコード」の値は変更できます。

using-and-extending-connector-mssql.htm#GUID-78185D25-1BFC-4AB0-AC7B-0CEF0FCE69A9__CHDIFFJIに、この参照定義のデフォルト・エントリを示します。

表3-7 Lookup.DBUM.MSSQL.Configuration.Trusted参照定義のエントリ

コード・キー デコード 説明

Bundle Name

org.identityconnectors.dbum

このエントリには、コネクタ・バンドル・パッケージの名前が保持されます。このエントリは変更できません。

Bundle Version

1.0.1116

このエントリには、コネクタ・バンドル・クラスのバージョンが保持されます。このエントリは変更できません。

Connector Name

org.identityconnectors.dbum.DBUMConnector

このエントリには、コネクタ・クラスの名前が保持されます。このエントリは変更できません。

disableValuesSet

"true"

このエントリは内部で使用されます。このエントリは変更できません。

USERLOGIN Configuration Lookup

Lookup.DBUM.MSSQL.UM.Configuration.Trusted

このエントリには、ログイン固有の構成プロパティを含む参照定義の名前が含まれます。このエントリは変更できません。

3.3.2.5 Lookup.DBUM.MSSQL.UM.Configuration.Trusted

Lookup.DBUM.MSSQL.UM.Configuration.Trusted参照定義には、信頼できるソース・モードでのリコンシリエーションおよびプロビジョニング操作時に使用される、Microsoft SQL Serverユーザー・エンティティのコネクタ構成エントリが保持されます。

using-and-extending-connector-mssql.htm#GUID-0EE43FD4-C632-42D7-A64E-E38ACD1D6B28__CHDHGGJJに、この参照定義のデフォルト・エントリを示します。

表3-8 Lookup.DBUM.MSSQL.UM.Configuration.Trustedのエントリ

コード・キー デコード・キー

Recon Attribute Defaults

Lookup.DBUM.MSSQL.UM.ReconDefaults.Trusted

Recon Attribute Map

Lookup.DBUM.MSSQL.UM.ReconAttrMap.Trusted

Recon Exclusion List

Lookup.DBUM.MSSQL.UM.ExclusionList.Trusted

Recon Transformation Lookup

Lookup.DBUM.MSSQL.UM.ReconTransformations.Trusted

Recon Validation Lookup

Lookup.DBUM.MSSQL.UM.ReconValidation.Trusted

3.3.3 MSSQLログイン・エンティティの属性マッピング用の参照定義

この項では、次の参照定義について説明します。

3.3.3.1 Lookup.DBUM.MSSQL.Login.ProvAttrMap

Lookup.DBUM.MSSQL.Login.ProvAttrMap参照定義には、プロビジョニング操作時に使用されるプロセス・フォーム・フィールド(「コード・キー」の値)とターゲット・システム属性(「デコード」の値)の間の、Microsoft SQL Serverログイン・エンティティ用のマッピングが含まれます。

using-and-extending-connector-mssql.htm#GUID-39514F24-D42E-447A-A55B-EC153D71F9D5__CHDEHBGDに、この参照定義のデフォルト・エントリを示します。

表3-9 Lookup.DBUM.MSSQL.Login.ProvAttrMapのエントリ

コード・キー デコード・キー

Authentication Type

authType

Default DataBase[LOOKUP]

defaultDatabase

Default Language[LOOKUP]

defaultLanguage

Login Name

__NAME__

Password

__PASSWORD__

Reference ID

__UID__

3.3.3.2 Lookup.DBUM.MSSQL.Login.ReconAttrMap

Lookup.DBUM.MSSQL.Login.ReconAttrMap参照定義には、リコンシリエーション操作時に使用されるプロセス・フォーム・フィールド(「コード・キー」の値)とターゲット・システム属性(「デコード」の値)の間の、Microsoft SQL Serverログイン・エンティティ用のマッピングが含まれます。

using-and-extending-connector-mssql.htm#GUID-764DB816-835F-4F39-B55A-753E1C073737__CHDCGBIFに、この参照定義のデフォルト・エントリを示します。

表3-10 Lookup.DBUM.MSSQL.Login.ReconAttrMapのエントリ

コード・キー デコード・キー

Authentication Type

authType

Default Database Name[LOOKUP]

defaultDatabase

Default Language[LOOKUP]

defaultLanguage

Login Name

__UID__

Reference ID

__UID__

Status

__ENABLE__

3.3.3.3 Lookup.DBUM.MSSQL.Login.ReconDefaults

デフォルトでは、この参照は空です。

3.3.4 MSSQLユーザー・エンティティの属性マッピング用の参照定義

この項では、次の参照定義について説明します。

3.3.4.1 Lookup.DBUM.MSSQL.UM.ProvAttrMap

Lookup.DBUM.MSSQL.UM.ProvAttrMap参照定義には、プロビジョニング操作時に使用されるプロセス・フォーム・フィールド(「コード・キー」の値)とターゲット・システム属性(「デコード」の値)の間のマッピングが含まれます。

using-and-extending-connector-mssql.htm#GUID-FC98CA85-7E86-4A41-B749-6ED4947AB2FA__CHDBFFEIに、この参照定義のデフォルト・エントリを示します。

表3-11 Lookup.DBUM.MSSQL.UM.ProvAttrMapのエントリ

コード・キー デコード・キー

Database Name[LOOKUP]

defaultDatabase

Login Name

loginName

Reference ID

__UID__

UD_DB_SQL_R~Role[LOOKUP]

roles~DBRole~__NAME__

Username

__NAME__

3.3.4.2 Lookup.DBUM.MSSQL.UM.ReconAttrMap

Lookup.DBUM.MSSQL.UM.ReconAttrMap参照定義には、リコンシリエーション操作時に使用されるリソース・オブジェクト・フィールド(「コード・キー」の値)とターゲット・システム属性(「デコード」の値)の間のマッピングが含まれます。

using-and-extending-connector-mssql.htm#GUID-22C51FC8-D705-447F-9219-CB44BCA0081F__CHDGIEACに、この参照定義のデフォルト・エントリを示します。

表3-12 Lookup.DBUM.MSSQL.UM.ReconAttrMapのエントリ

コード・キー デコード・キー

Database Name

defaultDatabase

Login Name

loginName

Reference ID

__UID__

Role List~Role[LOOKUP]

roles~DBRole~__NAME__

User Name

__UID__

3.3.4.3 Lookup.DBUM.MSSQL.UM.ReconDefaults

Lookup.DBUM.MSSQL.UM.ReconDefaults参照定義には、次のエントリが含まれます。

using-and-extending-connector-mssql.htm#GUID-117AC19B-A6A9-4FFD-A701-424412DEF335__CHDIJHCIに、この参照定義のデフォルト・エントリを示します。

表3-13 Lookup.DBUM.MSSQL.UM.ReconDefaultsのエントリ

コード・キー デコード・キー

Login Name

WITHOUT LOGIN

3.3.4.4 Lookup.DBUM.MSSQL.UM.ReconDefaults.Trusted

Lookup.DBUM.MSSQL.UM.ReconDefaults.Trusted参照定義には、次のエントリが含まれます。

using-and-extending-connector-mssql.htm#GUID-B5C620B0-2671-4ACF-883B-38B89A7A310A__CHDHBIHGに、この参照定義のデフォルト・エントリを示します。

表3-14 Lookup.DBUM.MSSQL.UM.ReconDefaults.Trustedのエントリ

コード・キー デコード・キー

Empl Type

Full-Time

Organization Name

Xellerate Users

Status

Active

User Type

End-User

3.3.4.5 Lookup.DBUM.MSSQL.UM.ReconAttrMap.Trusted

Lookup.DBUM.MSSQL.UM.ReconAttrMap.Trusted参照定義には、信頼できるソース・モードでのリコンシリエーション操作時に使用されるリソース・オブジェクト・フィールド(「コード・キー」の値)とターゲット・システム属性(「デコード」の値)の間のマッピングが含まれます。

using-and-extending-connector-mssql.htm#GUID-D23F2A26-1187-42D9-B54F-0667C1E89661__CHDEGACBに、この参照定義のデフォルト・エントリを示します。

表3-15 Lookup.DBUM.MSSQL.UM.ReconAttrMap.Trustedのエントリ

コード・キー デコード・キー

First Name

__UID__

Status[TRUSTED]

__ENABLE__

User ID

__UID__

3.3.5 MSSQLでの除外リスト用の参照定義

この項では、プロビジョニングおよびリコンシリエーション操作の実行から除外するリソースが含まれる参照定義について説明します。

MSSQLログイン・エンティティには、次のいずれかの参照を使用できます。

  • プロビジョニング操作の場合: Lookup.DBUM.MSSQL.Login.ProvExclusions

  • リコンシリエーション操作の場合: Lookup.DBUM.MSSQL.Login.ReconExclusions

MSSQLユーザー・エンティティには、次のいずれかの参照を使用できます。

  • プロビジョニング操作の場合: Lookup.DBUM.MSSQL.UM.ProvExclusions

  • リコンシリエーション操作の場合: Lookup.DBUM.MSSQL.UM.ReconExclusions

  • 信頼できるソースとして構成されたターゲット・システムの場合: Lookup.DBUM.MSSQL.UM.ExclusionList.Trusted

これらの参照に格納されている値の形式は次のとおりです。

コード・キー デコード サンプル値

Login Name

ユーザーのUser ID

コード・キー: Login Name

デコード: User001

Login Name ([PATTERN]接尾辞付き)

java.util.regex.Patternクラスの表現によってサポートされる正規表現

コード・キー: Login Name[PATTERN]

ユーザーID User001、User002、User088のいずれかに一致するユーザーを除外するには:

デコード: User001|User002|User088

ユーザーIDが00012で始まるユーザーを除外するには:

デコード: 00012*

関連項目: サポートされるパターンの詳細は、http://download.oracle.com/javase/6/docs/api/java/util/regex/Pattern.htmlを参照してください

これらの参照定義にエントリを追加する手順は、「MSSQLでのリソース除外リストの構成」を参照してください。

3.3.6 MSSQLでのデータ変換用の参照定義

ターゲット・システムの構成内容に応じて、次のいずれかの参照を使用して、リコンシリエーション操作時のデータ変換を有効にできます。

  • Microsoft SQL Serverログイン・エンティティの場合: Lookup.DBUM.MSSQL.Login.ReconTransformation

    表3-16 Lookup.DBUM.MSSQL.Login.ReconTransformationのエンティティ

    コード・キー デコード・キー

    Authentication Type

    mssql.oimcp.dbum.transformations.AuthTypeTransformationImpl

  • Microsoft SQL Serverユーザー・エンティティの場合: Lookup.DBUM.MSSQL.UM.ReconTransformations

  • 信頼できるソース・モードでのMicrosoft SQL Serverユーザー・エンティティの場合: Lookup.DBUM.MSSQL.UM.ReconTransformations.Trusted

これらの参照定義にエントリを追加する手順は、「MSSQLでのユーザー・リコンシリエーション時のデータ変換の構成」を参照してください。

3.3.7 MSSQLでのデータ検証用の参照定義

ターゲット・システムの構成内容に応じて、次のいずれかの参照を使用してデータの検証を有効にできます。

  • プロビジョニング時のMicrosoft SQL Serverログイン・エンティティの場合: Lookup.DBUM.MSSQL.Login.ProvValidations

  • リコンシリエーション時のMicrosoft SQL Serverログイン・エンティティの場合: Lookup.DBUM.MSSQL.Login.ReconValidation

  • プロビジョニング時のMicrosoft SQL Serverユーザー・エンティティの場合: Lookup.DBUM.MSSQL.UM.ProvValidations

  • リコンシリエーション時のMicrosoft SQL Serverユーザー・エンティティの場合: Lookup.DBUM.MSSQL.UM.ReconValidation

この参照定義にエントリを追加する手順は、「MSSQLでのリコンシリエーションおよびプロビジョニング時のデータ検証の構成」を参照してください。

3.4 MSSQLでのスケジュール済ジョブ

コネクタ・インストーラを実行した場合、またはコネクタXMLファイルをインポートした場合、スケジュール済ジョブがOracle Identity Managerに自動的に作成されます。

この節では、以下のトピックについて説明します。

3.4.1 MSSQLでの参照フィールド同期用のスケジュール済ジョブ

参照フィールド同期では、ターゲット・システムの参照フィールドに対して行われた追加または変更が、Oracle Identity Managerの参照定義にコピーされます。

参照フィールド同期には、次のスケジュール済ジョブが使用されます。

  • DBUM MSSQL DB Names Lookup Reconciliation

  • DBUM MSSQL Languages Lookup Reconciliation

  • DBUM MSSQL Roles Lookup Reconciliation

これらのスケジュール済ジョブの属性に値を指定する必要があります。using-and-extending-connector-mssql.htm#GUID-2CDBA52A-9E83-4F9F-AB61-639F9966D999__CHDHEFDCで、これらのスケジュール済ジョブの属性について説明します。スケジュール済ジョブの構成手順は、このマニュアルで後述します。

表3-17 MSSQLでの参照フィールド同期用のスケジュール済ジョブの属性

属性 説明

コード・キー属性

参照定義のコード・キー列を移入するのに使用する、コネクタの名前またはターゲット・システム属性を入力します(「参照名」属性の値として指定)。

サンプル値: __NAME__

ノート: この属性の値は変更しないでください。

デコード属性

参照定義(Lookup Name属性の値として指定される)のデコード列に値を移入するために使用される、コネクタまたはターゲット・システムの属性の名前を入力します。

サンプル値: __NAME__

ITリソース名

ユーザー・レコードのリコンサイル元のターゲット・システム・インストールの、ITリソース名を入力します。

デフォルト値: MSSQL DB

参照名

この属性は、値のフェッチ元である必要のあるデータ・ソースに各参照定義をマップする参照定義の名前を保持します。

デフォルト値は、使用するスケジュール済ジョブに応じて次のとおりです。

  • DBUM MSSQL DB Names Lookup Reconciliationの場合 - Lookup.DBUM.MSSQL.DBNames

  • DBUM MSSQL Languages Lookup Reconciliationの場合 - Lookup.DBUM.MSSQL.DefaultLang

  • DBUM MSSQL Roles Lookup Reconciliationの場合 - Lookup.DBUM.MSSQL.DBRoles

オブジェクト・タイプ

同期させる必要のある値を含むオブジェクトのタイプを入力します。

デフォルト値は、使用するスケジュール済ジョブに応じて次のとおりです。

  • DBUM MSSQL DB Names Lookup Reconciliationの場合 - __DBNAMES__

  • DBUM MSSQL Languages Lookup Reconciliationの場合 - __LANGUAGES__

  • DBUM MSSQL Roles Lookup Reconciliationの場合 - __ROLES__

ノート: この属性の値は変更しないでください。

リソース・オブジェクト名

リコンシリエーションに使用されるリソース・オブジェクトの名前を入力します。

デフォルト値: MSSQL DB User

3.4.2 MSSQLユーザー・エンティティおよびログイン・エンティティのリコンシリエーション用のスケジュール済ジョブの属性

コネクタのターゲット・リソース(アカウント管理)モードでユーザー・データをリコンサイルする場合は、次のスケジュール済ジョブを使用します。

  • MSSQLユーザー・エンティティの場合: DBUM MSSQL User Target Reconciliation

  • MSSQLログイン・エンティティの場合: DBUM MSSQL User Login Target Reconciliation

コネクタの信頼できるソース(アイデンティティ管理)モードでユーザー・データをリコンサイルする場合は、次のスケジュール済ジョブを使用します。

DBUM MSSQL Trusted Reconciliation

using-and-extending-connector-mssql.htm#GUID-2CE4BEB5-86C2-4A7C-B429-755C30E2F9A2__CHDFHDJEで、ユーザー操作のスケジュール済ジョブの属性について説明します。

表3-18 MSSQLユーザー・エンティティおよびログイン・エンティティのリコンシリエーション用のスケジュール済ジョブの属性

属性 説明

フィルタ

スケジュール済ジョブによりリコンサイルする必要のあるレコードをフィルタリングするための式

デフォルトでは、この属性の値は空です。

サンプル値: equalTo('__Name__','SEPT12USER1')

この式の構文は、「MSSQLからの制限付きリコンシリエーションの実行」を参照してください。

増分リコンシリエーション属性

前回のリコンシリエーション実行が開始したときのタイムスタンプ

サンプル値: lastModified

ノート: この属性には値を入力しないでください。リコンシリエーション・エンジンにより、この属性の値は自動的に入力されます。

ITリソース名

ユーザー・レコードをリコンサイルする元のターゲット・システム・インストールのITリソースの名前

デフォルト値: MSSQL DB

最新のトークン

この属性は内部目的で使用されます。

デフォルトでは、この値は空です。

オブジェクト・タイプ

リコンサイルするオブジェクトのタイプ

信頼できるモードおよびログイン・エンティティのスケジュール済ジョブの場合: USERLOGIN

デフォルト値: User

リソース・オブジェクト名

リコンシリエーションに使用されるリソース・オブジェクトの名前

ログイン・エンティティのスケジュール済ジョブの場合: MSSQL DB User Login

信頼できるモードのスケジュール済ジョブの場合: MSSQL UserLogin Trusted

その他すべてのスケジュール済ジョブの場合: MSSQL DB User

スケジュール済タスク名

スケジュール済ジョブの名前

ノート: このコネクタに組み込まれているスケジュール済ジョブについては、この属性の値を変更することはできません。ただし、タスクのコピーを作成した場合は、この属性の値として、そのスケジュール済ジョブに一意の名前を入力できます。

3.4.3 MSSQL削除操作用のスケジュール済ジョブの属性

コネクタのターゲット・リソース(アカウント管理)モードで削除済ユーザー・データをリコンサイルする場合は、次のスケジュール済ジョブを使用します。

  • MSSQLユーザー・エンティティの場合: DBUM MSSQL Delete User Target Reconciliation

  • MSSQLログイン・エンティティの場合: DBUM MSSQL Delete User Login Target Reconciliation

コネクタの信頼できるソース(アイデンティティ管理)モードで削除済ユーザー・データをリコンサイルする場合は、次のスケジュール済ジョブを使用します:

DBUM MSSQL Delete Trusted Reconciliation

using-and-extending-connector-mssql.htm#GUID-1ABDEC70-D210-4C65-81F4-E469EA777D50__CHDFBBEGで、削除操作のスケジュール済ジョブの属性について説明します。

表3-19 削除操作用のスケジュール済ジョブの属性

属性 説明

ITリソース名

ユーザー・レコードをリコンサイルする元のターゲット・システム・インストールのITリソースの名前

DBUM MSSQL Delete Trusted Reconciliationの場合、信頼できるソース・モード用に作成されたITリソースの名前を入力します。

DBUM MSSQL Delete User Login Target Reconciliationの場合: MSSQL DB

DBUM MSSQL Delete User Target Reconciliationの場合: MSSQL DB

オブジェクト・タイプ

リコンサイルするオブジェクトのタイプ

DBUM MSSQL Delete Trusted Reconciliationの場合: USERLOGIN

DBUM MSSQL Delete User Login Target Reconciliationの場合: USERLOGIN

DBUM MSSQL Delete User Target Reconciliationの場合: User

リソース・オブジェクト名

リコンシリエーションに使用されるリソース・オブジェクトの名前

DBUM MSSQL Delete Trusted Reconciliationの場合: MSSQL UserLogin Trusted

DBUM MSSQL Delete User Login Target Reconciliationの場合: MSSQL DB User Login

DBUM MSSQL Delete User Target Reconciliationの場合: MSSQL DB User

3.4.4 MSSQLでのスケジュール済ジョブの構成

この手順は、参照フィールド同期およびリコンシリエーション用のスケジュール済ジョブを構成する場合に適用できます。

コネクタに組み込まれているスケジュール済ジョブ、およびそれらの属性の詳細は、「MSSQLでの参照フィールド同期用のスケジュール済ジョブ」および「MSSQL削除操作用のスケジュール済ジョブの属性」を参照してください。

スケジュール済ジョブを構成するには:

  1. Oracle Identity Managerリリース11.1.1.xを使用している場合:

    1. 管理およびユーザー・コンソールにログインします。

    2. 「Oracle Identity Managerセルフ・サービスへようこそ」ページの右上隅で、「拡張」をクリックします。

    3. 「Oracle Identity Manager拡張管理へようこそ」ページの「システム管理」領域で、「スケジュール済ジョブの検索」をクリックします。

  2. Oracle Identity Managerリリース11.1.2.x以降を使用している場合:

    1. Oracle Identity System Administrationにログインします。

    2. 左ペインの「システム管理」で、「スケジューラ」をクリックします。

  3. 次のように、スケジュール済ジョブを検索して開きます。

    1. 左ペインの「検索」フィールドに、スケジュール済ジョブの名前を検索基準として入力します。「拡張検索」をクリックして検索基準を指定することもできます。

    2. 左側のペインの検索結果表で、「ジョブ名」列のスケジュール済ジョブをクリックします。

  4. 「ジョブの詳細」タブでは、次のパラメータを変更できます。

    再試行: このフィールドには整数値を入力します。この数値は、ジョブに「停止済」ステータスを割り当てるまでに、スケジューラがジョブの開始を試行する回数を表します。

    スケジュール・タイプ: ジョブを実行する頻度に応じて、適切なスケジュール・タイプを選択します。

    ノート:

    スケジュール・タイプの詳細は、Oracle Fusion Middleware Oracle Identity Managerの管理のジョブの作成を参照してください。

    ジョブ詳細を変更する他に、ジョブを有効化または無効化できます。

  5. 「パラメータ」リージョンの「ジョブの詳細」タブで、スケジュール済ジョブの属性の値を指定します。

    ノート:

  6. 属性の指定後、「適用」をクリックして変更を保存します。

3.5 MSSQLからのリコンシリエーション

リコンシリエーションでは、ターゲット・システムでのユーザー・アカウントの作成および変更がOracle Identity Managerで複製されます。この項では、リコンシリエーションの構成に関する次の項目について説明します。

ノート:

MSSQLターゲット・システムでは、バッチ・リコンシリエーションはサポートされていません。

3.5.1 MSSQLからのリコンシリエーションの構成に関するガイドライン

リコンシリエーションを構成する際に適用する必要があるガイドラインを次に示します。

  • ターゲット・リソースのリコンシリエーションを実行する前に、参照定義がターゲット・システムの参照フィールドと同期している必要があります。つまり、ユーザー・リコンシリエーションの実行前に、参照フィールド同期用のスケジュール済ジョブを実行する必要があります。

  • 削除されたユーザー・データまたはログイン・データのリコンシリエーション用のスケジュール済タスクより前に、ユーザー・リコンシリエーションまたはログイン・リコンシリエーション用のスケジュール済タスクを実行する必要があります。

3.5.2 MSSQLでのリコンシリエーション・プロセスについて

このコネクタは、信頼できるソース・リコンシリエーションまたはターゲット・リソース・リコンシリエーションを実行するように構成できます。

ターゲット・システムをターゲット・リソースとして構成すると、コネクタでは、プロビジョニングを介してOIMユーザーのデータベース・アカウントを作成して管理できます。また、新たに作成または変更されたターゲット・システム・アカウントに関連するデータをリコンサイルして、既存のOIMユーザーやプロビジョニングされたリソースにリンクすることができます。

ターゲット・システムを信頼できるソースとして構成した場合、コネクタによって、新しく作成されたまたは変更されたターゲット・システム・アカウントに関するデータがOracle Identity Managerにフェッチされます。このデータは、OIMユーザーを作成または更新する際に使用されます。詳細は、「信頼できるソースとしてのターゲット・システムの構成」を参照してください。

関連項目:

ターゲット・リソース・リコンシリエーションおよび信頼できるソース・リコンシリエーションに関する概念的な情報は、『Oracle Fusion Middleware Oracle Identity Managerの管理』のリコンサイル対象オブジェクトに基づくリコンシリエーションに関する項を参照してください。

リコンシリエーションで行われるステップの概要を次に示します。

  1. 使用しているターゲット・システムに応じて、リコンシリエーション時にSQL問合せまたはストアド・プロシージャを使用してターゲット・システム・レコードがフェッチされます。

  2. スケジュール済ジョブはコネクタ・バンドルと通信して、コネクタ・バンドルで検索操作を実行し、タスク属性をリコンシリエーション問合せまたはストアド・プロシージャのパラメータにマップしてから、その問合せまたはストアド・プロシージャをターゲット・システムで実行します。

  3. 問合せまたはストアド・プロシージャの基準を満たすターゲット・システム・レコードがOracle Identity Managerにフェッチされます。

  4. ターゲット・システムを信頼できるソースとして構成した場合、ターゲット・システムからフェッチされた各ユーザー・レコードは、既存のOIMユーザーと比較されます。この比較プロセスでリコンシリエーション・ルールが適用されます。

    プロセスの次のステップは、比較の結果によって異なります。

    • ターゲット・システムとOIMユーザーの一致が見つかった場合、ターゲット・システム・レコードに対して行われた変更内容でOIMユーザー属性が更新されます。

    • 一致が見つからない場合、ターゲット・システム・レコードを使用してOIMユーザーが作成されます。

  5. ターゲット・システムをターゲット・リソースとして構成した場合、ターゲット・システムからフェッチされた各ユーザー・レコードは、OIMユーザーに割り当てられている既存のターゲット・システム・リソースと比較されます。この比較プロセスでリコンシリエーション・ルールが適用されます。

    プロセスの次のステップは、比較の結果によって異なります。

    • ターゲット・システム・レコードとOIMユーザーにプロビジョニングされたリソースの一致が見つかった場合、ターゲット・システム・レコードに対して行われた変更内容でデータベース・ユーザー・リソースが更新されます。

    • 一致しない場合、ターゲット・システムのユーザー・レコードが既存のOIMユーザーと比較されます。次のステップは、比較の結果によって異なります。

      一致する場合、ターゲット・システムのレコードが使用され、リソースがOIMユーザーのためにプロビジョニングされます。

      一致しない場合、リコンシリエーション・イベントのステータスが「一致するものが見つかりません」に設定されます。

ノート:

リコンシリエーション・ルールの詳細は、「MSSQLでのリコンシリエーション・ルール」を参照してください

3.5.3 MSSQLでのリコンシリエーション問合せについて

この章で前述したように、リコンシリエーション時にSQL問合せまたはストアド・プロシージャを使用してターゲット・システムのレコードがフェッチされます。事前定義済のSQL問合せおよびストアド・プロシージャはすべて、コネクタのインストール・メディアのbundleディレクトリにあるJARファイルに格納されています。

たとえば、リコンシリエーション問合せファイルを見つけるには、bundle/org.identityconnectors.dbum-1.0.1116.jarファイルを抽出し、scripts/mssql/Search.queriesを開きます。

ノート:

要件に応じて、既存の問合せを変更したり、問合せファイルに独自の問合せを追加することができます。あるいは、独自の問合せファイルを作成して使用することもできます。詳細は、「MSSQLでの事前定義済問合せの変更または新しい問合せの作成」を参照してください。

MSSQLの事前定義済問合せの一部は、Incremental Recon Attributeというスケジュール済タスク属性と組み合せて使用されます。この属性には、前回のリコンシリエーション実行が開始したときのタイムスタンプが格納されます。次のリコンシリエーション実行が開始されると、lastModified列の値が「増分リコンシリエーション属性」の値よりも後のターゲット・システム・レコードのみがOracle Identity Managerにフェッチされます。つまり、前回のリコンシリエーションの実行開始後に追加または変更されたレコードのみが、現在のリコンシリエーション実行の対象になります。

MSSQLの事前定義済問合せを次に示します。

  • SEARCH_USER

    この問合せは、sp_helpuser()関数を使用してユーザー・レコードおよびそのlastModifiedタイムスタンプをフェッチするために使用します。

  • SEARCH_USERLOGIN

    この問合せは、sys.syslogins表からユーザー・レコードをフェッチするために使用します。

  • LOGIN_DATA_QUERY

    このストアド・プロシージャは、sp_helplogins()関数を使用してユーザー・データをフェッチするために使用します。

  • LOGIN_STATUS_AUTH_QUERY

    この問合せは、sys.server_principals表からユーザー認証データをフェッチするために使用します。

  • USER_DATA_QUERY

    このストアド・プロシージャは、sp_helpuser()関数を使用してユーザー・レコードをフェッチするために使用します。

3.5.4 MSSQLからのリコンシリエーションで使用されるターゲット・システム列

このガイドで前述したように、このコネクタは、ターゲット・リソースのリコンシリエーションまたは信頼できるソースのリコンシリエーションを実行するように構成できます。この項では、次の項目について説明します。

3.5.5 信頼できるソースのターゲット・システムの構成

ノート:

ターゲット・システムをリコンシリエーションの信頼できるソースとして指定しない場合は、この項を省略します。

信頼できるソース・リコンシリエーションを構成するには、次のようにします:

  1. Oracle Identity Managerリリース11.1.1.xを使用している場合:

    1. 管理およびユーザー・コンソールにログインします。

    2. ようこそページで、ページの右上隅の「拡張」をクリックします。

    3. 「Identity Manager拡張管理へようこそ」ページの「構成」リージョンで、「ITリソースの作成」をクリックします。

  2. Oracle Identity Managerリリース11.1.2.x以降を使用している場合:

    1. Oracle Identity System Administrationにログインします。

    2. 左側のペインの「構成」で、「ITリソース」をクリックします。

    3. 「ITリソースの管理」ページで、「ITリソースの作成」をクリックします。

  3. 「ステップ1: ITリソース情報の入力」ページで、次の情報を入力します。

    • ITリソース名: ITリソースの名前を入力します。たとえば、MSSQL DB Trustedなどです。

    • ITリソース・タイプ: ITリソースのITリソース・タイプとして「MSSQL DB」を選択します。

  4. 「続行」をクリックします。

  5. 「ステップ2: ITリソース・パラメータ値の指定」ページで、ITリソースのパラメータの値を指定します。

    構成参照: ターゲット・システムのコネクタ構成情報を格納する参照定義の名前。

    サンプル値: Lookup.DBUM.MSSQL.Configuration.Trusted

    他のITリソース・パラメータの値を指定します。

  6. 「続行」をクリックします。

    次のステップでは、要件に応じて作成するITリソースに対する権限を指定します。

このITリソースは、信頼できるソースのリコンシリエーション操作に対して使用できます。

3.5.6 MSSQLでのリコンシリエーション・ルール

関連項目:

リコンシリエーション・ルールおよびリコンシリエーション・アクション・ルールの詳細は、『Oracle Fusion Middleware Oracle Identity Managerのためのアプリケーションの開発とカスタマイズ』のリコンシリエーション・メタデータに関する項を参照してください

このコネクタのリコンシリエーション・エンジンでは、次のリコンシリエーション・ルールが使用されます。

  • ターゲット・リソース・モードでのユーザー・エンティティ用のルール名: DBUM MSSQL User Target Recon

    ルール要素: User Login Equals User Name

    このルールの意味は次のとおりです:

    • User Loginは、OIMユーザー・フォームのフィールドです。

    • User Nameは、ターゲット・システムのフィールドです。

  • ターゲット・リソース・モードでのログイン・エンティティ用のルール名: DBUM MSSQL Login Target Recon

    ルール要素: User Login Equals Login Name

    このルール要素では、次のようになります。

    • User Loginは、OIMユーザー・フォームのフィールドです。

    • Login Nameは、ターゲット・システムのフィールドです。

  • 信頼できるソース・モードでのルール名: MSSQL UserLogin Trusted

    ルール要素: User Login Equals User ID

    このルール要素では、次のようになります。

    • User Loginは、OIMユーザー・フォームのフィールドです。

    • User IDは、ターゲット・システムのフィールドです。

3.5.7 MSSQLでのリコンシリエーション・ルールの表示

コネクタのデプロイ後、次のステップを実行して、リコンシリエーションのリコンシリエーション・ルールを表示できます。

ノート:

次の手順は、コネクタのデプロイ後にのみ実行してください

  1. Oracle Identity Manager Design Consoleにログインします。
  2. 「開発ツール」を開きます。
  3. 「リコンシリエーション・ルール」をダブルクリックします。
  4. ルール名を検索します。

3.5.8 MSSQLでのリコンシリエーション・アクション・ルール

リコンシリエーション・アクション・ルールでは、ユーザーに対して定義されたリコンシリエーション・ルールに基づいてコネクタが実行する必要があるアクションが定義されます。

using-and-extending-connector-mssql.htm#GUID-C9F31C54-E4D7-42D6-BB7C-CE0CB35FC0F0__CHDDGAHAに、ターゲット・リソース・リコンシリエーションのアクション・ルールを示します。

表3-20 MSSQLでのターゲット・リソースのリコンシリエーションのアクション・ルール

ルール条件 アクション

一致が見つからなかった場合

最小ロードの管理者への割当て

1つのエンティティ一致が見つかった場合

リンクの確立

1つのプロセス一致が見つかった場合

リンクの確立

using-and-extending-connector-mssql.htm#GUID-C9F31C54-E4D7-42D6-BB7C-CE0CB35FC0F0__CHDGABFBに、信頼できるソース・リコンシリエーションのアクション・ルールを示します。

表3-21 MSSQLでの信頼できるソースのリコンシリエーションのアクション・ルール

ルール条件 アクション

一致が見つからなかった場合

ユーザーの作成

1つのエンティティ一致が見つかった場合

リンクの確立

3.5.9 MSSQLでのリコンシリエーション・アクション・ルールの表示

コネクタのデプロイ後に次のステップを実行すると、ターゲット・リソース・リコンシリエーションのリコンシリエーション・アクション・ルールを表示できます。

  1. Oracle Identity Manager Design Consoleにログインします。
  2. 「リソース管理」を開きます。
  3. 「リソース・オブジェクト」をダブルクリックします。
  4. リソース・オブジェクトを検索して開きます。各ターゲット・システム・データベースのリソース・オブジェクトの名前は次のとおりです。
    • MSSQLユーザー・エンティティ用のリソース・オブジェクト:

      MSSQL DB User

    • MSSQLログイン・エンティティ用のリソース・オブジェクト:

      MSSQL DB User Login

    • 信頼できるソースとしてのMSSQL用のリソース・オブジェクト:

      MSSQL UserLogin Trusted

  5. 「Object Reconciliation」タブ、「Reconciliation Action Rules」タブの順にクリックします。「Reconciliation Action Rules」タブに、コネクタに定義されているアクション・ルールが表示されます。

3.5.10 MSSQLからの完全リコンシリエーションの実行

完全リコンシリエーションでは、既存のすべてのユーザー・レコードをターゲット・システムからOracle Identity Managerへリコンサイルします。コネクタのデプロイ後は、まず完全リコンシリエーションを実行する必要があります。

完全リコンシリエーションを実行するには、Filter属性に現在割り当てられている値を削除し、次のいずれかのスケジュール済ジョブを実行します。

  • ターゲット・リソース・モードでのMSSQLユーザー・エンティティの場合: DBUM MSSQL User Target Reconciliation

  • ターゲット・リソース・モードでのMSSQLログイン・エンティティの場合: DBUM MSSQL User Login Target Reconciliation

  • 信頼できるソースとしてのMSSQLの場合: DBUM MSSQL Trusted Reconciliation

このスケジュール済ジョブの詳細は、「MSSQL削除操作用のスケジュール済ジョブの属性」を参照してください。

3.5.11 MSSQLからの制限付きリコンシリエーションの実行

デフォルトでは、前回のリコンシリエーションの実行後に追加または変更されたすべてのターゲット・システム・レコードが、現在のリコンシリエーションの実行中にリコンサイルされます。リコンサイルする必要のある追加または変更されたターゲット・システム・レコードのサブセットを指定して、このプロセスをカスタマイズできます。これは、リコンシリエーション・モジュールのフィルタを作成して行います。

リコンシリエーション・モジュールのフィルタを作成して、制限付きリコンシリエーションを実行できます。このコネクタのFilter属性(スケジュール済タスクの属性)により、任意のDBUMリソース属性を使用してターゲット・システム・レコードをフィルタ処理できます。フィルタは、コネクタ・インストール・メディアのbundleディレクトリにあるJARファイルに格納されているリコンシリエーション問合せファイル内の親パラメータに適用できます。たとえば、リコンシリエーション問合せファイルを見つけるには、bundle/org.identityconnectors.dbum-1.0.1116.jarファイルを抽出し、scripts/mssql/Search.queriesを開きます。

スケジュール済ジョブのFilter属性で使用できる親パラメータは、__UID__および__NAME__です。

ICFフィルタの詳細は、『Oracle Fusion Middleware Oracle Identity Managerのためのアプリケーションの開発とカスタマイズ』のICFフィルタの構文に関する項を参照してください。

コネクタをデプロイする際に、「MSSQLでのスケジュール済ジョブの構成」に示されている手順に従って属性値を指定します。

3.5.12 MSSQLからの増分リコンシリエーションの実行

増分リコンシリエーションの実行中、スケジュール済ジョブによって、スケジュール済ジョブの「最新のトークン」属性に保存されているタイムスタンプより後に追加または変更されたターゲット・システム・レコードのみがフェッチされます。コネクタでは、タイムスタンプ値を計算するために問合せを必要とします。このタイムスタンプ値は、リコンシリエーションの実行に使用される問合せで使用されます。

コネクタが増分リコンシリエーションを実行するために必要な構成はありません。完全リコンシリエーションの実行後、取得されたすべてのレコードの最新タイムスタンプがスケジュール済ジョブで更新され、次のリコンシリエーション実行で使用されます。

3.6 MSSQLでのプロビジョニング

プロビジョニングでは、Oracle Identity Managerを介して、ターゲット・システムでユーザー・アカウントを作成または変更します。

この項では、プロビジョニングに関する次の項目について説明します。

3.6.1 MSSQLでのプロビジョニング操作の実行に関するガイドライン

プロビジョニング操作を実行する際に適用する必要があるガイドラインを次に示します。

  • プロビジョニング操作を実行する前に、参照定義がターゲット・システムの参照フィールドと同期している必要があります。つまり、プロビジョニング操作の前に、参照フィールド同期用のスケジュール済ジョブを実行してください。

  • ターゲット・システム・フィールドの文字長を考慮に入れた上で、対応するOracle Identity Managerフィールドの値を指定する必要があります。

  • パスワード更新のプロビジョニング操作時に、「パスワード」フィールド内の既存のテキストを消去してから、新しいパスワードを入力してください。

  • Windows認証を使用するMicrosoft SQL Serverアカウントをプロビジョニングする前に、プロビジョニングするアカウントがオペレーティング・システムのアカウント・データベースに存在していることを確認する必要があります。

  • ユーザー・アカウントを作成する場合は、ITリソースの「データベース名」パラメータの値を指定する必要があります。

  • Windows認証を使用するMicrosoft SQL Serverログイン・アカウントをプロビジョニングする場合は、次のフィールドに値を指定する必要があります。

    • データベース名: ユーザーが接続する必要のあるデフォルト・データベースの名前を選択します。

    • デフォルト言語: ログインのデフォルト言語を選択します。

    • ログイン名: 次の書式でログイン名を入力します。

      [DOMAIN_NAME\LOGIN_NAME]

      この書式の意味は次のとおりです:

      • DOMAIN_NAMEは、ログイン・アカウントが属する必要のあるドメインの名前です。

      • LOGIN_NAMEは、ターゲット・システムに作成するログインの名前です。

      「ログイン名」フィールドに入力できるサンプル値を次に示します。

      [MyDomain\jdoe]

  • SQL Server認証を使用するMicrosoft SQL Serverログイン・アカウントをプロビジョニングする場合は、次の必須フィールドに値を指定する必要があります。

    • ログイン名: ログイン・アカウントの名前を入力します。

    • パスワード: ログイン・アカウントのパスワードを入力します。

ノート:

Microsoft SQL Serverには厳密なパスワード・ポリシーがあります。ただし、コネクタによってこのパスワードの検証は行われないため、その結果操作が失敗することがあります。

ターゲット・システムのデフォルト・パスワード・ポリシーに準拠していることを確認するためのカスタム検証を追加できます。これを行う場合、Lookup.DBUM.MSSQL.Login.ProvValidations参照定義内のpasswordフィールドの検証を構成する必要があります。

3.6.2 MSSQLでのプロビジョニング・プロセスの理解

プロビジョニングでは、ユーザー・アカウントが作成および管理されます。データベース・リソースをOIMユーザーに割り当てる(プロビジョニングする)と、そのユーザーのターゲット・データベースにアカウントが作成されます。同様に、Oracle Identity Managerでリソースを更新すると、ターゲット・システムのアカウントが同じように更新されます。

Oracle Identity Managerにコネクタをインストールするときに、直接プロビジョニング機能は自動的に有効になります。すなわち、コネクタをインストールすると、プロセス・フォームが有効になります。

次にプロビジョニング操作のタイプを示します。

  • ダイレクト・プロビジョニング

  • リクエストベースのプロビジョニング

  • ポリシー変更でトリガーされるプロビジョニング

リクエストベース・プロビジョニングのためにコネクタを構成した場合、プロセス・フォームが抑制されてオブジェクト・フォームが表示されます。すなわち、コネクタにリクエストベースのプロビジョニングを構成すると、ダイレクト・プロビジョニングは無効になります。ダイレクト・プロビジョニングに戻す場合は、「MSSQLでのリクエストベースのプロビジョニングとダイレクト・プロビジョニングとの切替え」を参照してください。

ダイレクト・プロビジョニングによって開始されるMSSQLでの「ユーザーの作成」プロビジョニング・プロセスの概要を次に示します。

  1. 管理およびユーザー・コンソールの「ユーザーの作成」ページで、管理者がOIMユーザー・アカウントの作成に必要なデータを入力します。

    管理者が「ユーザーの作成」ページのフィールドに次の値を入力するとします。

    • 名: John

    • 姓: Doe

    • ユーザーID: jdoe

    John Doeに対するOIMユーザー・アカウントが作成されます。

  2. 管理者は、作成されたOIMユーザー・アカウントにプロビジョニングするリソースを選択します。

    MSSQL Userリソースをプロビジョニングする前に、まずMSSQL Userloginリソースを同じターゲット・システムにプロビジョニングする必要があります。このプロビジョニング中に、ユーザーのログインIDを指定する必要があります。

    この例では、管理者はまずMSSQL DB User Loginリソースを選択してから、MSSQL DB Userリソースを選択しています。

  3. 管理者は、MSSQL DB Userリソースのプロビジョニングに必要なデータを入力します。管理者が、データベースへのログインにパスワードを必要とするローカル・ユーザーを作成するとします。したがって、この管理者はリソース・プロビジョニング・プロセス・フォームに次の値を入力します。

    • ITリソース: MSSQL DB User

    • ログイン名: JDoe

    • 認証タイプ: SQL_SERVER_AUTHENTICATION

    • パスワード: my_pa55word

    • デフォルト・データベース: sqldb1

    • デフォルト言語: example

    さらに、管理者は、ロールを付与するために次の値をプロセス・フォームに入力します。

    • ロール: 3~db_datareader

    ロールはユーザー・エンティティに対してのみ付与でき、ログイン・エンティティには付与できません。

  4. ターゲット・システムのITリソースで使用可能な情報から、構成(Lookup.DBUM.MSSQL.Configuration)参照定義が特定されます。この参照定義には、コネクタ操作時に使用される構成情報が格納されています。

  5. コネクタ・バンドルには、プロビジョニング操作に必要なスクリプト(Provisioning.queries)が含まれています。

  6. SQL文の識別子は、問合せからフェッチされた入力パラメータで置換されます。次に、実際の値を含むSQL文が作成されます。

  7. コネクタによってMSSQLでSQL文が実行され、ターゲット・システムにjdoeアカウントが作成されます。

    管理者がロールを付与するための値を入力していない場合、プロビジョニング・プロセスはこの時点で終了します。それ以外の場合、プロセスは次のステップに進みます。

  8. ステップ3の実行中に、管理者は、jdoeアカウントにロールを付与するために必要なデータを入力しました。したがって、ステップ6に示した対応する問合せがフェッチされます。

  9. ロール追加のプロビジョニング操作を実行するために実行する必要がある完全なSQL文が作成されます。

  10. SQL文の実行に必要な入力パラメータが、問合せファイルからフェッチされます。

  11. (ステップ9で作成された) SQL文の識別子が、問合せからフェッチされた入力パラメータで置換されます。次に、実際の値を含むSQL文が作成されます。

  12. 問合せによってターゲット・システム(MSSQL)でSQL文が実行され、jdoeターゲット・システム・アカウントにロールが付与されます。

3.6.3 MSSQLでのダイレクト・プロビジョニングの構成

ダイレクト・プロビジョニングでは、Oracle Identity Manager管理者は、管理およびユーザー・コンソールを使用してユーザーにターゲット・システム・アカウントを作成します。

ダイレクト・プロビジョニングの手法を使用してリソースをプロビジョニングするには、次の手順を実行します。

  1. 管理およびユーザー・コンソールにログインします。

  2. まずOIMユーザーを作成してからそのユーザーに対してデータベース・アカウントをプロビジョニングする場合は、次のようにします。

    1. 「アイデンティティ管理へようこそ」ページの「ユーザー」リージョンで「ユーザーの作成」をクリックします。

    2. 「ユーザーの作成」ページで、OIMユーザーのフィールドに値を入力し、保存アイコンをクリックします。

  3. 既存のOIMユーザーにデータベース・アカウントをプロビジョニングする場合は、次のようにします。

    1. 「アイデンティティ管理へようこそ」ページの左ペインにある「検索」リストから「ユーザー」を選択して、ユーザーを検索します。

      あるいは、「ユーザー」リージョンで「拡張検索 - ユーザー」をクリックして検索基準を指定し、「検索」 をクリックします。

    2. 検索結果として表示されるユーザー・リストからOIMユーザーを選択します。

      「ユーザーの詳細」ページが表示されます。

  4. 「アクション」メニューから「リソースの追加」を選択します。あるいは、プラス(+)記号の付いた「リソースの追加」アイコンをクリックします。「ユーザーへのリソースのプロビジョニング」ページが新しいウィンドウに表示されます。

  5. 「ステップ1: リソースの選択」ページで、リストからリソースとして「MSSQL DB User Login」または「MSSQL DB User」を選択し、「続行」をクリックします。

    MSSQL DB Userリソースをプロビジョニングする前に、まずMSSQL DB User Loginリソースをユーザーにプロビジョニングする必要があります。

  6. 「ステップ2: リソースの選択の検証」ページで「続行」をクリックします。

  7. 「ステップ5: プロセス・データの指定」ページで、ターゲット・システムに作成するアカウントの詳細を入力し、「続行」をクリックします。

  8. 子データを指定する場合は、子データの「ステップ5: プロセス・データの指定」ページで、ターゲット・システムのユーザーの子データを選択し、「続行」をクリックします。複数の子データが存在し、それらをプロビジョニングする場合は、同じステップを繰り返します。

  9. 「ステップ6: プロセス・データの検証」ページで、指定したデータを確認して「続行」をクリックします。

  10. 「プロビジョニングは開始されています。」というメッセージが表示されます。次のステップを実行します。

    1. 「プロビジョニングは開始されています。」というメッセージを表示しているウィンドウを閉じます。

    2. 「リソース」タブで「リフレッシュ」をクリックして、新たにプロビジョニングされたリソースを表示します。

    リソースのステータスが「プロビジョニング済」になっていれば、プロビジョニングは成功しています。ステータスが「プロビジョニング」の場合は、エラーが発生した可能性があります。エラーが発生したかどうかを確認するには、リソース履歴を確認できます。

3.6.4 MSSQLでのリクエストベースのプロビジョニングの構成

次の項で、リクエストベースのプロビジョニングを可能にするために実行するステップについて説明します。

3.6.4.1 MSSQLでのリクエストベースのプロビジョニングについて

リクエストベースのプロビジョニングでは、エンドユーザーが管理およびユーザー・コンソールを使用して、リソースのリクエストを作成します。管理者または他のユーザーが、特定のユーザーのためにリクエストを作成することもできます。特定のリソースのリクエストを確認して承認できるのは、Oracle Identity Managerで指名された承認者です。

リクエストベースのプロビジョニングの機能は次のとおりです。

  • 1ユーザーにプロビジョニングできるのはターゲット・システムの1リソース(アカウント)のみです。

    ノート:

    ダイレクト・プロビジョニングでは、ターゲット・システムでの複数のデータベース・アカウントのプロビジョニングが可能です。

  • リクエストベースのプロビジョニングを有効にすると、直接プロビジョニングは使用できません。

3.6.4.2 リクエストベースのプロビジョニングの有効化

次の各項では、リクエストベースのプロビジョニングを有効にするために実行する必要がある手順について説明します:

ノート:

この項で説明する手順は、Oracle Identity Managerリリース11.1.1.xを使用している場合にのみ適用できます。

3.6.4.2.1 MSSQLでのリクエストベースのプロビジョニングでの承認者の役割

次のステップは、リクエストベースのプロビジョニング操作で承認者によって実行されます。

  1. 管理およびユーザー・コンソールにログインします。
  2. 「ようこそ」ページの右上隅で、「セルフサービス」をクリックします。
  3. 「Identity Managerセルフ・サービスへようこそ」ページで「タスク」タブをクリックします。
  4. 「承認」タブの最初のセクションで、割り当てられているリクエスト・タスクの検索基準を指定できます。
  5. 検索結果表から承認するリクエストを含む行を選択して、「タスクの承認」をクリックします。

    タスクが承認トされたことを確認するメッセージが表示されます。

3.6.4.2.2 デプロイメント・マネージャを使用したMSSQLリクエスト・データセットのインポート

リクエスト・データセットは、プロビジョニング操作中にリクエスタにより送信される情報を指定するXMLファイルです。これらのリクエスト・データセットで、リクエストベースのプロビジョニング操作中にリクエスタにより送信される必要のある属性のデフォルト・セットの情報を指定します。

デプロイメント・マネージャを使用してリクエスト・データセットXMLファイルをインポートするには、次のようにします。

  1. Oracle Identity Manager管理およびユーザー・コンソールにログインします。
  2. 左のナビゲーション・バーの「デプロイメント管理」リンクをクリックします。
  3. 「デプロイメント管理」の下の「インポート」リンクをクリックします。

    ファイルを開くダイアログ・ボックスが表示されます。

  4. インストール・メディアのxmlディレクトリにあるリクエスト・データセットXMLファイル(DBUserManagement-MSSQL-Datasets.xml)を見つけて開きます。

    このXMLファイルの詳細は、「ファイル・プレビュー」ページに表示されます。

  5. 「ファイルの追加」をクリックします。

    「置換」ページが表示されます。

  6. 「次」をクリックします。

    「確認」ページが表示されます。

  7. 「インポート」をクリックします。
  8. 「デプロイメント・マネージャ」ダイアログ・ボックスを閉じます。

    リクエスト・データセットがOracle Identity Managerにインポートされます。

3.6.4.2.3 MSSQLでのリクエストベースのプロビジョニングでのエンドユーザーの役割

次のステップは、リクエストベースのプロビジョニング操作でエンドユーザーによって実行されます。

  1. 管理およびユーザー・コンソールにログインします。
  2. 「ようこそ」ページでページの右上の「拡張」をクリックします。
  3. 「アイデンティティ管理へようこそ」ページで「管理」タブをクリックし、「リクエスト」タブをクリックします。
  4. 左ペインの「アクション」メニューから「リクエストの作成」を選択します。

    「リクエスト・テンプレートの選択」ページが表示されます。

  5. 「リクエスト・テンプレート」リストから「リソースのプロビジョニング」を選択して、「次」をクリックします。
  6. 「ユーザーの選択」ページで、リソースをプロビジョニングするユーザーを検索するためのフィールドに検索基準を指定し、S「検索」をクリックします。指定した検索基準に一致するユーザーのリストが「使用可能なユーザー」リストに表示されます。
  7. 「使用可能なユーザー」リストから、アカウントをプロビジョニングするユーザーを選択します。

    1人以上のユーザーのプロビジョニング・リクエストを作成する場合は、「使用可能なユーザー」リストからアカウントをプロビジョニングするユーザーを選択します。

  8. 「移動」または「すべて移動」をクリックして、選択内容を「選択したユーザー」リストに移動し、「次」をクリックします。
  9. 「リソースの選択」ページで「リソース名」フィールドの横にある矢印ボタンをクリックして、使用可能なすべてのリソースのリストを表示します。
  10. 「利用可能なリソース」リストから「MSSQL DB User Login」および「MSSQL DB User」を選択して「選択したリソース」リストに移動し、「次へ」をクリックします。
  11. 「リソースの詳細」ページで、ターゲット・システムに作成する必要があるアカウントの詳細を入力し、「次」をクリックします。
  12. 「理由」ページで次のフィールドの値を指定し、「終了」をクリックします。
    • 有効日

    • 理由

    リクエストが正常に送信されたことを確認するメッセージが、リクエストIDと一緒に表示されます。

  13. リクエストIDをクリックすると、「リクエストの詳細」ページが表示されます。
  14. 承認の詳細を表示するには、「リソースの詳細」ページで「リクエスト履歴」タブをクリックします。
3.6.4.2.4 MSSQLでの自動保存フォーム機能の有効化

自動保存フォーム機能を有効化するには:

  1. Design Consoleにログインします。
  2. 「プロセス管理」を開いて、「プロセス定義」をダブルクリックします。
  3. MSSQL DB Userプロセス定義を検索して開きます。
  4. 「Auto Save Form」チェック・ボックスを選択します。
  5. 保存アイコンをクリックします。
3.6.4.2.5 MSSQLでのPurgeCacheユーティリティの実行

PurgeCacheユーティリティを実行して、メタデータ・カテゴリに属するコンテンツをサーバー・キャッシュから消去します。

手順は、「サーバー・キャッシュからのコネクタ・リソース・バンドル関連コンテンツの消去」を参照してください。

リクエストベースのプロビジョニングを有効にする手順は、このステップで終了です。

3.6.5 MSSQLでのリクエストベースのプロビジョニングとダイレクト・プロビジョニングとの切替え

リクエストベースのプロビジョニング用にコネクタを構成した場合は、いつでも直接プロビジョニングに切り替えることができます。同様に、いつでもリクエストベースのプロビジョニングに戻すことができます。この項では、次の項目について説明します。

3.6.5.1 リクエストベースのプロビジョニングから直接プロビジョニングへの切替

ノート:

「MSSQLでのリクエストベースのプロビジョニングの構成」で説明されている手順をすでに実行したことが前提となっています。

リクエストベースのプロビジョニングからダイレクト・プロビジョニングに切り替えるには、次の手順を実行します。

  1. Design Consoleにログインします。

  2. 次の手順で、「Auto Save Form」機能を無効にします。

    1. 「Process Management」を開いて「Process Definition」をダブルクリックします。

    2. MSSQL DBプロセス定義を検索して開きます。

    3. 「Auto Save Form」チェック・ボックスを選択解除します。

    4. 保存アイコンをクリックします。

  3. 「Self Request Allowed」機能が有効になっている場合は、次の操作を行います。

    1. 「Resource Management」を開き、「Resource Objects」をダブルクリックします。

    2. ターゲット・システムを信頼できるリソースとして構成した場合は、MSSQL UserLogin Trustedリソース・オブジェクトを検索して開きます。

    3. ターゲット・システムをターゲット・リソースとして構成した場合は、MSSQL DB Userリソース・オブジェクト(ユーザー・エンティティ)またはMSSQL DB User Loginリソース・オブジェクト(ログイン・エンティティ)を検索して開きます。

    4. 「Self Request Allowed」チェック・ボックスを選択解除します。

    5. 保存アイコンをクリックします。

3.6.5.2 直接プロビジョニングからリクエストベースのプロビジョニングへの切替え

ダイレクト・プロビジョニングからリクエストベースのプロビジョニングに戻すには、次の手順を実行します。

  1. Design Consoleにログインします。

  2. 次の手順で、Auto Save Form機能を有効にします。

    1. 「Process Management」を開いて「Process Definition」をダブルクリックします。

    2. MSSQL DBプロセス定義を検索して開きます。

    3. 「Auto Save Form」チェック・ボックスを選択します。

    4. 保存アイコンをクリックします。

  3. エンドユーザーが自分自身に対するリクエストを生成できるようにするには、次の手順を実行します。

    1. 「Resource Management」を開き、「Resource Objects」をダブルクリックします。

    2. ターゲット・システムを信頼できるリソースとして構成した場合は、MSSQL UserLogin Trustedリソース・オブジェクトを検索して開きます。

    3. ターゲット・システムをターゲット・リソースとして構成した場合は、MSSQL DB Userリソース・オブジェクト(ユーザー・エンティティ)またはMSSQL DB User Loginリソース・オブジェクト(ログイン・エンティティ)を検索して開きます。

    4. 「Self Request Allowed」チェック・ボックスを選択します。

    5. 保存アイコンをクリックします。

3.6.6 Oracle Identity Managerリリース11.1.2.xでのプロビジョニング操作の実行

Oracle Identity Managerリリース11.1.2.xでプロビジョニング操作を実行するには:

  1. Identity Self Serviceにログインします。

  2. まずOIMユーザーを作成してから、ターゲット・システム・アカウントをプロビジョニングする場合は、次の操作を行います。

    ノート:

    ユーザーの作成の詳細は、『Oracle Fusion Middleware Oracle Identity Managerでのセルフ・サービス・タスクの実行』のユーザーの作成に関する項を参照してください。

    1. 左ペインの「管理」で、「ユーザー」をクリックします

      「ユーザーの検索」ページが表示されます。

    2. 「アクション」メニューから、「作成」を選択しますまたは、ツールバーにある「作成」をクリックします。

    3. 「ユーザーの作成」ページで、OIMユーザーのフィールドの値を入力し、「送信」をクリックしますユーザーが正常に作成されたことを示すメッセージが表示されます。

  3. ターゲット・システム・アカウントを既存のOIMユーザーにプロビジョニングする場合は、次の操作を行います。

    ノート:

    ユーザーの検索の詳細は、Oracle Fusion Middleware Oracle Identity Managerでのセルフ・サービス・タスクの実行のユーザーの検索に関する項を参照してください。

    1. 左ペインの「管理」で、「ユーザー」をクリックします

      「ユーザーの検索」ページが表示されます。

    2. OIMユーザーを検索するための検索条件を指定して、「検索」をクリックします

    3. 検索結果として表示されるユーザー・リストからOIMユーザーを選択します。右ペインに、ユーザー詳細ページが表示されます。

  4. 「アカウント」タブで、「アカウントのリクエスト」をクリックします

  5. 「カタログ」ページで、アプリケーション・インスタンス(つまり、プロビジョニングするアカウント)を検索してカートに追加し、「チェックアウト」をクリックします

  6. アプリケーション・フォームでフィールドの値を指定して、「送信準備ができています」をクリックします

  7. 「送信」をクリックします。

  8. 権限をプロビジョニングする場合は、次の手順を実行します。

    1. 「権限」タブで、「権限のリクエスト」をクリックします

    2. 「カタログ」ページで、権限を検索してカートに追加し、「チェックアウト」をクリックします

    3. 「送信」をクリックします。

3.7 MSSQLでのコネクタの拡張

次の各項では、特定のビジネス要件に対応できるようコネクタの機能を拡張するために実行可能な手順について説明します。

ノート:

Oracle Identity Managerリリース11.1.2以降では、参照問合せはサポートされません。Oracle Identity System Administrationでフォーム・デザイナを使用して参照を管理する方法の詳細は、Oracle Fusion Middleware Oracle Identity Managerの管理の参照の管理を参照してください。

3.7.1 MSSQLでの事前定義済問合せの変更または新しい問合せの作成

次の各項では、事前定義済問合せの変更または新しい問合せの作成を行うときに従う必要がある構文およびガイドラインについて説明します:

3.7.1.1 MSSQLでの問合せについて

ターゲット・システムのユーザー・レコードのリコンサイル、Oracle Identity Managerと参照フィールド値との同期、およびプロビジョニング操作を行うための事前定義済問合せが用意されています。これらの事前定義済問合せを変更したり、独自の問合せを追加することができます。

問合せファイルは、コネクタ・インストール・メディアのbundleディレクトリにあるJARファイルに含まれています。たとえば、bundle/org.identityconnectors.dbum-1.0.1116.jarなどです。

コネクタには次のタイプの問合せが含まれています。

  • プロビジョニング問合せ

    作成、更新および削除の操作で使用されます。問合せファイルはscripts/mssql/Provisioning.queriesです。

  • 値リスト検索問合せ

    参照定義のリコンシリエーションで使用されます。値リスト問合せは、データベース名、ロール、言語などのフィールドの値セットに対して使用します。問合せファイルはscripts/mssql/LoVSearch.queriesです。

  • アカウント検索問合せ

    完全リコンシリエーション、増分リコンシリエーションおよびリコンシリエーション削除の操作に使用されます。アカウント検索問合せは、様々な条件でのアカウント検索およびグループ検索に対して使用します。問合せファイルはscripts/mssql/Search.queriesです。

ノート:

プロセス・フォームでライトバック用にストアド・プロシージャOUTパラメータを構成することはできません。戻された値をコネクタ操作に使用することはできません。

3.7.1.2 MSSQLでのプロビジョニング問合せの構文

プロビジョニング操作で使用される問合せの構文は、次のとおりです。

QUERYID {

Query="QUERY"

QueryType="QUERYTYPE"

Parameters=["PARAM1":"PARAMDEFN1", "PARAM2":"PARAMDEFN2"...]

ExtensionJoin="EXTENSIONJOIN"

ExtensionSeparator="EXTENSIONSEPARATOR"

QueryExtensions=["EXTENSION1","EXTENSION2"...]

}

次に例を示します:

CREATE_SQL_SERVER_AUTHENTICATION_USERLOGIN {
    Query="CREATE LOGIN {__NAME__} WITH PASSWORD={__PASSWORD__}"
    QueryType="SQL"
    Parameters=["__NAME__":"Type:String", "__PASSWORD__":"Type:GuardedString, Tags:QUOTES"]
    ExtensionJoin=","
    ExtensionSeparator=", "
    QueryExtensions=["DEFAULT_DATABASE", "DEFAULT_LANGUAGE"]
}

この構文の説明は次のとおりです:

  • QUERYIDは、問合せの一意の名前です。

    たとえば: CREATE_SQL_SERVER_AUTHENTICATION_USERLOGIN

    CREATEプロビジョニング問合せの場合、QUERYIDの書式は、CREATE_AUTHENTICATIONTYPE_ENTITYです。それ以外のプロビジョニング問合せの書式は、OPERATIONTYPE_ENTITY (DELETE_USERLOGINなど)、ENTITY_OPERATIONTYPE_ATTRIBUTE (USERLOGIN_UPDATE_DEFAULTDATABASEなど)またはOPERATIONTYPE_OPERATION (UPDATE_ADD_ROLESなど)です。

  • QUERYは主問合せです。

    たとえば: Query="CREATE LOGIN {__NAME__} WITH PASSWORD={__PASSWORD__}"

  • QueryTypeは主問合せのタイプであり、SQL問合せ、ストアド・プロシージャまたは問合せ拡張のいずれかです。QUERYTYPEの値は、SQLStoredProcまたはQUERYEXTENSIONです。

    たとえば: QueryType="SQL"

  • Parametersは主問合せで使用されるパラメータおよびパラメータ定義のカンマ区切りリストであり、"PARAM1":"PARAMDEFN1", "PARAM2":"PARAMDEFN2"などのように表されます。

    次に例を示します:

    Parameters=["__NAME__":"Type:String", "__PASSWORD__":"Type:GuardedString, Tags:QUOTES"]

    パラメータには次の属性を指定できます。

    • Typeはパラメータのタイプです。

    • Directionは、問合せとパラメータ間のデータの流れです。値はINOUTまたはINOUTです。

    • TAGSは、問合せの処理前に各パラメータに適用される囲み文字です。この値は、DOUBLEQUOTESQUOTESUPPERCASEまたはLOWERCASE.です。複数のタグはカンマで区切り、二重引用符で囲んで使用できます。ただし、同じ問合せ内でDOUBLEQUOTESQUOTES、またはUPPERCASELOWERCASEを一緒に使用することはできません。

  • ExtensionJoin (オプション)はEXTENSIONJOINで表される演算子であり、主問合せを問合せ拡張と結合するために使用されます。

    たとえば: ExtensionJoin=","

  • ExtensionSeparator (オプション)は問合せ拡張間のデリミタであり、EXTENSIONSEPARATORで表されます。

    たとえば: ExtensionSeparator=", "

  • QueryExtensions (オプション)は主問合せに追加する必要のある拡張であり、EXTENSION1EXTENSION2などのように表されます。

    次に例を示します:

    QueryExtensions=["DEFAULT_DATABASE", "DEFAULT_LANGUAGE"]

操作時に、コネクタによってこれらすべての構成要素が次の問合せに結合されます。

QUERY PARAM1, PARAM2... [EXTENSIONJOIN [EXTENSION1 EXTENSIONSEPARATOR EXTENSION2 EXTENSIONSEPARATOR...]]

次に例を示します:

CREATE LOGIN {__NAME__} WITH PASSWORD={__PASSWORD__}, DEFAULT_DATABASE={defaultDatabase}, DEFAULT_LANGUAGE={defaultLanguage}

using-and-extending-connector-mssql.htm#GUID-1E9471F3-C96E-4472-A378-0B4F67A82941__CHDFFIFGに、プロビジョニング問合せのスクリプト選択ロジックを示します:

表3-22 MSSQLのプロビジョニング問合せのスクリプト選択ロジック

操作 選択ロジック 問合せID

CREATE

CREATE_AUTHTYPE_OBJECTYPE

CREATE_OBJECTTYPE

CREATE_SQL_SERVER_AUTHENTICATION_USERLOGIN

CREATE_WINDOWS_AUTHENTICATION_USERLOGIN

CREATE_USER

DELETE

DELETE_OBJECTTTYPE

DELETE_USERLOGIN

DELETE_USER

ENABLE

ENABLE_OBJECTTYPE

ENABLE_USERLOGIN

DISABLE

DISABLE_OBJECTTYPE

DISABLE_USERLOGIN

RESET PASSWORD

OBJECTTYPE_SET_PASSWORD

USERLOGIN_SET_PASSWORD

UPDATE

OBJECTTYPE_UPDATE_ATTRIBUTE

USERLOGIN_UPDATE_DEFAULTDATABASE

USERLOGIN_UPDATE_DEFAULTLANGUAGE

USERLOGIN_UPDATE_LOGINNAME

ADD CHILD VALUES

UPDATE_ADD_ATTRIBUTE

UPDATE_ADD_ROLES

REMOVE CHILD VALUES

UPDATE_REVOKE_ATTRIBUTE

UPDATE_REVOKE_ROLES

3.7.1.3 MSSQLでのリコンシリエーション問合せの構文

リコンシリエーション操作時に使用される検索問合せの構文を次に示します。

QUERYID {

Query="QUERY"

QueryType="QUERYTYPE"

Parameters=["PARAM1":"PARAMDEFN1", "PARAM2":"PARAMDEFN2"...]

ExtensionJoin="EXTENSIONJOIN"

ExtensionSeparator="EXTENSIONSEPARATOR"

QueryExtensions=["EXTENSION1","EXTENSION2"...]

}

次に例を示します:

SEARCH_USER {
    Query="select {__UID__}, {lastModified} from (select * from sys.sysusers where issqlrole=0) OUTERQUERY {filter}"
    QueryType="SQL"
    Parameters=["__UID__":"Type:String,Direction:OUT,ColName:name",
            "lastModified":"Type:long,Direction:OUT,ColName:TS, ColQuery:\"cast((cast(updatedate as float)*100000) as bigint)\""]		
    QueryExtensions=["USER_DATA_QUERY"]
}

この構文の説明は次のとおりです:

  • QUERYIDは、問合せの一意の名前です。

    たとえば: SEARCH_USER

    QUERYIDの値は次のいずれかです。

    • SEARCH_USER

    • SEARCH_USERLOGIN

  • Queryは主問合せであり、QUERYで表されます。

    たとえば: Query="select {__UID__}, {lastModified} from (select * from sys.sysusers where issqlrole=0) OUTERQUERY {filter}"

  • QueryTypeは主問合せのタイプであり、SQL問合せ、ストアド・プロシージャまたは問合せ拡張のいずれかです。QUERYTYPEの値は、SQLStoredProcまたはQUERYEXTENSIONです。

    たとえば: QueryType="SQL"

  • Parametersは主問合せで使用されるパラメータおよびパラメータ定義のカンマ区切りリストであり、"PARAM1":"PARAMDEFN1", "PARAM2":"PARAMDEFN2"などのように表されます。

    次に例を示します:

    Parameters=["__UID__":"Type:String,Direction:OUT,ColName:name", "lastModified":"Type:long,Direction:OUT,ColName:TS, ColQuery:\"cast((cast(updatedate as float)*100000) as bigint)\""]

    パラメータには次の属性を指定できます。

    • Typeはパラメータのタイプです。

    • Directionは、問合せとパラメータ間のデータの流れです。値はINOUTまたはINOUTです。

    • ColNameは、問合せ内のパラメータに対応するターゲット・システム内の列名です。

    • ColQueryは、対応する問合せパラメータの値をフェッチするために使用される問合せです。

  • ExtensionJoin (オプション)はEXTENSIONJOINで表される演算子であり、主問合せを問合せ拡張と結合するために使用されます。

    たとえば: ExtensionJoin=","

  • ExtensionSeparator (オプション)は問合せ拡張間のデリミタであり、EXTENSIONSEPARATORで表されます。

    たとえば: ExtensionSeparator=", "

  • QueryExtensions (オプション)は主問合せに追加する必要のある拡張であり、EXTENSION1EXTENSION2などのように表されます。

    たとえば: QueryExtensions=["USER_DATA_QUERY"]

    QueryExtensionsは次のいずれかです。

    • LOGIN_DATA_QUERY

    • LOGIN_STATUS_AUTH_QUERY

    • USER_DATA_QUERY

リコンシリエーション操作時に、コネクタによってこれらすべての構成要素が次の問合せに結合されます。

QUERY PARAM1, PARAM2... [EXTENSIONJOIN [EXTENSION1 EXTENSIONSEPARATOR EXTENSION2 EXTENSIONSEPARATOR...]]

次に例を示します:

SELECT {__UID__}, {lastModified} FROM sys.sysusers, USER_DATA_QUERY

3.7.1.4 MSSQLでの値リスト問合せの構文

ユーザー・エンティティやログイン・エンティティなどのエンティティに対して実行される検索問合せは、リコンシリエーション問合せとみなされます。それ以外のオブジェクトに対して検索問合せが実行された場合、その問合せは値リスト問合せとみなされます。

参照フィールド同期に使用される値リスト問合せの構文を次に示します。

OBJECTTYPE = "QUERY"

次に例を示します:

__DBNAMES__="SELECT name FROM sys.sysdatabases"

この構文の説明は次のとおりです:

  • OBJECTTYPEは、objectTypeスケジュール済ジョブ・パラメータによって指定される属性です。

    たとえば: __DBNAMES__

  • QUERYは、参照フィールド属性をフェッチするために使用される問合せです。

    たとえば: SELECT name FROM sys.sysdatabases

値リスト問合せでは、参照フィールドの値として使用される1つの値のみが戻されます。デフォルトでは、コネクタには各参照定義に専用のスケジュール済ジョブが含まれています。カスタム参照定義を使用するには、カスタム・フィールドを問合せファイルに追加する必要があります。

3.7.1.5 MSSQLからのリコンシリエーションで使用される検索問合せの構成に関するガイドライン

次に、リコンシリエーションのための問合せの変更または作成を行うときに従う必要があるガイドラインを示します。

  • リコンシリエーション問合せのSELECT句で列を追加または削除することにより、リコンシリエーションのためのターゲット・システム属性のリストで属性を追加または削除します。リコンサイルされる属性のリストの変更(追加または削除)をコネクタが処理できるように、コネクタのプロビジョニングの部分で対応する変更を行う必要があります。

  • 問合せプロパティ・ファイル内の事前定義済問合せの名前は変更しないでください。

  • 一部の事前定義済問合せでは内部問合せが使用されます。外部問合せの列を追加または削除する場合は、内部問合せもそれに応じて変更する必要があります。

  • リソース・オブジェクト属性「ログイン名」および「ユーザー名」に対応する列は削除しないでください。

  • 「パラメータ」リストに含まれている次の条件が削除されていないことを確認する必要があります。

    "lastModified":"Type:long,Direction:IN,ColQuery:\"cast((cast(updatedate as float)*100000) as bigint)\""]
    

    この条件は、増分リコンシリエーション属性スケジュール済ジョブ属性に格納されているタイムスタンプの後にターゲット・システム・レコードが追加または更新されたかどうかを判別するために使用されます。

  • プロパティ・ファイル内の問合せのSELECT句の列を追加または削除した場合は、子属性とターゲット・システム列名の間のマッピングが含まれる属性マッピング参照定義を更新する必要があります。さらに、他のOIMオブジェクトも更新する必要があります。

  • Search.queriesファイル内の問合せを変更または追加する前に、標準データベース・クライアントを使用してこの問合せを実行し、ターゲット・システム・データベースで実行したときに必要な結果が生成されることを確認する必要があります。

3.7.2 MSSQLでのカスタム・パラメータおよび参照フィールドのサポートを追加するための問合せの構成

コネクタでは、作成、削除、検索などのコネクタ操作に対して事前定義済問合せが使用されます。要件に応じて、カスタム・パラメータおよび参照定義フィールドを追加できます。

次の各項では、パラメータまたは参照定義フィールドを問合せファイルに追加する手順について説明します。

3.7.2.1 MSSQLでの問合せファイルの更新

問合せファイルを更新するには、次のようにします。

  1. コネクタがすでにインストールされている場合は、Oracle Identity ManagerのJARダウンロード・ユーティリティを実行して、Oracle Identity Managerデータベースからコネクタ・バンドルJARファイルをダウンロードします。このユーティリティは、Oracle Identity Managerのインストール時に次の場所にコピーされます。

    ノート:

    このユーティリティを使用する前に、Oracle WebLogic ServerをインストールしたディレクトリにWL_HOME環境変数が設定されていることを確認してください。

    Microsoft Windowsの場合:

    OIM_HOME/server/bin/DownloadJars.bat

    UNIXの場合:

    OIM_HOME/server/bin/DownloadJars.sh

    このユーティリティを実行すると、Oracle Identity Manager管理者のログイン資格証明、Oracle Identity Managerホスト・コンピュータのURL、コンテキスト・ファクトリ値、ダウンロードするJARファイルのタイプ、およびJARファイルのダウンロード元の場所を入力するように求められます。ICFBundleをJARタイプとして選択します。

  2. バンドルJARファイルを一時ディレクトリにコピーします。

    サンプルJARファイル: bundle/org.identityconnectors.dbum-1.0.1116.jar

    サンプル一時ディレクトリ: c:\temp

  3. 次のコマンドを実行して、JARファイルからMETA-INF/MANIFEST.MFというマニフェスト・ファイルを抽出します。

    jar -xvf org.identityconnectors.dbum-1.0.1116.jar
    

    ノート:

    また、WinZipまたはWinRARユーティリティを実行して、JARファイルからコンテンツを抽出することもできます。

  4. 一時ディレクトリ内のバンドルJARファイルを削除します。

  5. マニフェスト・ファイル内のConnectorBundle-Versionの値を新しい値に更新します。

    次に例を示します:

    ConnectorBundle-Version: 1.0.1117

  6. 要件に応じて、「MSSQLでの事前定義済問合せの変更または新しい問合せの作成」で説明されている問合せ構文に従って、問合せファイルを新しいパラメータで更新します。

    たとえば、CREATE_SQL_SERVER_AUTHENTICATION_USERLOGIプロビジョニング問合せに新しいパラメータdefaultLanguageを追加する場合は、次のようにします。

    1. テキスト・エディタで問合せファイルを開きます。

      サンプル問合せファイル: c:\temp\bundle\org.identityconnectors.dbum-1.0.1116\scripts\mssql\Provisioning.queries

    2. パラメータdefaultLanguageCREATE_SQL_SERVER_AUTHENTICATION_USERLOGIN問合せに追加します。

      更新済の問合せのサンプル:

      CREATE_SQL_SERVER_AUTHENTICATION_USERLOGIN {
          Query="CREATE LOGIN {__NAME__}, DEFAULT_LANGUAGE={defaultLanguage} WITH PASSWORD={__PASSWORD__}"
          QueryType="SQL"
          Parameters=["__NAME__":"Type:String", "defaultLanguage":"Type:String", "__PASSWORD__":"Type:GuardedString, Tags:QUOTES"]
          ExtensionJoin=","
          ExtensionSeparator=", "
          QueryExtensions=["DEFAULT_DATABASE", "DEFAULT_LANGUAGE"]
      }
      
    3. 問合せファイルを保存して閉じます。

  7. 次のようにして、更新済マニフェスト・ファイルおよび問合せファイルを含む新しいバンドルJARファイルを作成します。

    1. コマンド・プロンプトを開いて、一時ディレクトリに移動します。

      c:\temp

    2. ドライバJARファイルがある場合は、bundleディレクトリ内のlibディレクトリにコピーします。

    3. 次のコマンドを実行します。

      jar -cvfm org.identityconnectors.dbum-1.0.1117.jar META-INF/MANIFEST.MF *
      

    新しいコネクタ・バンドルJAR名には、新しいバンドル・バージョンが含まれます。

  8. リモート・コネクタ・サーバーの場合、JARファイルをOracle Identity Managerデータベースに転送するのではなく、新しいバンドルJARファイルをリモート・コネクタ・サーバーのbundlesディレクトリにコピーします。ステップ9に進みます。

  9. Oracle Identity Manager JAR更新ユーティリティを実行して、ステップ7で作成したJARファイルをOracle Identity Managerデータベースにポストします。このユーティリティは、Oracle Identity Managerのインストール時に次の場所にコピーされます。

    ノート:

    このユーティリティを使用する前に、Oracle WebLogic ServerをインストールしたディレクトリにWL_HOME環境変数が設定されていることを確認してください。

    Microsoft Windowsの場合:

    OIM_HOME/server/bin/UpdateJars.bat

    UNIXの場合:

    OIM_HOME/server/bin/UpdateJars.sh

    このユーティリティを実行すると、Oracle Identity Manager管理者のログイン資格証明、Oracle Identity Managerホスト・コンピュータのURL、コンテキスト・ファクトリ値、更新するJARファイルのタイプ、およびJARファイルの更新元の場所を入力するように求められます。ICFBundleをJARタイプとして選択します。

  10. 構成参照を新しいバンドル・バージョンで更新します。

    たとえば、Lookup.DBUM.MSSQL.Configuration参照定義を更新できます。

3.7.2.2 Oracle Identity Managerの構成

追加したパラメータがOracle Identity Managerのデフォルトのフォーム・フィールドとしてすでに存在している場合、この手順は省略できます。

パラメータを追加するためにOracle Identity Managerを構成するには、次のようにします。

  1. Oracle Identity Manager Design Consoleにログインします。

  2. 新しいバージョンのプロセス・フォームを作成します。

    1. 「開発ツール」を開きます。

    2. 「フォーム・デザイナ」をダブルクリックします。

    3. UD_DB_SQL_Uプロセス・フォームを検索して開きます。

    4. 「新しいバージョンの作成」をクリックします。

      新規バージョンの作成ダイアログ・ボックスで、「ラベル」フィールドに新しいバージョンを入力して「保存」アイコンをクリックします。

  3. プロセス・フォームに新しいフィールドを追加します。

    1. 「追加」をクリックします。

      リストにフィールドが追加されます。フィールドの詳細を入力します。

      たとえば、CustomAttribute1フィールドを追加する場合は、「名前」フィールドにUD_DB_SQL_U_CUSTOM1と入力し、このフィールドの残りの詳細を入力します。

    2. 保存アイコンをクリックし、「バージョンのアクティブ化」をクリックします。

  4. Oracle Identity Managerリリース11.1.2.x以降を使用している場合、次のようにして、Design Consoleの「フォーム・デザイナ」に加えられたすべての変更を、新しいUIフォームで実行する必要があります。

    1. Oracle Identity System Administrationにログインします。

    2. サンドボックスを作成し、アクティブにします。

    3. 新たに追加したフィールドと残りのフィールドを表示するために新しいUIフォームを作成します。Oracle Fusion Middleware Oracle Identity Managerの管理 の フォーム・デザイナを使用したフォームの作成に関する項を 参照してください。 

    4. 新たに作成したUIフォームを、ターゲット・システムのアプリケーション・インスタンスと関連付けます。それを行うには、「フォーム」フィールドの、リソースの既存のアプリケーション・インスタンスを開き、(ステップ4.cで作成した)フォームを選択して、アプリケーション・インスタンスを保存します。

    5. Oracle Fusion Middleware Oracle Identity Managerのためのアプリケーションの開発とカスタマイズのサンドボックスの公開に関する項の説明に従って、サンドボックスを公開します。

  5. プロビジョニングの参照定義で、次のようにして、フィールドのエントリを作成します。

    1. 「管理」を開きます。

    2. 「ルックアップ定義」をダブルクリックします。

    3. Lookup.DBUM.MSSQL.UM.ProvAttrMap参照定義を検索して開きます。

    4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。

      コード・キーの値は、フォーム・フィールドの名前にする必要があります。デコードの値は、ターゲット・システムの属性の名前にする必要があります。

      たとえば、コード・キー・フィールドにCustom Attribute 1と入力し、デコード・フィールドにCustomAttribute1と入力します。

    5. 保存アイコンをクリックします。

  6. 次のように、プロセス・タスクを作成して、新規フィールドCustom Attribute 1を更新します。

    1. 「プロセス管理」を開きます。

    2. 「プロセス定義」をダブルクリックし、MSSQL DB Userプロセス定義を開きます。

    3. 「追加」をクリックして、Custom Attribute 1 Updatedなどのタスク名およびタスクの説明を入力します。

    4. タスク・プロパティ・セクションで、条件付きチェック・ボックスと「複数のインスタンスを許可」チェック・ボックスを選択して保存アイコンをクリックします。

    5. 「統合」タブで「追加」「アダプタ」の順にクリックします。

    6. adpMSSQLUPDATEUSERアダプタを選択して保存アイコンをクリックし、表示されるメッセージで「OK」をクリックします。

    7. 次の表に示されているアダプタ変数をマッピングするには、アダプタを選択して「マップ」をクリックし、次の表に示されているデータを指定します。

      変数名 データ型 マップ先 修飾子 リテラル値

      Adapter return value

      オブジェクト

      レスポンス・コード

      N/A

      N/A

      attributeName

      文字列

      リテラル

      文字列

      Custom Attribute 1

      itRes

      文字列

      リテラル

      文字列

      UD_DB_SQL_U_ITRES

      objectType

      文字列

      リテラル

      文字列

      User

      processInstanceKey

      Long

      プロセス・データ

      プロセス・インスタンス

      N/A

    8. 「レスポンス」タブで「追加」をクリックして、次のレスポンス・コードを追加します。

      コード名 説明 ステータス

      ERROR

      エラーが発生しました

      R

      UNKNOWN

      不明な応答を受信した

      R

      SUCCESS

      操作が完了しました

      C

    9. 保存アイコンをクリックしてダイアログ・ボックスを閉じます。

3.7.3 MSSQLの複数のインストールに対するコネクタの構成について

ターゲット・システムの複数のインストールに対してコネクタを構成する場合があります。次の例でこの要件について説明します。

Example Multinational Inc.のロンドンおよびニューヨークの事業所には、独自にターゲット・システムがインストールされています。最近、この会社では、Oracle Identity Managerをインストールし、これを構成してインストールされたすべてのターゲット・システムをリンクしようとしています。

これを実現するために、ITリソースやリソース・オブジェクトなどのコネクタ・オブジェクトのコピーを作成できます。

コネクタ・オブジェクトのコピーを作成するかどうかの決定は、要件に基づきます。たとえば、ITリソースは1つのターゲット・システム・インストールの接続情報を保持できます。このため、ターゲット・システムのインストールごとにITリソースのコピーを作成する必要があります。

その他のコネクタ・オブジェクトでは、コピーを作成する必要はまったくありません。たとえば、1つの属性マッピング参照定義をターゲット・システムのすべてのインストールに使用できます。

すべてのコネクタ・オブジェクトはリンクされています。たとえば、スケジュール済ジョブにITリソースの名前を格納します。同様に、ターゲット・システムのITリソースに構成参照定義の名前(Lookup.DBUM.MSSQL.Configuration)を格納します。オブジェクトのコピーを作成する場合、関連付けられたコネクタ・オブジェクト内にコピーの名前を指定する必要があります。

ノート:

  • 特定のターゲット・システム・インストールからデータをリコンサイルするには、そのターゲット・システム・インストールに対するITリソースの名前を、ITリソース名を保持するスケジュール済ジョブ属性の値として指定します。たとえば、このITリソースの名前を、実行するスケジュール済ジョブのITリソース属性の値として入力します。

  • Identity Self Serviceを使用してプロビジョニングを実行する場合、ユーザーのプロビジョニング先のターゲット・システム・インストールに対応するITリソースを指定できます。

using-and-extending-connector-mssql.htm#GUID-8FF58BC5-86B9-4372-B82F-FB2C8352BD80__CHDHBEFGに、コピーを作成できるコネクタ・オブジェクトと、これらのオブジェクトを参照する他のオブジェクトとの関連付けを示します。コネクタ・オブジェクトのコピーを作成する場合、この情報を使用して、そのオブジェクトと他方のオブジェクトの関連付けを変更します。

ノート:

  • 特定のOracle Identity Managerインストールにコネクタ・オブジェクトのコピーを作成する場合、そのコピーに一意の名前を設定する必要があります。

  • Oracle Identity Managerリリース11.1.2.x以降を使用している場合、この項で説明した手順に加えて、各ITリソースに対してアプリケーション・インスタンスを作成する必要があります。アプリケーション・インスタンスの作成の詳細は、「Oracle Identity Managerリリース11.1.2以降の構成」を参照してください。

表3-23 コネクタ・オブジェクトおよびそれらの関連付け

コネクタ・オブジェクト 名前 参照元 コピー作成に関するコメント

ITリソース

MSSQL DB

プロセス・フォーム:

  • UD_DB_SQL_L

  • UD_DB_SQL_U

スケジュール済ジョブ

ITリソースのコピーは別の名前で作成する必要があります。

リソース・オブジェクト

  • MSSQL DB User Login

  • MSSQL DB User

すべてのコネクタ操作

リソース・オブジェクトのコピーの作成は、オプションです。ターゲット・システムのすべてのインストールから同じ属性セットをリコンサイルする場合、リソース・オブジェクトのコピーを作成する必要はありません。

ノート: リソース・オブジェクトのコピーを作成するのは、ターゲット・システムの異なるインストール間で属性に違いがある場合のみです。

スケジュール済ジョブ

様々な用途のスケジュール済ジョブが多数あります。

N/A

スケジュール済ジョブは同じ名前で使用できます。ただし、使用するターゲット・システムに応じて、パラメータの値を更新する必要があります。

プロセス定義

  • MSSQL DB User Login

  • MSSQL DB User

N/A

プロセス定義のコピーの作成は、オプションです。ターゲット・システムのすべてのインストールから同じ属性セットをリコンサイルまたはプロビジョニングする場合、プロセス定義のコピーを作成する必要はありません。

ノート: プロセス・フォームのコピーを作成するのは、ターゲット・システムの異なるインストール間で属性に違いがある場合のみです。

プロセス・フォーム

  • UD_DB_SQL_L

  • UD_DB_SQL_U

プロセス定義:

  • MSSQL DB User Login

  • MSSQL DB User

プロセス・フォームのコピーの作成は、オプションです。ターゲット・システムのすべてのインストールから同じ属性セットをプロビジョニングする場合、プロセス定義のコピーを作成する必要はありません。

ノート: プロセス・フォームのコピーを作成するのは、ターゲット・システムの異なるインストール間で属性に違いがある場合のみです。

子プロセス・フォーム

UD_DB_SQL_R

  • MSSQL DB User (プロセス定義)

  • UD_DB_SQL_U (プロセス・フォーム)

子プロセス・フォームのコピーの作成は、オプションです。新しい子データ・セットをプロビジョニングする場合、子プロセス・フォームと親プロセス・フォームのコピーを作成する必要があります。次に、新しく作成した子プロセス・フォームを、新しく作成した親プロセス・フォームに割り当てます。

ターゲット・リソースとして構成されたターゲット・システム用の構成参照定義

Lookup.DBUM.MSSQL.Configuration

MSSQL DB (ITリソース)

構成参照定義のコピーの作成は、オプションです。(ターゲット・リソースとして構成された)ターゲット・システムのすべてのインストールで同じ属性セットをプロビジョニングおよびリコンサイルする場合、構成参照定義のコピーを作成する必要はありません。

ノート: 構成参照定義のコピーを作成するのは、ターゲット・システムの異なるインストール間で属性の違いがあり、さらに新しいプロセス・フォームを作成した場合のみです。

信頼できるソースとして構成されたターゲット・システム用の構成参照定義

Lookup.DBUM.MSSQL.Configuration.Trusted

MSSQL DB (ITリソース)

構成参照定義のコピーの作成は、オプションです。(信頼できるソースとして構成された)ターゲット・システムのすべてのインストールで同じ属性セットをリコンサイルする場合、構成参照定義のコピーを作成する必要はありません。

ノート: 信頼できるソースの構成参照定義のコピーを作成するのは、ターゲット・システムの異なるインストール間で属性の違いがあり、さらに新しいプロセス・フォームを作成した場合のみです。

(信頼できるソースの)リソース・オブジェクト属性マッピング参照定義

Lookup.DBUM.MSSQL.UM.ReconAttrMap.Trusted

リソース・オブジェクト属性マッピング参照のコピーの作成は、オプションです。(信頼できるソースとして構成された)ターゲット・システムのすべてのインストールで同じ属性セットをリコンサイルする場合、リソース・オブジェクト属性マッピング参照のコピーを作成する必要はありません。

ノート: この参照定義のコピーを作成するのは、ターゲット・システムの2つのインストール間で属性に違いがある場合のみです。

3.7.4 MSSQLからの複数の信頼できるソースのリコンシリエーション用のコネクタの構成について

ノート:

このコネクタでは、複数の信頼できるソースのリコンシリエーションがサポートされます。

この項ではオプションの手順を説明します。この手順は、複数の信頼できるソースのリコンシリエーションのためにコネクタを構成する場合にのみ実行します。

次に、組織のユーザー・データに対して複数の信頼できるソースが存在する場合の例を示します。

  • ターゲット・システムの1つは、ユーザーに関するデータの信頼できるソースです。2つ目のターゲット・システムは、契約者に関するデータの信頼できるソースです。3つ目のターゲット・システムは、インターンに関するデータの信頼できるソースです。

  • 1つのターゲット・システムは、OIMユーザーを構成する一部のアイデンティティ・フィールドのデータを保持します。他の2つのシステムは、残りのアイデンティティ・フィールドのデータを保持します。つまり、OIMユーザーを作成するには、3つのシステム全部からデータをリコンサイルする必要があります。

組織のオペレーティング環境がこれらのシナリオのいずれかで説明されている環境に類似する場合、このコネクタを使用すると、組織の個人データの信頼できるソースの1つとしてターゲット・システムを使用できるようになります。

複数の信頼できるソースのリコンシリエーションを構成するためのガイドラインを次に示します。

  • デフォルトでは、信頼できるソースのリコンシリエーションはMSSQLログイン・エンティティに対して実行されます。

    信頼できるソースのリコンシリエーションをユーザー・エンティティに対して実行されるように構成するには、リコンシリエーション・スケジュール済ジョブのリソース・オブジェクト名パラメータをMSSQL DB Userに変更し、「オブジェクト・タイプ」をUSERLOGINからUserに変更します。

  • 新しい信頼できるソースごとにリコンシリエーションを有効にするには、新しいITリソースを作成し、スケジュール済ジョブの「ITリソース名」パラメータを新しいITリソースの名前で更新します。

3.7.5 MSSQLでのリコンシリエーションおよびプロビジョニング時のデータ検証の構成

要件に応じてリコンサイルおよびプロビジョニングされた単一値データの検証を構成できます。たとえば、「名」属性からフェッチしたデータを検証して、そのデータに番号記号(#)が含まれていないことを確認します。また、プロセス・フォームの「名」フィールドに入力したデータを検証して、プロビジョニング操作中にターゲット・システムに番号記号(#)が送信されないようにします。

データの検証を構成するには:

  1. org.identityconnectors.dbum.extension.DBUMValidatorなどの完全修飾ドメイン名(FQDN)を持つJavaクラスで必須の検証ロジックを実装するコードを記述します。

    この検証クラスには、検証メソッドを実装する必要があります。次のサンプル検証クラスは、「名」属性の値に番号記号(#)が含まれるかどうかを確認します。

    package com.validationexample;
    
    import java.util.HashMap;
     
    public class MyValidator {
        public boolean validate(HashMap hmUserDetails, HashMap hmEntitlementDetails, String sField) throws ConnectorException {
     
            /* You must write code to validate attributes. Parent
                     * data values can be fetched by using hmUserDetails.get(field)
                     * For child data values, loop through the
                     * ArrayList/Vector fetched by hmEntitlementDetails.get("Child Table")
                     * Depending on the outcome of the validation operation,
                     * the code must return true or false.
                     */
            /*
            * In this sample code, the value "false" is returned if the field
            * contains the number sign (#). Otherwise, the value "true" is
            * returned.
            */
            boolean valid = true;
            String sFirstName = (String) hmUserDetails.get(sField);
            for (int i = 0; i < sFirstName.length(); i++) {
                if (sFirstName.charAt(i) == '#') {
                    valid = false;
                    break;
                }
            }
            return valid;
     
        }
    }
    
  2. Design Consoleにログインします。
  3. 「MSSQLでのデータ検証用の参照定義」に示されている参照定義の1つを検索して開きます(または新しい参照を作成します)。

    たとえば、Lookup.DBUM.MSSQL.UM.ProvValidationsなどです。

  4. コード・キー列で、検証するリソース・オブジェクト・フィールド名を入力します。たとえば、Login Nameなどです。
  5. デコード列で、クラス名を入力します。たとえば、org.identityconnectors.dbum.extension.DBUMValidatorなどです。
  6. 参照定義に変更を保存します。
  7. 使用するターゲット・システムの構成参照定義を検索して開きます。

    たとえば、Lookup.DBUM.MSSQL.UM.Configurationなどです。

  8. コード・キー列で、次のエントリのいずれかを入力します。
    • リコンシリエーション用のデータの検証を構成するには:

      Recon Validation Lookup

    • プロビジョニング用のデータの検証を構成するには:

      Provisioning Validation Lookup

  9. デコード列に、ステップ3で更新または作成した参照の名前を入力します。

    たとえば、Lookup.DBUM.MSSQL.UM.ProvValidationsなどです。

    ログイン・エンティティには、Lookup.DBUM.MSSQL.Login.ProvValidationsを使用します。

  10. 参照定義に変更を保存します。
  11. クラスを使用してJARを作成し、次のようにOracle Identity Managerデータベースにアップロードします。

    Oracle Identity Manager JARアップロード・ユーティリティを実行して、ステップ7で作成したJARファイルをOracle Identity Managerデータベースに投稿します。このユーティリティは、Oracle Identity Managerのインストール時に次の場所にコピーされます。

    ノート:

    このユーティリティを使用する前に、Oracle WebLogic ServerをインストールしたディレクトリにWL_HOME環境変数が設定されていることを確認してください。

    Microsoft Windowsの場合:

    OIM_HOME/server/bin/UploadJars.bat

    UNIXの場合:

    OIM_HOME/server/bin/UploadJars.sh

    ユーティリティを実行すると、Oracle Identity Manager管理者のログイン資格証明、Oracle Identity Managerホスト・コンピュータのURL、コンテキスト・ファクトリ値、アップロードするJARファイルのタイプおよびJARファイルがアップロードされる場所の入力を求めるプロンプトが表示されます。JARタイプの値として1を選択します。

  12. PurgeCacheユーティリティを実行して、サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツをクリアします。
  13. リコンシリエーションまたはプロビジョニングを実行して、Login Nameなどのフィールドの検証を確認します。

3.7.6 MSSQLでのユーザー・リコンシリエーション時のデータ変換の構成

要件に応じて、リコンサイルされた単一値ユーザー・データの変換を構成できます。たとえば、「名」および「姓」値を使用して、Oracle Identity Managerの「氏名」フィールドの値を作成できます。

リコンシリエーション中にフェッチした単一値のユーザー・データの変換を構成するには:

  1. org.identityconnectors.dbum.extension.DBUMTransfomationなどの完全修飾ドメイン名(FQDN)を持つJavaクラスで必須の変換ロジックを実装するコードを記述します。

    この変換クラスは、変換メソッドを実装する必要があります。次のサンプル変換クラスは、ターゲット・システムの「名」および「姓」属性からフェッチした値を使用して、「氏名」属性の値を作成します。

    package com.transformationexample;
    
    import java.util.HashMap;
     
     
    public class MyTransformer {
        public Object transform(HashMap hmUserDetails, HashMap hmEntitlementDetails, String sField) throws ConnectorException {
            /*
            * You must write code to transform the attributes.
            * Parent data attribute values can be fetched by
            * using hmUserDetails.get("Field Name").
            * To fetch child data values, loop through the
            * ArrayList/Vector fetched by hmEntitlementDetails.get("Child          Table")
            * Return the transformed attribute.
            */
            String sFirstName = (String) hmUserDetails.get("First Name");
            String sLastName = (String) hmUserDetails.get("Last Name");
            return sFirstName + "." + sLastName;
     
        }
    }
    
  2. Design Consoleにログインします。
  3. 「MSSQLでのデータ変換用の参照定義」に示されている参照定義の1つを検索して開きます(または新しい参照を作成します)。

    たとえば、Lookup.DBUM.MSSQL.UM.ReconTransformationsなどです。

    ノート:

    これらの参照定義を見つけられなければ、新しい参照定義を作成します。

  4. コード・キー列に、変換するリソース・オブジェクト・フィールド名を入力します。たとえば、Login Nameなどです。
  5. デコード列で、クラス名を入力します。たとえば、org.identityconnectors.dbum.extension.DBUMTransfomationなどです。
  6. 参照定義に変更を保存します。
  7. Lookup.DBUM.MSSQL.UM.Configuration参照定義を検索して開きます。
  8. コード・キー列に、リコンシリエーション変換参照を入力します。
  9. デコード列に、ステップ3で更新または作成した参照の名前を入力します。

    たとえば、Lookup.DBUM.MSSQL.UM.ReconTransformationsなどです。

    ログイン・エンティティには、Lookup.DBUM.MSSQL.Login.ReconTransformationを使用します。

  10. 参照定義に変更を保存します。
  11. クラスを使用してJARを作成し、次のようにOracle Identity Managerデータベースにアップロードします。

    Oracle Identity Manager JARアップロード・ユーティリティを実行して、ステップ7で作成したJARファイルをOracle Identity Managerデータベースに投稿します。このユーティリティは、Oracle Identity Managerのインストール時に次の場所にコピーされます。

    ノート:

    このユーティリティを使用する前に、Oracle WebLogic ServerをインストールしたディレクトリにWL_HOME環境変数が設定されていることを確認してください。

    Microsoft Windowsの場合:

    OIM_HOME/server/bin/UploadJars.bat

    UNIXの場合:

    OIM_HOME/server/bin/UploadJars.sh

    ユーティリティを実行すると、Oracle Identity Manager管理者のログイン資格証明、Oracle Identity Managerホスト・コンピュータのURL、コンテキスト・ファクトリ値、アップロードするJARファイルのタイプおよびJARファイルがアップロードされる場所の入力を求めるプロンプトが表示されます。JARタイプの値として1を選択します。

  12. PurgeCacheユーティリティを実行して、サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツをクリアします。
  13. リコンシリエーションを実行して、Login Nameなどのフィールドの変換を確認します。

3.7.7 MSSQLでのリソース除外リストの構成

リコンシリエーションおよびプロビジョニング操作から除外する必要のあるアカウントのリストを指定できます。除外リストで指定したユーザーIDのアカウントは、リコンシリエーションおよびプロビジョニング操作の影響を受けません。

除外リスト用の参照定義の1つに、プロビジョニングおよびリコンシリエーション操作から除外するターゲット・システム・アカウントのユーザーIDを入力します。参照定義およびこれらの参照のエントリの書式の詳細は、「MSSQLでの除外リスト用の参照定義」を参照してください。

Oracle Databaseでのプロビジョニング操作時に除外するエントリを参照に追加するには、次のようにします。

ノート:

リコンシリエーション操作時に除外するユーザーIDを指定するには、Lookup.DBUM.MSSQL.UM.ReconExclusions参照定義にエントリを追加します。

  1. Design Consoleで、「Administration」を開き、「Lookup Definition」をダブルクリックします。
  2. プロビジョニング除外リストまたはリコンシリエーション除外リストのどちらを使用するかに応じて、Lookup.DBUM.MSSQL.UM.ProvExclusionsまたはLookup.DBUM.MSSQL.UM.ReconExclusions参照定義を検索して開きます。

    ログイン・エンティティには、Lookup.DBUM.MSSQL.Login.ProvExclusionsまたはLookup.DBUM.MSSQL.Login.ReconExclusionsを使用します。

    信頼できるソースのリコンシリエーションの場合、Lookup.DBUM.MSSQL.UM.ExclusionList.Trustedを使用します。

  3. 「追加」をクリックします。
  4. Code Key列で、除外リストが適用されるリソース・オブジェクト・フィールド名を入力します。Decode列で、除外するレコードに対応するIDを入力します。

    たとえば、ユーザーIDがUser001のユーザーをプロビジョニングしない場合、参照定義に次の値を移入します。

    コード・キー デコード

    Login Name

    User001

    ノート:

    リコンシリエーションまたはプロビジョニング中に除外する必要があるアカウントのリストを指定する場合、ここで指定するコード・キー値はLookup.DBUM.MSSQL.UM.ReconAttrMap参照定義、またはLookup.DBUM.MSSQL.UM.ProvAttrMap参照定義それぞれで対応するコード・キー値のとおりである必要があります。

  5. 除外するユーザーIDが複数ある場合は、デコード列で、除外するすべてのユーザーIDの一覧を入力します。各ユーザーIDは縦線(|)で区切る必要があります。

    たとえば、ユーザーIDがUser001、User002およびUser088のユーザーをプロビジョニングしない場合、参照定義に次の値を移入します。

    コード・キー デコード

    Login Name

    User001|User002|User088

    また、パターン一致を実行して、ユーザー・アカウントを除外することもできます。java.util.regex.Patternクラスの表現によってサポートされる正規表現を指定できます。

    関連項目:

    サポートされるパターンの詳細は、http://download.oracle.com/javase/6/docs/api/java/util/regex/Pattern.htmlを参照してください。

    たとえば、ユーザーIDがUser001、User002およびUser088に一致するユーザーをプロビジョニングしない場合、参照定義に次の値を移入します。

    コード・キー デコード

    Login Name[PATTERN]

    User001|User002|User088

    ユーザーIDが00012から始まるユーザーをプロビジョニングしない場合は、次の値で参照定義を移入します。

    コード・キー デコード

    Login Name[PATTERN]

    00012*

  6. 保存アイコンをクリックします。

3.7.8 MSSQLでのアクション・スクリプトの設定

アクション・スクリプトと、アカウントの作成、更新または削除のプロビジョニング操作の前または後に実行するようにアクション・スクリプトを構成する方法について学習します。

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

3.7.8.1 MSSQLでのアクション・スクリプトについて

アクションは、アカウントの作成、更新または削除のプロビジョニング操作の前または後に実行するように構成できるスクリプトです。たとえば、ユーザーの作成前に実行されるスクリプトを構成できます。あるいは、AUDIT_USERLOGという名前の表があり、コネクタによってのみ実行されるユーザー作成アクティビティをこの表に記録するとします。この場合、作成操作後にデータがこの表に追加されるような作成後スクリプトを作成して使用できます。

ノート:

実行前アクションまたは実行後アクションを構成するには、コネクタでスクリプトの実行がサポートされている必要があります。ただし、(targetがConnectorに設定されている)Groovyは例外であり、収束されたすべてのコネクタがデフォルトでサポートされています。

いずれのコネクタも、スクリプト言語およびサポート対象のターゲットを指定している必要があります。このコネクタでは、次のスクリプトがサポートされています。

CMD: Windowsバッチ・スクリプトおよびターゲット: Connector

targetは、スクリプトの実行場所を表します。この場合、スクリプトはコネクタがデプロイされているコンピュータと同じコンピュータ(JVMまたは.NET Runtime)で実行されます。たとえば、コネクタ・サーバーにコネクタをデプロイした場合、スクリプトはそのコンピュータで実行されます。

すなわち、ローカル・フレームワークを使用している場合、スクリプトはJVMで実行されます。リモート・フレームワークに接続されている場合、スクリプトはリモートのJVMまたは.NET Runtimeで実行されます。

3.7.8.2 MSSQLでのアクション・スクリプトの構成

アクションを構成するには:

  1. Design Consoleにログインします。
  2. Lookup.DBUM.MSSQL.UM.Configuration参照定義を検索して開きます。

    ユーザー・ログイン・エンティティには、Lookup.DBUM.MSSQL.Login.Configuration参照定義を検索して開きます。

  3. 次の新しい値を追加します。
    • コード・キー: Before Create Action Language

    • デコード: 実行するスクリプトのスクリプト言語を入力します。

    • サンプル値: SQLまたはSTOREDPROC

  4. 次の新しい値を追加します。
    • コード・キー: Before Create Action File

    • デコード: 実行するスクリプトが含まれるファイルのフルパスを入力します(Oracle Identity Managerがこのファイルにアクセスできる必要があります。)

    • 例: /home/scripts/testscript.sql

      このスクリプトには次のような問合せが含まれている可能性があります。

      INSERT INTO AUDIT_USERLOG VALUES ({__NAME__}, CURRENT_TIMESTAMP))
      
  5. 次の新しい値を追加します。
    • コード・キー: Before Create Action Target

    • デコード: Connector

      前述のように、コネクタではConnectorターゲット用のCMDスクリプトがサポートされています。

  6. 参照定義を保存します。

これで、ユーザーを作成するたびにこのアクションが実行されるようになります。実行するアクションごとに、これらの3つの値を構成する必要があります。