ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Identity Managerシステム管理者ガイド
11g リリース1 (11.1.1)
B62264-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

13 ユーザー属性の構成

Oracle Identity Managerのユーザー管理機能は、構成管理機能を使用して構成およびカスタマイズされます。構成管理により、「ユーザー管理」UIをカスタマイズしたり、ユーザー・エンティティの操作および属性を構成することができます。

Oracle Identity Managerには、各エンティティのライフサイクル管理を行う特定の操作があります。ユーザー・エンティティの基本操作には、次のものがあります。


関連項目:

ユーザー・エンティティ関連の操作の詳細は、Oracle Fusion Middleware Oracle Identity Managerユーザーズ・ガイドのユーザーの管理に関する項を参照してください。

Oracle Identity Administrationでは、エンティティで実行される操作に基づいて、属性セットがユーザーに示されます。たとえば、拡張検索を使用してユーザーを検索する場合は、検索を実行するための検索可能なユーザー属性セットが表示されます。検索操作が完了すると、属性セットを含む検索結果が表示されます。これらの属性セットは、構成管理機能を使用して管理されます。

ユーザー・エンティティのデータ構造を定義し、ユーザー管理操作および属性を構成するには、Oracle Identity Administrationの「構成管理」UIを使用します。このUIで属性を構成できるかどうかは、認可ポリシーで管理される権限によって異なります。ユーザー管理およびセルフ・サービス操作についての認可ポリシーの詳細は、Oracle Fusion Middleware Oracle Identity Managerユーザーズ・ガイドのユーザー管理および認証されたセルフ・サービスに関する項を参照してください。

この章ではユーザー構成管理について説明します。次の項で構成されています。

13.1 エンティティ構成操作

エンティティ構成操作により、ユーザー・エンティティの属性セットを定義できます。また、属性定義を追加して既存の定義を変更することも可能です。デフォルトで定義されている属性に加えて、ユーザー・エンティティに独自の属性を定義できます。


注意:

拡張管理の構成管理セクションにアクセスするには、ユーザー属性を構成する権限を持つ必要があります。詳細は、Oracle Fusion Middleware Oracle Identity Managerユーザーズ・ガイドのユーザー管理構成に関する項を参照してください。

エンティティ構成操作には次のものがあります。

13.1.1 エンティティ属性のリスト表示

構成管理コンソールでエンティティ属性をリストするには:

  1. Oracle Identity Manager拡張管理にログインします。

  2. 「ようこそ」ページの「構成」にある「ユーザー構成」をクリックします。あるいは、「構成」タブ、「ユーザー構成」タブの順にクリックします。

  3. コンソールの左ペインで、「アクション」メニューから「ユーザー属性」を選択します。「ユーザー属性」ページに、User.xml構成ファイルで定義されているすべてのユーザー属性を含む表が表示されます。

    表13-1に、「ユーザー属性」表の列とその説明を示します。

    表13-1 「ユーザー属性」表の列

    説明

    カテゴリ名

    属性が属するカテゴリ。カテゴリ分けは、ユーザー管理コンソールでデータを編成するために使用されます。

    注意: 各カテゴリの詳細は、「カテゴリ構成の実行」を参照してください。

    属性名

    属性の一意名。この名前は、「ユーザー・プロファイル」ページにこの属性を表示する場合のキャプションとしても使用されます。

    カテゴリの順序

    カテゴリ内での属性の順序。属性はこの順序に基づいてユーザー管理コンソールに表示されます。

    属性タイプ

    属性タイプがシステムとユーザー定義フィールド(UDF)のどちらであるかを指定します。システム属性は削除できず、変更時に制限があります。

    バックエンド・データ型

    バックエンド・データストアにある属性のデータ型。

    表示タイプ

    ユーザー管理コンソールでの属性の表示タイプ。


    「ユーザー属性」表の行を選択して、属性の作成や変更などのエンティティ構成操作を実行できます。これについては、後述の項で説明します。


    注意:

    Oracle Identity Manager Administrationの構成管理セクションには管理者ユーザーでもアクセスできません。アクセスするにはユーザー属性を構成するための権限が必要です。

  4. 「カテゴリ名」列で、カテゴリ名の左にあるアイコンをクリックしてカテゴリ名を展開します。そのカテゴリに属する属性が属性名列にリストされます。

13.1.2 エンティティ属性の作成

