ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド
11g リリース2 (11.1.2.1)
B71694-06
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

9 アイデンティティ・ストアの準備

この章では、Oracle Identity Managementエンタープライズ・デプロイメントでアイデンティティ・ストアを準備する方法を説明します。

次の項が含まれます:

9.1 アイデンティティ・ストアの準備の概要

アイデンティティ・ストアの準備には、ディレクトリのスキーマを拡張してOracle Access Management Access ManagerおよびOracle Identity Managerをサポートし、アイデンティティ管理トポロジを構築する際に使用するシステム・ユーザーでアイデンティティ・ストアをシードすることが含まれます。

9.2 LDAPディレクトリのバックアップ

この章で説明する手順では、アイデンティティ・ストアをホストするLDAPディレクトリの構成を変更します。これらの作業を実行する前に、第17.6.3項「インストール時および構成時のバックアップの実行」の説明に従って、LDAPディレクトリのバックアップを作成します。

9.3 前提条件

続行する前に、次の条件を満たしていることを確認します。

9.4 アイデンティティ・ストアの準備

この項では、アイデンティティ・ストアを準備する方法について説明します。次のトピックが含まれます:

9.4.1 アイデンティティ・ストアの準備の概要

ディレクトリを使用してAccess Managerをサポートできるようするには、その前にディレクトリを拡張して、使用しているLDAPディレクトリにAccess Managerで必要なオブジェクト・クラスを追加する必要があります。

ディレクトリ・スキーマの拡張に加えて、複数のユーザーを作成する必要もあります。これらのユーザーは、次の作業を行うためのガイドで後ほど使用します。

  • 専用ユーザー使用によるディレクトリへのアクセス。

  • Access Manager、ディレクトリおよびWebLogicが認証を外部ディレクトリにオフロードした後に、これらの製品へのアクセス。

9.4.2 構成ファイルの作成

プロパティ・ファイルidstore.propsをIDMHOST1に作成し、アイデンティティ・ストアを準備するときに使用します。ファイルの構造は次のとおりです。

Oracle Unified Directoryの例

# Common
IDSTORE_HOST: IDMHOST1.mycompany.com
IDSTORE_PORT: 1389
IDSTORE_ADMIN_PORT: 4444
IDSTORE_KEYSTORE_FILE: OUD_ORACLE_INSTANCE/OUD/config/admin-keystore
IDSTORE_KEYSTORE_PASSWORD: Password key
IDSTORE_BINDDN: cn=oudadmin
IDSTORE_GROUPSEARCHBASE: cn=Groups,dc=mycompany,dc=com
IDSTORE_SEARCHBASE: dc=mycompany,dc=com
IDSTORE_USERNAMEATTRIBUTE: cn
IDSTORE_LOGINATTRIBUTE: uid
IDSTORE_USERSEARCHBASE: cn=Users,dc=mycompany,dc=com
IDSTORE_NEW_SETUP: true
POLICYSTORE_SHARES_IDSTORE: true
# OAM
IDSTORE_OAMADMINUSER:oamadmin
IDSTORE_OAMSOFTWAREUSER:oamLDAP
OAM11G_IDSTORE_ROLE_SECURITY_ADMIN:OAMAdministrators
# OAM and OIM
IDSTORE_SYSTEMIDBASE: cn=systemids,dc=mycompany,dc=com
# OIM
IDSTORE_OIMADMINGROUP: OIMAdministrators
IDSTORE_OIMADMINUSER: oimLDAP
# WebLogic
IDSTORE_WLSADMINUSER : weblogic_idm
IDSTORE_WLSADMINGROUP : WLSAdmins

Oracle Internet Directoryの例

# Common
IDSTORE_HOST: OIDHOST1.mycompany.com
IDSTORE_PORT: 3060 
IDSTORE_BINDDN: cn=orcladmin
IDSTORE_GROUPSEARCHBASE: cn=Groups,dc=mycompany,dc=com
IDSTORE_SEARCHBASE: dc=mycompany,dc=com
IDSTORE_USERNAMEATTRIBUTE: cn
IDSTORE_LOGINATTRIBUTE: uid
IDSTORE_USERSEARCHBASE: cn=Users,dc=mycompany,dc=com
POLICYSTORE_SHARES_IDSTORE: true
IDSTORE_NEW_SETUP: true
# OAM
IDSTORE_OAMADMINUSER:oamadmin 
IDSTORE_OAMSOFTWAREUSER:oamLDAP 
OAM11G_IDSTORE_ROLE_SECURITY_ADMIN:OAMAdministrators
# OAM and OIM
IDSTORE_SYSTEMIDBASE: cn=systemids,dc=mycompany,dc=com 
# OIM
IDSTORE_OIMADMINGROUP: OIMAdministrators 
IDSTORE_OIMADMINUSER: oimLDAP 
# WebLogic
IDSTORE_WLSADMINUSER : weblogic_idm
IDSTORE_WLSADMINGROUP : WLSAdmins

