21 アプリケーション・オンボードの管理

Oracle Identity Self Serviceのアプリケーション・オンボード機能は、アプリケーション、テンプレート、アプリケーションのインスタンスの作成と管理およびアプリケーションのクローニングに使用します。

この章の構成は、次のとおりです。

ノート:

このリリースでは、Design Consoleが非推奨になりました。次のいずれかの操作には、Identity Self Serviceの新しい「アプリケーション」ページを使用します。

  • ICFベースのコネクタ・インストール・パッケージで使用する必要のあるアプリケーション・テンプレートベースのインストール・プロセス。

  • テンプレートベースの12cコネクタのインストール。

  • テンプレートベース・アプリケーション用のITリソース・インスタンスの管理。

21.1 アプリケーション・オンボードについて

21.1.1 アプリケーション・オンボートとは

アプリケーション・オンボードとは、Oracle Identity Managerにアプリケーションを登録または関連付けするプロセスです。これにより、Oracle Identity Managerでアプリケーションのユーザー情報をプロビジョニングまたはリコンサイルできるようになります。

Oracle Identity Managerには、Identity Self Serviceの「管理」タブにある「アプリケーション」を使用して簡単にアプリケーションをオンボードする方法が用意されています。単一のコンソールからアプリケーションのオンボードに必要な構成をすべて実行できます。

この簡易型ソリューションには次のメリットがあります。

  • 新しいアプリケーションや既存のアプリケーションの構成に、単一のユーザー・インタフェースであるIdentity Self Serviceを使用できます。

  • アプリケーション・テンプレートとして構成をエクスポートできます。アプリケーションは、Oracle Identity Managerのかわりにエクスポートしたテンプレートを使用して構成できます。

21.1.2 アプリケーション・オンボードの概念

アプリケーション・オンボードに関連する主な概念には、アプリケーション認可、アプリケーションのタイプ、アプリケーション・テンプレート、非接続型コネクタ・アプリケーション、インスタンスの作成、アプリケーションのクローニング、プロビジョニング属性とリコンシリエーション属性の検証と変換、アプリケーション・テンプレートの要素などがあります。

21.1.2.1 アプリケーション認可

次の認可が与えられているユーザーは、Identity Self Serviceの「アプリケーション」オプションにアクセスできます。

  • Application Instance Administrator管理ロールまたはSystem Administrator管理ロールが与えられたユーザーは、「アプリケーション」オプションを使用してアプリケーションを管理できます。

  • Application Instance Administrator管理ロールが与えられたユーザーは、ユーザーのホーム組織および管理ロールの制御範囲内にある組織で公開されたアプリケーションのライフサイクル全体を管理できます。

21.1.2.2 アプリケーション・タイプ

次の2つのタイプのアプリケーションを作成できます。

  • ターゲット・アプリケーション: ターゲット・アプリケーションでは、アクセス・リクエスト・カタログ経由でアカウントをプロビジョニングするためのユーザー・リクエストが可能になります。ターゲット・アプリケーションは、接続型または非接続型のどちらかになります。非接続型アプリケーションは、手動でプロビジョニングする必要があります。

  • 認可アプリケーション: 認可アプリケーションの場合、Oracle Identity Managerはアカウントを管理して、各種リコンシリエーション・ジョブ間でアカウントをユーザーとして表します。許可アプリケーションは、アクセス・リクエスト・カタログ経由でリクエストすることはできません。そのため、Oracle Identity Managerはデータを取得し、アプリケーションをユーザーとして表します。その後で、リクエストまたはアクセス・ポリシーによって異なるターゲット・アプリケーションを許可します。たとえば、HR部門によって完全に管理されるHRMSアプリケーションなどが挙げられます。HRMSアプリケーションには、ユーザー・アカウントの作成が伴われます。Oracle Identity ManagerはHRMSアプリケーションからデータを取得して、そのデータをユーザー・アカウントとして表します。こうしたユーザー・アカウントは、リクエストと承認によって各種ターゲット・アプリケーションに対して許可されます。

Identity Self Serviceのアプリケーション・オンボード機能を使用すると、2つの方法でアプリケーションを作成できます。

  • コネクタ・パッケージから: Oracle Identity Managerには、デフォルト・テンプレートで事前定義されたコネクタが用意されています。これには、ターゲット・システム固有の詳細(プロビジョニングとリコンシリエーションのマッピング、リコンシリエーション・アクション、リコンシリエーション一致ルールなど)のすべてが含まれています。

    ノート:

    「アイデンティティ・システム管理」インタフェースの「プロビジョニング構成」タブにある「コネクタの管理」オプションを使用すると、デフォルト・テンプレートが使用できない事前定義済のコネクタをインストールできます。

  • アプリケーション・テンプレートの使用: システムに保存されたアプリケーション・テンプレートが存在している場合は、そのテンプレートを使用して新しいアプリケーションを作成できます。

21.1.2.3 アプリケーション・テンプレート

アプリケーション・テンプレートとは、アプリケーション・インスタンスに関連する構成のすべてをXMLで表したものです。ターゲット・システムへのプロビジョニングとターゲット・システムからのリコンシリエーションに必要な情報がすべて含まれています。さらに、パブリケーション情報や接続詳細などの詳細とターゲット・システム固有の詳細構成なども含まれています。アプリケーション構成はテンプレートとして保存して、その後のアプリケーションの作成に使用できます。アプリケーション・テンプレートはフォルダ内に配置する必要があります。

テンプレートは次の方法で作成できます。

  • 「アプリケーションの作成」ページの「テンプレートとして保存」オプションを使用して、テンプレートを作成します。「アプリケーションの作成」を参照してください。

  • アプリケーション・テンプレート生成ジョブを実行して、テンプレートを生成します。ジョブへのパラメータとして、このテンプレートの保存先フォルダを渡します。(これは、アップグレードの前後にコネクタ・インストーラを使用して作成されたアプリケーションに役立つことがあります。デフォルトでは、こうしたアプリケーションに対するテンプレートは作成されません)。

    このスケジュール済タスクの詳細は、『Oracle Identity Governanceの管理』事前定義済のスケジュール済タスクに関する項を参照してください。

  • 「デプロイメント・マネージャ」の「インポート」オプションを使用して、テンプレートをインポートします。「デプロイメント・マネージャ」を使用したエンティティのインポートの詳細は、『Oracle Identity Governanceの管理』デプロイメントのインポートに関する項を参照してください。

  • サンプル・テンプレートを使用して、手動でテンプレートを作成します。

ノート:

  • 認可アプリケーションの場合、ApplicationInstanceService.addApplicationInstance(ApplicationInstance appInst) APIを使用してアプリケーション・インスタンスを作成し、アプリケーション・テンプレート生成ジョブを使用してテンプレートを生成します。

  • 「アプリケーションの作成」オプションで作成したアプリケーションには、参照に存在するすべての値に関連するスキーマ属性が含まれてます。こうしたスキーマ属性には、以前に導出された属性(_NAME_など)の属性が含まれています。このような属性は、新しいUIフォームの作成時に削除する必要があります。この属性を削除するには、サンドボックスを使用してフォームをカスタマイズします。

    サンドボックスを使用したフォームのカスタマイズの詳細は、『Oracle Identity Governanceの管理』フォームのマッピングに関する項を参照してください。

21.1.2.4 非接続型アプリケーション

非接続型リソースとは、コネクタが存在しないターゲットのことです。そのため、こうしたリソースは手動でプロビジョニングする必要があります。非接続型リソース用のアプリケーションは、Identity Self Serviceの「アプリケーション」ページを使用して作成できます。

非接続型リソースと非接続型アプリケーション・インスタンスの詳細は、『Oracle Identity Governanceの管理』非接続型リソースの管理に関する項を参照してください。

21.1.2.5 インスタンス作成

インスタンス作成では、ベース・アプリケーションの構成を共有していても接続オプションが異なるアプリケーションのインスタンスを作成できます。

次に示す構成は、ベース・アプリケーションとインスタンス・アプリケーションの間で共有されます。

  • 拡張構成

  • スキーマ構成

  • プロビジョニング構成

  • リコンシリエーション構成

インスタンス・アプリケーションには、次の項目について独自の属性と構成があります。

  • アプリケーション名

  • アプリケーション表示名

  • アプリケーションの説明

  • 基本構成

  • カタログ属性

  • 組織のパブリケーション

ノート:

ベース・アプリケーションと共有する構成は、アプリケーションの編集オプションを使用して変更することはできません。

21.1.2.6 アプリケーションのクローニング

アプリケーションのクローニング時に、ベース・アプリケーションのすべての構成がクローニングされたアプリケーションにコピーされます。

21.1.2.7 プロビジョニング属性とリコンシリエーション属性の検証と変換