エンティティに対して新しい属性を作成するには:

  1. 「ユーザー属性」ページで、「アクション」メニューから「属性の作成」を作成します。「属性の作成」ウィザードが表示されます。

  2. ウィザードの属性の詳細の設定ページで、フィールドに値を入力します。表13-2に、属性の詳細の設定ページのフィールドを示します。

    表13-2 属性の詳細の設定ページのフィールド

    フィールド LOVタイプ 説明

    属性名


    属性の一意名。この名前は、「ユーザー・プロファイル」ページにこの属性を表示する場合のキャプションとしても使用されます。

    バックエンド属性名


    ユーザー・バックエンド・スキーマで作成されるフィールドの名前で、ユーザーの作成または修正時にこの属性に指定された値を保存するために使用されます。Oracle Identity Managerは、「バックエンド属性名」に接頭辞USR_UDFを自動的に付加します。

    カテゴリ名


    属性が属するカテゴリ名。カテゴリ分けはUIでデータを編成するために使用されます。

    注意: カテゴリ構成の詳細は、「カテゴリ構成の実行」を参照してください。

    表示タイプ


    UIでの属性の表示タイプを示します。これは属性プロパティで、メタデータに付加してUser.xmlファイルに格納されます。使用可能な表示タイプは次のとおりです。

    • 文字列

    • 整数

    • テキスト領域

    • チェック・ボックス

    • ダブル

    • 日付

    • 機密

    • 値リスト

    「表示タイプ」を選択すると、適切なバックエンドおよびフロントエンドのデータ型が設定されます。

    バックエンド・データ型は、バックエンド・データストア内の属性データ型です。これはUser.xmlファイルに属性定義とともに格納されます。

    フロントエンド・データ型は、Oracle Identity Managerによって解釈される属性データ型を示します。これはUser.xmlファイルに属性定義とともに格納されます。これはUIには表示されません。

    関連項目: 各属性に対して構成されるプロパティの詳細は、「属性プロパティ」の項を参照してください。

    LOVタイプ


    このフィールドはデフォルトでは非表示です。表示タイプに「値リスト」が選択されると、LOV関連のフィールドが表示されます。「LOVタイプ」は 、「システム生成」、「管理者構成」および「問合せ別」から選択できます。


    システム生成

    既存のLOVを指定できます。たとえば次のようにします。

    1. 「LOVタイプ」として「システム生成」を選択します。

    2. 「LOV検索オプション」には、デフォルトでは「次を含む」演算子が指定されています。「LOVコード」フィールドにcountryを入力し、「検索」をクリックします。検索基準に一致する使用可能なLOVコードのリストが、使用可能なLOVコード・リストに表示されます。

    3. Lookup.Locations.Countryを選択し、右矢印をクリックして選択済LOVコード・リストに移動させます。1つのLOVコードのみ、このリストに移動させてください。「次へ」をクリックし、この項の説明に従ってウィザードの残りの手順を完了します。

    属性を保存すると、ユーザー詳細ページに国コードを含むドロップダウン・リストが表示されます。


    管理者構成

    このLOVはユーザーが追加できます。たとえば、次のようにします。

    1. 「LOVタイプ」として「管理者構成」を選択します。

    2. 「LOVコード」フィールドにlevelと入力します。LOVコードには、複数のLOVオプションと対応するLOVの説明を追加できます。

    3. 「LOVオプション」フィールドにL1と入力し、「LOVオプションの説明」フィールドにExecutiveと入力します。「追加」をクリックします。LOVオプションと説明が追加され、ページに表示されます。

    4. 別の値を追加するには、「LOVオプション」フィールドにL2と入力し、「LOVオプションの説明」フィールドにSenior Executiveと入力します。「追加」をクリックします。

    5. 複数の値を追加後、「次へ」をクリックし、この項の説明に従ってウィザードの残りの手順を完了します。

    属性を保存後、ユーザー詳細ページに「LOVオプションの説明」フィールドで指定した値を含むドロップダウン・リストが表示されます。


    問合せ別

    「LOVコード」および「LOVオプション」フィールドは表示されません。そのかわりに、次のフィールドが表示されます。

    - LOV問合せ: このフィールドで、Oracle Identity Managerデータベース・スキーマで有効な任意のSQL問合せを指定できます。

    - 表示するLOV列: これはselect問合せからのすべての列を示すリストです。ユーザー・エンティティを作成または変更するページで検索アイコンをクリックしたときに、ここで選択された列値を表示できます。たとえば、マネージャ・キーのかわりにマネージャ名を表示することもできます。

    - 保存するLOV列: これはselect問合せからのすべての列を示すリストです。ユーザーがユーザー・エンティティを作成または変更するページに表示されるドロップダウンで選択を行ったときに、ここで選択された列値がバックエンド・ストアに保存されます。たとえば、マネージャ名を表示して、保存するのはマネージャ・キーの値にすることも可能です。

    注意: 値のリストはすでにデータベース内のLKU表およびLKV表に定義されています。管理者指定の場合、ユーザーがLOVコードを指定する必要があります。これはLKU表に格納されます。各コードには値のリストが関連付けられています。ユーザーはここで新しい値を追加する必要があります。これらの値はLKV表に格納され、この属性のLOV値として使用されます。生成されたシステムに対して、ユーザーはLOVコードを検索して、コードを選択できます。このコードに対する値はLKV表にすでに存在し、この属性のLOV値として使用されます。

    次に「問合せ別」LOVタイプの設定例を示します。

    1. 「LOVタイプ」として「問合せ別」を選択します。

    2. 「LOV問合せ」フィールドにSELECT USR_FIRST_NAME as FirstName , USR_LOGIN as UserLogin FROM USR WHERE USR_STATUS = 'Active'と入力します。

    3. 「表示するLOV列」リストで、FIRSTNAMEを選択します。

    4. 「保存するLOV列」リストで、USERLOGINを選択して「次へ」をクリックし、この項の説明に従ってウィザードの残りの手順を完了します。

    属性の保存後、ユーザー詳細ページにこの属性に対する検索アイコンが表示されます。ユーザーは属性の値を検索して選択できます。FIRSTNAMEがユーザー詳細ページに表示され、USERLOGINはバックエンド・ストアに保存されます。

    LOVコード


    これはLOVを識別するコードです。システム生成されたLOVでは、この値は既存のLOVコードにする必要があります。

    注意: 「LOVコード」、「LOVオプション」および 「LOVオプションの説明」フィールドは、「表示タイプ」として「値リスト」が選択されている場合のみ表示されます。他の表示タイプでは、これらのフィールドは表示されません。

    LOVオプション


    これは「LOVタイプ」が管理者構成の場合にのみ表示されます。ユーザーはここにLOV値を指定する必要があります。

    LOVオプションの説明


    LOVオプションの説明です。



    注意:

    値のリストから値を削除することはできません。

  3. 「次へ」をクリックします。属性のプロパティの設定ページが表示されます。

  4. 属性プロパティの値を入力します。表13-3に、プロパティの設定ページのフィールドを示します。

    表13-3 プロパティの設定ページのフィールド

    フィールド 説明

    読取り専用値

    属性が読取り専用かどうかを定義します。

    暗号化

    属性値を暗号化形式とクリア形式のどちらで保存するかを定義します。

    表示可能

    属性をUIに表示するかどうかを定義します。

    属性のサイズ

    属性値に設定可能な最大サイズです。

    検索可能

    属性値が検索可能かどうかを定義します。

    バルク更新可能

    属性を変更して複数のユーザーを同時に変更できるかどうかを定義します。

    デフォルト値

    ユーザー詳細に表示される属性のデフォルト値です。


  5. 「次へ」をクリックします。「属性の作成」ウィザードの「確認」ページに、属性を作成するために入力した情報が表示されます。

  6. 属性情報を確認し、「保存」をクリックします。MDSスキーマ(User.xml)とDBスキーマが新しい属性で更新されます。追加された新しい属性は、プロパティ・セットに基づいて「ユーザー管理」セクションに表示されます。ユーザー管理の認可ポリシーの詳細は、Oracle Fusion Middleware Oracle Identity Managerユーザーズ・ガイドのユーザー管理に関する項を参照してください。


    注意:

    • 「ユーザー・プロファイル」で表示または変更できる属性を新規作成するには、適切な認可ポリシーを作成する必要があります。認可ポリシーの詳細は、Oracle Fusion Middleware Oracle Identity Managerユーザーズ・ガイドの認可ポリシーの管理に関する項を参照してください。

    • LDAPでのこれらのフィールドの使用方法については、「Oracle Identity ManagerとLDAP間のユーザー定義フィールドの同期」を参照してください。

    • リクエスト・データセットの詳細は、Oracle Fusion Middleware Oracle Identity Manager開発者ガイドのステップ1: リソース用のリクエスト・データセットの作成を参照してください。


