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

前
次

1 コネクタについて

Database User Managementコネクタは、Oracle Database、Microsoft SQL Server、MySQL、IBM DB2およびSybaseのデータベース・ユーザー管理表とOracle Identity Managerを統合します。

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

1.1 Database User Managementコネクタの概要

Oracle Identity Managerでは、アクセス権の管理、セキュリティおよびITリソースのプロビジョニングが自動化されています。Oracle Identity Managerコネクタは、Oracle Identity Managerとサード・パーティ製アプリケーションの統合に使用されます。このガイドでは、次のターゲット・システムでOracle Identity ManagerをDatabase User Management表と統合するためのコネクタをデプロイする手順について説明します。

  • Oracle Database

    Oracle Databaseでは、ログインおよびユーザー・エンティティは単一エンティティとして扱われます。このドキュメントでは、そのようなエンティティをログイン・エンティティと呼びます。

  • Microsoft SQL Server

  • MySQL

  • DB2

  • Sybase

Microsoft SQL ServerおよびSybaseでは、アクセス・エンティティは次のタイプに分けられます。

  • ユーザー・ログイン: ログイン・エンティティは認証目的で使用されます。

  • ユーザー: ユーザー・エンティティは認可またはアクセス制御の目的で使用されます。

Microsoft SQL ServerおよびSybaseでは、これらのエンティティは親(ログイン)要素および子(ユーザー)要素として扱われます。Oracle Identity Managerでは、これらのエンティティは個別の独立したエンティティとして扱われます。つまり、Microsoft SQL ServerおよびSybaseの場合、コネクタにはユーザー・プロビジョニング機能とログイン・プロビジョニング機能の両方が備わっています。

ノート:

このガイドでは、Oracle、MSSQL、MySQL、DB2、Sybaseなどのデータベース・リソースをターゲット・システムと表記している箇所があります。

1.2 動作保証されているコンポーネント

connector.htm#GUID-C2D995F1-879C-4568-A002-394B33262D5B__BABEJCJFに、コネクタの動作保証済コンポーネントを示します。

表1-1 動作保証されているコンポーネント

コンポーネント 要件

Oracle Identity Manager

Oracle Identity Managerの次のリリースのいずれかを使用できます。

  • Oracle Identity Governance 12c (12.2.1.4.0)

  • Oracle Identity Governance 12c (12.2.1.3.0)

  • Oracle Identity Managerリリース11g PS1 (11.1.1.5.3) BP03およびこのリリース・トラックでのそれ以降のBP

    Oracle Identity Manager 11.1.1.5.3を使用している場合、パッチ14163597および13897038をダウンロードして適用する必要があります。パッチをダウンロードするには、My Oracle Supportにサインインして、次の場所にある「パッチと更新版」ページでパッチ番号を検索します。

    https://support.oracle.com/

    ノート: このガイドでは、コネクタでサポートされるOracle Identity Managerリリース11.1.1.5 BP03および11.1.1シリーズの将来のリリースを示すために、Oracle Identity Managerリリース11.1.1を使用しています。

  • Oracle Identity Manager 11gリリース2 (11.1.2.0.4)およびこのリリース・トラックでのそれ以降のBP

  • Oracle Identity Manager 11gリリース2 PS3 (11.1.2.3.0)

ターゲット・システム

ターゲット・システムは次のいずれか。

  • Exadata V2

  • Oracle9i Database

  • Oracle Database 10g、11g(単一データベースまたはRAC実装のいずれかの場合)

  • Oracle Database 12c(単一データベース、プラガブル・データベース(PDB)、Oracle RAC実装の場合)

  • Oracle Database 19cまたは18c (単一データベース、プラガブル・データベース(PDB)、Oracle RAC実装の場合)
  • Microsoft SQL Server 2005、2008、2012、2014、2016、2017、2019

  • MySQL 5.x

  • IBM DB2 UDB 9.x

  • Sybase 15.x

コネクタ・サーバー

11.1.2.1.0

コネクタ・サーバーのJDK

JDK 1.6以上またはJRockit JDK 1.6以上。

ターゲット・システムのユーザー・アカウント