アプリケーションの作成にIdentity Self Serviceを使用すると、プロビジョニング属性を適用、検証および変換してから、その属性をターゲット・システムに渡すことができます。Identity Self Serviceのアプリケーション・オンボード機能により、Groovyスクリプト・ベースの検証と変換のロジックを作成できます。こうしたスクリプトを組み込む方法の詳細は、「ターゲット・アプリケーションの作成」または「許可アプリケーションの作成」を参照してください。

Oracle Identity ManagerからOracleデータベース・ターゲット上のアカウントを管理するとします。この状況には、次の要件があります。

  • アカウントのフィールドは「ユーザーID」、「組織」、「名」および「姓」です。

  • 「ユーザーID」フィールドはNullにできません。

  • ユーザーIDの末尾は@example.comにする必要があります。たとえば、ユーザーIDがtestの場合、そのIDはリクエスト時にターゲット上でtest@example.comに変換されている必要があります。

  • ユーザーが組織の詳細を指定していない場合は、デフォルト値を「Server Technology」に設定する必要があります。

これらの要件を満たすために、アプリケーションの作成時に次の検証スクリプトと変換スクリプトを作成できます。

検証Groovyスクリプト:

def errors = "";
if(User_Id == null || User_Id ==""){
errors = errors+" User Id cannot be null";
}
return errors;

変換Groovyスクリプト:

if(Organization == null || Organization == "")
{
	Organization = "Server Technology";
}
User_Id = User_Id.toString()+"@example.com";

リソース除外に対応する検証Groovyスクリプト:

検証スクリプトでは、リコンシリエーション操作とプロビジョニング操作から除外する必要のあるアカウントに対応するユーザーIDのリストを指定できます。次に、スクリプトの例を示します。

def errors = "";
def excludedUsers = ['user01','user02'];
def regexStr = /^[a-zA-Z0-9_]+/;
if(!User_Id.matches(regexStr)) errors = errors+" Invalid UserId";
if(excludedUsers.contains(User_Id)) errors = errors+" User Id lies in excluded list";
return errors;

その他のサンプル・スクリプトと属性の変換の詳細は、「Groovyスクリプトのカスタマイズについて」を参照してください。

21.1.2.8 アプリケーション・テンプレートXMLの重要な要素

次に、アプリケーション・テンプレートXMLファイルの重要な要素と構造の一部を示します。

  • applicationName: アプリケーション名は一意にする必要があります。200文字以内に収める必要があります。

  • applicationDisplayName: アプリケーションの表示名。

  • connectorDisplayName: コネクタの表示名は、バンドルの検索に使用されます。ユーザーに対しては読取り専用フィールドになります。値は、コネクタ・バンドルのデフォルト・テンプレートに含まれています。

  • connectorVersion: コネクタ・バージョンは、バンドルの検索に使用されます。ユーザーに対しては読取り専用フィールドになります。値は、コネクタ・バンドルのデフォルト・テンプレートに含まれています。

  • basicConfigurations: ターゲット・システムの接続詳細(ホストとポートなど)。パラメータのリストは、ターゲットごとに異なります。

  • advanceConfigurations: ターゲット固有の構成。ターゲット・システムのプロビジョニングまたはリコンシリエーションの実行中にバンドルによって使用されます。パラメータのリストは、ターゲットごとに異なります。

  • objectClass: それぞれのテンプレートには、プロビジョニングまたはリコンシリエーションされるターゲット・システム上のオブジェクトを表すオブジェクト・クラスが少なくとも1つあります。

    • provisioningConfig: プロビジョニング関連の構成。

      • validationScript: プロビジョニング前にターゲット・システムで実行されるGroovy検証スクリプト。

      • transformationScript: データのプロビジョニング前に実行されるGroovy変換スクリプト。

      • capabilities: ターゲット・システムのバンドルでサポートされている操作のリスト。

    • reconConfig: リコンシリエーション関連の構成。

      • reconJobDetails: Oracle Identity Managerにデータをリコンサイルするジョブのリスト。

      • identityCorrelationRule: 所有者一致のルール。このルールは、ターゲット属性とOracle Identity Managerユーザー属性の間で定義されます。

      • situationResponses: 状況とそれに対応するレスポンスのリスト。たとえば、「一致が見つからない」という状況の場合、レスポンスは「ユーザーの作成」になります。

      • validationScript: Oracle Identity Managerにデータをリコンサイルする前に実行されるGroovy検証スクリプト。

      • transformationScript: Oracle Identity Managerにデータをリコンサイルする前に実行されるGroovy変換スクリプト。

    • form: objectClassごとに1つの親フォームを指定します。

      • schemaAttributes: objectClassのスキーマ構成。各スキーマ属性には、次の属性があります。

        • name: ターゲット・システムでの属性名。

        • dataType: 属性のデータ型。たとえば、Stringなど。

        • displayName: Oracle Identity Managerの属性名。

        • length: 属性に保存可能なデータの長さ。この属性がテンプレートで指定されていない場合は、デフォルトの長さで構成されます。ただし、この属性はインタフェースでは公開されません。

        • identityAttribute: ユーザー属性の名前。この名前を変更すると、それに対応するアカウント属性がターゲット・システムで強制的に更新されます。

          ノート:

          schemaAttributesのリストには、ユーザー・パスワードが含まれていません。この機能を追加する場合は、「設定」タブでプロビジョニングのオプションから機能を選択します。

        • keyField: リコンシリエーション・アカウント一致ルールを定義します。

        • keyFieldCaseInsensitive: リコンシリエーション・アカウント一致ルールが大/小文字を区別するかどうかを定義します。

        • required: 属性が必須かどうかを示します。

        • fieldType: スキーマ属性のタイプを表示します。この属性はレガシー目的のためのもので、ユーザーには公開されていません。テンプレートでタイプが指定されていない場合は、この属性がデフォルトのタイプで構成されます。

        • entitlement: スキーマ属性に権限としてのマークを付けます。このプロパティは、子スキーマ属性に継承されます。

        • reconcileable: 属性がリコンサイル可能かどうかを示します。

        • provisionable: 属性がプロビジョニング可能かどうかを示します。このプロパティは、親スキーマ属性から継承されます。

        • encrypted: 属性が暗号化されるかどうかを示します。

        • advanceFlags: 拡張フラグ(Lookup、Date、WriteBackなど)。

          • Lookup: Lookupは、ターゲットに値を送信する前に属性値から~を削除する必要がある場合に使用します。

          • Date: Datedatatype属性がターゲット上の日付と一致する場合に使用します。

          • WriteBack: WriteBackはプロビジョニング前にターゲットから属性を移入する場合に使用します。

        • Account Discriminator: アカウントの識別子としてスキーマ属性を設定します。アカウント識別子として複数のプロビジョニング可能フィールドを選択できます。アカウント識別子の詳細は、「アクセス・ポリシーで使用される用語」を参照してください。

        • listOfValues: 属性の値をリストするLookup属性の名前。

        • defaultValue: ターゲット・システムで使用可能な属性の値がないときに、リコンシリエーション時に使用される値。

        • provideOldValueOnUpdate: この属性の古い値を更新時にターゲットに伝播する必要がある場合はtrueに設定します。

        • dependentAttribute: この属性の更新時に、この属性の値がターゲット・アプリケーションに指定されます。

        ノート:

        provideOldValueOnUpdate属性とdependentAttribut属性は同時にはサポートされません。属性の更新時には、古い値または依存属性のどちらかをターゲットに渡します。

      • form: 親フォームまたはルート・フォームの子フォームを指定します。複数値属性に対応します。

        • Use Bulk: このオプションは、子表に関連するすべての操作のために子表の値のバルク更新アダプタを構成する場合に選択します。

          一部のターゲットは、すべての操作(新しい子の追加、既存の子の更新、子の削除などを含む)に対して子の値のバルク更新のみをサポートしています。このようなターゲットには、子フォームごとに「バルクの使用」オプションを選択する必要があります。

  • catalogAttributes: カタログ属性のリスト。

    • Audit Objective: Oracle Identity Analytics (OIA)証明に関連する値または説明を指定するテキスト・フィールド。

    • Risk Level: エンティティのリスク・レベル。サポートされる値は、「低リスク」、「中リスク」および「高リスク」です。

    • User Defined Tags: カタログ項目を説明する値。エンティティの検索に使用できます。

    • Approver User: カタログ項目を承認できるユーザー。これは、カタログ項目に対するリクエストの処理中、またはアテステーション中に使用されます。

    • Approver Role: カタログ項目を承認できるロール。

    • Certifier User: カタログ項目を証明できるユーザー。

    • Certifier Role: カタログ項目を証明できるロール。

    • Fulfillment User: カタログ項目のリクエストを完了または履行できるユーザー。

    • Fulfillment Role: カタログ項目に対するリクエストを完了または履行できるロール。

    • Certifiable: カタログ項目が証明可能かどうかを指定します。

  • organizations: アプリケーションが公開されている組織のリスト。

  • parentApplicationName: 現在のアプリケーションが依存しているアプリケーションの名前。たとえば、AD ExchangeアプリケーションがADアプリケーションに依存している場合は、parentApplicationNameにADアプリケーションを設定します。