13.1.2.1 属性プロパティ

属性に対して、次のプロパティを構成する必要があります。

  • 必須: リポジトリ内のすべてのユーザーがこの属性に対してnullでない値を持つ必要があるかどうかを定義します。事前定義済ユーザーの場合は、必須属性に値が設定されています。ユーザーを作成する場合は、必須属性に値を指定する必要があります。すべての既存ユーザーでその属性に値が設定されていなければ、属性を必須に変更することはできません。

  • 読取り専用: 属性を読取り専用にします。つまり、認可ポリシーに関係なく属性を変更できなくなります。UIの一部の属性は、必ず読取り専用にする必要があります。このような属性として、システム制御される属性があります。またカスタム属性が含まれる場合もあります。

  • システム制御: 値をOracle Identity Managerでのみ設定および編集できるようにするかどうかを定義します。

  • 暗号化: 値をリポジトリに可逆暗号化形式とクリア形式のどちらで保存するかを定義します。

  • 検索可能: 値を単純検索および拡張検索で使用できるかどうかを定義します。検索構成を変更して単純検索または拡張検索で使用するように属性を構成する必要があります。検索操作の構成については、「検索操作の構成」を参照してください。

  • バルク更新可能: バルク変更操作時に属性を更新できるかどうかを定義します。

  • サイズ この属性の値に指定できる最大サイズを示します。

  • デフォルト値: 属性のデフォルト値です。ユーザー・エンティティの作成時にこの値が入力されていない場合は、バックエンド・ストアで移入される値になります。


注意:

新しいユーザー定義属性(UDF)を作成する場合は、対応するエンティティをカスタム・リソース・バンドルに追加する必要があります。エンティティのネーミング規則は次のとおりです。

global.udf.BACKEND_UDF_NAME=DESCRIPTION_DISPLAYED_ON_THE_UI

例: global.udf.USR_UDF_ATT=Attestation

エンティティの追加後、JARの更新ユーティリティを使用してリソース・バンドルをMDSにアップロードします。このユーティリティの詳細は、Oracle Fusion Middleware Oracle Identity Manager開発者ガイドのJARの更新ユーティリティに関する項を参照してください。


13.1.3 エンティティ属性の変更

「属性の変更」操作により、ユーザー・エンティティに固有の属性を編集できます。これを行うには、次の手順を実行します。

  1. 「ユーザー属性」表で、属性を選択します。

  2. 「アクション」メニューから、「属性の変更」を選択します。「属性の変更」ページが表示されます。

  3. 「属性の変更」ページで、属性詳細と属性プロパティを編集します。「属性名」および「表示タイプ」フィールドは編集できません。システム管理者であれば、フロントエンド属性名 、「バックエンド属性名」および「バックエンド・データ型」を除くすべてのフィールドを編集できます。

  4. (オプション)「ユーザー・プロファイルのプレビュー」をクリックしてユーザー・プロファイルのプレビューを表示します。

    「ユーザー・プロファイルのプレビュー」機能は、使用可能なすべてのカテゴリと属性を含む仮想ページを表示します。この機能は、プロファイルをデータベースに保存する前に確認するのに役立ちます。ユーザーは、ユーザー権限やその他の制限のために、すべてのカテゴリおよび属性を表示できるわけではないことに注意してください。

  5. 「保存」をクリックして変更を保存します。