Oracle Identity Managerでは、ターゲット・システムでリコンシリエーションおよびプロビジョニング操作を実行するために、ターゲット・システムに応じて次のいずれかのユーザー・アカウントが使用されます。

  • Oracle Databaseの場合: sysdbaとしてsysまたはsystem

  • Microsoft SQL Serverの場合: sa(管理者)

  • MySQLの場合: root

  • DB2の場合: db2admin

  • Sybaseの場合: sa(管理者)

1.3 使用上の推奨事項

使用しているOracle Identity Managerバージョンに応じて、次のコネクタのいずれかをデプロイして使用する必要があります。

  • リリース9.1.0.2より後で、かつOracle Identity Manager 11g リリース1 (11.1.1.5.3)より前のOracle Identity Managerリリースを使用している場合、このコネクタの9.1.xバージョンを使用する必要があります。

  • Oracle Identity Manager 11g リリース1 (11.1.1.5.3)およびこのリリース・トラックの以降のBP、Oracle Identity Manager 11g リリース2 (11.1.2.0.4)およびこのリリース・トラックの以降のBP、またはOracle Identity Manager 11g リリース2 PS3 (11.1.2.3.0)およびこのリリース・トラックの以降のBPを使用している場合、このコネクタの最新の11.1.1.xバージョンを使用する必要があります。

  • ターゲット・システムとしてMicrosoft SQL Server 2000を使用している場合、使用しているOracle Identity Managerリリースに関係なく、このコネクタの9.1.xバージョンを使用する必要があります。

1.4 動作保証されている言語

このコネクタでは次の言語がサポートされます。

  • アラビア語

  • 中国語(簡体字)

  • 中国語(繁体字)

  • チェコ語

  • デンマーク語

  • オランダ語

  • 英語(イギリス)

  • 英語(アメリカ合衆国)

  • フィンランド語

  • フランス語

  • ドイツ語

  • ギリシャ語

  • ヘブライ語

  • ハンガリー語

  • イタリア語

  • 日本語

  • 韓国語

  • ノルウェー語

  • ポーランド語

  • ポルトガル語

  • ポルトガル語(ブラジル)

  • ルーマニア語

  • ロシア語

  • スロバキア語

  • スペイン語

  • スウェーデン語

  • タイ語

  • トルコ語

ノート:

ただし、一部のフィールドではマルチバイト・キャラクタのエントリがサポートされません。

1.5 コネクタのアーキテクチャ

コネクタを使用すると、Oracle Identity Managerを介してデータベース・アカウントを管理できます。connector.htm#GUID-9DFE5B66-B8D9-4D3C-9A99-53254C1EB4A0__BABHIECGに、コネクタのアーキテクチャを示します。

図1-1 コネクタのアーキテクチャ

図1-1の説明が続きます
「図1-1 コネクタのアーキテクチャ」の説明

Database User Management (DBUM)コネクタは、アイデンティティ・コネクタ・フレームワーク(ICF)を使用して実装されます。ICFは、すべてのOracle Identity Managerコネクタに共通の基本的なリコンシリエーションおよびプロビジョニング操作を提供するコンポーネントです。さらに、ICFには接続プーリング、バッファリング、タイムアウト、フィルタリングなどの一般的な機能も用意されているため、開発者がこれらの機能を自分で実装する必要はありません。ICFは、Oracle Identity Managerに付属しています。したがって、ICFを構成したり変更する必要はありません。

関連項目:

ICFの詳細は、Oracle Fusion Middleware Oracle Identity Managerのためのアプリケーションの開発とカスタマイズのIdentity Connector Frameworkの理解を参照してください

即時利用可能な(OOB)コネクタには、Oracle、MSSQL、MySQL、DB2、Sybaseなどの動作保証済ターゲットでの動作が保証されているスクリプトが提供されています。動作保証済のデータベース以外のデータベースに対してコネクタをカスタマイズする場合は、新しいデータベースに対するスクリプトを手動で追加する必要があります。