21.2 アプリケーションの検索

「アプリケーション」ページでは、アプリケーション名、表示名、コネクタ名およびベース・アプリケーションに基づいてアプリケーションを検索できます。

アプリケーションを検索するには:
  1. Identity Self Serviceにログインします。
  2. 「管理」タブをクリックし、「アプリケーション」ボックスをクリックして「アプリケーション」ページを開きます。
  3. 検索リストで、次のいずれかを選択します。
    • 名前: アプリケーション名で検索します。

    • 表示名: 表示名で検索します。

    • コネクタ名: コネクタ名で検索します。

    • ベース・アプリケーション: ベース・アプリケーション名で検索します。

  4. 「検索」ボックスに検索条件を入力します。
  5. 「検索」アイコンをクリックします。

    検索結果表には、アプリケーション名、表示名、コネクタ名およびアプリケーションが表示されます。

21.3 アプリケーションの作成

「アプリケーションの作成」オプションを使用すると、ターゲット・アプリケーションまたは認可アプリケーションを作成できます。

アプリケーションの作成について、次の各項で説明します。

21.3.1 ターゲット・アプリケーションの作成

ターゲット・アプリケーションの作成には、基本情報の指定、スキーマ属性の更新、デフォルト属性の設定の確認と更新、アプリケーション情報の検証などのステップが含まれます。

アプリケーションの作成ウィザードに移動するには、「管理」タブで「アプリケーション」ボックスをクリックして「アプリケーション」ページを開きます。「アクション」メニューの「作成」をクリックして、「ターゲット」を選択します。または、ツールバーの「作成」をクリックし、「ターゲット」を選択してアプリケーションの作成ウィザードを開きます。

これ以降の後続の項でページごとに説明します。

21.3.1.1 ターゲット・アプリケーションの基本情報の指定
「基本情報」ページで、オンボードするアプリケーションを選択します。そのように行うには:
  1. デフォルトの非接続型テンプレートを使用して非接続型アプリケーションをオンボードする場合は、「切断」チェック・ボックスを選択します。

    ノート:

    カスタム・テンプレート用に非接続型アプリケーションを作成する場合は、「切断」チェック・ボックスを選択しません。ステップ3に進んでください。
  2. コネクタ・パッケージからアプリケーションを作成する場合は、「コネクタ・パッケージ」を選択します。「バンドルの選択」リストからコネクタを選択します。デフォルトでは、「バンドルの選択」には、OIM_HOME/server/ConnectorDefaultDirectoryに存在するコネクタ・バンドルのテンプレートのリストが表示されます。
    代替の場所にあるコネクタ・バンドルからテンプレートをロードするには、「代替コネクタ・ディレクトリ」フィールドにパスを指定して、「代替コネクタ・ディレクトリ」の横にある「代替ディレクトリからのコネクタ・リストのリロード」アイコンをクリックします。
  3. または、テンプレートを使用してアプリケーションを作成する場合は、「テンプレート」を選択します。「テンプレートの選択」を選択します。
  4. アプリケーションの「アプリケーション名」「表示名」および「説明」を入力します。「アプリケーション名」と「表示名」は必須フィールドです。「アプリケーション名」には空白を含めることができません。「表示名」は、リクエスト・カタログでアプリケーションを表すために使用されます。
  5. 選択したバンドルまたはテンプレートに応じて、コネクタの「基本構成」と「拡張設定」が表示されることがあります。

    ノート:

    • 「基本構成」セクションと「拡張設定」セクションのパラメータは、選択したコネクタに応じて異なります。これらのパラメータについてのさらなる情報は、次のURLにあるOracle Help Centerで入手可能な対応するコネクタのドキュメントを参照してください:

      https://docs.oracle.com/middleware/12213/oig/index.html

    • バンドル・パッチ12.2.1.3.180413を適用すると、「拡張設定」セクションで、「属性の追加」オプションを使用して新しい属性を追加できます。

      属性を追加するには:

      1. 「属性の追加」をクリックします。新規属性ウィンドウが表示されます。

      2. 「名前」「値」「カテゴリ」および「表示名」を入力し、「OK」をクリックします。

        新しい属性が「カスタム」セクションに表示されます。

    必要になる基本構成のパラメータを更新します。「テスト接続」ボタンを使用して、ターゲット・システムとサーバー間の接続が正常かどうかを確認します。

  6. 「次」をクリックして「スキーマ」ページを開きます。
21.3.1.2 ターゲット・アプリケーションのスキーマ情報の指定

「スキーマ」ページで、アカウントおよび権限のスキーマ属性を管理できます。スキーマの既存の属性を編集または削除できます。「スキーマ」ページで必要な作業をすべて完了したら、「次」をクリックして「設定」ページを開きます。

属性と子フォームの追加について、次の各項で説明します。

21.3.1.2.1 属性の追加
新しい属性を追加するには:
  1. 「属性の追加」をクリックして、新しい行を表に追加します。次の「アプリケーション属性」の詳細を指定します。
    • アイデンティティ属性: ユーザー属性のリストから属性を選択します。この属性は、ユーザー属性の変更をユーザー・リソース・アカウントに伝播するユーザー・トリガー・プロセスに使用されます。たとえば、ユーザーの「FirstName」が変更された場合は、その変更内容がターゲット上のユーザー・アカウントのFNameにプッシュ・ダウンされてから、「アイデンティティ属性」リストで「FirstName」を選択して、それに対応する「ターゲット属性」リストで「FName」を選択します。

      ユーザー・トリガー型プロセスの詳細は、『Oracle Identity Governanceのためのアプリケーションの開発とカスタマイズ』プロセス定義フォームに関する項を参照してください。

    • 表示名: Oracle Identity Managerの属性の表示名を入力します。

    • ターゲット属性: ターゲット属性の名前を入力します。スキーマ検出をサポートするコネクタの場合は、「基本構成」セクションで正しい接続詳細が指定されていると、ターゲット上のすべての属性が「ターゲット属性」ドロップダウンにリストされます。このリストからターゲット属性名を選択します。

    • データ型: リストからデータ型を選択します。

  2. 次に示す「プロビジョニング・プロパティ」の説明を指定します。
    • 必須: この属性がターゲットのプロビジョニングに必須の場合は選択します。

    • プロビジョニング・フィールド: この属性がプロビジョニング・フォームに存在している必要がある場合に選択します。

  3. 次に示す「リコンシリエーション・プロパティ」の説明を指定します。
    • リコンシリエーション・フィールド: この属性値をリコンシリエーション・プロセスで取得する必要がある場合に選択します。

    • キー・フィールド: リコンシリエーション時に、エンティティの照合に属性を使用する場合に選択します。

    • 大/小文字を区別しない: アカウント一致ルールで大/小文字を区別しない場合に選択します。

  4. 別のプロパティを属性に追加するには、「拡張設定」アイコンアイコンをクリックします。「拡張設定」ウィンドウが表示されます。次の拡張設定を指定します。
    • アカウント識別子: この属性に「アカウント識別子」フィールドの1つとしてのマークを付ける場合に選択します。フォーム内のそのような属性のすべてのコレクションによって、アカウントが作成される論理エンティティを一意に識別します。アカウント識別子の詳細は、「アクセス・ポリシーで使用される用語」を参照してください。

    • 参照: この属性の値が「参照」フィールドに設定されていることを示す場合に選択します。「値リスト」フィールドに、この属性の許容値のリストを保持する参照の名前を入力します。プロビジョニング時には、この属性の値に、このリストのいずれかの値を設定できます。指定した参照名が存在しない場合は、空の値のリストで新しい参照が作成されます。これは、属性の「データ型」がStringの場合にのみ当てはまります。

    • 日付: ターゲット上で属性のデータ型が「日付」の場合に選択して、Oracle Identity ManagerのString型属性にマップする必要があります。

    • ライトバック: プロビジョニングのユースケースで、属性をライトバックとして設定する場合に選択します。アカウントのプロビジョニングの完了時に、Oracle Identity Managerのこの属性の値がターゲットの値で更新されます。たとえば、__UID__フィールドのタイプはライトバックです。ターゲットでUIDの値が生成され、プロビジョニング後にOracle Identity Managerに書き戻されます。

    • 更新の古い値を指定してください: ターゲット上の属性の更新操作で新しい値とともに古い値もターゲットに伝播する必要がある場合に選択します。たとえば、アカウントのパスワードを変更するには、新しいパスワードとともに古いパスワードの値も指定する必要があります。

    • 依存属性: ターゲット上のこの属性の更新操作が依存しているOracle Identity Manager属性の名前を入力または選択します。

  5. 属性を削除する場合は、その属性に関連付けられている「削除」アイコンアイコンをクリックします。
21.3.1.2.2 子フォームの追加