ここで:

  • IDSTORE_HOSTおよびIDSTORE_PORTは、アイデンティティ・ストア・ディレクトリのホストおよびポートに対応します。OVDではなく、バックエンド・ディレクトリを指定します。OIDおよびOUDの場合、Oracle Internet DirectoryまたはOracle Unified Directoryのインスタンスの1つをそれぞれ指定します。例:

    OID: OIDHOST13060

    OUD: IDMHOST11389

  • IDSTORE_ADMIN_PORT (LDAP_DIR_ADMIN_PORT)は、Oracle Unified Directoryインスタンスの管理ポートです。Oracle Unified Directoryを使用していない場合、このパラメータを省略できます。

  • IDSTORE_KEYSTORE_FILEは、Oracle Unified Directoryのキーストア・ファイルの場所です。これは、Oracle Unified Directory管理ポートを使用したOracle Unified Directoryとの通信を有効にするために使用されます。これはadmin-keystoreと呼ばれ、OUD_ORACLE_INSTANCE/OUD/configにあります。Oracle Unified Directoryを使用していない場合、このパラメータを省略できます。このファイルは、idmConfigToolコマンドが実行されているホストと同じホストに配置する必要があります。コマンドは、このファイルを使用してOUDで自己認証します。

  • IDSTORE_KEYSTORE_PASSWORDは、Oracle Unified Directoryのキーストアの暗号化されたパスワードです。この値は、ファイルOUD_ORACLE_INSTANCE/OUD/config/admin-keystore.pinにあります。Oracle Unified Directoryを使用していない場合、このパラメータを省略できます。

  • IDSTORE_BINDDNは、アイデンティティ・ストア・ディレクトリの管理ユーザーです。

  • IDSTORE_GROUPSEARCHBASEは、グループが格納されるディレクトリの場所です。

  • IDSTORE_SEARCHBASEは、ユーザーおよびグループを格納するディレクトリの場所です。

  • IDSTORE_USERNAMEATTRIBUTEは、ユーザーの名前を含むディレクトリ属性の名前です。これはログイン名とは異なります。

  • IDSTORE_LOGINATTRIBUTEは、ユーザーのログイン名を記述したLDAP属性です。

  • IDSTORE_USERSEARCHBASEは、ユーザーが格納されるディレクトリの場所です。

  • IDSTORE_NEW_SETUPは、Oracle Unified Directoryに対して常にtrueに設定されています。OUDを使用していない場合、この属性を指定する必要はありません。

  • POLICYSTORE_SHARES_IDSTOREは、IDM 11gに対してtrueに設定されています。

  • IDSTORE_OAMADMINUSERは、Access Manager管理者として作成するユーザーの名前です。

  • IDSTORE_OAMSOFTWAREUSERは、LDAPに作成されるユーザーで、Access Managerが実行中にLDAPサーバーに接続するために使用されます。

  • OAM11G_IDSTORE_ROLE_SECURITY_ADMINは、OAMコンソールへのアクセスを許可するために使用するグループの名前です。

  • IDSTORE_SYSTEMIDBASEは、メイン・ユーザー・コンテナに配置する必要のないユーザーを配置できるディレクトリにあるコンテナの場所です。このような事態はほとんどありませんが、その一例としてOracle Virtual DirectoryアダプタのバインドDNユーザーにも使用されるOracle Identity Managerリコンシリエーション・ユーザーがあげられます。

  • IDSTORE_OIMADMINGROUPは、Oracle Identity Manager管理ユーザーを保持するために作成するグループの名前です。

  • IDSTORE_OIMADMINUSERは、アイデンティティ・ストアに接続するためにOracle Identity Managerが使用するユーザーです。

  • IDSTORE_WLSADMINUSER: SSOによって有効化された後にWeb Logicドメインへのログインに使用するユーザー名。

  • IDSTORE_WLSADMINGROUP: WebLogicシステム・コンポーネント(WLSコンソール、EMなど)へのログインを許可されたユーザーが属するグループの名前。