すべてのDBUM操作は、SQLスクリプトを実行するか、ストアド・プロシージャをコールすることによって実行します。これらのスクリプトおよびストアド・プロシージャは、コネクタ・バンドルの各種ファイル内に外部化されており、カスタマイズも可能です。構成参照パラメータを含むITリソースには、バンドル・キーが含まれます。このバンドル・キーは、バンドル名、バンドル・バージョンおよびコネクタ名で構成され、バンドルのロードに使用されます。

コネクタ・バンドルに格納されているスクリプトの3つのカテゴリを次に示します。

スクリプト 説明

Provisioning.queries

このスクリプトは、作成、更新または削除の操作に使用されます。

LoVSearch.queries

このスクリプトは、参照リコンシリエーションに使用されます。これには、プロファイル、権限、ロール、表領域などの特定のフィールドに使用可能な値セットが含まれています。

Search.queries

このスクリプトは、完全リコンシリエーション、増分リコンシリエーションまたは削除リコンシリエーションに使用されます。また、このスクリプトを使用すると、様々な条件でアカウントおよびグループの検索を実行できます。

起動された問合せに応じて、ExecutionHandlerによって問合せが実行されます。ExecutionHandlerの拡張ハンドラとして、2種類のハンドラ(SQLExecutionHandlerおよびStoredProcExecutionHandler)があります。

問合せのタイプに対応するExecutionHandlerが起動されます。StoredProcExecutionHandlerは、MSSQLでの操作に使用されます。ユーザー検索での使用例を次に示します。

USER_DATA_QUERY {
    Query="CALL sp_helpuser({__UID__})"
    QueryType="StoredProc"
    Parameters=["__UID__":"Type:String,Direction:IN",
            "defaultDatabase":"Type:String,Direction:OUT,ColName:DefDBName",
            "loginName":"Type:String,Direction:OUT,ColName:LoginName",
            "roles~DBRole~__NAME__":"Type:String,Direction:OUT,ColName:RoleName"]           
    QueryExtensions=[]
}

SQL問合せは、データ操作言語(DML)問合せとデータ定義言語(DDL)問合せに分類されます。DDL問合せはCREATE、REVOKE、GRANT、ALTERなどに使用され、DML問合せはUPDATE、INSERTなどに使用されます。

DDL問合せは標準の文として実行されます。作成操作に使用されるDDL文の例を次に示します。

Statement stmt = null;
                try {
                        stmt = _dbConnection.getConnection().createStatement();
                        stmt.execute(sqlScript);
                }

DML問合せは、プリコンパイルされた文として実行されます。更新操作に使用されるDML文の例を次に示します。

PreparedStatement st = null;
            try {
                st = conn.prepareStatement(sqlScript);
                setParams(st, Arrays.asList(params));
                return st.executeUpdate();
                }

コネクタ・バンドルに関する情報は、マニフェスト・ファイルに格納されます。このファイルには、コネクタ・バンドル・フレームワーク・バージョン、コネクタ・バンドル名およびコネクタ・バンドル・バージョンに関する情報を提供するコネクタ定義が含まれています。コネクタ定義の例を次に示します。

org.identityconnectors.dbum.1.0.1116.jar

この例の各要素の意味は次のとおりです:

org.identityconnectors: コネクタ・バンドル・フレームワークを示します。

dbum: コネクタ・バンドル名を示します。

1.0.1116.jar: コネクタ・バンドル・バージョンを示します。

コネクタ定義は、コネクタ・バンドルを識別するために必要です。複数のバージョンのターゲットをデプロイする場合は、コネクタ・バージョンを変更して再デプロイする必要があります。これを行うには、マニフェスト・ファイルに含まれるコネクタ・バンドル内のコネクタ・バージョンを変更します。

関連項目:

各データベースの参照定義の詳細は、次の各項を参照してください:

1.6 コネクタの機能

コネクタの機能は次のとおりです。

1.6.1 リコンシリエーションおよびプロビジョニング用の標準属性とカスタム属性のマッピング

デフォルト属性マッピングのリストに含まれない単一値および複数値のターゲット・システム属性に対してマッピングを作成できます。これらの属性は、ターゲット・システムで提供されている標準属性セットの一部であっても、ユーザーがターゲット・システムに追加したカスタム属性であってもかまいません。

