Oracle Identity Governanceとの統合

事前インストール

動作保証されたコンポーネント

ターゲットシステムには、次のいずれかを指定できます。

  • Oracle Identity Governance 12.2.1.4バンドル・パッチ番号11 (12.2.1.4.220703)以降。現在のバージョンのOracle Identity Governanceに互換性がない場合は、Oracle Supportに連絡してください。Oracle Identity Governanceシステムのパッチを手配できます
  • Oracle Identity Governance 14.1.2.1.0以降

前提条件

Oracle Access Governanceでレビューできるようにするには、Oracle Identity Governanceソース・データが次の要件を満たしている必要があります:
  • Oracle Identity Governanceのアプリケーションおよび権限は、Oracle Access Governanceで取り込めるようにするために、「認証可能」としてマークする必要があります。Oracle Identity Governanceセルフ・サービス・アプリケーションにログインし、「アクセスのリクエスト」 → 「自己のリクエスト」 → 「アプリケーションの検索」にナビゲートして情報アイコンをクリックし、「証明可能」フラグを選択します。
  • ロールの場合は、Oracle Identity Governanceセルフ・サービス・アプリケーションにログインし、「管理」→「ロール」→「ロールを開く」に移動します。「カタログ属性」で、「証明可能」チェック・ボックスを選択します。
  • Oracle Access Governanceのレビューに含まれるすべてのアクセス権は、Oracle Identity Governanceの次のいずれかの権限タイプを使用して付与されている必要があります。
    • アカウントおよび権限の直接プロビジョニング
    • アカウントおよび権限のプロビジョニングの要求
    • ターゲットからの調整済アカウントおよび権限
    • バルクロードされたアカウントおよび権限
    • アクセス・ポリシーに関連付けられているリクエストまたは直接プロビジョニング・ロール

Oracle Identity Governance統合の設定