OIMエントリは、トポロジにOracle Identity Managerが含まれている場合のみ使用します。OAMエントリは、トポロジにAccess Managerが含まれている場合のみ使用します。

9.4.3 Access ManagerおよびOracle Identity Manager用のディレクトリの準備

この項では、Oracle Unified Directory、Oracle Internet DirectoryまたはActive Directoryをアイデンティティ・ストアとしてサポートするよう、Identity Managementコンポーネントをデプロイする方法を説明します。

次のトピックが含まれます:

9.4.3.1 Access ManagerおよびOracle Identity Managerで使用するためのOracle Unified DirectoryおよびOracle Internet Directoryの構成

アイデンティティ・ストアを事前構成すると、Oracle Unified DirectoryまたはOracle Internet Directoryでスキーマが拡張されます。


注意:

Access ManagerまたはOracle Identity Managerを使用していないかぎり、アイデンティティ・ストアを事前構成する必要はありません。


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

  1. MW_HOMEIAM_MW_HOMEに設定します。

    ORACLE_HOMEIAM_ORACLE_HOMEに設定します。

    JAVA_HOMEJAVA_HOMEに設定します。

  2. 次の場所にあるidmConfigToolコマンドを使用してアイデンティティ・ストアを構成します。

    IAM_ORACLE_HOME/idmtools/bin


    注意:

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

    IAM_ORACLE_HOME/idmtools/bin


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

    idmConfigTool.sh -preConfigIDStore input_file=configfile 
    

    例:

    idmConfigTool.sh -preConfigIDStore input_file=idstore.props
    

    このコマンドを実行すると、アイデンティティ・ストアへの接続に使用しているアカウントのパスワードを入力するように要求されます。このコマンドの実行には時間を要する場合があります。

    コマンドの出力例:

    Enter ID Store Bind DN password :
    Dec 4, 2012 11:39:19 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/idmtools/templates/oud/oud_schema_extn.ldif
    Dec 4, 2012 11:39:20 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/oam/server/oim-intg/ldif/ojd/schema/ojd_oam_pwd_schema_add.ldif
    Dec 4, 2012 11:39:20 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/oam/server/oim-intg/ldif/ojd/schema/ojd_user_schema_add.ldif
    Dec 4, 2012 11:39:20 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/oam/server/oim-intg/ldif/ojd/schema/ojd_user_index_generic.ldif
    Dec 4, 2012 11:39:21 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/idmtools/templates/oud/add_oraclecontext_container.ldif
    Dec 4, 2012 11:39:21 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/idmtools/templates/oud/oud_indexes_extn.ldif
    Dec 4, 2012 11:39:21 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/idmtools/templates/oud/idm_idstore_groups_template.ldif
    Dec 4, 2012 11:39:21 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/idmtools/templates/oud/idm_idstore_groups_acl_template.ldif
    Dec 4, 2012 11:39:21 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/idmtools/templates/oud/systemid_pwdpolicy.ldif
    Dec 4, 2012 11:39:21 AM oracle.ldap.util.LDIFLoader loadOneLdifFileINFO: -> LOADING: /u01/oracle/products/access/iam/idmtools/templates/oud/fa_pwdpolicy.ldif
    The tool has completed its operation. Details have been logged to automation.log
    
  3. ログ・ファイルを確認して、エラーや警告を修正します。このツールを実行したディレクトリにautomation.logというファイルが作成されます。


注意:

idmConfigToolは、ユーザーを作成するだけでなく、次のグループも作成します。

  • orclFAUserReadPrivilegeGroup

  • orclFAUserWritePrivilegeGroup

  • orclFAUserWritePrefsPrivilegeGroup

  • orclFAGroupReadPrivilegeGroup

  • orclFAGroupWritePrivilegeGroup



関連項目:

idmConfigToolコマンドの詳細は、『Oracle Fusion Middleware Oracle Identity Management Suite統合概要』を参照してください。


9.4.3.2 Access ManagerおよびOracle Identity Managerで使用するためのActive Directoryの構成

この項では、Active Directoryを構成する方法を説明します。Active Directoryのスキーマを次のように拡張します。


注意:

