ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Identity Management Suite統合ガイド
11g リリース2 (11.1.2.1.0)
B71104-03
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

4 Oracle Identity Managerと統合するためのOracle Virtual Directoryの構成

この章では、Oracle Identity Manager (OIM)と統合するためのOracle Virtual Directoryの構成方法について説明します。

内容は次のとおりです。

4.1 Oracle Internet DirectoryおよびActive Directoryに対するOracle Virtual Directoryアダプタの作成

idmConfigToolを使用して、Oracle Internet DirectoryおよびActive DirectoryのOracle Virtual Directory UserアダプタおよびChangelogアダプタを作成できます。Oracle Identity Managerにはアダプタが必要です。Oracle Virtual Directoryを使用してOracle Internet Directoryに接続することを強くお薦めします。ただしこれは必須ではありません。

そのためには、IDMHOST1で次のタスクを実行します。

  1. 環境変数MW_HOMEJAVA_HOMEIDM_HOMEおよびORACLE_HOMEを設定します。

    IDM_HOMEIDM_ORACLE_HOMEに設定します。

    ORACLE_HOMEIAM_ORACLE_HOMEに設定します。

  2. 構成しているアダプタのプロパティ・ファイルovd1.propsを作成します。このファイルの内容は、Oracle Internet Directoryアダプタを構成しているのか、Active Directoryアダプタを構成しているのかによって異なります。

    • Oracle Internet Directoryアダプタ・プロパティ・ファイル:

      ovd.host:ovdhost1.mycompany.com
      ovd.port:8899
      ovd.binddn:cn=orcladmin
      ovd.password:ovdpassword
      ovd.oamenabled:true
      ovd.ssl:true
      ldap1.type:OID
      ldap1.host:oididstore.myhost.mycompany.com
      ldap1.port:3060
      ldap1.binddn:cn=oimLDAP,cn=systemids,dc=mycompany,dc=com
      ldap1.password:oidpassword
      ldap1.ssl:false
      ldap1.base:dc=mycompany,dc=com
      ldap1.ovd.base:dc=mycompany,dc=com
      usecase.type: single
      
    • Active Directoryアダプタ・プロパティ・ファイル:

      ovd.host:ovdhost1.mycompany.com
      ovd.port:8899
      ovd.binddn:cn=orcladmin
      ovd.password:ovdpassword
      ovd.oamenabled:true
      ovd.ssl:true
      ldap1.type:AD
      ldap1.host:adidstore.myhost.mycompany.com
      ldap1.port:636
      ldap1.binddn:cn=adminuser
      ldap1.password:adpassword
      ldap1.ssl:true
      ldap1.base:dc=mycompany,dc=com
      ldap1.ovd.base:dc=mycompany,dc=com
      usecase.type: single
      

    次のリストで、プロパティ・ファイルで使用されるパラメータについて説明します。

    • ovd.hostは、Oracle Virtual Directoryを実行しているサーバーのホスト名です。

    • ovd.portは、Oracle Virtual Directoryへのアクセスに使用するHTTPSポートです。

    • ovd.binddnは、Oracle Virtual Directoryへの接続に使用するユーザーDNです。

    • ovd.passwordは、Oracle Virtual Directoryへの接続に使用するDNのパスワードです。

    • ovd.oamenabledは、Fusion Applicationデプロイメントでは常にtrueです。

    • ovd.sslは、HTTPSポートを使用している場合、trueに設定されます。

    • ldap1.typeは、Oracle Internet Directoryバックエンド・ディレクトリの場合はOIDに、Active Directoryバックエンド・ディレクトリの場合はADに設定されます。

    • ldap1.hostはバックエンド・ディレクトリが存在するホストです。ロード・バランサ名を使用します。

    • ldap1.portは、バックエンド・ディレクトリとの通信に使用されるポートです。

    • ldap1.binddnは、oimLDAPユーザーのバインドDNです。

    • ldap1.passwordは、oimLDAPユーザーのパスワードです。

    • ldap1.sslは、バックエンドのSSL接続を使用している場合、trueに設定され、使用していない場合、falseに設定されます。このパラメータは、アダプタをADに対して作成しているときは、常にtrueに設定します。

    • ldap1.baseは、ディレクトリ・ツリーのベースの場所です。

    • ldap1.ovd.baseは、Oracle Virtual Directory内のマップされた場所です。

    • usecase.typeは、単一ディレクトリ・タイプを使用している場合、Singleに設定されます。

  3. 次の場所にあるidmConfigToolコマンドを使用してアダプタを構成します。

    IAM_ORACLE_HOME/idmtools/bin


    注意:

    idmConfigToolを実行すると、idmDomainConfig.paramファイルが作成されるか、既存のこのファイルに情報が追加されます。このファイルは、idmConfigToolを実行したディレクトリに作成されます。このツールを実行するたびに同じファイルに情報が追加されるようにするには、必ず次のディレクトリでidmConfigToolを実行します。

    IAM_ORACLE_HOME/idmtools/bin


    Linuxの場合、このコマンドの構文は次のとおりです。

    idmConfigTool.sh -configOVD input_file=configfile [log_file=logfile]
    

    Windowsの場合、このコマンドの構文は次のとおりです。

    idmConfigTool.bat -configOVD input_file=configfile [log_file=logfile]
    

    次に例を示します。

    idmConfigTool.sh -configOVD input_file=ovd1.props
    

    このコマンドでは、入力は必要ありません。次のように出力されます。

    The tool has completed its operation. Details have been logged to logfile
    