デフォルト値を持つ属性の場合は、次の変更のみ実行できます。

  • 属性のデフォルト値の変更

  • 属性の表示プロパティの変更

  • 属性が必須でなくデフォルト値を持つ場合は、その属性は必須に変更できます。属性が必須でなくデフォルト値を持たない場合は、その属性は必須に変更できません。そのため、必須でない属性を必須に変更したいが、その属性がデフォルト値を持たない場合は、まずそれにデフォルト値を追加すると、必須でない属性を必須に変更できるようになります。

13.1.4 エンティティ属性の削除

削除操作により、属性を削除できます。属性を削除するには、次の手順を実行します。

  1. 「ユーザー属性」表で、行を選択します。

  2. 「アクション」メニューから、「属性の削除」を選択します。確認を求めるメッセージ・ボックスが表示されます。

  3. 「OK」をクリックします。属性が削除されることを確認するメッセージが表示されます。

削除操作の実行時には、バックエンドにある実際の属性は削除されません。既存データは影響を受けず、監査ログには継続してデータが表示されます。削除はMDSスキーマ(User.xml)でのみ行われます。


注意:

デフォルト属性は削除できません。削除できるのはユーザー定義属性のみです。

13.1.5 カテゴリ構成の実行

カテゴリ構成によりUIでデータを整理できます。デフォルトでは次のカテゴリが使用可能です。

  • 基本ユーザー情報: これには、姓、名、電子メールおよび組織情報(たとえばマネージャか部門か)などのユーザーの個人情報が含まれます。

  • アカウント設定: これにはユーザーのログインとパスワードの情報が含まれます。

  • アカウントの有効日: ユーザー・アカウントが有効または無効になる日です。

  • プロビジョニング日: ユーザー・アカウントがプロビジョニングまたはプロビジョニング解除される日です。

  • ライフサイクル: ロックまたは手動ロックされるユーザー・アカウント、またはそのアカウントが自動的に削除される日の属性用です。これはUIには表示されません。

  • システム: これには、ユーザーによるログイン試行、ユーザーが作成された日、ユーザー・パスワードが変更できなかった日など、アプリケーションによって内部的に使用される属性が含まれます。これはUIには表示されません。

  • その他のユーザー属性: その他のユーザー属性が含まれます。

  • カスタム属性: これは空のカテゴリです。Oracle Identity Managerリリース9.1.0 UDFからのインポート時には、デプロイメント・マネージャによってここに属性が追加されます。

  • プリファレンス: たとえば、ロケールやタイムゾーンなど、ユーザー・プリファレンスを制御する属性が含まれます。

次のカテゴリ構成操作を実行できます。

13.1.5.1 カテゴリの作成

カテゴリの作成操作により、新しいカテゴリを追加できます。新しいカテゴリを追加するには、次の手順を実行します。

  1. 「ユーザー属性」ページで、「アクション」メニューからカテゴリの追加を追加します。「カテゴリの作成」ダイアログ・ボックスが表示されます。

  2. 「カテゴリ名」フィールドにカテゴリの名前を入力します。

  3. 「保存」をクリックしてカテゴリを作成します。カテゴリが正常に作成されたことを示すメッセージが表示されます。

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

13.1.5.2 カテゴリの名前変更

UIに表示されるカテゴリ名は、リソース・バンドルから取得されます。カテゴリの表示名を変更するには、リソース・バンドルの値を変更する必要があります。

13.1.5.3 カテゴリの削除

削除できるのは空のカテゴリのみです。カテゴリを削除するには、次の手順を実行します。

  1. 「ユーザー属性」ページで、削除する空のカテゴリを選択します。

  2. 「アクション」メニューから、「カテゴリの削除」を選択します。確認を求めるメッセージ・ボックスが表示されます。

  3. 「OK」をクリックします。削除を確認するメッセージが表示されます。

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

13.1.5.4 カテゴリ内での属性の順序付け

カテゴリ内での属性の順序付けを指定できます。属性は「ユーザー管理」セクションにこの順序に基づいて表示されます。

カテゴリ内での属性の順序付けを行うには:

  1. 「ユーザー属性」ページで、順序付けを行う属性を含むカテゴリを選択します。

  2. 「アクション」メニューから「カテゴリ属性の順序付け」を選択します。「カテゴリ属性の順序付け」ダイアログ・ボックスに、選択されたカテゴリ内のすべての属性名が表示されます。

  3. 各属性に対応する数値を編集し、カテゴリ内での属性の順序を指定します。

  4. 「保存」をクリックします。

13.2 検索操作の構成

検索操作は、ユーザーが入力した問合せに基づいたユーザー・エンティティの検索を可能にします。単純検索および拡張検索の検索操作、検索結果表および全表に対する属性を構成できます。

