Oracle® Fusion Middleware Oracle Identity Managementエンタープライズ・デプロイメント・ガイド 11g リリース2 (11.1.2.1) B71694-06 |
|
![]() 前 |
![]() 次 |
この章では、Oracle Identity Managementエンタープライズ・デプロイメントでアイデンティティ・ストアを準備する方法を説明します。
次の項が含まれます:
アイデンティティ・ストアの準備には、ディレクトリのスキーマを拡張してOracle Access Management Access ManagerおよびOracle Identity Managerをサポートし、アイデンティティ管理トポロジを構築する際に使用するシステム・ユーザーでアイデンティティ・ストアをシードすることが含まれます。
この章で説明する手順では、アイデンティティ・ストアをホストするLDAPディレクトリの構成を変更します。これらの作業を実行する前に、第17.6.3項「インストール時および構成時のバックアップの実行」の説明に従って、LDAPディレクトリのバックアップを作成します。
続行する前に、次の条件を満たしていることを確認します。
Oracle Unified Directoryなどの高可用性LDAPディレクトリが使用可能になっています。
必要に応じて、Active Directoryなどその他のディレクトリがインストールされ使用可能になっています。
この項では、アイデンティティ・ストアを準備する方法について説明します。次のトピックが含まれます:
第9.4.3項「Access ManagerおよびOracle Identity Manager用のディレクトリの準備」
第9.4.9項「Oracle Internet DirectoryおよびOracle Unified Directory以外のディレクトリへのアクセス制御リストの作成」
ディレクトリを使用してAccess Managerをサポートできるようするには、その前にディレクトリを拡張して、使用しているLDAPディレクトリにAccess Managerで必要なオブジェクト・クラスを追加する必要があります。
ディレクトリ・スキーマの拡張に加えて、複数のユーザーを作成する必要もあります。これらのユーザーは、次の作業を行うためのガイドで後ほど使用します。
専用ユーザー使用によるディレクトリへのアクセス。
Access Manager、ディレクトリおよびWebLogicが認証を外部ディレクトリにオフロードした後に、これらの製品へのアクセス。
プロパティ・ファイル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: OIDHOST1
と3060
OUD: IDMHOST1
と1389
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が含まれている場合のみ使用します。
この項では、Oracle Unified Directory、Oracle Internet DirectoryまたはActive Directoryをアイデンティティ・ストアとしてサポートするよう、Identity Managementコンポーネントをデプロイする方法を説明します。
次のトピックが含まれます:
アイデンティティ・ストアを事前構成すると、Oracle Unified DirectoryまたはOracle Internet Directoryでスキーマが拡張されます。
注意: Access ManagerまたはOracle Identity Managerを使用していないかぎり、アイデンティティ・ストアを事前構成する必要はありません。 |
そのためには、IDMHOST1で次のタスクを実行します。
MW_HOME
をIAM_MW_HOME
に設定します。
ORACLE_HOME
をIAM_ORACLE_HOME
に設定します。
JAVA_HOME
をJAVA_HOME
に設定します。
次の場所にある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
ログ・ファイルを確認して、エラーや警告を修正します。このツールを実行したディレクトリにautomation.logというファイルが作成されます。
注意:
|
関連項目:
|
この項では、Active Directoryを構成する方法を説明します。Active Directoryのスキーマを次のように拡張します。
注意: 手順の実行順序は重要です。 |
次のファイルを探します。
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
これらの両ファイルで、domain-dn
を適切なdomain-dn
値に置き換えます。
コマンドラインで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
注意:
|
次のディレクトリに移動します。
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
Identity Managementコンポーネントで必要なユーザーとグループでアイデンティティ・ストアをシードする必要があります。
アイデンティティ・ストアをシードするには、IDMHOST1で次のタスクを実行する必要があります。
MW_HOME
をIAM_MW_HOME
に設定します。
ORACLE_HOME
をIAM_ORACLE_HOME
に設定します。
JAVA_HOME
をJAVA_HOME
に設定します。
次の場所にあるidmConfigTool
コマンドを使用してアイデンティティ・ストアを構成します。
IAM_ORACLE_HOME
/idmtools/bin
注意:
|
Linuxの場合、このコマンドの構文は次のとおりです。
idmConfigTool.sh -prepareIDStore mode=MODE input_file=configfile
MODE
に選択する値によって、作成するユーザーのタイプが決まります。指定可能なMODEの値は、OAM
、OIM
、WLS
などです。
トポロジにあるコンポーネントそれぞれに対してコマンドを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
注意: このコマンドでは、アイデンティティ・ストアに予約用のコンテナも作成します。
|
このコマンドを実行すると、アイデンティティ・ストアへの接続に使用しているアカウントのパスワードを入力するように要求されます。
各コマンドを実行した後、ログ・ファイルでエラーまたは警告を確認し、修正します。このツールを実行したディレクトリにautomation.log
というファイルが作成されます。
関連項目:
|
不具合14341069は、Oracle Internet Directoryのオブジェクト・クラスが足りないことが原因です。この回避策は、このオブジェクト・クラスを手動で追加することです。
次の内容で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 ) )
次のコマンドを使用してOracle Internet Directoryを更新します。
ldapmodify –D cn=orcladmin –h OIDHOST1.mycompany.com –p 3060 –f update_oid.ldif
この項では、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
Oracle Unified DirectoryおよびOracle Identity Managerを使用している場合、変更ログへのアクセス権を付与する必要があります。これを行うには、すべてのOUDホスト(つまりIDMHOST1とIDMHOST2)で次の手順を実行します。
OUDを実行しているホスト(たとえば、IDMHOST)で、OUDへの接続に使用するパスワードを含むmypasswordfile
というファイルを作成します。
レプリケーションした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
次の新しい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
次の新しい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
次の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
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に索引が作成されたら、次のように索引を再構築します。
次のコマンドを発行してOracle Unified Directoryをシャットダウンします。
OUD_ORACLE_INSTANCE/OUD/bin/stop-ds
次のコマンドを実行します。
OUD_ORACLE_INSTANCE/OUD/bin/rebuild-index --rebuildAll -b "dc=mycompany,dc=com"
次のコマンドを発行してOracle Unified Directoryを再起動します。
OUD_ORACLE_INSTANCE/OUD/bin/start-ds
手順1-3を繰返し、各IDMHOST (idmConfigTool
の実行対象だったホストを含む)に対する索引を再構築し、可用性を維持し、索引を再構築しているディレクトリのみを停止します。
前の項で、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管理グループに付与されます。
Oracle Virtual Directoryを使用してLDAPディレクトリにアクセスする場合、アダプタを作成してOracle Virtual DirectoryをバックエンドLDAPディレクトリにリンクする必要があります。この項では方法について説明します。
この手順は、接続先のディレクトリに応じて若干異なります。以降の項では、サポートされるディレクトリ用のアダプタを作成し、検証する方法を説明します。
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管理者ガイド』のコマンドラインを使用した変更ログ生成の有効化および無効化に関する項の説明に従って、有効にしてください。
idmConfgTool
を使用すると、Oracle Internet DirectoryおよびActive Directory用のOracle Virtual Directoryユーザーおよび変更ログ・アダプタを作成できます。Oracle Identity Managerにはアダプタが必要です。Oracle Virtual Directoryを使用してOracle Internet Directoryに接続することを強くお薦めします。ただしこれは必須ではありません。
そのためには、IDMHOST1で次のタスクを実行します。
MW_HOME
をIAM_MW_HOME
に設定します。
ORACLE_HOME
をIAM_ORACLE_HOME
に設定します。
JAVA_HOME
をJAVA_HOME
に設定します。
構成しているアダプタのプロパティ・ファイル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
に設定されます。
次の場所にある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インスタンスに対してこのコマンドを実行します。
ODSMを使用して、次のタスクを実行します。
次のURLでODSMにアクセスします。
http://HOSTNAME
.mycompany.com:port/odsm
Oracle Virtual Directoryに接続します。
「データ・ブラウザ」タブに移動します。
リストされたユーザー・アダプタ・ルートDNをそれぞれ確認できるように、「クライアント・ビュー」を展開します。
ユーザー・アダプタ・ルートDNを開きます。バックエンドLDAPサーバー内にすでにオブジェクトが存在する場合は、これらのオブジェクトがここに表示されます。
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サーバーで生成された最新の変更番号を返します。
第17.6.3項「インストール時および構成時のバックアップの実行」の説明に従って、LDAPディレクトリのバックアップを作成します。