子フォームを追加するには:
  1. 「子フォームの追加」をクリックして、「子フォームの追加」ウィンドウを表示します。
  2. フォーム名を入力して、「OK」をクリックします。新しい子フォームが作成されます。
  3. 属性の詳細を入力します。これは、「属性の追加」に示した属性の詳細と同様です。
  4. アプリケーション属性の詳細の「表示名」「ターゲット属性」および「データ型」を指定します。
  5. プロビジョニング・プロパティの「必須」を指定します。
  6. リコンシリエーション・プロパティの「リコンシリエーション・フィールド」「キー・フィールド」および「大/小文字を区別しない」を指定します。
  7. 別のプロパティを属性に追加するには、「拡張設定」アイコンアイコンをクリックします。「拡張設定」ウィンドウが表示されます。拡張設定の「参照」「日付」ライトバックおよび「権限」(この属性に権限としてのマークを付ける必要がある場合に選択)を指定します。
  8. 子の値のバルク更新のみをサポートするターゲットの場合は、「バルクの使用」オプションを選択します。
  9. 「フォームの削除」をクリックして、子フォームを削除します。
21.3.1.3 ターゲット・アプリケーションの設定情報の指定

「設定」ページでは、プロビジョニング、リコンシリエーション、カタログおよび組織のパブリケーションに関連するデフォルト設定の確認とカスタマイズを実行できます。「設定」ページで必要になるすべての操作を完了してから、「次」をクリックして「終了」ページに移動します。

「プレビュー設定」タブを展開して、次の操作を実行します。

21.3.1.3.1 プロビジョニング構成の更新
「プロビジョニング」タブで、次のステップを実行してプロビジョニング構成を更新します。
  1. 「グローバル構成」セクションでは、事前定義済のプロビジョニング構成の確認と必要に応じた更新を実行できます。
    • 検証スクリプト: 検証スクリプトを確認するか、スクリプトを含める場合にクリックします。検証スクリプト・エディタが表示されます。スクリプトが存在する場合は、検証スクリプトの編集またはスクリプトのコンパイルを実行できます。

    • 変換スクリプト: 変換スクリプトを確認するか、スクリプトを含める場合にクリックします。変換スクリプト・エディタが表示されます。スクリプトが存在する場合は、変換スクリプトの編集またはスクリプトのコンパイルを実行できます。

    • アカウント名: リストからアカウントを一意に識別する属性を選択します。このリストは、アカウント名として設定できるすべてのスキーマ属性で構成されています。

    検証および変換スクリプトの作成方法の詳細は、「Groovyスクリプトのカスタマイズについて」を参照してください。

  2. 「機能」セクションでは、このアプリケーションに関連付けられたプロビジョニング操作の事前および事後アクション・スクリプトの確認と、必要に応じたスクリプトの更新を実行できます。プロビジョニング操作には、ユーザー・パスワードの作成、有効化、無効化、更新(バルク)、削除および変更が含まれます。

    ノート:

    コネクタの特定のプロビジョニング操作でスクリプトの実行がサポートされていない場合は、「アクション・スクリプト」ボタンが無効になります。

    そのように行うには:

    1. 事前および事後アクション・スクリプトの確認、編集または追加する機能を選択し、その機能に関連付けられた「アクション・スクリプト」をクリックして、アクション・スクリプト・エディタを開きます。

    2. プロビジョニングの前後にスクリプトを実行するように構成できます。プロビジョニング操作の前に実行する必要があるスクリプトを構成するには「トリガー時間」が「次より前」に設定されたパネルを使用し、プロビジョニング操作の後に実行する必要があるスクリプトを構成するには「トリガー時間」が「次より後」に設定されたパネルを使用します。

    3. スクリプトの記述に使用した「言語」を入力します。たとえば、シェルなど。

      ノート:

      サポートされている言語の詳細とコネクタ・タイプごとに特定のアクションのスクリプト実行がサポートされているかどうかの詳細は、対応するコネクタのドキュメントを参照してください。
    4. 「ターゲット」を入力して、スクリプトを実行する必要がある場所を指定します。たとえば、「ターゲット」を「リソース」に設定すると、ターゲット・システムを実行しているコンピュータでスクリプトが実行されます。「ターゲット」をコネクタに設定すると、スクリプトはOracle Identity Managerサーバーまたはコネクタ・サーバー(構成されている場合)で実行されます。

    5. スクリプトを入力し、「コンパイル」をクリックしてスクリプトが有効かどうかを確認します。

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

      ノート:

      コネクタ・インストーラで作成したアプリケーション用のスクリプトは追加や管理ができません。ただし、Design Consoleが提供するJavaベースの変換と検証は引き続き機能します。
21.3.1.3.2 リコンシリエーション構成の更新

「リコンシリエーション」タブでは、必要な事前定義済の一致ルール、状況とレスポンスおよびリコンシリエーション・ジョブを確認またはカスタマイズできます。

次の手順を実行して、リコンシリエーション構成を更新します。

21.3.1.3.2.1 アイデンティティ相関ルールの更新
「アイデンティティ相関ルール」セクションでは、単純および複合相関ルールの確認と必要に応じたルールの編集や追加を実行できます。ルールを追加するには:
  1. 単純ルールを追加する場合は、「単純相関ルール」を選択してルール条件を設定します。ルールが複数の条件に基づく場合は、「ルール要素の追加」をクリックして新しいルール要素を含めます。それぞれのルール要素が、1つのターゲット属性とユーザー属性またはアイデンティティ属性と一致します。これらのルール要素は、「AND」または「OR」演算子で区切ります。
  2. それ以外の場合、複合ルールを追加するには、「複合相関ルール」を選択してルール等式をJSON形式で入力します。ルールを検証するには、「JSON構文の検証」をクリックします。

    複合相関ルールは、次の場合に使用します。

    • ルールにネストされたルールが含まれる。次にネストされたルールの例を示します。

      {    
                "ruleOperator": "AND", 
                "ruleElement": [     
                    {           
                          "targetAttribute": "__NAME__",
                          "userAttribute": "User Login",
                          "elementOperator": "Equals",                          
                          "transformName": "NONE"      
                    },        
            ],    
            "identityCorrelationRule": [     
             {        
                 "ruleOperator": "OR",
                 "ruleElement": [            
                    {                  
                           "targetAttribute": "Mid Name", 
                           "userAttribute": "Middle Name",
                           "elementOperator": "Equals",
                           "transformName": "NONE" 
                    },     
                    {
                           "targetAttribute": "Last Name",
                           "userAttribute": "Last Name",
                           "elementOperator": "Equals",
                           "transformName": "NONE",
                           "caseSensitive": true
                    }
                 ]   
              },
              {  
                 "ruleOperator": "OR",
                 "ruleElement": [            
                     { 
            
                           "targetAttribute": "First Name",  
                           "userAttribute": "First Name",         
                           "elementOperator": "Equals",
                           "transformName": "NONE",
                     }
                 ]   
              }            
          ]
       }
    • ターゲット属性のデータ値の一部とアイデンティティ属性値またはユーザー属性値が一致するようにターゲット・システムを構成する必要がある場合は、ルール内でなんらかの変換を指定できます。たとえば、ターゲット「FirstName」の部分文字列とOracle Identity Managerユーザー「FirstName」を一致する場合です。サポートされている変換は次のとおりです。

      • Substring (たとえば、開始ポイントや終了ポイント)。

      • Endstring (たとえば、終了ポイント)。

      • Tokenize (たとえば、Delimiters、Token Number、Space Delimiter)。

      次に示すルールの例では、transformNameがTokenizeに設定されています。このルールによってターゲット属性_NAME_がOracle Identity Manager属性User Loginにマップされます。

      {   
             "ruleOperator": "AND",
             "ruleElement": [ 
                  {          
                      "targetAttribute": "__NAME__",
                      "userAttribute": "User Login",
                      "elementOperator": "Equals",
                      "transformName": "Tokenize",
                      "transformParams": [ 
                          {   
                              "name": "Space Delimiter",
                              "value": "FALSE"            
                          },   
                          {    
                              "name": "Token Number", 
                              "value": "1"             
                          },   
                          {   
                             "name": "Delimiters",
                             "value": "'@'"              
                          }   
                     ]     
                  }    
             ]
       }
21.3.1.3.2.2 状況とレスポンスの更新
「状況とレスポンス」セクションでは、状況とレスポンスを確認して、必要な場合は更新や新しい状況とレスポンスの追加を実行できます。そのように行うには:
  1. 新しい状況とレスポンスを追加するには、「追加」をクリックします。
  2. 「状況」リストから、「一致が見つからない」や「1つのエンティティの一致が見つかった」などの状況を選択します。
  3. 「レスポンス」リストから、「ユーザーの作成」や「リンクの確立」などの状況に適したレスポンスを選択します。