検索可能属性は、この単純検索を実行するときに検索文字列に適用される属性セットを定義します。デフォルトでは、表示名、ユーザー名、名および姓の検索可能属性は、単純検索用に構成されます。デフォルトでは拡張検索に対しても同じものが構成されます。

結果属性は、検索操作によって返される属性セットを定義します。検索結果に表示する列、および単純検索に対して制限された検索結果表に表示するサブセットを定義できます。

単純検索および拡張検索の問合せで使用可能な属性を構成できます。さらに、検索結果表に表示する属性を構成できます。これを行うには、次のようにします。

  1. 左ペインの「ユーザー構成」セクションで、「アクション」メニューから「検索構成」を選択します。図13-1に示すように、「ユーザー検索構成」ページが表示されます。

    図13-1 検索構成フォーム

    図13-1の説明が続きます
    「図13-1 検索構成フォーム」の説明

  2. 「単純検索: 属性の検索」セクションで、単純検索で使用可能にする属性を選択します。移動またはすべて移動アイコンをクリックし、単純検索用の属性を追加します。削除またはすべて削除アイコンをクリックして、属性を検索から削除することもできます。

  3. 拡張検索: 属性の検索セクションで、拡張検索で使用可能にする属性を選択します。移動またはすべて移動アイコンをクリックして、拡張検索用の属性を追加します。

  4. 「検索結果表構成」セクションで、検索結果表に表示する属性を選択します。移動またはすべて移動アイコンをクリックして、検索結果表用の属性を追加します。

  5. 「保存」をクリックします。


注意:

  • 修正および作成操作は、このレベルでは構成できません。次の例外を除き、「ユーザー管理」UIにはすべての属性が編集可能として表示されます。

    Attributes with property Visible=No
    Attributes with property System Controlled=Yes"
    
  • 表示可能で、プロパティSystem Controlled=Yesを持つ属性は、読取り専用として表示されます。

  • UIに表示される属性の最終リストは、構成される認可ポリシーよって異なります。

  • ユーザー定義フィールドは、単純検索の「使用可能な属性」リストには表示されません。


13.3 ユーザー構成管理の認証

ユーザー構成管理の認証は、デフォルトの認可ポリシーによって管理されます。カスタム認可ポリシーは、この機能には作成できません。


関連項目:

ユーザー構成管理のデフォルトの認可ポリシーの詳細は、Oracle Fusion Middleware Oracle Identity Managerユーザーズ・ガイドのユーザー管理構成に関する項を参照してください。

システム管理者ロールのメンバーであるユーザーは、すべてのユーザー構成操作を実行する権限があります。操作はこの機能のデフォルト認可ポリシーに設定された権限によって定義されます。表13-4に権限をリストします。

表13-4 認可権限

権限 説明

属性の作成

ユーザーがUIで属性を追加できるかどうかを定義します。この権限は、APIレベルでユーザーが属性を追加できるかどうかを決定するためにも使用されます。

属性の更新

ユーザーがUIですべての属性を更新できるかどうかを定義します。この権限は、APIレベルでユーザーが属性を更新できるかどうかを決定するためにも使用されます。

属性の削除

ユーザーがUIで属性を削除できるかどうかを定義します。この権限は、APIレベルでユーザーが属性を削除できるかどうかを決定するためにも使用されます。

カテゴリの追加

ユーザーがUIでカテゴリを追加できるかどうかを定義します。この権限は、APIレベルでユーザーがカテゴリを追加できるかどうかを決定するためにも使用されます。

カテゴリ属性の順序付け

ユーザーがUIで属性を更新でききるかどうかを定義します。この権限は、APIレベルでユーザーがカテゴリを更新できるかどうかを決定するためにも使用されます。

カテゴリの削除

ユーザーがUIでカテゴリを削除できるかどうかを定義します。この権限は、APIレベルでユーザーがカテゴリを削除できるかどうかを決定するためにも使用されます。

導出属性の追加

ユーザーが導出属性を追加できるどうかを定義します。導出属性の追加オプションはAPIレベルでのみ使用できます。

検索属性の設定

ユーザーがUIで検索を構成できるかどうかを定義します。この権限は、APIレベルでユーザーが単純検索と拡張検索、および検索表属性を更新できるかどうかを定義するためにも使用されます。


13.4 Oracle Identity ManagerとLDAP間のユーザー定義フィールドの同期

この項では、Oracle Identity ManagerとLDAP間のユーザー定義フィールドの同期方法について説明します。Oracle Identity Manager拡張管理の構成サービスを使用してユーザー定義フィールドを作成した場合、その属性を同期する前に、OVDおよびOIDスキーマに新しい属性を追加して拡張する必要があります。たとえば、Employee IDという名前のOracle Identity Manager属性を作成して、これに対応するUSR表内の列名がUSR_EMPLOYEE_IDであるとします。Employee ID属性をOVDとOIDの両方のorclIDXPersonオブジェクトクラスに追加する必要があります。


関連項目:

新規属性のスキーマへの追加方法の詳細は、OVDおよびOIDのドキュメントを参照してください。

