プライマリ・コンテンツに移動
Oracle® Identity Manager Generic SCIMコネクタ・ガイド
リリース11.1.1
E85886-05
目次へ移動
目次

前
次

2 Generic SCIMコネクタの生成

Generic SCIMコネクタを生成する手順は、スキーマの定義、Groovyファイルの構成およびコネクタの生成の3ステージに分かれています。

2.1 スキーマの定義

ターゲット・システムのスキーマを定義して、ターゲット・システム・データベースの基盤となるスキーマをコネクタに認識させることができます。

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

ノート:

スキーマの定義はオプションです。スキーマが定義されていな場合、Generic SCIMコネクタは、ターゲット・システムのエンドポイントによって返されるすべての属性をフェッチします。

2.1.1 スキーマ・ファイルの形式の理解

スキーマ・ファイルは、ターゲット・システムの構造を表すために使用されるプロパティ・ファイルです。このファイルは、メタデータ生成ユーティリティへの入力として使用されます。メタデータ生成ユーティリティを実行する前に、指定した形式でスキーマ・ファイルを移入する必要があります。

ノート:

スキーマの作成はオプションです。カスタム・スキーマが使用できない場合、Generic SCIMコネクタは、ターゲット・システムのエンドポイントによって返されるすべての属性をフェッチします。スキーマ・ファイルで言及されているフィールドのプロパティは、Generic SCIMコネクタのスキーマ・エンドポイントによって返されるプロパティより優先されます

スキーマ・ファイルには、ターゲット・システムに固有のデータ型、必須属性、uid属性などの詳細が含まれます。このファイルは、Generic SCIMコネクタから管理されるフィールド名のリストを制限します。コネクタにターゲット・システム・スキーマを理解させるために、schema.propertiesファイルの作成は必須です。

スキーマ・ファイルは、プロパティ・ファイルで、名前と値のペアで構成されます。デフォルトでは、メタデータ生成ユーティリティは、__ACCOUNT__オブジェクト・クラスのメタデータを生成します。これは、ユーザー、グループおよび組織の管理に使用されます。

各プロパティの値を指定する際に使用する必要がある形式は、次の項で説明します。

2.1.1.1 アカウント修飾子

アカウント修飾子は、ターゲット・システム内のアカウントの特定の属性を記述します。これらの修飾子は、ターゲット・システムに共通です。

次の修飾子を使用して、ターゲット・システムのスキーマを定義できます。

  • Field Names

    これは必須修飾子です。これは、コネクタがターゲット・システムからフェッチする必要がある属性の、カンマ区切りのリストです。すべての子フォーム名、増分リコンシリエーションを実行するために使用される属性を含む単一値および複数値属性をここで指定する必要があります。

    次に、FieldNames修飾子の値の例を示します。

    FieldNames=UserId,UserName,FirstName,LastName,email,Description,Salary, JoiningDate,status,Groups,Roles

  • UidAttribute

    これは必須修飾子です。これは、アカウントの一意のIDに対応する属性の名前を示します。

    例: UidAttribute=UserId

  • NameAttribute

    これは必須修飾子です。これは、アカウントの説明的な名前に対応する属性の名前を示します。

    例: NameAttribute=UserName

  • PasswordAttribute

    ターゲット・システムでユーザー・アカウントのパスワード管理がサポートされている場合、これは必須の修飾子です。この修飾子は、アカウントのパスワード属性の名前を示します。

    例: PasswordAttribute=accountPwd

  • StatusAttribute

    ターゲット・システムでユーザー・アカウント・ステータスの管理がサポートされている場合、これは必須の修飾子です。この修飾子は、アカウントのステータスを表す属性を示します。

    例: StatusAttribute=status

2.1.1.2 フィールド修飾子

フィールド修飾子は、各フィールドに固有で、通常は定義済の書式で指定されます。

  • 次に、親フォームのフィールドの書式を示します。

    <FIELDNAME>.<FIELDQUALIFIER>=<VALUE>

    例: UserId.Required=true

  • 次に、複雑な子フォームのフィールドの書式を示します。

    <FIELDNAME>.<SUBFIELDNAME>.<FIELDQUALIFIER>=<VALUE>

    例: Roles.fromdate.DataType=Long