Oracle Identity GovernanceエージェントがOracle Access Governanceに接続できるようにするには、ターゲット・システムの接続詳細および資格証明を入力し、環境固有のエージェントを作成する必要があります。

  1. ブラウザで、Oracle Access Governanceサービスのホーム・ページに移動し、管理者アプリケーション・ロールを持つユーザーとしてログインします。
  2. Oracle Access Governanceサービスのホームページで、ナビゲーション・メニューアイコンをクリックし、「サービス管理」「オーケストレーション済システム」の順に選択します。
  3. 「オーケストレート済システムの追加」ボタンを選択し、「オーケストレート済システムの追加」ページにナビゲートしてワークフローを開始します。
  4. ワークフローの「システムの選択」ステップで、オンボーディングするシステムのタイプを指定できます。「検索」フィールドを使用して、名前で必要なシステムを検索できます。
    1. 「Oracle Identity Governance」を選択します
    2. 「次へ」を選択します
  5. 「詳細の入力」ステップで、オーケストレート済システムの一般詳細を入力します:
    ワークフローの「詳細の追加」ステップで、オーケストレート済システムの詳細を入力します:
    1. 「名前」フィールドに、接続先のシステムの名前を入力します。
    2. 「説明」フィールドに、システムの説明を入力します。
    3. このオーケストレート済システムが信頼できるソースかどうか、および次のチェック・ボックスを設定してOracle Access Governanceが権限を管理できるかどうかを決定します。
      • これは私のアイデンティティの認証ソースです

        次の項目から選択します。

        • アイデンティティとその属性のソース: システムは、ソース・アイデンティティおよび関連する属性として機能します。新しいアイデンティティは、このオプションを使用して作成されます。
        • アイデンティティ属性のソースのみ: 追加のアイデンティティ属性の詳細が取り込まれ、既存のアイデンティティに適用されます。このオプションは、新規アイデンティティ・レコードを取込みまたは作成しません。
      • このシステムの権限を管理します
      各ケースのデフォルト値は「未選択」です。
    4. 「次へ」を選択します。
  6. 「所有者の追加」ステップで、次の手順を実行します。
    リソース所有権を関連付けるには、プライマリ所有者と追加所有者を追加します。これにより、これらの所有者は所有するリソースを管理(読取り、更新または削除)できるため、セルフサービスが促進されます。デフォルトでは、リソース作成者はリソース所有者として指定されます。1人のプライマリ所有者と最大20人の追加所有者をリソースに割り当てることができます。
    ノート

    サービス・インスタンスに対して最初のオーケストレート済システムを設定する場合、「アイデンティティの管理」セクションからアイデンティティを有効にした後にのみ所有者を割り当てることができます。
    所有者を追加するには:
    1. 「プライマリ所有者は誰ですか。」フィールドで、Oracle Access Governanceのアクティブ・ユーザーをプライマリ所有者として選択します。
    2. 「他の所有者は誰ですか。」リストで1つ以上の追加所有者を選択します。リソースに最大20人の追加所有者を追加できます。
    リストの「プライマリ所有者」を表示できます。すべての所有者は、所有するリソースを表示および管理できます。
  7. ワークフローの「統合設定」ステップで、Oracle Access Governanceに必要なOracle Identity Governanceインスタンスへの接続を許可するために必要な構成の詳細を入力します。
    • 「OIGデータベース・サーバーのJDBC URLは何ですか。」フィールドに、接続するOIGデータベースのJDBC URLを入力します。
      ノート

      JDBC URLを取得するには:
      1. Oracle Identity Governanceインスタンスに関連付けられているOracle WebLogic Server管理コンソールにログオンします。
      2. 「サービス」→「データ・ソース」に移動します。
      3. 「構成」タブからoimOperationsDBを選択します。
      4. 「接続プール」を選択し、「URL: 」フィールドから値をコピーして、Oracle Identity GovernanceのJDBC URLとして使用します。

      JDBC URL

    • 「OIGデータベース・ユーザー名は何ですか。」フィールドに、OIGデータベースに接続するためのデータベース・ユーザーを入力します。
      ノート

      これは、OIGデータベースへの読取りアクセス権を持つ任意のユーザーにできます。
    • 「パスワード」フィールドに、指定したOIGデータベース・ユーザーのパスワードを入力します。
    • 「OIGサーバーのURLは何ですか。」フィールドに、統合するOIGサーバーのURLを入力します。
      ノート

      OIGサーバーURLを取得するには:
      • Oracle Enterprise Manager Fusion Middleware Controlにログオンします。
      • システムMBeanブラウザに移動し、XMLConfig.DiscoveryConfig MBeanを見つけます。
      • OimExternalFrontEndURL属性の値をコピーし、Oracle Identity GovernanceサーバーのURLの値として使用します。

      OIG URL

    • 「OIGサーバーのユーザー名は何ですか。」フィールドに、修正およびスキーマ検出に使用されるOIGユーザーを入力します。
      ノート

      Oracle Identity Governance Serverユーザーは、システム管理者管理ロールのメンバーである任意のユーザーにできます。このロールは、修正プロセスの実行およびカスタム属性のスキーマ検出のサポートに必要です。修正サポートのみが必要な場合、ユーザーはOrclOAGIntegrationAdmin管理ロールのメンバーになることができます。このユーザーの場合、スキーマ検出操作は失敗します。
    • 「OIGサーバー・パスワード」フィールドに、OIG APIをコールして修正を実行するときにOIGサーバー・ユーザーを認証するために入力します。
    ノート

    Oracle Access GovernanceとOracle Identity Governanceを統合するには、Oracle Identity Governanceサーバーに関する情報(URL、ユーザー名およびパスワード)およびOracle Identity Governanceデータソースに関する情報(JDBC URL、ユーザー名、パスワード)が必要です。Oracle Access Governanceでは、Oracle Identity Governanceデータソースを使用してデータをロードし、Oracle Identity GovernanceサーバーのURLを使用して修正操作を実行します。接続が失敗した場合、Oracle Access Governanceエージェントは、Oracle Identity Governanceサーバーとの接続を保護するために、最大3回自動的に再試行します。
  8. オプションで、OIGデータベース増分データ・ロードを使用してデータ・ロードを実行するように選択できます。「OIGデータベース増分データ・ロードを有効にしますか。」オプションを選択した場合、Day-Nデータ・ロードでは、定期的なスナップショットではなく、Oracle Access Governanceへの変更が発生したときに適用するイベント駆動モードが使用されます。このオプションを選択した場合は、「イベントドリブン・データ・ロードのデータベース設定ステップ」で定義されているOIGデータベースの前提条件タスクが完了していることを確認します。
    ノート

    このオプションは、OIGからのイベントを定期的にではなくリアルタイムで表示する場合に使用してください。たとえば、組織で、Oracle Access Governanceにすぐに反映する必要があるユーザーのアイデンティティを作成する場合は、このオプションを使用する必要があります。アイデンティティが追加されると、イベントは統合によって記録され、AGと照合されます。デフォルトのスナップショット・データ・ロードでは、次にスケジュールされた実行まで新しいアイデンティティをリコンサイルせず、最後に以降のすべての変更のデータ・ロードが実行されます。イベント駆動型のデータ・ロードでは、変更がリアルタイムで識別され、各イベントが発生するとOracle Access Governanceにロードされます。
    .
  9. OIGから返されるデータをフィルタするために使用するフィルタ属性を入力します。
    Oracle Access GovernanceによってOracle Identity Governanceから取り込まれたユーザーおよびアカウントを制限するために使用される、最大3つのフィルタ名/値のペアを追加できます。必要に応じて、検索フィルタ値のセパレータを任意の文字に設定することもできます(デフォルトは~)。

    フィルタを設定するために使用できる属性の詳細は、「ユーザー・データ・ロード・フィルタリングでサポートされる属性」を参照してください。

  10. 入力した詳細が正しいことを確認し、「追加」ボタンをクリックします
  11. 「エージェントのダウンロード」ステップで、「ダウンロード」リンクを選択し、エージェントが実行される環境にエージェントZipファイルをダウンロードします。
    エージェントをダウンロードしたら、エージェント管理の記事で説明されている手順に従います。
  12. データ・ロードを実行する前にオーケストレート済システムをさらに構成するか、デフォルト構成を受け入れてデータ・ロードを開始するかを選択できます。次の中から1つ選択します。
    • システムでデータ・ロードを有効化する前にカスタマイズします
    • 指定されたデフォルトを使用してデータ・ロードをアクティブ化および準備: このオプションを選択すると、Oracle Identity Governanceオーケストレート済システムのデフォルト照合ルールが使用されます。
      デフォルト照合ルール

      モード

      認可ソース

      userName = userName

      管理されたシステム

      デフォルト・ルールはサポートされていません。照合はUIDに基づきます。