属性を同期するには、次の手順を使用します。

  1. emplyeeid属性をOVDとOIDの両方のorclIDXPersonオブジェクトクラスに追加して、OVDおよびOIDスキーマを拡張します。

  2. Oracle Identity ManagerからLDAPに属性値を移入するには、次の手順を実行します。

    1. 次のファイルをMDSからエクスポートします。

      /metadata/iam-features-ldap-sync/LDAPUser.xml

    2. 次のエントリを<entity-attributes>タグの末尾に追加します。

      <attribute name="Employee ID">
                          <type>string</type>
                          <required>false</required>
                          <attribute-group>Basic</attribute-group>
                          <searchable>true</searchable>
            </attribute>
      

      注意:

      Oracle Identity Managerでは、LDAPへのBooleanタイプ属性のプロビジョニングまたはリコンシリエーションはサポートされていません。

    3. 次のエントリを<target-fields>タグの後に追加します。

      <field name="employeeid">
                    <type>string</type>
                    <required>false</required>
             </field>
      
    4. 次のエントリを<attribute-maps>タグの後に追加します。

      <attribute-map>
                    <entity-attribute>Employee ID</entity-attribute>
                    <target-field>employeeid</target-field>
             </attribute-map>
      
    5. LDAPUser.xmlファイルをMDSにインポートして戻します。インポート後、MDS内のフルパスが/metadata/iam-features-ldap-sync/LDAPUser.xmlであることを確認します。

  3. 属性値をLDAPからOracle Identity Managerへ移入するには、次の手順を実行します。

    1. 新しい列を追加して、RA_LDAPUSER表を拡張します。たとえば、RECON_EMPLOYEE_ID列を追加します。

    2. リコンシリエーション・プロファイル、/db/LDAPUserをMDSからエクスポートします。

    3. 次のエントリを<reconFields>タグの後に追加します。

      <reconAttr>
                    <oimFormDescriptiveName>Employee ID</oimFormDescriptiveName>
                    <reconFieldName
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xmlns:xs="http://www.w3.org/2001/XMLSchema"
                        xsi:type="xs:string">employeeid</reconFieldName>
                    <reconColName>RECON_EMPLOYEE_ID</reconColName>
                    <emDataType>string</emDataType>
                    <formFieldType/>
                         <targetattr keyfield="false" encrypted="false"
       required="false"
                         type="String" name="usr_employee_id"/>
             </reconAttr>
      
    4. 次のエントリを<reconToOIMMappings>タグの後に追加します。

      <reconAttr>
                    <oimFormDescriptiveName>Employee ID</oimFormDescriptiveName>
                    <reconFieldName
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"                        
            
           xmlns:xs="http://www.w3.org/2001/XMLSchema"
                        xsi:type="xs:string">employeeid</reconFieldName>
                    <reconColName> RECON_EMPLOYEE_ID </reconColName>
                    <emDataType>string</emDataType>
                    <formFieldType/>
                    <targetattr keyfield="false" encrypted="false" required="false"
       type="String" name="                
      
               usr_employee_id">
                    <Transformation name="OneToOne">
                    <Parameter name=" employeeid " fieldname=" employeeid "/>
                    </Transformation>
                    </targetattr>
          </reconAttr>
      
    5. xmlファイルをMDSにインポートして戻します。インポート後、MDS内のフルパスが/db/LDAPUserであることを確認します。

    6. /db/RA_LDAPUSER.xmlファイルをMDSからエクスポートします。

    7. 次のエントリを<entity-attributes>タグの後に追加します。

      <attribute name="Employee ID">
                    <type>string</type>
                    <required>false</required>
                    <attribute-group>Basic</attribute-group>
                    <searchable>true</searchable>
           </attribute>
      
    8. このエントリを<target-fields>タグの後に追加します。

      <field name=" RECON_EMPLOYEE_ID">
                    <type>string</type>
                    <required>false</required>
           </field>
      
    9. 次のエントリを<attribute-maps>タグの後に追加します。

      <attribute-map>
                    <entity-attribute>Employee ID</entity-attribute>
                    <target-field> RECON_EMPLOYEE_ID </target-field>
           </attribute-map>
      
    10. RA_LDAPUSER.xmlファイルをMDSにインポートして戻します。インポート後、MDS内のフルパスが/db/RA_LDAPUSER.xmlであることを確認します。

13.5 構成管理の構造

すべての属性定義およびUIの構成管理ページに対して、ユーザー・エンティティ属性を管理するための構成ファイルはUser.xmlです。この構成ファイルに、ユーザー・エンティティおよびそのプロパティのすべての属性が定義されます。バックエンド属性または列へ属性のマッピングは、ファイルでも指定されます。属性がUIに表示されるかどうかは、属性プロパティによって決まります。たとえば、属性がシステム制御される場合は、その属性はUIには表示されません。

例13-1 User.xml構成ファイルのコード例

例13-1 エンティティXML定義

<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="http://www.oracle.com/schema/oim/entity" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.oracle.com/schema/oim/entity">
<element name="entity-definition"
type="tns:entity-definition-type">
</element>
 