プロパティ・ファイルでovd.hostに適切な値を設定して、トポロジ内の各Oracle Virtual Directoryインスタンスに対してこのコマンドを実行します。

4.2 UserManagementプラグインの使用方法

このトピックでは、Oracle Virtual DirectoryがOracle Identity Manager統合のコネクタ・ターゲットである場合に使用するように設計されたプラグインについて説明します。

UserManagementプラグインは、Oracle Identity Managerの属性からLDAPディレクトリ・サーバーへのデータ・マッピングを提供します。

4.2.1 構成パラメータ

UserManagementプラグインには、次の構成パラメータがあります。

filterObjectclass

追加または変更リクエスト時に削除する必要のあるオブジェクト・クラスのカンマ区切りのリスト。

removeAttribute

クライアントに戻される前にエントリから実際に削除される属性のカンマ区切りリスト。

exclusionMapping

特定のオブジェクト・クラスに対する特定の属性マッピングの除外を定義します。たとえば、値inetorgperson,uid=samaccountnameを持つパラメータを指定すると、オブジェクト・クラスinetorgpersonのエントリ上のuidからsamaccountnameへのマッピングが除外されます。このオプションの複数のインスタンスを使用すると、マッピングに対して複数の除外が可能になります。

oimLanguages

属性言語サブタイプで使用される言語コードのカンマ区切りリストこのパラメータは、directoryTypeパラメータがActiveDirectoryに設定されている場合にのみ機能します。

oamEnabled

TrueまたはFalse: Oracle Access Management Access Manager (Access Manager)がOracle Identity Managerとともにデプロイされているかどうかを示します。デフォルトでは、Access Managerはデプロイされておらず、したがってこのパラメータのデフォルト設定はfalseです。


注意:

UserManagementプラグインとchangelogプラグインのoamEnabledパラメータの値は同一であることが必要です。


directoryType

ソースLDAPディレクトリ・サーバーのタイプを指定します。サポートされている値はOID、ActiveDirectoryおよびSunOneです。デフォルト値はOIDです。


注意:

UserManagementプラグインとchangelogプラグインのdirectoryTypeパラメータの値は同一であることが必要です。


ssladapter