次に、値を指定できるフィールド修飾子を示します。

  • Required

    このフィールド修飾子は、記載された属性が必須であるかどうかを指定します。この修飾子の値がtrueに設定されている場合、パーサーは、このフィールド名を含まないレコードの処理をスキップします。

    例: UserId.Required=true

  • Multivalued

    このフィールド修飾子は、記載された属性が複数値フィールドであるかどうかを指定します。

    例: Roles.Multivalued=true

  • DataType

    このフィールド修飾子は、フィールド名のデータ型を指定するために使用します。フィールドにデータ型を指定しない場合は、デフォルトで、文字列データ型とみなされます。

    この修飾子には、次の値を指定できます。

    • String

    • Long

    • Character

    • Double

    • Float

    • Integer

    • Boolean

    • Byte

    • BigDecimal

    • bigInteget

    • Date

    例: startDate.DataType=Date

  • Subfields

    このフィールド修飾子は、複数値属性が存在する場合、そのサブフィールドを指定します。

    例: Roles.Subfields=roleid,fromdate,todate

  • EmbeddedObjectClass

    このフィールド修飾子は、複数のサブフィールドを持つ子フォームのオブジェクト・クラス名を指定します。この修飾子の値は、ICFによって内部的に使用され、すべての複雑な子フォームに必須です。

    例: Roles.EmbeddedObjectClass=Roles

2.1.2 スキーマ・ファイルの作成

必須の修飾子エントリを追加し、次に新規作成したエントリに値を指定することで構造を記述すると、ターゲット・システムのためのスキーマ・ファイルを作成できます。

ノート:

schema.propertiesファイルを、メタデータ生成ユーティリティを実行するコンピュータ上に作成する必要があります。
  1. .propertiesファイルを作成します。
  2. 環境の要件に応じてスキーマ・ファイルにエントリを追加します。

    次に、スキーマ・ファイルに定義する必要のある必須修飾子を示します。

    • FieldNames

    • UidAttribute

    • NameAttribute

  3. 追加した各エントリの値を指定します。これらの値を指定する必要がある形式の詳細は、スキーマ・ファイルの形式の理解を参照してください。
  4. 作成した.propertiesファイルを保存します。

2.2 GenericScimConfiguration.groovyファイルの構成

Generic SCIMコネクタには、GenericScimConfiguration.groovyという名前のgroovyファイルが付属しています。

2.2.1 GenericScimConfiguration.groovyファイルについて

このGenericScimConfiguration.groovyファイルは、コネクタ・インストールZIPのgenericscim-RELEASE_NUMBER/metadata-generator/resourcesディレクトリにあります。GenericScimConfiguration.groovyファイルを使用して、ターゲット・システム・スキーマの基本情報を格納できるプロパティの値を指定します。

このファイルは、Generic SCIMジェネレータが次のタスクを実行するために使用されます。

  • スキーマの理解

  • コネクタを実行する場合のモード(信頼できるソースまたはターゲット・リソース)の構成

  • ターゲット・システムに固有のコネクタ・パッケージの生成

Generic SCIMジェネレータの実行手順と生成されたコネクタ・パッケージのディレクトリ構造については、この章で後述します。

GenericScimConfiguration.groovyファイルには、ほとんどのエントリに値が移入されたサンプル構成が含まれています(信頼できるソースおよびターゲット・リソース用に1つずつ)。要件に応じて、このファイルのエントリの値を指定または変更するか、または構成用の新しいセクションを作成します。次に、GenericScimConfiguration.groovyファイルの事前定義済セクションを示します。

  • trusted

    信頼できるソース・モードのコネクタを構成する場合、このセクションのエントリの値を指定します。

  • target

    ターゲット・リソース・モードのコネクタを構成する場合、このセクションのエントリの値を指定します。

2.2.2 Groovyファイルの事前定義済セクションのエントリの理解

この項では、GenericScimConfiguration.groovyファイルの事前定義済セクションであるtrustedおよびtargetのエントリを定義します。