詳細については、次の各項を参照してください。

1.6.2 事前定義済リコンシリエーション問合せおよびカスタムリコンシリエーション問合せ

リコンシリエーションでは、必要なユーザー・アカウント・レコードをOracle Identity Managerにフェッチするために、ターゲット・システム・データベースでSQL問合せまたはストアド・プロシージャが実行されます。

コネクタで提供される事前定義済のSQL問合せおよびストアド・プロシージャを使用すると、ターゲット・システムからユーザー・データをリコンサイルできます。これらの事前定義済SQL問合せおよびストアド・プロシージャは、コネクタ・バンドル内のSearch.queriesファイルに格納されています。

これらのSQL問合せまたはストアド・プロシージャは変更できます。さらに、リコンシリエーションに使用する独自のSQL問合せまたはストアド・プロシージャを追加することもできます。

詳細については、次の各項を参照してください。

1.6.3 事前定義済プロビジョニング問合せおよびカスタム・プロビジョニング問合せ

プロビジョニングでは、Oracle Identity Managerを介してターゲット・システムで「ユーザーの作成」操作や「ユーザーの更新」操作を実行するために、CREATE USER、ALTER USER、DROP USERなどのSQL問合せまたはストアド・プロシージャを実行します。

コネクタで提供される事前定義済問合せを使用すると、ターゲット・システム・アカウントの作成、有効化、更新などのプロビジョニング操作を実行できます。これらの事前定義済SQL問合せおよびストアド・プロシージャは、コネクタ・バンドル内のProvisioning.queriesファイルに格納されています。

いずれの事前定義済問合せも、変更および使用できます。さらに、独自のプロビジョニング問合せを作成することもできます。詳細については、次の各項を参照してください。

1.6.4 Oracle Databaseでのグローバル・ユーザーおよび外部ユーザーの作成のサポート

ローカル・データベース・ユーザーとは、データベースに格納されているパスワードを使用して認証可能なユーザーのことです。ローカル・データベース・ユーザーのサポートの他に、コネクタはOracle Databaseの次のユーザー・タイプに対しても使用できます。

  • グローバル・ユーザー: Oracle Internet Directoryなどのエンタープライズ・ディレクトリ・サービスによって認可する必要のあるデータベース・ユーザーです。

  • 外部ユーザー: オペレーティング・システムやサード・パーティ・サービス(Kerberosなど)のような外部サービスによって認証する必要のあるデータベース・ユーザーです。

ローカル・ユーザー認証タイプ、グローバル・ユーザー認証タイプおよび外部ユーザー認証タイプの詳細は、次の各項を参照してください。

1.6.5 完全リコンシリエーションおよび増分リコンシリエーション

コネクタをデプロイしたら、完全リコンシリエーションを実行して、既存のユーザー・データをすべてターゲット・システムからOracle Identity Managerに移動できます。最初の完全リコンシリエーション実行後に、増分リコンシリエーション用にコネクタを構成できます。増分リコンシリエーションでは、前回のリコンシリエーションの実行後に追加または変更されたレコードのみがOracle Identity Managerにフェッチされます。

詳細については、次の各項を参照してください。

1.6.6 制限付き(フィルタ)リコンシリエーション

ICFフィルタによって制限付きリコンシリエーションが実行され、リコンシリエーション実行時にレコードがOracle Identity Managerにフェッチされます。ICFフィルタはWHERE句に変換され、検索問合せに適用されます。

詳細については、次の各項を参照してください。

1.6.7 バッチ・リコンシリエーション

リコンシリエーションの実行をバッチ単位に分割するには、各バッチに含める必要があるレコード数と、バッチ・リコンシリエーションを実行するために使用する必要がある問合せを指定します。

ノート:

Microsoft SQL Serverでは、ストアド・プロシージャを使用してリコンシリエーションが実行されます。このため、コネクタではバッチ・リコンシリエーションはサポートされていません。

詳細については、次の各項を参照してください。

1.6.8 リコンシリエーションおよびプロビジョニング操作から除外するアカウントの指定