21.3.1.3.2.3 検証および変換スクリプトの更新
「検証と変換」セクションでは、groovyスクリプトに基づいた検証と変換ロジックの確認と必要に応じた更新または新しいロジックの追加を実行できます。「検証スクリプト」または「変換スクリプト」をクリックし、エディタを開いてスクリプトを含めます。

ノート:

  • コネクタ・インストーラで作成したアプリケーション用のスクリプトは追加や管理ができません。ただし、Design Consoleが提供するJavaベースの変換と検証は引き続き機能します。

  • Groovyスクリプト内のプロビジョニング属性値は、スキーマ・セクションで定義されている表示名でアクセスできます。そのためには、表示名に含まれる空白をアンダースコア文字(_)に置き換えます。

21.3.1.3.2.4 リコンシリエーション・ジョブの更新
「リコンシリエーション・ジョブ」セクションでは、リコンシリエーション・ジョブの確認と必要に応じた更新または新しいジョブの追加を実行できます。ジョブを追加するには:
  1. 「ジョブの追加」をクリックして、「新規ジョブ」ウィンドウを開きます。
  2. 「ジョブ名」と必須のパラメータおよびその値を入力して、「OK」をクリックします。既存のジョブにパラメータを追加するには、「パラメータの追加」オプションを使用します。「パラメータの追加」をクリックして、「パラメータ型の選択」ウィンドウを開きます。リストからパラメータ型を選択して、「OK」をクリックします。必須の詳細を入力して、「OK」をクリックします。

    設定可能なリコンシリエーション・ジョブは次のとおりです。

    • 完全: ターゲット・システムから既存のすべてのユーザー・レコードをOracle Identity Managerにリコンサイルする場合に使用します。

    • 増分: 最後のリコンシリエーション実行後に作成または変更されたレコードのみをリコンサイルする場合に使用します。

    • 削除: 削除されたレコードのリコンシリエーションの際に使用します。

    • 権限: 参照フィールドの同期の際に使用します。

    ノート:

    特定のコネクタに対するデフォルトのリコンシリエーション・ジョブのセットについての情報は、次のURLにあるOracle Help Centerで入手可能な対応するコネクタのドキュメントを参照してください:

    http://docs.oracle.com/cd/E22999_01/index.htm

21.3.1.3.3 組織の構成の更新
「組織」タブで、このアプリケーションの公開先になる組織を選択します。デフォルトでは、アプリケーションは公開先が最上位組織になるように構成されています。組織を追加するには:
  1. 「追加」をクリックして、「組織の追加」ウィンドウを開きます。
  2. 組織を検索します。検索結果表から必要な組織を選択して、「選択」をクリックします。
  3. このアプリケーションを組織とその子組織に公開する場合は、「階層対応」を選択します。
21.3.1.3.4 カタログの構成の更新

「カタログ」タブでは、各種の構成関連カタログ・メタデータを設定できます。

更新可能な属性は次のとおりです。

  • カテゴリ: アプリケーションのカテゴリを入力します。

  • ユーザー定義タグ: この属性のユーザー定義タグを入力します。

  • 監査目的: 監査の目的を入力します。

  • 監査可能: アプリケーションが監査可能な場合は「はい」を選択します。それ以外の場合は「いいえ」を選択します。

  • リクエスト可能: アプリケーションがリクエスト可能な場合は「はい」を選択します。それ以外の場合は、「いいえ」を選択します。「リクエスト可能」を「はい」に設定すると、次のフィールドが有効になります。

    • 履行ロール: 「検索」アイコンをクリックし、履行ロールを検索して選択します。

    • 承認者ユーザー: 「検索」アイコンをクリックし、ユーザーを検索して選択します。

    • 承認者ロール: 「検索」アイコンをクリックし、承認者ロールを検索して選択します。

    • 履行ユーザー: 「検索」アイコンをクリックし、履行ユーザーを検索して選択します。

  • 証明可能: 属性が証明可能な場合は「はい」を選択します。それ以外の場合は、「いいえ」を選択します。「証明可能」を「はい」に設定すると、次に示すフィールドが有効になります。

    • 証明者ユーザー: 「検索」アイコンをクリックし、証明者ユーザーを検索して選択します。

    • 証明者ロール: 「検索」アイコンをクリックし、証明者ロールを検索して選択します。

  • リスク・レベル:: リスク・レベルとして、「高リスク」、「中リスク」または「低リスク」を選択します。

21.3.1.4 ターゲット・アプリケーションの詳細の検証

「終了」ページでは、アプリケーションの作成に使用される詳細を確認します。なんらかの変更が必要な場合は、「戻る」をクリックして必要な変更を加えます。詳細に問題がない場合は、「終了」をクリックしてアプリケーションを作成します。

デフォルトのリクエスト・フォームを作成するかどうかの確認を求められたら、「はい」または「いいえ」をクリックします。

デフォルトのリクエスト・フォームの作成を選択すると、アプリケーションと同じ名前でデフォルト・フォームが作成されます。デフォルト・フォームは、後から変更することはできません。そのため、カスタマイズする場合は新規作成する必要があります。新しいデフォルト・フォームを確認するには、Oracle Identity Self Serviceに再ログインする必要があります。ただし、別のユーザーは作成直後にデフォルト・フォームを確認できます。

アプリケーションの作成後にサンドボックス関連の変更を実行する場合は、現在のOracle Identity Self Serviceセッションからログアウトして再ログインする必要があります。

21.3.2 認可アプリケーションの作成

認可アプリケーションの作成には、基本情報の指定、スキーマ属性の更新、デフォルト属性の設定の確認と更新、アプリケーション情報の検証などのステップが含まれます。

アプリケーションの作成ウィザードに移動するには、「管理」タブで「アプリケーション」ボックスをクリックして「アプリケーション」ページを開きます。「アクション」メニューから、「作成」をクリックして「管理」を選択します。または、ツールバーの「作成」をクリックし、「管理」を選択してアプリケーションの作成ウィザードを開きます。

これ以降の後続の項でページごとに説明します。

21.3.2.1 認可アプリケーションの基本情報の指定
「基本情報」ページで、オンボードするアプリケーションを選択します。そのように行うには:
  1. コネクタ・パッケージからアプリケーションを作成する場合は、「コネクタ・パッケージ」を選択します。「バンドルの選択」リストからコネクタを選択します。デフォルトでは、「バンドルの選択」には、OIM_HOME/server/ConnectorDefaultDirectoryに存在するコネクタ・バンドルのテンプレートのリストが表示されます。
    代替の場所にあるコネクタ・バンドルからテンプレートをロードするには、「代替コネクタ・ディレクトリ」フィールドにパスを指定して、「代替コネクタ・ディレクトリ」の横にある「代替ディレクトリからのコネクタ・リストのリロード」アイコンをクリックします。
  2. または、テンプレートを使用してアプリケーションを作成する場合は、「テンプレート」を選択します。「テンプレートの選択」を選択します。
  3. アプリケーションの「アプリケーション名」「表示名」および「説明」を入力します。「アプリケーション名」と「表示名」は必須フィールドです。「アプリケーション名」には空白を含めることができません。「表示名」は、リクエスト・カタログでアプリケーションを表すために使用されます。
  4. 選択したバンドルまたはテンプレートに応じて、コネクタの「基本構成」と「拡張設定」が表示されることがあります。

    ノート:

    「基本構成」セクションと「拡張設定」セクションのパラメータは、選択したコネクタに応じて異なります。これらのパラメータについてのさらなる情報は、次のURLにあるOracle Help Centerで入手可能な対応するコネクタのドキュメントを参照してください:

    http://docs.oracle.com/cd/E22999_01/index.htm

    必要になる基本構成のパラメータを更新します。「テスト接続」ボタンを使用して、ターゲット・システムとサーバー間の接続が正常かどうかを確認します。

  5. 「次」をクリックして「スキーマ」ページを開きます。
21.3.2.2 認可アプリケーションのスキーマ情報の指定
「スキーマ」ページで、アカウントおよび権限のスキーマ属性を管理できます。スキーマの既存の属性を編集または削除できます。「スキーマ」ページで必要な作業をすべて完了したら、「次」をクリックして「設定」ページを開きます。新しい属性を追加するには:
  1. 「属性の追加」をクリックして、新しい行を表に追加します。次の「アプリケーション属性」の詳細を指定します。
    • アイデンティティ表示名: 属性の表示名を選択します。

    • ターゲット属性: ターゲット属性名を入力するか、リストから属性名を選択します。

    • データ型: リストからデータ型を選択します。

  2. 次に示す「リコンシリエーション・プロパティ」の説明を指定します。
    • 必須: この属性がターゲットのプロビジョニングに必須の場合は選択します。

    • キー・フィールド: リコンシリエーション時に、エンティティの照合に属性を使用する場合に選択します。

  3. 別のプロパティを属性に追加するには、「拡張設定」アイコンをクリックします。「拡張設定」ウィンドウが表示されます。デフォルト値を指定して、「OK」をクリックします。
21.3.2.3 認可アプリケーションの設定情報の指定