ノート:

  • 指定がないかぎり、ここで説明されているすべてのエントリは両方のセクションに共通です。

  • GenericScimConfiguration.groovyファイルのいずれかのオプションのエントリまたは属性の値を指定しない場合、そのエントリまたは属性の先頭に二重のスラッシュ記号(//)を追加してコメント・アウトしてください。

次にエントリの一覧を示します。

  • itResourceDefName

    これは必須エントリです。ターゲット・システムのITリソース・タイプの名前を入力します。このエントリに指定する値によって、コネクタ・パッケージ、コネクタ構成ファイルおよびコネクタ・インストーラ・ファイルの名前が決まることに注意してください。たとえば、このエントリの値としてGenSCIMTrustedを指定すると、コネクタ・パッケージ・ディレクトリの名前はGenSCIMTrusted.zipになります。

  • itResourceName

    これはオプション・エントリです。ターゲット・システムのITリソースの名前を入力します。このエントリがコメント化されている場合、ITリソース名はITResourceDefNameエントリの値と同じです。

    デフォルト値: "$itResourceDefName"

    ノート:

    複数のコネクタを同じOracle Identity Manager環境でインストールまたは使用することを計画している場合、このエントリの値は、ターゲット・システム用に作成する各コネクタに対して一意である必要があります。また、この値は、参照定義、リソース・オブジェクト、プロセス・フォーム、スケジュール済タスクなど、(メタデータ・ジェネレータの実行後に作成されるコネクタ構成XMLファイルで定義された)すべてのコネクタ・コンポーネントの名前の一部になります。

    たとえば、itResourceNameエントリの値としてGenSCIMTrustedを指定すると、コネクタのデプロイ後に構成参照定義が作成され、その名前はLookup.GenSCIMTrusted.Configurationになります。

  • applicationInstanceName

    これはオプションのエントリで、ターゲット・リソース構成のセクションにのみ存在します。コネクタが生成する必要がある、ターゲット・システムのアプリケーション・インスタンス名を入力します。このエントリがコメント化されている場合、アプリケーション・インスタンス名はITResourceDefNameエントリの値と同じになります。

    デフォルト値: "$itResourceDefName"

  • connectorDir

    これはオプション・エントリです。このエントリは、メタデータ・ジェネレータの実行時に生成されるコネクタ・パッケージが格納されるディレクトリの完全パスです。デフォルトでは、生成されたコネクタ・パッケージが格納されたディレクトリ名は、itResourceDefNameエントリの値と同じです。

    サンプル値: "/scratch/jdoe/OIMPS3/mw4318/idm7854/server/ConnectorDefaultDirectory/GenSCIMTrusted"

  • xmlFile

    これはオプション・エントリです。コネクタ・オブジェクトの定義が含まれるXMLファイルの名前と相対パスを入力します。このエントリの値を指定しない場合、ファイル名が次の形式で生成されます。

    IT_RES_DEF_NAME-ConnectorConfig.xml

    この形式で、IT_RES_DEF_NAMEはitResourceDefNameエントリの値です。

    たとえば、このエントリの値を指定しておらず、GenSCIMがitResourceDefNameエントリの値である場合、生成されるXMLファイルの名前はGenSCIM-ConnectorConfig.xmlです。

    ノート:

    特定のターゲット・システム・インストールのファイルを簡単に特定するには、この生成されたXMLファイルの名前の接頭辞にそのターゲット・システム・インストールのITリソースの名前を使用することをお薦めします。

    サンプル値: GenSCIM-ConnectorConfig.xml

  • configFileName

    これはオプション・エントリです。コネクタ・オブジェクトの構成情報が含まれるXMLファイルの名前と相対パスを入力します。このエントリの値を指定しない場合、ファイル名が次の形式で生成されます。

    IT_RES_DEF_NAME-CI.xml

    この形式で、IT_RES_DEF_NAMEはitResourceDefNameエントリの値です。

    たとえば、このエントリの値を指定しておらず、GenSCIMがitResourceDefNameエントリの値である場合、生成されるXMLファイルの名前はGenSCIM-CI.xmlです。

  • propertiesFile

    これはオプション・エントリです。リソース・バンドル変換が含まれる.propertiesファイルの名前と相対パスを入力します。このエントリの値を指定しない場合、ファイル名が次の形式で生成されます。

    IT_RES_DEF_NAME-generator.properties

    この形式で、IT_RES_DEF_NAMEはitResourceDefNameエントリの値です。

    たとえば、このエントリの値を指定せず、GenSCIMTargetがitResourceDefNameエントリの値である場合、生成されるプロパティ・ファイルの名前はGenSCIMTarget-generator.propertiesです。

  • version

    これはオプション・エントリです。コネクタのリリース番号を入力します。

    サンプル値: 11.1.1.5.0

  • trusted

    これは、必須エントリで、信頼できるソースの構成セクションにのみ存在します。信頼できるソース・モードで実行されるようにコネクタを構成する場合、このエントリの値をtrueに設定します。

  • bundleJar

    これは必須エントリです。メタデータ・ジェネレータが使用するICFバンドルを含むJARファイルの名前と相対パスを入力します。

    デフォルト値: ../lib/org.identityconnectors.genericSCIM-1.0.11150.jar

    このエントリの値を変更しないでください。

  • config

    これは、コネクタ構成に関する情報を指定する必須エントリです。このコネクタ構成には、コネクタの動作とターゲット・システムへの接続方法に関する情報が含まれます。

    表2-1に、Configエントリのプロパティのリストと説明を示します。

    ノート:

    • デフォルトでは、configエントリにはschemaFileプロパティのみが含まれます。ターゲット・システムと使用する認証メカニズムに応じて、この表で説明するプロパティのすべてまたは一部を追加できます。groovyファイルに追加するすべてのconfigエントリのプロパティは、ITリソース・パラメータとして表示されます。groovyファイルにプロパティを追加し、それらの値をアイデンティティ・システム管理のITリソースの管理ページから指定することをお薦めします。ターゲット・システムとその認証メカニズムに固有のプロパティの詳細は、ターゲット・システムのITリソースの構成を参照してください。

    • このドキュメントでは、オブジェクト・クラスの属性のうち、ベース・オブジェクト・クラスの同じエンドポイントではなく、個別のRESTエンドポイントを通じてのみ管理できるオブジェクト・クラスの属性を、特殊属性と呼びます。

    表2-1 Configエントリのプロパティ

    プロパティ 説明

    schemaFile

    使用するスキーマ・ファイルの名前と相対パスを入力します。作成したスキーマ・ファイルの詳細は、スキーマの定義を参照してください。

    ノート: これはオプションの属性です。

    host ターゲット・システムのホストであるコンピュータのホスト名またはIPアドレス。

    port

    ターゲット・システムがリスニングしているポート番号

    baseURI

    ベースURIは、SCIMターゲット・システムのベース相対URLを意味します。

    たとえば、次のようなURLがあるとします。
    http://host:port/hcmCoreSetupApi/scim/Users 
    この場合、baseURIは次のようになります。
    /hcmCoreSetupApi/scim

    nameAttributes

    コネクタが扱う各オブジェクト・クラスの_NAME_コネクタ属性と対応するターゲット・システム属性間のマッピングを指定します。

    形式: OBJ_CLASS.ATTR_NAME

    ノート: このパラメータのすべての値はカンマ区切りにする必要があります。

    uidAttributes

    コネクタが扱う各オブジェクト・クラスの_UID_ (GUID)コネクタ属性とターゲット属性間のマッピングを入力します。

    形式: OBJ_CLASS.ATTR_NAME

    ノート: このパラメータのすべての値はカンマ区切りにする必要があります。

    statusAttributes

    このコネクタが扱う各オブジェクト・クラスの_ENABLE_コネクタ属性と、ステータスを保持するターゲット属性間のマッピングを入力します。

    形式: OBJ_CLASS.ATTR_NAME

    ノート: このパラメータのすべての値はカンマ区切りにする必要があります。

    grantType

    ターゲット・システムによって使用される認証付与を指定します。このプロパティでサポートされる付与タイプと可能な値を次に示します。

    – HTTP基本認証 — basic

    —OAuth2.0 JWT — jwt

    – OAuth 2.0クライアント資格証明 — client_credentials

    – OAuth 2.0リソース所有者のパスワード — password

    – 認証用に独自のカスタム実装を作成した場合の値はcustom

    contentType

    このエントリは、ヘッダーの、ターゲット・システムが予期するコンテンツ・タイプを含みます。コンテンツ・タイプはapplication/jsonにできます。

    acceptType

    このエントリは、ターゲット・システムがヘッダーに求める受入タイプを保持します。受入タイプはapplication/jsonにできます。

    jsonResourcesTag

    リコンシリエーション時に単一のレスポンス・ペイロードで複数のエントリを解析するために使用されるjsonタグ値を指定します。

    scimVersion

    このエントリは、ターゲット・システムのSCIMバージョンを保持します。この属性の有効な範囲は、1から19です。

    attrToOClassMapping

    このエントリは、あるオブジェクト・クラスの属性を別のオブジェクト・クラスにマップするために使用されます。

    たとえば、__ACCOUNT__オブジェクト・クラスのgroups属性が__GROUP__オブジェクト・クラスにマップされている場合は、__ACCOUNT__.groups=__GROUP__と入力します。

    サンプル値: __ACCOUNT__.groups=__GROUP__

  • lookupAttributeList

    これはオプションのエントリで、ターゲット・リソース構成のセクションにのみ存在します。参照フィールドとして扱う必要のある、ターゲット・システム内の属性のリストを入力します。

    コネクタは、このエントリで指定された各属性に対して参照フィールドを作成し、Oracle Identity Managerユーザー・プロセス・フォームの対応する参照フィールドに関連付けます。

    単一値フィールドまたは複数値フィールドの参照フィールドを作成する場合、次の形式で値を入力します。

    ['FIELD_NAME']

    この形式で、FIELD_NAMEを単一値または複数値フィールドの名前に置き換えます。

    埋め込まれている複数値フィールドの参照フィールドを作成する場合、次の形式で値を入力します。

    ['OBJ_CLASS.SUB_FIELD_NAME']

    この形式で、次の処理を行います。

    • OBJ_CLASSを、スキーマ・ファイルの指定に従って子フォームのEmbeddedObjectClass名に置き換えます。

    • SUB_FIELD_NAMEを、スキーマ・ファイルの指定に従って子フォームのサブフィールド名に置き換えます。

    このエントリのサンプル値は、次のとおりです。

    ['_ACCOUNT_.groups.value']

    環境の要件に応じてこのデフォルト値を変更できます。

    lookupAttributeListエントリにリストされている属性ごとに、コネクタは次の形式で参照定義およびスケジュール済ジョブを作成します。

    • 参照定義の形式:

      Lookup.${IT_RES_NAME}.${FIELD_NAME}

      この参照定義には、ターゲット・システムからリコンサイルされた参照値が保持されます。

    • スケジュール済ジョブ形式:

      IT_RES_NAME Target FIELD_NAME Lookup Reconciliation

      このスケジュール済ジョブは、ターゲット・システムから参照値をロードするまたはリコンサイルする目的で使用されます。参照リコンシリエーション用のスケジュール済ジョブの属性の詳細は、参照フィールド同期のスケジュール済ジョブを参照してください。

    両方の形式で、コネクタは次を置き換えます。

    • IT_RES_NAMEをitResourceDefNameエントリの値へ。

    • FIELD_NAMEを参照フィールドを作成するフィールドの名前へ。

  • entitlementAttributeList

    これもオプションのエントリで、ターゲット・リソース構成のセクションにのみ存在します。権限としてタグ付けする必要のある、ターゲット・システム内の完全修飾された属性のリストを入力します。

    コネクタはこのエントリに指定された各属性の参照フィールドを作成し、参照フィールドをプロセス・フォームに割り当て、権限のすべての必須プロパティを追加します。

    複数値フィールドの権限をタグ付けする場合、次の形式で値を入力します。

    ["MULTIVALUED_FIELD_NAME"]

    埋め込まれている複数値フィールドの権限をタグ付けする場合、次の形式で値を入力します。

    ["OBJ_CLASS.SUB_FIELD_NAME"]

    この形式で、次の処理を行います。

    • OBJ_CLASSを、スキーマ・ファイルの指定に従って子フォームのEmbeddedObjectClass名に置き換えます。

    • SUB_FIELD_NAMEを、スキーマ・ファイルの指定に従って子フォームのサブフィールド名に置き換えます。

    サンプル値: ["__ACCOUNT__.groups~__ACCOUNT__.groups~value"]

    スキーマに基づいてデフォルト値を変更できます。

    この値で、groups.valueは埋め込まれたオブジェクト・クラス・フィールドで、valueは複数値フィールドです。

  • dateAttributeList

    これはオプション・エントリです。プロセス・フォームで日付として処理する必要がある属性のリストを入力します。ここにリストされている属性のデータ型がスキーマ・ファイルでLongに設定されていることを確認してください。

    コネクタは、このエントリで指定された各属性の日付エディタを作成します。

    日付として単一値または複数値フィールドを処理する場合、次の形式で値を入力します。

    ["FIELD_NAME"]

    この形式で、FIELD_NAMEを単一値または複数値フィールドの名前に置き換えます。

    日付として埋め込まれた複数値フィールドを処理する場合、次の形式で値を入力します。

    ["OBJ_CLASS.SUB_FIELD_NAME"]

    この形式で、次の処理を行います。

    • OBJ_CLASSを、スキーマ・ファイルの指定に従って子フォームのEmbeddedObjectClass名に置き換えます。

    • SUB_FIELD_NAMEを、スキーマ・ファイルの指定に従って子フォームのサブフィールド名に置き換えます。

    サンプル値: ["JoiningDate","Roles.fromdate","Roles.todate"]

    この値で、Roles.fromdateおよびRoles.todateは埋め込まれた複数値フィールドです。

  • objectClassAlias

    __ACCOUNT__および_GROUP_以外のオブジェクト・クラスに対してメタデータを生成する場合は、オブジェクト・クラスの別名を入力します。

  • alias

    これは必須エントリです。メタデータ・ジェネレータは別名を使用して、ターゲット・システム属性とOracle Identity Managerのリソース・オブジェクトのフィールド名の間の関係を作成します。また、メタデータ・ジェネレータは、Oracle Identity Managerのフォーム名およびフォーム・フィールド名に対する文字の長さの制限を満たすように長いデータベース名を短くするため、別名を使用します。別名は、列名、フォーム名およびフォーム・フィールド名のレベルで使用できます。ターゲット・システム属性はコネクタ属性として表されることに注意してください。

    構成のタイプに応じて、次のセクションのいずれかの値を指定します。

    • 信頼できるソース構成の場合

      信頼できるソース構成セクションで、別名エントリを使用してコネクタ属性またはターゲット・システム属性を、Oracle Identity Managerユーザー・フォーム・フィールド名にマップします。ここで指定したマッピングを使用して、信頼できるソースのリコンシリエーション用のリコンシリエーション属性マップ参照定義のエントリが移入されます。

      一部のOracle Identity Managerユーザー・フォーム・フィールド名が内部的に同じ表示名を持たないことに注意してください。そのようなフィールドの場合、コネクタ属性またはターゲット・システム属性が表示名ではなく内部名にマップされていることを確認する必要があります。次の表に、Oracle Identity Managerユーザー・フォーム表示名と対応する内部名を示します。

      表2-2に、Aliasエントリのプロパティのリストと説明を示します。

      表2-2 Alias

      表示名 内部名

      Organization

      Organization Name

      Manager

      Manager Login

      E-mail

      Email

      別名エントリのデフォルト値は次のとおりです。

      ['__NAME__':'User Login', 'LastName':'Last Name','Organization':'Organization Name', 'Employee Type':'Xellerate Type', 'Role':'Role']

      デフォルト値で、Organizationコネクタ属性が内部名であるOrganization Nameにマップされていることに注意してください。

      サンプル値の既存のマッピングは削除できません。ただし、これらのマッピングを変更できません。

      別名エントリにすでに存在するフィールド以外のフィールドのマッピングを追加する場合、別名エントリの既存の値に追加するか、別名+エントリに追加できます。

      別名+エントリのデフォルト値は次のとおりです。

      ['__ENABLE__':'Status', 'FirstName':'First Name', 'email':'Email', 'JoiningDate':'Start Date]

      別名エントリおよび別名+エントリに値を指定する際には、次の書式を使用する必要があります。

      ['CONN_ATTR1': 'OIM_FIELD1', 'CONN_ATTR2': 'OIM_FIELD2', . . .'CONN_ATTRn': 'OIM_FIELDn']

      この形式の詳細は次のとおりです。

      • CONN_ATTRは、コネクタ属性名です。

      • OIM_FIELDは、Oracle Identity Managerユーザー・フォームのフィールドの名前です。

    • ターゲット・リソース構成の場合

      ターゲット・リソース構成セクションで、次の1つまたはすべての目的で別名エントリを使用します。

      • コネクタ属性またはターゲット・システム属性とプロセス・フォームのフィールド名をマップする。ここで指定するマッピングを使用して、ターゲット・リソースのリコンシリエーション用のリコンシリエーション属性マップおよびプロビジョニング属性マップ参照定義のエントリを移入します。

      • itResourceNameエントリに指定したITリソース名に別名(一意の短縮名)を設定する。

      • 長いプロセス・フォーム・フィールド名の短縮名を指定するため。

        プロセス・フォーム名の文字数が11文字よりも多い場合、メタデータ・ジェネレータは自動的にプロセス・フォーム名を10文字までに切り捨て、末尾を数字0にします。以降、切捨て後の同じ名前のプロセス・フォームごとに、接尾辞が1ずつ増えます。メタデータ・ジェネレータは、自動ナンバリングを使用して2つのプロセス・フォームが同じ名前にならないようにします。自動生成のフォーム名を制御して意味のあるフォーム名を使用するため、別名を使用して短縮したプロセス・フォーム名を指定できます。

        次に、この例を示します。

        リソース名がGENDBでスキーマのUSER_ROLESとして表される子データが含まれていることを前提とします。

        メタデータ・ジェネレータを実行すると、プロセス・フォームが作成され、そのフォーム名はUD_GENDB_USER_ROLESです。このプロセス・フォーム名の文字数が11文字よりも多いため、メタデータ・ジェネレータによって自動的にUD_GENDB_U0に切り捨てられます。切り捨てられたフォーム名UD_GENDB_U0は、意味のある名前ではありません。

        自動生成された名前のこのような問題またはフォームを回避するには、別名エントリを使用して短縮したおよび意味のあるプロセス・フォーム名を指定できます。

        ターゲット・リソース構成セクションの別名エントリのデフォルト値は次のとおりです。

        [‘__UID__':'userId', '__NAME__':'userName']

        必須であるため、デフォルト値の既存のマッピングは削除できません。ただし、スキーマ・ファイルのUidAttributeおよびNameAttribute修飾子の値と一致するようにデフォルト値を変更する必要があります。たとえば、スキーマ・ファイルで、UidAttributeおよびNameAttribute修飾子の値をUIDおよびprimaryEmailにそれぞれ設定した場合、別名エントリの値を次のように設定する必要があります。

        ['__UID__':'UID', '__NAME__':primaryEmail]

        別名エントリにすでに存在するフィールド以外のフィールドのマッピングを追加する場合(つまり、オプションの別名)、別名エントリの既存の値に追加するか、別名+エントリに追加できます。

        ターゲット・リソースセクションの別名+エントリのデフォルト値は次のとおりです。

        ['Generic Scim Target':'GST', 'comments':'Description', 'Family Name':'Last Name', 'Visibility':'Status']

        別名エントリおよび別名+エントリに値を指定する際には、次の書式を使用する必要があります。

        ['CONN_ATTR1': 'ALIAS_FIELD1', 'CONN_ATTR2': 'ALIAS_FIELD2', . . .'CONN_ATTRn': 'ALIAS_FIELDn']

        この形式の詳細は次のとおりです。

        • CONN_ATTRは、コネクタ属性名です。

        • ALIAS_FIELDは、コネクタ属性またはターゲット・システム属性に対応する別名です。

  • 事前移入

    これは、ターゲット・リソース構成のセクションにのみ存在するオプションのエントリです。エンタープライズ・ターゲット・システム・リソースのプロビジョニング中に、Oracle Identity ManagerによってOracle Identity Managerユーザー・フィールドからコネクタのプロセス・フォーム・フィールドに事前移入する場合、このエントリに値を指定します。

    このエントリのサンプル値は次のとおりです。

    ['__NAME__':'User Login', 'FIRST_NAME':'First Name', 'LAST_NAME':'Last Name', '__PASSWORD__':'Password']

    これは、デフォルトでgroovyファイルが次のフィールドを移入するように構成されていることを示します。

    • User Login

    • First Name

    • Last Name

    • Password

    前述のリストにフィールドを追加またはリストから削除できます。事前移入エントリに値を指定する際には、次の書式を使用する必要があります。

    ['CONN_ATTR1またはTARGET_ATTR1': 'OIM_FIELD1', 'CONN_ATTR2またはTARGET_ATTR2': 'OIM_FIELD2', . . .'CONN_ATTRnまたはTARGET_ATTRn': 'OIM_FIELDn']

    この形式の詳細は次のとおりです。

    • CONN_ATTRは、コネクタ属性名です。

    • TARGET_ATTRはターゲット・システム属性の名前です。

    • OIM_FIELDは、Oracle Identity Managerユーザー・フォームのフィールドの名前です。

    事前移入アダプタのアタッチおよび削除の詳細は、Oracle Fusion Middleware Oracle Identity Managerのためのアプリケーションの開発とカスタマイズの事前移入アダプタの使用を参照してください。

2.2.3 Groovyファイルの更新

Oracle Identity Mangerでは、既存のGroovyファイルを編集または構成するオプションが使用できます。テキスト・エディタを使用して、要求ごとにGroovyファイルを構成できます。

GenericScimConfiguration.groovyファイルを構成するには、次のようにします。
  1. Oracle Technology Networkからコネクタ・インストールZIPファイルをダウンロードします。
  2. コネクタ・インストールZIPの内容を、Oracle Identity Managerをホストしているコンピュータ上の任意のディレクトリに抽出します。これにより、genericSCIM-RELEASE_NUMBERというディレクトリが作成されます。コネクタ・インストールZIPのすべてのファイルおよびディレクトリの詳細は、Generic SCIMコネクタのファイルおよびディレクトリを参照してください。
  3. テキスト・エディタで、genericSCIM-RELEASE_NUMBER/metadata-generator/resourcesディレクトリにあるGenericScimConfiguration.groovyファイルを開きます。
  4. 次の事前定義されたセクションのいずれかのエントリの値を指定します。
    • trusted - 信頼できるソース・モード用にコネクタを構成する場合

    • target - ターゲット・リソース・モード用にコネクタを構成する場合

  5. GenericScimConfiguration.groovyファイルを保存して閉じます。

2.3 Generic SCIMコネクタの生成

メタデータ・ジェネレータを実行して、ターゲット・システムのコネクタ・パッケージZIPを生成します。

GenericScimConfiguration.groovyファイルを構成したら、メタデータ・ジェネレータを実行してターゲット・システム・スキーマに基づいてコネクタ・パッケージを生成する必要があります。

メタデータ・ジェネレータは、genericscim-RELEASE_NUMBER/metadata-generator/binディレクトリにあるGenericSCIMGenerator.cmdまたはGenericSCIMGenerator.shファイルです。

メタデータ・ジェネレータを実行するには、コマンド・ウィンドウで、genericscim-RELEASE_NUMBER/metadata-generator/binディレクトリに移動し(genericscim-11.1.1.5.0/binなど)、使用しているオペレーティング・システムに応じて次のコマンドのいずれかを実行します。

  • Microsoft Windowsの場合

    GenericSCIMGenerator.cmd CONFIG_FILE CONFIG_NAME

  • UNIXの場合

    GenericSCIMGenerator.sh CONFIG_FILE CONFIG_NAME

このコマンドの次の部分を置き換えます。

  • CONFIG_FILEは、GenericScimConfiguration.groovyファイルの絶対または相対パス名に置き換えます。

  • CONFIG_NAMEは、ターゲット・システムに使用されている、GenericScimConfiguration.groovyファイル内の構成の名前に置き換えます。このファイル内の事前定義された構成は、trustedおよびtargetです。実際の要件に応じて、異なる名前を持つ追加のカスタム構成を作成できます。

    サンプル・コマンド: GenericSCIMGenerator.cmd ..\resources\GenericScimConfiguration.groovy target

    このコマンドで、targetは、値が指定されているGenericScimConfiguration.groovyファイルのセクション名を示します。つまり、このコネクタは、ターゲット・リソース・モード向けに構成されています。メタデータ・ジェネレータの実行中にエラーが発生した場合は、それを修正してからメタデータ・ジェネレータの実行を再開する必要があります。

2.3.1 Generic SCIMコネクタ用に生成されたコネクタ・パッケージの理解

コネクタ・パッケージは、GenericSCIM-RELEASE_NUMBER/metadata-generator/ディレクトリに生成されるZIPファイルです。たとえば、GenericScimConfiguration.groovyファイルにitResourceDefNameエントリの値としてGenSCIMと指定した場合、コネクタ・パッケージのZIP (GenSCIM.zip)ファイルがGenericSCIM-11.1.1.5.0/metadata-generator/ディレクトリに生成されます。

コネクタ・パッケージのディレクトリ構造は、次のとおりです。

CONNECTOR_PACKAGE/
         configuration/
                  IT_RES_DEF-CI.xml
         resources/
                  genericscim-generator.properties
         xml/
                 IT_RES_DEF-ConnectorConfig.xml

このディレクトリ構造の意味は次のとおりです。

  • CONNECTOR_PACKAGEは、GenericScimConfiguration.groovyファイルのitResourceDefNameエントリの値として指定されたITリソース定義の名前で置き換えられます。

  • IT_RES_DEFは、GenericScimConfiguration.groovyファイルのitResourceDefNameエントリの値として指定されたITリソース定義の名前で置き換えられます。

コネクタ構成XMLファイルが生成されると、動作が次のようになります。

ターゲット・システムのフィールド(列)の長さはプロセス・フォームにフェッチされません。そのため、「一意のID」フィールドと「パスワード」フィールドを除き、プロセス・フォームにおける(文字列データ型の)他のすべてのデータ・フィールドの長さは、常に255文字に設定されます。「一意のID」フィールドと「パスワード」フィールドの長さは、40文字に設定されます。