すべてのリコンシリエーションおよびプロビジョニング操作から除外する必要のあるターゲット・システム・アカウントのリストを指定できます。除外リストで指定したユーザー属性を持つアカウントは、リコンシリエーションおよびプロビジョニング操作による影響を受けません。

詳細については、次の各項を参照してください。

1.6.9 接続プーリング

接続プールは、ターゲットへの物理的な接続を表すオブジェクトのキャッシュです。Oracle Identity Managerコネクタは、これらの接続を使用してターゲット・システムと通信できます。実行時に、アプリケーションはプールに接続をリクエストします。接続が使用可能であれば、コネクタがその接続を使用してからプールに戻します。プールに戻された接続は、コネクタが別の操作のために再びリクエストして使用することができます。接続プールは、接続の再利用を可能にし、ネットワーク待機時間、メモリー割当ておよび認証といった接続作成のオーバーヘッドを減らすことに役立っています。

ITリソースごとに1つの接続プールが作成されます。たとえば、ターゲット・システムの3つのインストールに3つのITリソースがある場合は、ターゲット・システム・インストールごとに1つずつ、3つの接続プールが作成されます。

接続プールの構成プロパティは、参照構成に含まれています。接続プールの設定の詳細は、「接続プーリング用の参照定義の設定」を参照してください。

1.6.10 コネクタ・サーバーのサポート

コネクタ・サーバーは、ICFによって提供されるコンポーネントです。コネクタ・アーキテクチャでは、1つ以上のコネクタ・サーバーを使用することで、アプリケーションと外部にデプロイされたバンドルとの通信が可能になります。つまり、コネクタ・サーバーを使用すると、Oracle Identity Managerコネクタのリモート実行が可能になります。

アプリケーションと同じVMでJavaコネクタ・バンドルを実行しない場合は、Javaコネクタ・サーバーを使用すると便利です。パフォーマンス向上のためにJavaコネクタを別のホストで実行すると、効果を発揮できます。

詳細は、「コネクタ・サーバーのインストールおよび構成」を参照してください。

1.6.11 コネクタのコピー作成のサポート

このコネクタをターゲット・システムの複数のインストールに対して構成するには、参照定義、リソース・オブジェクト、プロセス・フォームなどのコネクタ・オブジェクトのコピーを作成します。

詳細については、次の各項を参照してください。

1.6.12 アカウント・データの変換および検証

リコンシリエーションおよびプロビジョニング時に、Oracle Identity Managerに送信された、またはOracle Identity Managerから送信されたアカウント・データの検証を構成できます。また、リコンシリエーション時にOracle Identity Managerに送信されたアカウント・データの変換も構成できます。詳細は、次の項を参照してください。

Oracle Databaseの場合:

MSSQLの場合:

MySQLの場合:

DB2の場合:

Sybaseの場合:

1.6.13 削除済エンティティに関するデータのリコンサイルのサポート

信頼できるソースまたはターゲット・リソースとして構成されているターゲット・システムで削除されたログイン・エンティティに関するデータをリコンサイルできます。

レコードがOracle Identity Managerにフェッチされた後、ターゲット・システムをターゲット・リソースとして構成したか信頼できるソースとして構成したかに応じて、レコードは、既存のOIMユーザーと比較されるか、既存のOIMユーザーにプロビジョニングされたデータベース・リソースと比較されます。一致しないアカウントは、Oracle Identity Managerで失効するか、削除されます。

1.6.14 ユーザー・エンティティ、ログイン・エンティティおよび削除済ログイン・エンティティのリコンシリエーション用の個別スケジュール済ジョブ

信頼できるソースまたはターゲット・リソースとして構成されているターゲット・システムのユーザー・エンティティ、ログイン・エンティティまたは削除済ログイン・エンティティに関するデータをリコンサイルできます。使用しているターゲット・システム、ターゲット・システムが構成されているモード、およびリコンサイルするデータのタイプに応じて、個別のスケジュール済ジョブが作成されています。

詳細については、次の各項を参照してください。

1.6.15 ターゲット・システムおよびOracle Identity Manager間のSSL通信のサポート

Oracle Identity Managerとターゲット・システムの間の通信を保護するためにSSLを構成できます。詳細については、次の各項を参照してください。