「設定」ページでは、リコンシリエーションおよび組織のパブリケーションに関連するデフォルト設定の確認とカスタマイズを実行できます。「設定」ページで必要になるすべての操作を完了してから、「次」をクリックして「終了」ページに移動します。

21.3.2.3.1 リコンシリエーション構成の更新

「リコンシリエーション」タブでは、必要な事前定義済の一致ルール、状況とレスポンスおよびリコンシリエーション・ジョブを確認またはカスタマイズできます。

次の手順を実行して、リコンシリエーション構成を更新します。

21.3.2.3.1.1 アイデンティティ相関ルールの更新
「アイデンティティ相関ルール」セクションでは、単純および複合相関ルールの確認と必要に応じたルールの編集や追加を実行できます。ルールを追加するには:
  1. 単純ルールを追加する場合は、「単純相関ルール」を選択してルール条件を設定します。ルールが複数の条件に基づく場合は、「ルール要素の追加」をクリックして新しいルール要素を含めます。それぞれのルール要素が、1つのターゲット属性とユーザー属性またはアイデンティティ属性と一致します。これらのルール要素は、「AND」または「OR」演算子で区切ります。
  2. それ以外の場合、複合ルールを追加するには、「複合相関ルール」を選択してルール等式をJSON形式で入力します。ルールを検証するには、「JSON構文の検証」をクリックします。

    複合相関ルールは、次の場合に使用します。

    • ルールにネストされたルールが含まれる。次にネストされたルールの例を示します。

      {    
                "ruleOperator": "AND", 
                "ruleElement": [     
                    {           
                          "targetAttribute": "__NAME__",
                          "userAttribute": "User Login",
                          "elementOperator": "Equals",                          
                          "transformName": "NONE"      
                    },        
            ],    
            "identityCorrelationRule": [     
             {        
                 "ruleOperator": "OR",
                 "ruleElement": [            
                    {                  
                           "targetAttribute": "Mid Name", 
                           "userAttribute": "Middle Name",
                           "elementOperator": "Equals",
                           "transformName": "NONE" 
                    },     
                    {
                           "targetAttribute": "Last Name",
                           "userAttribute": "Last Name",
                           "elementOperator": "Equals",
                           "transformName": "NONE",
                           "caseSensitive": true
                    }
                 ]   
              },
              {  
                 "ruleOperator": "OR",
                 "ruleElement": [            
                     { 
            
                           "targetAttribute": "First Name",  
                           "userAttribute": "First Name",         
                           "elementOperator": "Equals",
                           "transformName": "NONE",
                     }
                 ]   
              }            
          ]
       }
    • ターゲット属性のデータ値の一部とアイデンティティ属性値またはユーザー属性値が一致するようにターゲット・システムを構成する必要がある場合は、ルール内でなんらかの変換を指定できます。たとえば、ターゲット「FirstName」の部分文字列とOracle Identity Managerユーザー「FirstName」を一致する場合です。サポートされている変換は次のとおりです。

      • Substring (たとえば、開始ポイントや終了ポイント)。

      • Endstring (たとえば、終了ポイント)。

      • Tokenize (たとえば、Delimiters、Token Number、Space Delimiter)。

      次に示すルールの例では、transformNameがTokenizeに設定されています。このルールによってターゲット属性_NAME_がOracle Identity Manager属性User Loginにマップされます。

      {   
             "ruleOperator": "AND",
             "ruleElement": [ 
                  {          
                      "targetAttribute": "__NAME__",
                      "userAttribute": "User Login",
                      "elementOperator": "Equals",
                      "transformName": "Tokenize",
                      "transformParams": [ 
                          {   
                              "name": "Space Delimiter",
                              "value": "FALSE"            
                          },   
                          {    
                              "name": "Token Number", 
                              "value": "1"             
                          },   
                          {   
                             "name": "Delimiters",
                             "value": "'@'"              
                          }   
                     ]     
                  }    
             ]
       }
21.3.2.3.1.2 状況とレスポンスの更新
「状況とレスポンス」セクションでは、状況とレスポンスを確認して、必要な場合は更新や新しい状況とレスポンスの追加を実行できます。そのように行うには:
  1. 新しい状況とレスポンスを追加するには、「追加」をクリックします。
  2. 「状況」リストから、「一致が見つからない」や「1つのエンティティの一致が見つかった」などの状況を選択します。
  3. 「レスポンス」リストから、「ユーザーの作成」や「リンクの確立」などの状況に適したレスポンスを選択します。
21.3.2.3.1.3 検証および変換スクリプトの更新
「検証と変換」セクションでは、groovyスクリプトに基づいた検証と変換ロジックの確認と必要に応じた更新または新しいロジックの追加を実行できます。「検証スクリプト」または「変換スクリプト」をクリックし、エディタを開いてスクリプトを含めます。

ノート:

  • コネクタ・インストーラで作成したアプリケーション用のスクリプトは追加や管理ができません。ただし、Design Consoleが提供するJavaベースの変換と検証は引き続き機能します。

  • Groovyスクリプト内のプロビジョニング属性値は、スキーマ・セクションで定義されている表示名でアクセスできます。そのためには、表示名に含まれる空白をアンダースコア文字(_)に置き換えます。

21.3.2.3.1.4 リコンシリエーション・ジョブの更新
「リコンシリエーション・ジョブ」セクションでは、リコンシリエーション・ジョブの確認と必要に応じた更新または新しいジョブの追加を実行できます。ジョブを追加するには:
  1. 「ジョブの追加」をクリックして、「新規ジョブ」ウィンドウを開きます。
  2. 「ジョブ名」と必須のパラメータおよびその値を入力して、「OK」をクリックします。既存のジョブにパラメータを追加するには、「パラメータの追加」オプションを使用します。「パラメータの追加」をクリックして、「パラメータ型の選択」ウィンドウを開きます。リストからパラメータ型を選択して、「OK」をクリックします。必須の詳細を入力して、「OK」をクリックします。

    設定可能なリコンシリエーション・ジョブは次のとおりです。

    • 完全: ターゲット・システムから既存のすべてのユーザー・レコードをOracle Identity Managerにリコンサイルする場合に使用します。

    • 増分: 最後のリコンシリエーション実行後に作成または変更されたレコードのみをリコンサイルする場合に使用します。

    • 削除: 削除されたレコードのリコンシリエーションの際に使用します。

    ノート:

    特定のコネクタに対するデフォルトのリコンシリエーション・ジョブのセットについての情報は、次のURLにあるOracle Help Centerで入手可能な対応するコネクタのドキュメントを参照してください:

    http://docs.oracle.com/cd/E22999_01/index.htm

21.3.2.3.2 組織の構成の更新
「組織」タブで、このアプリケーションの公開先になる組織を選択します。デフォルトでは、アプリケーションは公開先が最上位組織になるように構成されています。組織を追加するには:
  1. 「追加」をクリックして、「組織の追加」ウィンドウを開きます。
  2. 組織を検索します。検索結果表から必要な組織を選択して、「選択」をクリックします。
  3. このアプリケーションを組織とその子組織に公開する場合は、「階層対応」を選択します。
21.3.2.4 認可アプリケーションの詳細の検証
「終了」ページでは、アプリケーションの作成に使用される詳細を確認します。なんらかの変更が必要な場合は、「戻る」をクリックして必要な変更を加えます。詳細に問題がない場合は、「終了」をクリックしてアプリケーションを作成します。

21.4 テンプレートの作成

「アプリケーションの作成」オプションを使用すると、ターゲット・テンプレートまたは認可テンプレートを作成して、将来の使用のためにデータベースに保存できます。

テンプレートの作成について、次の各項で説明します。

21.4.1 認可テンプレートの作成

認可テンプレートを作成するには:
  1. 認可アプリケーションの作成ウィザードの「終了」ページが表示されるまで、「認可アプリケーションの作成」で説明したすべてのステップを実行します。
  2. 「終了」ページで次の操作を実行します。

    「テンプレートとして保存」をクリックして、テンプレートを作成します。「テンプレートとして保存」ウィンドウが表示されます。

    「テンプレート名」「説明」を入力して、「OK」をクリックします。

21.4.2 ターゲット・テンプレートの作成

ターゲット・テンプレートを作成するには:
  1. ターゲット・アプリケーションの作成ウィザードの「終了」ページが表示されるまで、「ターゲット・アプリケーションの作成」で説明したすべてのステップを実行します。
  2. 「終了」ページで次の操作を実行します。
    1. 「テンプレートとして保存」をクリックして、テンプレートを作成します。「テンプレートとして保存」ウィンドウが表示されます。
      「テンプレート名」「説明」を入力して、「OK」をクリックします。

21.5 アプリケーションの変更

コネクタ・インストール・ウィザードを使用して作成したアプリケーションや、「アプリケーションの作成」オプションを使用して作成したアプリケーションは編集できます。