ssladapterパラメータは、directoryTypeパラメータがActiveDirectoryに設定されている場合にのみ機能し、リクエストにuserPasswordまたはunicodePwdが含まれている場合にUserManagementプラグインによってリクエストがルーティングされる先のアダプタの名前を指定します。unicodePwdがリクエストに含まれている場合、そのリクエストには、適切な値を持つuseraccountControl属性も含まれている必要があります。

ssladapterパラメータによって指定されるアダプタは、次のようになっている必要があります

  • UserManagementプラグインが構成されているアダプタと同じローカル・ベースを持つ

  • ルーティングの可視性がInternalに設定されている

ssladapterに値が設定されていない場合は、デフォルトで現在のアダプタが使用されます。

mapAttribute

OVD-attribute=OIM-attributeの形式の属性変換を定義します。たとえば、orclGUID=objectGuidなどです。mapAttribute構成パラメータを複数回設定して、複数の属性の変換を定義できます。

mapPassword

TrueまたはFalse。directoryType構成パラメータをActiveDirectoryに設定すると、mapPasswordパラメータが、ユーザー・パスワードをunicodePwd属性に変換するかどうかを制御します。デフォルト値はfalseです。

mapRDNAttribute

OVD-RDNattribute=OIM-RDNattributeの形式のRDN属性変換を定義します。たとえば、uid=cnなどです。

pwdMaxFailure

(このプラグインがデプロイされているアダプタを介して公開されるユーザー・エントリに適用されたパスワード・ポリシーの定義に従い)ソースLDAPディレクトリ・サーバーによってアカウントがロックされるために必要な失敗ログインの最大回数を指定します。

mapObjectclass

OVD-objectclass=OIM-objectclassの形式のオブジェクト・クラスの値変換を定義します。たとえば、inetorgperson=userなどです。mapObjectclass構成パラメータを複数回設定して、複数のオブジェクト・クラスの変換を定義できます。


注意:

UserManagementプラグインとchangelogプラグインのmapObjectclassパラメータの値は同一であることが必要です。


addAttribute

このパラメータは、attribute=value pairsの形式でget操作結果を戻す前に追加する属性を指定します。属性名の前にobjectclass,を追加すると、属性と値を特定のオブジェクト・クラスに追加できます。また、値を%で囲んで他の属性を参照することもできます。たとえば、値user,samaccountname=%cn%を指定すると、エントリがobjectclass=userである場合にcnの値がsamaccountnameに代入されます。値samaccountname=jdoeを指定すると、値jdoeを持つ属性samaccountnameがすべてのエントリに追加されます。

4.3 Changelogプラグインの使用方法


注意:

リリース11.1.1.4.0より前のOracle Virtual Directoryには、次の3つのchangelogプラグインがありました。

  • Oracle Internet Directoryとともに使用するためのoidchangelog

  • Oracle Directory Server Enterprise Editionとともに使用するためのsunonechangelog

  • Microsoft Active Directoryとともに使用するためのadchangelog

これらの3つのプラグインはリリース11.1.1.4.0では非推奨となり、新しい単一のChangelogプラグインが使用可能になっています。このプラグインは、Oracle Internet Directory、Oracle Directory Server Enterprise Edition、およびMicrosoft Active Directoryで使用できます。


4.3.1 リリース11.1.1.4.0 Changelogプラグインのデプロイ

この単一のChangelogプラグインをデプロイする際は、次のことが必要です。

  • アダプタの「リモート・ベース」を空の値に、つまり空白にします。

  • アダプタの「マップされたネームスペース」をcn=changelogに設定します。

  • バックエンドがOracle Directory Server Enterprise Editionである場合、Oracle Directory Server Enterprise Edition上のロギングの変更を必ず有効化してください。

4.3.2 前のリリースからのChangelogプラグインのデプロイ

11.1.1.4.0より前にリリースされたバージョンのOracle Virtual Directoryを使用している場合、次のchangelogプラグインを使用して、changelog情報をソース・ディレクトリからOracle Identity Managerに適した形式に標準化してください。