<complexType name="entity-definition-type">
        <all>
        <element name="entity-type" minOccurs="1" maxOccurs="1">
        <complexType>
        <simpleContent>
        <extension base="string">
        <attribute name="child-entity"
        type="boolean">
        </attribute>
        </extension>
        </simpleContent>
        </complexType>
        </element>
        <element name="description" type="string" maxOccurs="1"
        minOccurs="0">
        </element>
        <element name="provider-instance"
        type="tns:provider-instance-type" minOccurs="1"
        maxOccurs="1">
        </element>
        <element name="container-capability"
        type="tns:container-definition-type" maxOccurs="1"
        minOccurs="1">
        </element>
        <element name="entity-attributes" maxOccurs="1"
        minOccurs="1">
        <complexType>
        <sequence>
        <element name="attribute"
        type="tns:attribute-definition-type" maxOccurs="unbounded"
        minOccurs="1">
        </element>
        </sequence>
        </complexType>
        </element>
        <element name="target-fields" maxOccurs="1" minOccurs="1">
        <complexType>
        <sequence>
        <element name="field"
        type="tns:field-definition-type" maxOccurs="unbounded"
        minOccurs="1">
        </element>
        </sequence>
        </complexType>
        </element>
        <element name="attribute-maps" maxOccurs="1"
        minOccurs="0">
        <complexType>
        <sequence>
        <element name="attribute-map"
        type="tns:attribute-map-definition-type"
        maxOccurs="unbounded" minOccurs="1">
        </element>
        </sequence>
        </complexType>
        </element>
        <element name="child-entities" maxOccurs="1"
        minOccurs="0">
        <complexType>
        <sequence>
        <element name="entity"
        type="tns:attribute-definition-type" maxOccurs="unbounded"
        minOccurs="1">
        </element>
        </sequence>
        </complexType>
        </element>
        <element name="metadata-attachment" maxOccurs="1"
        minOccurs="0">
        <complexType>
        <sequence>
        <element name="metadata"
        type="tns:metadata-attachment-type" maxOccurs="unbounded"
        minOccurs="0">
        </element>
        </sequence>
        </complexType>
        </element>
        <element name="control-attributes" minOccurs="0" maxOccurs="1">
        <complexType>
        <sequence>
        <element name="attribute" minOccurs="1" maxOccurs="unbounded">
        <complexType>
        <sequence>
        <element name="type" type="string"
        minOccurs="1" maxOccurs="1">
        </element>
        <element name="description"
        type="string" minOccurs="0" maxOccurs="1">
        </element>
        <element name="required"
        type="boolean" minOccurs="1" maxOccurs="1">
        </element>
        </sequence>
        <attribute name="name"
        type="string" use="required">
        </attribute>
        </complexType></element>
        </sequence>
        </complexType></element>
        </all>
</complexType>
 
<complexType name="provider-instance-type">
        <all>
<element name="repository-instance" type="string" maxOccurs="1" minOccurs="0"></element>
<element name="provider-type" type="string" maxOccurs="1" minOccurs="1"></element>
<element name="parameters" minOccurs="0" maxOccurs="1">
<complexType>
<sequence>
<element name="parameter" maxOccurs="unbounded" minOccurs="1">
<complexType>
<sequence>
<element name="value" type="string" maxOccurs="unbounded" minOccurs="1">
</element>
</sequence>
<attribute name="name" type="string">
</attribute>
</complexType>
</element>
</sequence>
</complexType>
</element>
</all>
</complexType>
 
<complexType name="parameter-definition-type">
        <all>
<element name="type" type="string" maxOccurs="1" minOccurs="1">
</element>
<element name="description" type="string" maxOccurs="1" minOccurs="0">
</element>
<element name="required" type="boolean" maxOccurs="1" minOccurs="1">
</element>
<element name="multi-valued" type="boolean" maxOccurs="1" minOccurs="0">
</element>
</all>
<attribute name="name" type="string"></attribute>
</complexType>

<complexType name="attribute-definition-type">
        <all>
        <element name="type" type="string" maxOccurs="1"
        minOccurs="1">
        </element>
        <element name="description" type="string" maxOccurs="1"
        minOccurs="0">
        </element>
        <element name="required" type="boolean" maxOccurs="1"
        minOccurs="1">
        </element>
        <element name="searchable" type="boolean" maxOccurs="1"
        minOccurs="1">
        </element>
        <element name="MLS" type="boolean" minOccurs="0" maxOccurs="1"></element>
        <element name="default-value" type="string" maxOccurs="1"
        minOccurs="0">
        </element>
        <element name="attribute-group" type="string" maxOccurs="1"
        minOccurs="1">
        </element>
        <element name="metadata-attachment" maxOccurs="1"
        minOccurs="0">
        <complexType>
        <sequence>
        <element name="metadata"
        type="tns:metadata-attachment-type" maxOccurs="unbounded"
        minOccurs="0">
        </element>
        </sequence>
        </complexType>
        </element>
        </all>
        <attribute name="name" type="string"></attribute>
</complexType>
 
<complexType name="field-definition-type">
        <all>
<element name="type" type="string" maxOccurs="1" minOccurs="1">
</element>
<element name="description" type="string" maxOccurs="1" minOccurs="0">
</element>
<element name="required" type="boolean" maxOccurs="1" minOccurs="1">
</element>
</all>
<attribute name="name" type="string"></attribute>
</complexType>
 
<complexType name="attribute-map-definition-type">
        <all>
<element name="entity-attribute" type="string" maxOccurs="1" minOccurs="1">
</element>
<element name="target-field" type="string" maxOccurs="1" minOccurs="1">
</element>
</all>
</complexType>
 
<element name="repository-definition"
type="tns:repository-definition-type">
</element>
 
<complexType name="repository-definition-type">
        <all>