21.5.1 コネクタ・インストール・ウィザードを使用して作成したアプリケーションの編集

コネクタ・インストール・ウィザードを使用して認可アプリケーションが作成されると、デフォルトのアプリケーション・インスタンスは作成されません。そのため、Identity Self Serviceの「アプリケーション」ページではアプリケーションを編集できません。コネクタ・インストール・ウィザードを使用して作成した認可アプリケーションを編集するには、次に示すステップを実行します。

  1. このアプリケーションのインスタンスを作成するために、ApplicationInstanceService.addApplicationInstance(ApplicationInstance appInst) APIを作成します。

  2. アプリケーション・インスタンスの作成後、アプリケーションのテンプレートを作成するアプリケーション・テンプレート生成ジョブを実行します。

    ノート:

    コネクタ・インストーラで作成したアプリケーション用のスクリプトは追加や管理ができません。ただし、Design Consoleが提供するJavaベースの変換と検証はそのまま機能します。

21.5.2 アプリケーションの編集

アプリケーションを編集するには:
  1. Oracle Identity Self Serviceにログインします。
  2. 「管理」タブをクリックします。「アプリケーション」ボックスをクリックして、「アプリケーション」ページを開きます。
  3. アプリケーションを選択します。
  4. 「アクション」メニューで、「編集」を選択します。または、ツールバーにある「編集」をクリックします。

    ノート:

    アプリケーションがリストされている表では、アプリケーション名がハイパーリンクになっています。このハイパーリンクをクリックして、アプリケーションの詳細が含まれるページを開きます。このページで詳細を編集できます。

    表内の「ベース・アプリケーション」フィールドには、アプリケーションがベース・アプリケーションとインスタンスのどちらであるかが示されます。ベース・アプリケーションと共有される構成は、エディタ・オプションを使用して変更することはできません。

  5. アプリケーションの詳細ページの「基本情報」タブ、「スキーマ」タブまたは「設定」タブで、必要に応じて属性の値を変更します。

    ノート:

    アプリケーションの編集時に、新しいプロビジョニング可能スキーマ属性を追加する場合や既存のプロビジョニング可能スキーマ属性の表示名を更新する場合は、アプリケーションの既存のアカウントを更新する前に、「フォーム・アップグレード・ジョブ」スケジュール済ジョブを実行していることを確認してください。

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

21.5.3 テンプレートの編集

テンプレートの変更には、「アプリケーションの作成」オプションを使用できます。「基本情報」タブで、「テンプレート」オプションを使用してテンプレートを選択します。変更を加えてから、「テンプレートとして保存」オプションを使用してテンプレートとして保存します。

21.6 アプリケーションのクローニング

アプリケーションをクローニングすると、クローニングされたアプリケーションにベース・アプリケーションの構成がすべてコピーされます。

アプリケーションをクローンするには:
  1. Oracle Identity Self Serviceにログインします。
  2. 「管理」タブをクリックします。「アプリケーション」ボックスをクリックして、「アプリケーション」ページを開きます。
  3. アプリケーションを選択します。
  4. 「アクション」メニューで、「クローン」を選択します。または、ツールバーの「クローン」をクリックして、「クローン・アプリケーション」ページを開きます。
  5. 「クローン・アプリケーション」ページで次の操作を実行します。
    1. クローン・アプリケーションの「アプリケーション名」「表示名」および「説明」を入力します。「アプリケーション名」と「表示名」は必須フィールドです。「アプリケーション名」には空白を含めることができません。「表示名」は、リクエスト・カタログでアプリケーションを表すために使用されます。
    2. 「基本情報」ページ、「スキーマ」ページおよび「設定」ページで必要に応じて属性の値を変更します。
  6. 「適用」をクリックします。

    ターゲット・アプリケーションのクローニングを実行していると、デフォルトのリクエスト・フォームを作成するかどうかの確認を求められます。「はい」または「いいえ」をクリックします。

    デフォルトのリクエスト・フォームの作成を選択すると、アプリケーションと同じ名前でデフォルト・フォームが作成されます。デフォルト・フォームは後から変更することはできません。そのため、カスタマイズする場合は新しいフォームの作成が必要になります。作成したデフォルト・フォームを確認するには、Oracle Identity Self Serviceに再ログインする必要があります。ただし、別のユーザーは作成後にデフォルト・フォームを確認できます。

    アプリケーションの作成後、サンドボックス関連の変更を実行する場合は、現在のOracle Identity Self Serviceセッションからログアウトして再ログインする必要があります。

21.7 インスタンス・アプリケーションの作成

ベース・アプリケーションと同じ構成のアプリケーション・インスタンスを作成できます。

ノート:

インスタンスとベース・アプリケーションの間で共有される構成は次のとおりです。
  • 拡張構成

  • スキーマ構成

  • プロビジョニング構成

  • リコンシリエーション構成

インスタンス・アプリケーションを作成するには:
  1. Oracle Identity Self Serviceにログインします。
  2. 「管理」タブをクリックします。「アプリケーション」ボックスをクリックして、「アプリケーション」ページを開きます。
  3. アプリケーションを選択します。
  4. 「アクション」メニューから、インスタンスの作成」を選択します。または、ツールバーの「インスタンスの作成」をクリックして、インスタンス・アプリケーションの作成ページを開きます。
  5. 「基本情報」タブで次の操作を実行します。
    1. インスタンス・アプリケーションの「アプリケーション名」「表示名」および「説明」を入力します。「アプリケーション名」と「表示名」は必須フィールドです。「アプリケーション名」には空白を含めることができません。「表示名」は、リクエスト・カタログでアプリケーションを表すために使用されます。

      「ベース・アプリケーション」フィールドには、インスタンスを作成するアプリケーションが表示されます。

    2. 選択したベース・アプリケーションによっては、コネクタの「基本構成」が表示されます。必要なパラメータを更新してから、「テスト接続」ボタンを使用してターゲット・システムとサーバーの間の接続に問題がないことを確認します。
  6. 選択したベース・アプリケーションによっては、「設定」タブに更新可能な情報が含まれていることがあります。ベース・アプリケーションがターゲット・アプリケーションの場合は、「組織』タブと「カタログ」タブが表示されます。ベース・アプリケーションが認可アプリケーションの場合は、「組織」タブが表示されます。必要に応じて属性の値を変更します。
  7. 「適用」をクリックします。

21.8 バルクでのアプリケーションの作成

ベース・アプリケーションとインスタンス・アプリケーションは、「アプリケーションのバルク作成」スケジュール済タスクを使用するとバルクでロードできます。

このスケジュール済タスクの詳細は、『Oracle Identity Governanceの管理』事前定義済のスケジュール済タスクに関する項を参照してください。

テンプレートは次のように処理されます。

  • ベース・アプリケーション名が含まれていないテンプレートが最初に処理され、新しいアプリケーションが同期的に作成されます。

  • ベース・アプリケーション名が含まれているテンプレートが、インスタンス・アプリケーションの作成に使用されます。こうしたテンプレートは、非同期的に処理されます。

テンプレートの詳細と作成方法は、「アプリケーション・テンプレート」を参照してください。

ノート:

「アプリケーションのバルク作成」スケジュール済タスクのジョブ実行を使用してアプリケーションを作成するときには、「アイデンティティ・システム管理」からサンドボックスを使用してUIフォームを作成します。

21.9 アプリケーションの削除

Oracle Identity Self Serviceからアプリケーションを削除することはできません。

アプリケーションの作成プロセスが失敗したときなど、状況によっては、部分的にコミットされたアプリケーションがシステムに含まれることがあります。部分的にコミットされたアプリケーションをシステムから削除するには、コネクタのアンインストール・ユーティリティを実行します。詳細は、『Oracle Identity Governanceの管理』コネクタのアンインストールに関する項を参照してください。

21.10 Groovyスクリプトのカスタマイズについて

Groovy Helperには、リコンシリエーションやプロビジョニングの操作時にデータを変換および検証する際に役立つオプションがあります。