注意:

これらのプラグインはOracle Virtual Directoryリリース11.1.1.4.0では機能しません


Oracle Internet Directoryの場合

Oracle Internet Directoryではoidchangelogプラグインを使用します。

oidchangelogプラグインをデプロイする場合は、アダプタの「リモート・ベース」を空の値に、つまり空白にします。

Oracle Directory Server Enterprise Editionの場合

Oracle Directory Server Enterprise Editionでは、sunonechangelogプラグインを使用します。

sunonechangelogプラグインをデプロイする際は、次のことが必要です。

  • アダプタの「リモート・ベース」を空の値に、つまり空白にします。

  • Oracle Directory Server Enterprise Editionで変更ログが有効化されていることを確認します。

  • アダプタの「マップされたネームスペース」をcn=changelogに設定します。

Microsoft Active Directoryの場合

Microsoft Active Directoryではadchangelogプラグインを使用します。

adchangelogプラグインをデプロイする際は、次のことが必要です。

  • アダプタの「リモート・ベース」を空の値に、つまり空白にします。

  • アダプタの「マップされたネームスペース」をcn=changelogに設定します。

4.3.3 構成パラメータ

各changelogプラグインには、次の構成パラメータがあります。

removeAttribute

クライアントに戻される前にエントリから実際に削除される属性のカンマ区切りリスト。

oimLanguages

属性言語サブタイプで使用される言語のカンマ区切りリスト。

skipErrorChangelog

TrueまたはFalse。falseに設定されていて、破損したchangelogエントリがプラグインによって検出された場合、プラグインはDirectoryExceptionをスローし、changelogエントリのそれ以降の処理を停止します。trueに設定されている場合、プラグインは例外をスローせずにエラーを記録し、このchangelogをスキップして、次のchangelogの処理を続行します。デフォルト値はfalseです。

oamEnabled

TrueまたはFalse: Access ManagerがOracle Identity Managerとともにデプロイされているかどうかを示します。デフォルトでは、Access Managerはデプロイされておらず、したがってこのパラメータのデフォルト設定はfalseです。


注意:

UserManagementプラグインとchangelogプラグインのoamEnabledパラメータの値は同一であることが必要です。


directoryType

ソースLDAPディレクトリ・サーバーのタイプを指定します。サポートされている値はOID、ActiveDirectoryおよびSunOneです。デフォルト値はOIDです。


注意:

UserManagementプラグインとchangelogプラグインのdirectoryTypeパラメータの値は同一であることが必要です。


mapObjectclass

OIM-objectclass=Source-Directory-objectclassの形式のオブジェクト・クラスの値変換を定義します。たとえば、inetorgperson=userなどです。mapObjectclass構成パラメータを複数回設定して、複数のオブジェクト・クラスの変換を定義できます。

Oracle Identity Managerのユース・ケースでは、次のパラメータがすぐに使用できるように構成されています。

  • Active Directoryの場合: inetorgperson=user, orclidxperson=user, and groupOfUniqueNames=group

  • Oracle Directory Server Enterprise Editionの場合: container=nsContainer and changelog=changelogentry

  • Oracle Internet Directoryの場合: container=orclContainer


注意:

UserManagementプラグインとchangelogプラグインのmapObjectclassパラメータの値は同一であることが必要です。


sizeLimit

戻されるchangelogエントリの最大数を指定します。

ゼロ(0)または負の値は、サイズ制限がないことを意味します。

受信する検索リクエストでサイズの制約が指定されている場合、小さいほうの値が使用されます。たとえば、プラグインのsizeLimitを100に指定してあり、検索リクエストのカウント制限が200である場合は、リクエストの実際のサイズ制限は100にリセットされます。

mapAttribute

Source-Directory-attribute=OIM-attributeの形式の属性変換を定義します。たとえば、orclGUID=objectGuidなどです。mapAttribute構成パラメータを複数回設定して、複数の属性の変換を定義できます。