1.6.16 Oracle Database Vaultレルムに対する認可管理のサポート

Oracle Database Vaultは、管理アクセス権を持つユーザーを含め、あらゆるユーザーからのOracle Databaseの特定領域へのアクセスを制限します。たとえば、従業員の給与、顧客の医療記録、またはその他の機密情報に対する管理アクセス権を制限できます。これにより、様々な方法で機密情報へのファイングレインアクセス制御を適用できます。これにより、Oracle Databaseインスタンスのセキュリティが強化され、管理アクセス権を持つユーザーからの職務分離に関して業界標準の対応が可能です。最も重要なのは、管理権限ユーザーからデータを保護しながら、管理権限ユーザーによるOracle Databaseの管理が可能だということです。

Oracle Database Vaultでは、内部関係者の脅威からの保護、規制コンプライアンス要件への準拠、職務の分離の実施などのビジネス要件に対応できます。

Oracle Database Vaultは、個々のOracle Databaseインスタンスのセキュリティを管理するために構成します。Oracle Database Vaultは、Oracle Databaseのスタンドアロン・インストール、複数のOracleホーム、およびOracle Real Application Clusters(Oracle RAC)環境にインストールできます。

Oracle Database VaultがインストールされているOracle Databaseインストールでは、コネクタを使用して、Oracle Database Vaultレルムに対する認可を付与および管理できます。コネクタでは、Oracle Database Vaultレルムへのアクセスは権限として扱われます。コネクタを使用して、複数のレルムへのアクセス権を異なるアクセス・レベルでデータベース・ユーザーにプロビジョニングできます。

Oracle Identity Managerはユーザー・アカウントの管理および権限へのアクセスの管理を行うエンタープライズ・アプリケーションであるため、コネクタでは次の要素の管理はサポートされていません。

  • レルム

  • コマンド・ルールおよびルール・セット

  • ファクタ

  • セキュア・アプリケーション・ロール

詳細は、「Oracle Database Vaultでの管理者アカウントの作成」を参照してください。

1.6.17 エンタープライズ・ユーザー・セキュリティに対するコネクタ構成のサポート

Oracle Enterprise User Securityでは、LDAP準拠のディレクトリ・サービスである、Oracle Internet Directoryで提供されるアイデンティティ管理サービスを使用して、ユーザー、管理およびセキュリティに関する問題に対処します。LDAP準拠ディレクトリ内にユーザーを作成するには、Oracle Identity Manager LDAPコネクタまたはその他の手段を使用する必要があります。エンタープライズ・ユーザーは、データベース・アクセスについて、Oracle Internet DirectoryなどのLDAP準拠のディレクトリで一元的にプロビジョニングおよび管理されます。エンタープライズ・ユーザーは、ディレクトリ内に識別名(DN)と呼ばれる一意の識別子を持っています。エンタープライズ・ユーザーがデータベースにログオンすると、データベースはDNを使用してこれらのユーザーを認証します。

Oracle Enterprise User Securityが構成されているOracle Databaseインストールの場合、コネクタでは、ターゲット・システム・アカウント(ログインまたはユーザー)に対して、パスワードで認証されるユーザー、グローバルに認証されるユーザー、および外部で認証されるユーザーの作成がサポートされています。認証タイプに応じて、プロセス・フォームで変更を行う必要があります。認証タイプがパスワードまたは外部の場合は、プロセス・フォームから他の認証フィールドを削除する必要があります。認証タイプがグローバルの場合は、プロセス・フォームで次の変更を行う必要があります。

  • パスワード・フィールドはグローバル認証には必要ないため、削除してください。

  • 認証タイプをデフォルトから「グローバル」に設定して、読取り専用にします。これにより、ユーザーは他の認証タイプを選択できなくなります。

  • 「グローバルDN」で、一意のIDを指定します。

コネクタを使用して、ターゲット・データベースでこれらのエンタープライズ・ユーザーのアカウントを作成して管理できます。

1.7 コネクタのデプロイおよび使用のロードマップ

次に、このマニュアルの次の章以降の構成を示します。