次のオプションを使用できます。

  • プロビジョニング・メカニズム情報: context.provisionMechanismメソッドを呼び出して、Groovy Helperから次のプロビジョニング・メカニズム情報を取得します。

    • REQUEST

    • ADMIN

    • POLICY

    これらの値では、大文字と小文字が区別されます。

  • 操作情報: context.operationTypeメソッドを呼び出して、Groovy Helperから次の操作のタイプを取得します。

    • create

    • modify

    これらの値では、大文字と小文字が区別されます。

  • 共通データ・コンテナ情報:

    • リクエスタ情報: context.requesterメソッドを呼び出して、Groovy Helperからのリクエスタ情報(ユーザーが開始したプロビジョニング・リクエストに関する情報)を識別します。ユーザー属性が取得できるユーザー・オブジェクトが返されます。たとえば、context.requester.getAttribute("User Login")はリクエスタのユーザーIDを返します。

    • リクエスタのマネージャ情報: context.requesterManagerメソッドを呼び出して、Groovy Helperからリクエスタのマネージャ情報(プロビジョニング・リクエストを開始したユーザーのマネージャに関する情報)を識別します。ユーザー属性が取得できるユーザー・オブジェクトが返されます。たとえば、context.requesterManager.getAttribute("User Login")はリクエスタのマネージャのユーザーIDを返します。

    • 受益者情報: context.beneficiaryメソッドを呼び出して、Groovy Helperから受益者情報(プロビジョニング・リクエストが開始されたユーザーの情報)を識別します。ユーザー属性が取得できるユーザー・オブジェクトが返されます。たとえば、context.beneficiary.getAttribute("User Login")は受益者のユーザーIDを返します。

    • 受益者のマネージャ情報: context.beneficiaryManagerメソッドを呼び出して、Groovy Helperから受益者のマネージャ情報(プロビジョニング・リクエストが開始されたユーザーのマネージャ)を識別します。ユーザー属性が取得できるユーザー・オブジェクトが返されます。たとえば、context.beneficiaryManager.getAttribute("User Login")は受益者のマネージャのユーザーIDを返します。

    • 受益者のパスワード情報: context.beneficiaryPasswordメソッドを呼び出してGroovy Helperから受益者のパスワードを識別します。

      ノート:

      ユーザー属性にアクセスする方法の詳細は、ユーザー管理APIを参照してください。

Groovy Helperのメソッドは次のようにして使用できます。

  • 導出属性: 複数の別の属性に依存する属性を形成できます。たとえば、氏名の属性は名、ミドル・ネーム、姓の属性の組合せになります。

    User_Id = context.beneficiary.getAttribute("User Login");
    First_Name = context.beneficiary.getAttribute("First Name");
    Last_Name = context.beneficiary.getAttribute("Last Name");
    Middle_Name = context.beneficiary.getAttribute("Middle Name");
    Full_Name = First_Name  + ". " + Middle_Name + ". " + Last_Name;
    
  • デフォルト値の属性: デフォルト値が設定されている必要のある属性を形成できます。たとえば、ユーザーが組織詳細を指定していない場合、デフォルト値がServer Technologyに設定されます。

    If (Organization == null || Organization == "")
    {
             Organization = "Server Technology";
    }
    
  • 変換済の属性: 値が変換される属性を形成できます。たとえば、@example.comがユーザーID属性に付加されます。

    User_Id = User_Id.toString()+"@example.com";

次に示すサンプル・スクリプトでは、プロビジョニングのタイプ(REQUEST、POLICY、ADMINなど)と実行される操作のタイプ(作成や変更など)に基づいてデータが変換されます。すべての変数値は初期化され、プロビジョニングおよびリコンシリエーションの操作で使用できます。ただし、スクリプト自体で定義および宣言されているresultListを除きます。

def resultList;
if (binding.variables.containsKey("context")) 
{ 
  if(context.operationType.equals("create"))
  { 
     if(context.provisionMechanism.equals("POLICY"))
     { 
         User_Id = context.beneficiary.getAttribute("User Login");
         First_Name = context.beneficiary.getAttribute("First Name");
         Last_Name = context.beneficiary.getAttribute("Last Name");
         Middle_Name = context.beneficiary.getAttribute("Middle Name");
         Full_Name = First_Name  + ". " + Middle_Name + ". " + Last_Name;
         Common_Name = Full_Name;
         Password = context.beneficiaryPassword; 
      }
      else if(context.provisionMechanism.equals("REQUEST") || context.provisionMechanism.equals("ADMIN"))
      {              
         Full_Name = First_Name  + ". " + Middle_Name + ". " + Last_Name;
         Common_Name = Full_Name;
      }              
      if(Organization_Name != null && Organization_Name.indexOf("~") != -1)
      {
         resultList = Organization_Name.tokenize("~");
         User_Full_DN = "CN=" + Common_Name + "," + resultList[1];
      }              
  } 
  else if(context.operationType.equals("modify"))
  {
      Full_Name = First_Name  + ". " + Middle_Name + ". " + Last_Name;
      Common_Name = Full_Name;
      if(Organization_Name != null && Organization_Name.indexOf("~")  !=  -1)
      {
         resultList = Organization_Name.tokenize("~");
         User_Full_DN = "CN=" + Common_Name + "," + resultList[1];
      }            
   }
}

次に示すサンプルの検証Groovyスクリプトは、ユーザーIDが指定されていないときにエラー・メッセージを表示します。

def effors = "";
if(User_Id == null || User_Id =="")
{ 
   errors = errors+" User Id cannot be null";
}
return errors;

この検証スクリプトでは、リコンシリエーションおよびプロビジョニングの操作から除外するアカウントのリストを指定できます。ユーザーIDが除外リストで指定されているアカウントは、リコンシリエーションおよびプロビジョニングの操作による影響を受けません。

次に、サンプルのリソース除外に対応する検証Groovyスクリプトを示します。

def errors = "";
def excludedUsers = ['user01','user02'];
def regexStr = /^[a-zA-Z0-9_]$/;
   if(!User_Id.matches(regexStr)) errors = errors+" Invalid UserId";
   if(excludedUsers.contains(User_Id)) errors = errors+" User Id lies in excluded list";
return errors;

アクション・スクリプトは、ユーザー・パスワードの作成、更新、有効化、無効化、変更の操作およびプロビジョニング削除の操作の前後に実行するように構成されます。たとえば、ユーザーの作成前に実行するようにスクリプトを構成できます。

次に示すアクション・スクリプトは、所定の名前でターゲット・システムにテキスト・ファイルを作成します。このスクリプトは、ADコネクタ用に構成できます。

echo create >> C:\%givenName%.txt

21.11 アプリケーション・オンボードのトラブルシューティング

アプリケーションのオンボードを実行しているときに発生する問題は、認可に関連していることや、テンプレートの作成にかかわる問題を反映していることがあります。

この項では、アプリケーションのオンボード時の問題を解決するためのトラブルシューティング手順について説明します。

問題

デフォルト組織以外の組織に属しているユーザーがアプリケーションを作成できません。

解決方法

そのユーザーに適切な管理ロールが設定されていることを確認してください。ApplicationInstanceAdministrator管理ロールが付与されているユーザーのみが、Identity Self Serviceの「アプリケーション」オプションで次のアクションを実行できます。

  • 管理ロールの制御の範囲で定義された組織内でのアプリケーションの作成、変更、削除または検索。

  • 親組織内でのアプリケーションの作成、変更、削除または検索。

管理者ロールの詳細は、「管理ロールの管理」を参照してください。

問題

アプリケーション・テンプレート生成ジョブを使用したアプリケーションのアップグレード前または後に、コネクタ・インストーラによって作成されたアプリケーションのテンプレートを生成できます。

解決方法

Lookup.AOB.Certified.Bundlesには、テンプレートが生成されるアプリケーションのバンドルに対応するエントリが必要です。Lookup.AOB.Certified.Bundlesは、次の入力で更新する必要があります。

  • キー: 詳細構成情報が含まれているバンドルの名前。

  • : コネクタの表示名(<コネクタ名>-CI.xmlファイルが構成フォルダに存在している必要があります)。

    コネクタ表示名とコネクタ・バージョンは、生成されたテンプレートで設定されます。特定のバンドル名対して一意のコネクタ表示名を識別できない場合は、参照内の値がUnidentifiedに設定され、テンプレートの生成時にコネクタ表示名とコネクタ・バージョンが設定されなくなります。適切なコネクタ表示名とバージョンは、アプリケーション管理者の責任で設定します。

ノート:

この参照には、認証済のバンドルのみが含まれます。

問題

プロビジョニングされたアカウントのリソース履歴に、フィールドの更新に関する追加のプロセス・タスクが示されます。

解決方法

これは予期された動作です。プロセス・タスクは、WritebackフィールドとSODフィールドを除くすべてのスキーマ属性のフィールドに対して作成されます。これに該当するプロセス・タスクは、フィールドの単一更新に関するものです。変換スクリプトの一環として導出属性とその値が更新される場合などに、プロセス・タスクがトリガーされることがあります。この場合、プロビジョニングされたアカウントのリソース履歴に、導出属性に対する追加のプロセス・タスクが表示されることがあります。

問題

パッケージoracle.iam.applicationではアプリケーション・オンボードのロギングが有効化されていますが、フロー全体のログが使用できません。

解決方法

アプリケーション・オンボードは、既存のプロビジョニング、リコンシリエーション、スケジューラおよびカタログのエンジンに依存します。アプリケーション・オンボードのロギングを有効にするには、基盤のエンジンをすべて有効にする必要があります。

問題

Design Consoleから、Identity Self Serviceの「アプリケーション」オプションを使用して作成したアプリケーションを管理しようとすると、予期しない動作が現れます。

解決方法

Identity Self Serviceの「アプリケーション」オプションを使用して作成したアプリケーションは、Design Consoleからは管理できません。