手順の実行順序は重要です。


  1. 次のファイルを探します。

    IDM_ORACLE_HOME/oam/server/oim-intg/ldif/ad/schema/ADUserSchema.ldif

    IDM_ORACLE_HOME/oam/server/oim-intg/ldif/ad/schema/AD_oam_pwd_schema_add.ldif

  2. これらの両ファイルで、domain-dnを適切なdomain-dn値に置き換えます。

  3. コマンドラインでldapaddを使用して、次のように2つのLDIFファイルをロードします。

    ldapadd -h activedirectoryhostname -p activedirectoryportnumber -D AD_administrator -q -c -f file
    

    ここで、AD_administratorは、ディレクトリに対するスキーマ拡張権限を持つユーザーです。

    例:

    ldapadd -h "ACTIVEDIRECTORYHOST.mycompany.com" -p 389 -D adminuser –q -c -f ADUserSchema.ldif
    ldapadd -h "ACTIVEDIRECTORYHOST.mycompany.com" -p 389 -D adminuser -q -c -f AD_oam_pwd_schema_add.ldif
    

    注意:

    -Dの後に、DNまたはuser@domain.comのどちらかを指定できます。


  4. 次のディレクトリに移動します。

    IAM_MW_HOME/oracle_common/modules/oracle.ovd_11.1.1/oimtemplates

    Active Directoryスキーマを拡張するには、次のコマンドを実行します。

    sh extendadschema.sh -h AD_host -p AD_port -D 'administrator@mydomain.com' -AD "dc=mydomain,dc=com" -OAM true
    

9.4.4 ユーザーとグループの作成

Identity Managementコンポーネントで必要なユーザーとグループでアイデンティティ・ストアをシードする必要があります。

アイデンティティ・ストアをシードするには、IDMHOST1で次のタスクを実行する必要があります。

  1. MW_HOMEIAM_MW_HOMEに設定します。

    ORACLE_HOMEIAM_ORACLE_HOMEに設定します。

    JAVA_HOMEJAVA_HOMEに設定します。

  2. 次の場所にあるidmConfigToolコマンドを使用してアイデンティティ・ストアを構成します。

    IAM_ORACLE_HOME/idmtools/bin


    注意:

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

    IAM_ORACLE_HOME/idmtools/bin


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

    idmConfigTool.sh -prepareIDStore mode=MODE input_file=configfile 
    

    MODEに選択する値によって、作成するユーザーのタイプが決まります。指定可能なMODEの値は、OAMOIMWLSなどです。

    トポロジにあるコンポーネントそれぞれに対してコマンドを1回実行します。

    • すべてのトポロジにおいて、管理コンソールに対するシングル・サインオンを有効にする場合は、WebLogic管理コンソールとOracle Enterprise Manager Fusion Middleware Controlにログインする権限を持つユーザーがアイデンティティ・ストアに存在することを確認する必要があります。次のように入力します。

      idmConfigTool.sh -prepareIDStore mode=WLS input_file=idstore.props
      

      最初にこのコマンドを実行します。

    • トポロジにAccess Managerが含まれている場合、Access Managerで必要なユーザーをアイデンティティ・ストアにシードしておく必要があります。次のように入力します。

      idmConfigTool.sh -prepareIDStore mode=OAM input_file=idstore.props
      
    • トポロジにOracle Identity Managerが含まれている場合、xelsysadmユーザーをアイデンティティ・ストアにシードし、Oracle Identity Manager管理グループにこのユーザーを割り当てる必要があります。また、リコンシリエーションを実行できるように、標準の場所cn=Users以外にもユーザーを作成します。このユーザーは、Oracle Virtual Directoryを使用してディレクトリに接続するときにバインドDNとして使用するユーザーにもなります。次のように入力します。

      idmConfigTool.sh -prepareIDStore mode=OIM input_file=idstore.props
      

      注意:

      このコマンドでは、アイデンティティ・ストアに予約用のコンテナも作成します。

      xelsysadmユーザーに割り当てるパスワードは、次のルールに準拠する必要があります。

      • 6文字以上

      • 1文字以上の数字

      • 2文字以上の英字

      • 先頭文字は英字

      • 1文字以上の小文字


    このコマンドを実行すると、アイデンティティ・ストアへの接続に使用しているアカウントのパスワードを入力するように要求されます。

  3. 各コマンドを実行した後、ログ・ファイルでエラーまたは警告を確認し、修正します。このツールを実行したディレクトリにautomation.logというファイルが作成されます。


関連項目:

idmConfigToolコマンドの詳細は、『Oracle Fusion Middleware Oracle Identity Management Suite統合概要』を参照してください。


9.4.5 不足しているOracle Internet Directoryオブジェクト・クラスの追加