<element name="name" type="string" maxOccurs="1" minOccurs="1">
</element>
<element name="class" type="string" maxOccurs="1" minOccurs="1">
</element>
<element name="parameters" maxOccurs="1" minOccurs="0">
<complexType>
<sequence>
<element name="parameter-def" type="tns:parameter-definition-type" maxOccurs="unbounded" minOccurs="1">
</element>
</sequence>
</complexType>
</element>
<element name="description" type="string" maxOccurs="1" minOccurs="0"></element>
</all>
</complexType>
 
<element name="provider-definition"
type="tns:provider-definition-type">
</element>
 
<complexType name="provider-definition-type">
        <all>
<element name="name" type="string" maxOccurs="1" minOccurs="1"></element>
<element name="type" maxOccurs="1" minOccurs="1">
<complexType>
<choice>
<element name="DataProvider" type="string"></element>
<element name="RelationProvider" type="string">
</element>
</choice>
</complexType>
</element>
<element name="class" type="string" maxOccurs="1" minOccurs="1"></element>
<element name="description" type="string" maxOccurs="1" minOccurs="0"></element>
<element name="parameters" maxOccurs="1" minOccurs="0">
<complexType>
                    <sequence>
<element name="parameter-def" type="tns:parameter-definition-type" maxOccurs="unbounded" minOccurs="1">
</element>
</sequence>
</complexType>
</element>
</all>
</complexType>
 
<element name="repository-instance">
<complexType>
            <all>
<element name="name" type="string"></element>
<element name="type" type="string"></element>
<element name="parameters" maxOccurs="1" minOccurs="0">
<complexType>
<sequence>
<element name="parameter" maxOccurs="unbounded" minOccurs="1">
<complexType>
<sequence>
<element name="value" type="string" maxOccurs="1" minOccurs="1">
</element>
</sequence>
<attribute name="name" type="string">
</attribute>
</complexType>
</element>
</sequence>
</complexType>
</element>
</all>
</complexType>
</element>
 
<complexType name="container-definition-type">
        <sequence>
<element name="enabled" type="boolean" maxOccurs="1" minOccurs="1"></element>
<element name="contained-entity" type="string" maxOccurs="unbounded" minOccurs="0">
</element>
</sequence>
</complexType>
 
<complexType name="relation-definition-type">
        <all>
<element name="relation-type" type="string" maxOccurs="1" minOccurs="1"></element>
<element name="description" type="string" maxOccurs="1" minOccurs="0"></element>
<element name="provider-instance" type="tns:provider-instance-type" maxOccurs="1" minOccurs="1">
</element>
<element name="entity1" type="tns:relation-entity-type" maxOccurs="1" minOccurs="1">
</element>
<element name="entity2" type="tns:relation-entity-type" maxOccurs="1" minOccurs="1"></element>
<element name="relation-attributes" maxOccurs="1" minOccurs="1">
<complexType>
<sequence>
<element name="attribute" type="tns:attribute-definition-type" maxOccurs="unbounded" minOccurs="0">
</element>
</sequence>
</complexType>
</element>
<element name="target-fields" maxOccurs="1" minOccurs="1">
<complexType>
<sequence>
<element name="field" type="tns:field-definition-type" maxOccurs="unbounded" minOccurs="0">
</element>
</sequence>
</complexType>
</element>
<element name="attribute-maps" maxOccurs="1" minOccurs="0">
<complexType>
<sequence>
<element name="attribute-map" type="tns:attribute-map-definition-type" maxOccurs="unbounded" minOccurs="1">
</element>
</sequence>
</complexType>
</element>
</all>
</complexType>
 
<element name="relation-definition"
type="tns:relation-definition-type">
</element>
 
<complexType name="relation-entity-type">
        <all>
<element name="entity-type" type="string"></element>
<element name="attribute" type="string"></element>
<element name="attribute-in-entity" type="string"></element>
<element name="attribute-group" type="string" maxOccurs="1" minOccurs="1"></element>
</all>
</complexType>
 
 
<element name="datatype-definition"
type="tns:datatype-definition-type">
</element>
 
<complexType name="datatype-definition-type">
        <all>
<element name="name" type="string" maxOccurs="1" minOccurs="1"></element>
<element name="class" type="string" maxOccurs="1" minOccurs="1"></element>
<element name="base-type" type="string" maxOccurs="1" minOccurs="1"></element>
</all>
</complexType>
 
<complexType name="metadata-attachment-type">
        <all>
<element name="name" type="string"></element>
<element name="value" type="string"></element>
<element name="category" type="string"></element>
</all>
</complexType>

<element name="derived-datatype-definition"
type="tns:derived-datatype-definition-type">
</element>
 
<complexType name="derived-datatype-definition-type">
        <all>
<element name="name" type="string" maxOccurs="1" minOccurs="1">
</element>
<element name="class" type="string" maxOccurs="1" minOccurs="1">
</element>
<element name="parameters" minOccurs="0" maxOccurs="1">
<complexType>
<sequence>
<element name="parameter" maxOccurs="unbounded" minOccurs="1">
<complexType>
<sequence>
<element name="value" type="string" maxOccurs="1" minOccurs="1">
</element>
</sequence>
<attribute name="name" type="string">
</attribute>
</complexType>
</element>
</sequence>
</complexType>
</element>
</all>
</complexType>
</schema>

エンティティXMLファイルはMDSに格納されます。新しい属性が追加されると、データベース・スキーマはMDS内のエンティティXMLとともに更新されます。構成サービスAPIを使用して属性情報を取得し、カスタムUIの構築時に使用できます。