「Oracle Access GovernanceとOracle Identity Governance (OIG)間のアイデンティティ・オーケストレーションの設定」チュートリアルに示されている手順に従うこともできます。

ユーザー・データ・ロード・フィルタでサポートされる属性

Oracle Identity Governanceからデータをオンボードするようにオーケストレート済システムを構成する場合、Oracle Access Governanceで収集するユーザー・データをフィルタできます。部門、従業員タイプ、場所などのアイデンティティ属性にフィルタを設定することで、オンボーディングするユーザーを制限できます。

ユーザー・データ・ロードのフィルタ特性

オーケストレート済システムでのフィルタの構成では、ユーザー・データ・ロード・フィルタリングの次の特性に注意してください。

  • ユーザー検索フィルタとユーザー・データ値のフィルタリングの照合は、大/小文字が区別されます。たとえば、department = Human Resourcesのフィルタでは、department = HUMAN RESOURCESまたはDepartment = Human Resourcesの値を持つユーザーは返されません。
  • ユーザー・データ・ロード・フィルタに一致するユーザーまたはアカウントがない場合、Oracle Access GovernanceによってOracle Identity Governanceからデータは取り込まれません。ただし、この場合、IDやアカウントがオンボーディングされていなくても、データ・ロード自体はアクティビティ・ログで成功とラベル付けされます。
  • ユーザー・データ・ロード・フィルタ値は、指定されたフィルタ属性に対して1000を超えることはできません。
  • エージェントがすでにインストールされている場合は、ユーザー・データ・ロード・フィルタを有効にするためにエージェントのアップグレードが必要です。エージェントのアップグレード方法の詳細は、エージェントの使用例を参照してください。

ユーザー・データ・ロード・フィルタでサポートされる属性のリスト

次の属性に基づいて、Oracle Identity Governanceから取り込まれたユーザーをフィルタできます。

ユーザー・データ・ロード・フィルタでサポートされる属性のリスト
Oracle Access Governance属性名 Oracle Identity Governance属性名
employeeType usr_emp_type
jobCode usr_job_code
部門 usr_dept_no
場所 usr_location
国家 usr_state
postalCode usr_postal_code
usr_country
managerUid usr_manager_key
managerLogin usr_login

(マネージャのusr_login)

organizationUid act_key
organizationName act_name

act表のact_name

territory usr_territory

ユーザー・データ・ロード・フィルタの例

ユーザー・データ・ロード・フィルタ機能を使用して構成できるユースケースの例を次に示します。
ユーザー・データ・ロード・フィルタの例
ユースケース 構成パラメータ

department=Product Developmentのユーザー

および

jobCode=IC004またはM0003

  • userFilter1Name= 部門
  • userFilter1Value= 製品開発
  • userFilter2Name=jobCode
  • userFilter2Value=IC004~M0003
  • userFilter3Name=
  • userFilter3Value=
  • filterValueDelimiter=~

state =Kentのユーザー

および

organizationUid=1または4

  • userFilter1Name= 状態
  • userFilter1Value= ケント
  • userFilter2Name=organizationUid
  • userFilter2Value=1~4
  • userFilter3Name=
  • userFilter3Value=
  • filterValueDelimiter=~

postalCode = 78045または12204のユーザー

カスタム・デリミタ##を使用

  • userFilter1Name=postalCode
  • userFilter1Value=78045##12204
  • userFilter2Name=
  • userFilter2Value=
  • userFilter3Name=
  • userFilter3Value=
  • filterValueDelimiter=##

managerUid = 17981または17854 を持つユーザー