不具合14341069は、Oracle Internet Directoryのオブジェクト・クラスが足りないことが原因です。この回避策は、このオブジェクト・クラスを手動で追加することです。

  1. 次の内容でupdate_oid.ldifというファイルを作成します。

    dn: cn=subschemasubentry
    changetype: modify
    delete: objectclasses
    objectclasses: ( 2.16.840.1.113894.200.2.1 NAME 'orclIDXPerson' SUP inetorgperson AUXILIARY MAY ( middleName $ orclActiveStartDate $ orclActiveEndDate $ orclIsEnabled $ orclTimeZone $ c $ orclGenerationQualifier $ orclHireDate $ orclAccessibilityMode $ orclColorContrast $ orclFontSize $ orclnumberFormat $ orclcurrency $ orcldateFormat $ orcltimeFormat $ orclembeddedHelp $ orclFALanguage $ orclFATerritory $ orclDisplayNameLanguagePreference $ orclImpersonationGranter $ orclImpersonationGrantee $ orclMTTenantGUID $ orclMTTenantUName $ orclMTUid $ orclFAUserID $ orclFAPersonID $ orclFAPartyID ))
    
    dn: cn=subschemasubentry
    changetype: modify
    add: attributetypes
    attributetypes: ( 2.16.840.1.113894.200.1.7 NAME 'orclPwdExpirationDate' EQUALITY caseIgnoreMatch SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' SINGLE-VALUE USAGE userApplications )
    
    dn: cn=subschemasubentry
    changetype: modify
    add: objectclasses
    objectclasses: ( 2.16.840.1.113894.200.2.1 NAME 'orclIDXPerson' SUP inetorgperson AUXILIARY MAY ( middleName $ orclActiveStartDate $ orclActiveEndDate $ orclIsEnabled $ orclTimeZone $ c $ orclGenerationQualifier $ orclHireDate $ orclAccessibilityMode $ orclColorContrast $ orclFontSize $ orclnumberFormat orclcurrency $ orcldateFormat $ orcltimeFormat $ orclembeddedHelp $ orclFALanguage $ orclFATerritory $ orclDisplayNameLanguagePreference $ orclImpersonationGranter $ orclImpersonationGrantee $ orclMTTenantGUID $ orclMTTenantUName $ orclMTUid $ orclFAUserID $ orclFAPersonID $ orclFAPartyID $ orclPwdExpirationDate ) )
    
  2. 次のコマンドを使用してOracle Internet Directoryを更新します。

    ldapmodify –D cn=orcladmin –h OIDHOST1.mycompany.com –p 3060 –f update_oid.ldif
    

9.4.6 不足しているOracle Unified Directoryの権限の追加

この項では、Oracle Unified Directoryの不足している権限の回避策を説明します。

次の内容でadd_aci.ldifというファイルを作成します。

dn: cn=Reserve,dc=mycompany,dc=com
changetype: modify
delete: aci
aci: (version 3.0; acl "oim reserve group container acl"; allow (read,add,delete) groupdn="ldap:///cn=OIMAdministrators,cn=Groups,dc=mycompany,dc=com"; deny (all) userdn="ldap:///anyone";)

dn: cn=Reserve,dc=mycompany,dc=com
changetype: modify
add: aci
aci: (target = "ldap:///cn=Reserve,dc=mycompany,dc=com")(targetattr = "*")(version 3.0; acl "Allow OIMAdministrators Group add, read and write access to all attributes"; allow (add, read, search, compare,write, delete, import,export) (groupdn = "ldap:///cn=OIMAdministrators,cn=Groups,dc=mycompany,dc=com");)

次のコマンドを使用してOracle Unified Directoryを更新します。

ldapmodify –D cn=oudadmin –h IDMHOST1.mycompany.com –p 1389 –f add_aci.ldif

9.4.7 Oracle Unified Directory変更ログのアクセス権の付与

Oracle Unified DirectoryおよびOracle Identity Managerを使用している場合、変更ログへのアクセス権を付与する必要があります。これを行うには、すべてのOUDホスト(つまりIDMHOST1とIDMHOST2)で次の手順を実行します。

  1. OUDを実行しているホスト(たとえば、IDMHOST)で、OUDへの接続に使用するパスワードを含むmypasswordfileというファイルを作成します。

  2. レプリケーションしたOUDホストのいずれかで次のコマンドを発行して、既存の変更ログの権限を削除します。

    OUD_ORACLE_INSTANCE/bin/dsconfig set-access-control-handler-prop \
    --remove global-aci:"(target=\"ldap:///cn=changelog\")(targetattr=\"*\")(version 3.0; acl \"External changelog access\"; deny (all) userdn=\"ldap:///anyone\";)" \
            --hostname OUD_HOST \
            --port OUD_ADMIN_PORT \
            --trustAll \
            --bindDN cn=oudadmin \
            --bindPasswordFile passwordfile \
            --no-prompt 
    

    例:

    OUD_ORACLE_INSTANCE/bin/dsconfig set-access-control-handler-prop \
    --remove global-aci:"(target=\"ldap:///cn=changelog\")(targetattr=\"*\")(version 3.0; acl \"External changelog access\"; deny (all) userdn=\"ldap:///anyone\";)" \
            --hostname IDMHOST1.mycompany.com \
            --port 4444 \
            --trustAll  \
            --bindDN cn=oudadmin \
            --bindPasswordFile mypasswordfile \
            --no-prompt
    
  3. 次の新しいACIを追加します。

    OUD_ORACLE_INSTANCE/bin/dsconfig set-access-control-handler-prop \
    --add global-aci:"(target=\"ldap:///cn=changelog\")(targetattr=\"*\")(version 3.0; acl \"External changelog access\"; allow (read,search,compare,add,write,delete,export) groupdn=\"ldap:///cn=OIMAdministrators,cn=groups,dc=mycompany,dc=com\";)" \
            --hostname OUD_HOST \
            --port OUD_ADMIN_PORT \
            --trustAll \
            --bindDN cn=oudadmin \
            --bindPasswordFile passwordfile \
            --no-prompt
    

    例:

    OUD_ORACLE_INSTANCE/bin/dsconfig set-access-control-handler-prop \
    --add global-aci:"(target=\"ldap:///cn=changelog\")(targetattr=\"*\")(version 3.0; acl \"External changelog access\"; allow (read,search,compare,add,write,delete,export) groupdn=\"ldap:///cn=OIMAdministrators,cn=groups,dc=mycompany,dc=com\";)" \
            --hostname IDMHOST1.mycompany.com \
            --port 4444 \
            --trustAll \
            --bindDN cn=oudadmin \
            --bindPasswordFile mypasswordfile \
            --no-prompt
    
  4. 次の新しいACIを追加します。

    OUD_ORACLE_INSTANCE/bin/dsconfig set-access-control-handler-prop \
    --add global-aci:"(targetcontrol=\"1.3.6.1.4.1.26027.1.5.4\")(version 3.0; acl \"OIMAdministrators control access\"; allow(read)  groupdn=\"ldap:///cn=OIMAdministrators,cn=groups,dc=mycompany,dc=com\";)" \
            --hostname OUD_HOST \
            --port OUD_ADMIN_PORT \
            --trustAll \
            --bindDN cn=oudadmin \
            --bindPasswordFile passwordfile \
            --no-prompt
    

    例:

    OUD_ORACLE_INSTANCE/bin/dsconfig set-access-control-handler-prop \
    --add global-aci:"(targetcontrol=\"1.3.6.1.4.1.26027.1.5.4\")(version 3.0; acl \"OIMAdministrators control access\"; allow(read)  groupdn=\"ldap:///cn=OIMAdministrators,cn=groups,dc=mycompany,dc=com\";)" \
            --hostname IDMHOST1.mycompany.com \
            --port 4444 \
            --trustAll \
            --bindDN cn=oudadmin \
            --bindPasswordFile mypasswordfile \
            --no-prompt
    
  5. 次のACIを追加します。

    OUD_ORACLE_INSTANCE/bin/dsconfig set-access-control-handler-prop \
    --add global-aci:"(target=\"ldap:///\")(targetscope=\"base\")(targetattr=\"lastExternalChangelogCookie\")(version 3.0; acl \"User-Visible lastExternalChangelog\"; allow (read,search,compare) groupdn=\"ldap:///cn=OIMAdministrators,cn=groups,dc=mycompany,dc=com\";)" \
            --hostname OUD_HOST \
            --port OUD_ADMIN_PORT \
            --trustAll \
            --bindDN cn=oudadmin \
            --bindPasswordFile passwordfile \
            --no-prompt
    

    例:

    OUD_ORACLE_INSTANCE/bin/dsconfig set-access-control-handler-prop \
    --add global-aci:"(target=\"ldap:///\")(targetscope=\"base\")(targetattr=\"lastExternalChangelogCookie\")(version 3.0; acl \"User-Visible lastExternalChangelog\"; allow (read,search,compare) groupdn=\"ldap:///cn=OIMAdministrators,cn=groups,dc=mycompany,dc=com\";)" \
            --hostname IDMHOST1.mycompany.com \
            --port 4444 \
            --trustAll \
            --bindDN cn=oudadmin \
            --bindPasswordFile mypasswordfile \
            --no-prompt
    

9.4.8 Oracle Unified Directoryの索引の作成

idmConfigToolを実行してOracle Unified Directoryアイデンティティ・ストアを準備すると、実行対象のインスタンスに関するデータの索引が作成されます。構成の残りのOracle Unified Directoryインスタンスそれぞれに関して索引を手動で作成する必要があります。

これを実行するには、IDMHOST2で次のコマンドを発行します。

OUD_ORACLE_INSTANCE/OUD/bin/ldapmodify -h IDMHOST2.mycompany.com -Z -X -p 4444 -a -D "cn=oudadmin" -j mypasswordfile -c  -f IAM_ORACLE_HOME/oam/server/oim-intg/ldif/ojd/schema/ojd_user_index_generic.ldif
OUD_ORACLE_INSTANCE/OUD/bin/ldapmodify -h IDMHOST2.mycompany.com -Z -X -p 4444 -a -D "cn=oudadmin" -j mypasswordfile -c  -f IAM_ORACLE_HOME/idmtools/templates/oud/oud_indexes_extn.ldif

各IDMHOSTに索引が作成されたら、次のように索引を再構築します。

  1. 次のコマンドを発行してOracle Unified Directoryをシャットダウンします。

    OUD_ORACLE_INSTANCE/OUD/bin/stop-ds
    
  2. 次のコマンドを実行します。

    OUD_ORACLE_INSTANCE/OUD/bin/rebuild-index --rebuildAll -b "dc=mycompany,dc=com"
    
  3. 次のコマンドを発行してOracle Unified Directoryを再起動します。

    OUD_ORACLE_INSTANCE/OUD/bin/start-ds
    

手順1-3を繰返し、各IDMHOST (idmConfigToolの実行対象だったホストを含む)に対する索引を再構築し、可用性を維持し、索引を再構築しているディレクトリのみを停止します。

9.4.9 Oracle Internet DirectoryおよびOracle Unified Directory以外のディレクトリへのアクセス制御リストの作成

前の項で、Oracleコンポーネントのユーザーおよびアーティファクトをアイデンティティ・ストアにシードしました。Microsoft Active DirectoryなどのOracle Internet DirectoryまたはOracle Unified Directory以外のディレクトリでアイデンティティ・ストアをホストしている場合、アクセス制御リスト(ACL)を設定して、作成したエンティティに適切な権限を指定する必要があります。この項では、作成されるアーティファクトおよびそのアーティファクトで必要な権限を示します。

  • システムID: すべてのシステム識別子を格納するためのシステムIDコンテナが作成されます。ユーザーの作成場所であるコンテナが他に存在する場合は、それが管理の中で指定されます。

  • Access Manager管理ユーザー。このユーザーは、OAM管理者グループに追加されます。このグループでは、Oracle Access Managementコンソールを管理する権限を提供します。このユーザーは単なるアプリケーション・ユーザーなので、LDAPスキーマ・レベルの権限は不要です。

  • Access Managerソフトウェア・ユーザー。このユーザーは、コンテナに対する読取り権限を提供するグループに追加されます。このユーザーにはスキーマ管理権限も付与されます。

  • システムIDコンテナに存在するOracle Identity ManagerユーザーoimLDAP: コンテナでは適宜パスワード・ポリシーが設定されます。システムIDコンテナのユーザーのパスワードは、期限切れにならないように設定する必要があります。

  • Oracle Identity Manager管理グループ: Oracle Identity Managerのユーザーがこのメンバーとして追加されます。Oracle Identity Manager管理グループには、ディレクトリ内のすべてのユーザー・エンティティおよびグループ・エンティティに対する完全な読取り/書込み権限が付与されます。

  • WebLogic管理者: Oracle Virtual DirectoryのIDMドメインの管理者です。

  • WebLogic管理者グループ: WebLogic管理者がメンバーとして追加されます。Oracle Virtual DirectoryのIDMドメインの管理者グループです。

  • 予約コンテナ: 読取り/書込み操作を実行するための権限がOracle Identity Manager管理グループに付与されます。

9.5 Oracle Virtual Directoryにおけるアダプタの作成

Oracle Virtual Directoryを使用してLDAPディレクトリにアクセスする場合、アダプタを作成してOracle Virtual DirectoryをバックエンドLDAPディレクトリにリンクする必要があります。この項では方法について説明します。

この手順は、接続先のディレクトリに応じて若干異なります。以降の項では、サポートされるディレクトリ用のアダプタを作成し、検証する方法を説明します。

9.5.1 変更ログ生成がOracle Internet Directoryで有効になっていることの確認

Oracle Virtual Directoryで変更ログ・アダプタを作成する前に、バックエンドOracle Internet Directoryサーバーで変更ログ生成が有効になっていることを確認する必要があります。

ディレクトリ・サーバーで変更ログ生成が有効になっているかどうかをテストするには、次のように入力します。

ldapsearch -h directory_host -p ldap_port -D bind_dn -q -b '' -s base 'objectclass=*' lastchangenumber

例:

ldapsearch -h OIDHOST1 -p 3060 -D "cn=orcladmin" -q -b '' -s base 'objectclass=*' lastchangenumber

値を備えたlastchangenumberがコマンド出力に含まれている場合、変更ログ生成は有効になっています。変更ログ生成が有効でない場合は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』のコマンドラインを使用した変更ログ生成の有効化および無効化に関する項の説明に従って、有効にしてください。

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

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

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

  1. MW_HOMEIAM_MW_HOMEに設定します。

    ORACLE_HOMEIAM_ORACLE_HOMEに設定します。

    JAVA_HOMEJAVA_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.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.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]
    

    例:

    idmConfigTool.sh -configOVD input_file=ovd1.props
    

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

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

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