targetDNFilter

変更の取得元となるコンテナを指定します。このパラメータは複数回設定して、変更の取得元となるコンテナを複数指定できます。複数回設定した場合、targetDNフィルタは次の例のようになります。このtargetDNフィルタは受信フィルタにandで結合されます。

"(|(targetDN=*cn=users,dc=mycom1)(targetDN=*,cn=groups,dc=mycom2))"

次に値の例を示します。

  • *,cn=xxx,dc=yyy

  • *cn=xxx,dc=yyy

  • cn=xxx,dc=yyy (virtualDITAdapterNameで指定されているアダプタのローカル・ベースの子であることが必要です。)

これらの例はすべて同じ意味を持ちます。

requiredAttribute

Oracle Virtual Directoryへのchangelog問合せに対して指定されている戻り属性リストに関係なく、ソースLDAPディレクトリ・サーバーから常に取得される属性のカンマ区切りリスト。

addAttribute

正規化されているchangelogエントリに追加される属性のカンマ区切りリスト。たとえば、orclContainerOC=1, changelogSupported=1などです。ここで、=1はchangelogをサポートしているソース・ディレクトリから取得される変更を示します。

mapUserState

TrueまたはFalse。このパラメータは、ディレクトリ固有のアカウント属性からOracle Virtual Directoryの仮想アカウント属性へのマッピングを有効化または無効化します。

modifierDNFilter

modifiersNameに対するLDAPフィルタを定義する単一の値を持つ構成パラメータ。このパラメータは、受信フィルタにandで結合されます。値の例としては、(modifiersName=cn=myadmin,cn=users,dc=mycom)があります。


注意:

この構成は、directoryType=ActiveDirectoryの場合は無効です。


virtualDITAdapterName

対応するユーザー・プロファイル・アダプタ名を指定します。

たとえば、単一ディレクトリ・デプロイメントでは、このパラメータの値をA1に設定できます。これはユーザー・アダプタ名です。分割ユーザー・プロファイルのシナリオでは、このパラメータをJ1;A2に設定できます。ここでJ1はJoinViewアダプタ名であり、A2はJ1における対応するユーザー・アダプタです。

このパラメータは複数値を取ることができます。これは、changelogアダプタと同じバックエンド・ディレクトリ・サーバーに対して構成されている複数のベース・エントリ・アダプタがあることを意味します。

このパラメータをA1に設定する場合、このプラグインはアダプタA1のUserManagementPluginのmapAttributeおよびmapObjectclass構成をフェッチするため、ユーザーがそれらの構成を複製する必要はありません。

4.4 トラブルシューティングのヒント

この項では、Oracle Virtual Directoryでデバッグを有効化する方法について説明します。これは、Oracle Identity ManagerとOracle Virtual Directoryの統合のトラブルシューティングが必要な場合に役立ちます。

デバッグを有効化するには、次の手順を実行します。

  1. コマンド・ウィンドウを開き、次の場所に移動します。

    OVD ORACLE_INSTANCE/config/OVD/ovd1
    
  2. ovd-logging.xmlファイルのコピーを保存します。

  3. 次のようにovd-logging.xmlファイルを編集します。

    • 25行目にある

      <logger name='com.octetstring.vde' level='NOTIFICATION:1' useParentHandlers='false'>
      

      を次のように変更します。

      <logger name='com.octetstring.vde' level='TRACE:32' useParentHandlers='false'>
      
    • 28行目にある

      <logger name='com.octetstring.accesslog' level='ERROR:1' useParentHandlers='false'>
      

      を次のように変更します。

      <logger name='com.octetstring.accesslog' level='NOTIFICATION:1' useParentHandlers='false'>
      
  4. 次のように入力することでOracle Virtual Directoryを再起動します。

    cd ORACLE_INSTANCE/bin
    ./opmnctl stopproc ias-component=ovd1
    ./opmnctl startproc ias-component=ovd1