managerLogin = DINORAH.PREWITTまたはJOELLA.SHANNON

  • userFilter1Name=managerUid
  • userFilter1Value=17981~17854
  • userFilter2Name=managerLogin
  • userFilter2Value=DINORAH.PREWITT~SHIRLEY.THOMAS
  • userFilter3Name=
  • userFilter3Value=
  • filterValueDelimiter=~
ノート

フィルタ値の名前とフィルタの値は両方とも大/小文字が区別されます。前述の例を使用すると、次のいずれかのフィルタが無効になり、結果は返されません。
  • 例1:
    • userFilter1Name=MANAGERUID
    • userFilter1Value=17981~17854
    • userFilter2Name=managerLogin
    • userFilter2Value=DINORAH.PREWITT~SHIRLEY.THOMAS
  • 例2:
    • userFilter1Name=managerUid
    • userFilter1Value=17981~17854
    • userFilter2Name=managerLogin
    • userFilter2Value=Dinorah.Prewitt~SHIRLEY.THOMAS
    • 例3:
      • USERFilter1Name=managerUid
      • userFilter1Value=17981~17854
      • userFilter2Name=managerLogin
      • userFilter2Value=DINORAH.PREWITT~SHIRLEY.THOMAS
  • 例4:
    • userFilter1Name=managerUid
    • userFilter1Value=17981~17854
    • userFilter2Name=managerLogin
    • USERFILTER2VALUE=DINORAH.PREWITT~SHIRLEY.THOMAS

イベントドリブン・データ・ロードのデータベース設定ステップ

Oracle Access Governanceオーケストレート済システムを作成または更新するときに、イベントドリブン・データ・ロード・オプションを有効にできます。このオプションは、Day-Nデータ・ロードをデフォルトのスナップショットベース・モデルからイベントドリブン・モデルに切り替えます。このオプションの前提条件では、OIGデータベースに読取り専用ユーザーを作成し、必要なロールおよびシステム権限を付与する必要があります。

イベントドリブン・データ・ロード・オプション用にOIGデータベースに読取り専用ユーザーを追加するには、次のステップを実行します。
  1. SYSとしてOIGデータベースに接続し、変更イベントにアクセスするためにOracle Access Governanceによって使用されるOIGデータベースに読取り専用ユーザーを作成します。
    create user <username> identified by <password>;
    例:
    create user ag2oigro identified by mypassword;
  2. SYSとしてOIGデータベースに接続し、前のステップで作成した読取り専用ユーザーに必要なロールおよびシステム権限を付与します。
    GRANT CREATE SESSION TO <read-only user>;
    GRANT SELECT ANY TABLE TO <read-only user>;
    GRANT CREATE ANY TRIGGER TO <read-only user>;
    GRANT ADMINISTER DATABASE TRIGGER TO <read-only user>;
    GRANT CREATE TABLE TO <read-only user>;
    GRANT CREATE SYNONYM TO <read-only user>;
    GRANT UNLIMITED TABLESPACE TO <read-only user>;
    
    GRANT CONNECT TO <read-only user>;
    GRANT RESOURCE TO <read-only user>;
    例:
    GRANT CREATE SESSION TO ag2oigro;
    GRANT SELECT ANY TABLE TO ag2oigro;
    GRANT CREATE ANY TRIGGER TO ag2oigro;
    GRANT ADMINISTER DATABASE TRIGGER TO ag2oigro;
    GRANT CREATE TABLE TO ag2oigro;
    GRANT CREATE SYNONYM TO ag2oigro;
    GRANT UNLIMITED TABLESPACE TO ag2oigro;
    
    GRANT CONNECT TO ag2oigro;
    GRANT RESOURCE TO ag2oigro;
  3. OIG DBスキーマ所有者としてOIGデータベースに接続し、次のコマンドを実行して、読取り専用ユーザーのOIG表のシノニムを作成するスクリプトを作成します。
    setheading on
    setlinesize 1500
    setnumformat 99999999999999999999
    setpagesize 25000
    spool synon.out
    SELECT 'create synonym <read-only user>.'||TNAME||' for <OIG_SCHEMA_USER_NAME>.'||TNAME||';'
    FROM TAB
    WHERE tabtype = 'TABLE';
    spool off
    例:
    setheading on
    setlinesize 1500
    setnumformat 99999999999999999999
    setpagesize 25000
    spool synon.sql
    SELECT 'create synonym ag2oigro.'||TNAME||' for <OIG_SCHEMA_USER_NAME>.'||TNAME||';'
    FROM TAB
    WHERE tabtype = 'TABLE';
    spool off
  4. 読取り専用ユーザーとしてOIGデータベースに接続し、前のステップで作成したスクリプトを使用してシノニムを作成します。
    @<scriptname>

    例:

    @synon.sql