9.5.3 Oracle Virtual Directoryアダプタの検証

ODSMを使用して、次のタスクを実行します。

  1. 次のURLでODSMにアクセスします。

    http://HOSTNAME.mycompany.com:port/odsm
    
  2. Oracle Virtual Directoryに接続します。

  3. 「データ・ブラウザ」タブに移動します。

  4. リストされたユーザー・アダプタ・ルートDNをそれぞれ確認できるように、「クライアント・ビュー」を展開します。

  5. ユーザー・アダプタ・ルートDNを開きます。バックエンドLDAPサーバー内にすでにオブジェクトが存在する場合は、これらのオブジェクトがここに表示されます。

  6. ODSMは変更ログ問合せをサポートしないので、cn=changelogサブツリーを開くことはできません。

    コマンドラインを使用して、次のタスクを実行します。

    • 次のように入力して、ユーザー・アダプタを検証します。

      ldapsearch -h directory_host -p ldap_port -D "cn=orcladmin" -q  -b <user_search_base> -s sub "objectclass=inetorgperson" dn
      

      例:

      ldapsearch -h OVDHOST1.mycompany.com -p 6501 -D "cn=orcladmin" -q -b "cn=Users,dc=mycompany,dc=com" -s sub "objectclass=inetorgperson" dn
      

      要求されたら、パスワードを入力します。

      バックエンドLDAPサーバーにすでに存在するユーザー・エントリが表示されます。

    • 次のように入力して、変更ログ・アダプタを検証します。

      ldapsearch -h directory_host -p ldap_port -D "cn=orcladmin" -q  -b "cn=changelog" -s one "changenumber>=0"
      

      例:

      ldapsearch -h OVDHOST1 -p 6501 -D "cn=orcladmin" -q -b "cn=changelog" -s one "changenumber>=0"
      

      コマンドは、データのログ(すべてのユーザーの作成など)を返します。変更ログ・アダプタが有効ならば、エラーを出さずに戻ります。

    • 次のように入力して、最新変更番号問合せを検証します。

      ldapsearch -h directory_host -p ldap_port -D "cn=orcladmin" -q -b "cn=changelog" -s base 'objectclass=*' lastchangenumber
      

      例:

      ldapsearch -h OVDHOST1 -p 6501 -D "cn=orcladmin" -q -b "cn=changelog" -s base 'objectclass=*' lastchangenumber
      

      このコマンドは、バックエンドLDAPサーバーで生成された最新の変更番号を返します。

9.6 アイデンティティ・ストアのバックアップ

第17.6.3項「インストール時および構成時のバックアップの実行」の説明に従って、LDAPディレクトリのバックアップを作成します。