3 Oracle Access ManagerとLDAPの統合

Oracle Access ManagerとLDAPの統合では、LDAPディレクトリの準備、欠落しているオブジェクト・クラスの追加、および自動スクリプトを使用したOAMの構成を行います。

3.1 自動スクリプトを使用したOAMの構成

idmConfig.sh自動スクリプトを使用してOracle Access Managerを構成します。

  1. 次の値でファイルoam.propsを作成します。
    #LDAP Properties
    
    IDSTORE_HOST: ldaphost.example.com
    IDSTORE_PORT: 1636
    IDSTORE_KEYSTORE_FILE: /u01/oracle/config/keystores/idmTrustStore.p12
    IDSTORE_KEYSTORE_PASSWORD:password
    IDSTORE_SSL_ENABLED: true
    IDSTORE_NEW_SETUP: true
    IDSTORE_BINDDN: cn=oudadmin
    IDSTORE_GROUPSEARCHBASE: cn=Groups,dc=edg,dc=com
    IDSTORE_SEARCHBASE: dc=edg,dc=com
    IDSTORE_USERNAMEATTRIBUTE: cn
    IDSTORE_LOGINATTRIBUTE: uid
    OAM_SERVER_LOGIN_ATTRIBUTE: uid
    IDSTORE_USERSEARCHBASE: cn=Users,dc=edg,dc=com
    IDSTORE_NEW_SETUP: true
    IDSTORE_DIRECTORYTYPE: OUD
    IDSTORE_OAMADMINUSER: oamadmin
    IDSTORE_OAMSOFTWAREUSER: oamLDAP
    OAM_IDSTORE_ROLE_SECURITY_ADMIN: OAMAdministrators
    IDSTORE_SYSTEMIDBASE: cn=SystemIDs,dc=example,dc=com
    IDSTORE_OIMADMINGROUP: OIMAdministrators
    IDSTORE_OIMADMINUSER: oimLDAP
    IDSTORE_WLSADMINUSER : weblogic_iam
    IDSTORE_WLSADMINGROUP : WLSAdministrators
    OAM_SERVER_LOGIN_ATTRIBUTE: uid
    OAM_IDSTORE_NAME: OAMIDSTORE
    
    #OAM Properties
    PRIMARY_OAM_SERVERS: oamhost1.example.com:5575
    WEBGATE_TYPE: ohsWebgate12c
    ACCESS_GATE_ID: Webgate_IDM
    1
    COOKIE_DOMAIN: .example.com
    COOKIE_EXPIRY_INTERVAL: 120
    OAM_WG_DENY_ON_NOT_PROTECTED: true
    OAM_IDM_DOMAIN_OHS_HOST: login.example.com
    OAM_IDM_DOMAIN_OHS_PORT: 443
    OAM_IDM_DOMAIN_OHS_PROTOCOL: https
    OAM_SERVER_LBR_HOST: login.example.com
    OAM_SERVER_LBR_PORT: 443
    OAM_SERVER_LBR_PROTOCOL: https
    OAM_OAM_SERVER_TRANSFER_MODE: open
    OAM_OAM_SSLENABLED: true
    OAM_TRANSFER_MODE: open
    OAM_SSO_ONLY_FLAG: false
    OAM_IMPERSONATION_FLAG: false
    OAM_IDM_DOMAIN_LOGOUT_URLS: /console/jsp/common/logout.jsp,/em/targetauth/emaslogout.jsp
    OAM_OIM_INTEGRATION_REQ: yes
    OAM_OIM_OHS_URL: https://oim.example.com:443/
    mrhys: # WebLogic Properties
    WLSHOST: oamhost1.example.com
    WLSPORT: 9002
    WLSADMIN: weblogic
    
    WLS_IS_SSLENABLED: true
    
    # Passwords
    IDSTORE_PWD_OAMSOFTWAREUSER: password
    IDSTORE_PWD_OAMADMINUSER: password
    IDSTORE_PASSWD:password
    OAM_IDM_DOMAIN_WEBGATE_PASSWD:password
    OAM_OIM_WEBGATE_PASSWD: password
    WLSPASSWD: password
    # Logger Properties
    LOG_FILE: /home/oracle/automation_integ.log
    LOG_LEVEL: ALL
    SSL_DEBUG_ENABLE: FALSE

    次の表では、configOAM.configプロパティ・ファイルの例にあるOAMの構成に関連するパラメータについて説明します。

    表3-1 configOAM.configファイルのパラメータ

    プロパティ 説明 値の例

    ACCESS_GATE_ID

    Webゲートに割り当てられる名前。これはOAM構成時に指定した値です。

    Webgate_IDM

    COOKIE_DOMAIN

    Webゲートが機能するドメインを入力します。

    .example.com

    COOKIE_EXPIRY_INTERVAL

    Cookieの有効期限を入力します。

    120

    IDSTORE_BINDDN

    Oracle Internet Directory、Oracle Unified Directory、またはActive Directory内の管理ユーザー。

    • OID: cn=orcladmin
    • OUD: cn=oudadmin
    • Active Directory: cn=Administrator,cn=Users,dc=example.com,dc=example,dc=com

    IDSTORE_GROUPSEARCHBASE

    グループが保存されているディレクトリの場所を入力します。

    cn=Groups,dc=edg,dc=com

    IDSTORE_HOST

    アイデンティティ・ストアのホスト名を入力します。

    ldaphost.example.com

    IDSTORE_LOGINATTRIBUTE

    ユーザーのログイン名が含まれているアイデンティティ・ストアのログイン属性を入力します。

    uid

    IDSTORE_OAMADMINUSER

    Oracle Access Managementコンソールへのアクセスに使用するユーザーを入力します。

    oamadmin

    IDSTORE_OAMSOFTWAREUSER

    LDAPサーバーとの対話に使用するユーザーを入力します。

    oamLDAP

    IDSTORE_PORT

    アイデンティティ・ストアのポートを入力します。

    1636

    IDSTORE_SEARCHBASE

    ユーザーおよびグループが保存されるディレクトリの場所を入力します。

    dc=edg,dc=com

    IDSTORE_SYSTEMIDBASE

    システム処理ユーザーが保存されるディレクトリ内のコンテナの場所を入力します。システム処理ユーザーは限られており、メイン・ユーザー・コンテナに格納されているエンタープライズ・ユーザーとは区別しておきます。

    たとえば、Oracle Virtual DirectoryアダプタのバインドDNユーザーにも使用されるOracle Identity Governanceリコンシリエーション・ユーザーがあげられます。

    cn=SystemIDs,dc=example,dc=com

    IDSTORE_USERNAMEATTRIBUTE

    アイデンティティ・ストア内のユーザーを設定および検索するために使用するusername属性を入力します。

    cn

    IDSTORE_USERSEARCHBASE

    Access Managerがユーザーを検索するコンテナを入力します。

    cn=Users,dc=edg,dc=com

    OAM_TRANSFER_MODE

    アクセス・サーバーが機能するセキュリティ・モードを入力します。サポートされる値はOPENです。

    Open

    OAM11G_IDM_DOMAIN_LOGOUT_URLS

    各種のログアウトURLに設定されます。

    /console/jsp/common/logout.jsp、/em/targetauth/emaslogout.jsp

    OAM11G_IDM_DOMAIN_OHS_HOST

    高可用性構成でOracle HTTP Server (OHS)の前面にあるロード・バランサを入力します。

    sso.example.com

    OAM11G_IDM_DOMAIN_OHS_PORT

    ロード・バランサのポートを入力します。

    443

    OAM11G_IDM_DOMAIN_OHS_PROTOCOL ロード・バランサにリクエストを送るときに使用するプロトコルを入力します。

    https

    OAM11G_IDSTORE_NAME

    OAMで構成されたアイデンティティ・ストアの名前を入力します。これはOAMのデフォルト/システムIDストアとして設定されます。

    OAMIDSTORE

    OAM11G_IDSTORE_ROLE_SECURITY_ADMIN

    アイデンティティ・ストア内のロール・セキュリティを管理するためのアカウント。

    OAMAdministrators

    OAM11G_IMPERSONATION_FLAG

    OAMサーバーの偽装機能を有効または無効にします。

    true

    OAM11G_OAM_SERVER_TRANSFER_MODE

    アクセス・サーバーが機能するセキュリティ・モードを入力します。サポートされる値はOPENです。

    Open

    OAM11G_OIM_INTEGRATION_REQ

    Oracle Identity Governanceと統合するのか、スタンドアロン・モードでAccess Managerを構成するのかを指定します。統合する場合、trueに設定します。

    true

    OAM11G_OIM_OHS_URL

    OIMサーバーの前面に配置するロード・バランサまたはOracle HTTP Server (OHS)のURLを入力します。

    https://sso.example.com:443/

    OAM11G_SERVER_LBR_HOST

    サイトの前面にあるOAMサーバーを入力します。

    sso.example.com

    OAM11G_SERVER_LBR_PORT

    ロード・バランサがリスニングするポート(HTTP_SSL_PORT)を入力します。

    443

    OAM11G_SERVER_LBR_PROTOCOL

    ロード・バランサにリクエストを送るときに使用するプロトコルを入力します。

    https

    OAM11G_SERVER_LOGIN_ATTRIBUTE

    uidに設定すると、ユーザーがログインするときにLDAPのuid属性に対してユーザー名の検証が行われます。

    uid

    OAM11G_SSO_ONLY_FLAG

    認証専用モードまたは標準モード(認証と認可をサポート)としてAccess Manager 11gを構成するために設定します。デフォルト値はtrueです。

    true

    OAM11G_WG_DENY_ON_NOT_PROTECTED

    10g Webゲートの保護されたフラグで拒否に設定されます。有効な値は、trueおよびfalseです。

    false

    PRIMARY_OAM_SERVERS

    Access Managerサーバーとそこで使用されるプロキシ・ポートのカンマ区切りリストを入力します。

    oamhost1.example.com:5575

    SPLIT_DOMAIN

    Oracle Access Managementコンソールの二重認証を抑制する場合、trueに設定する必要があります。

    true

    WEBGATE_TYPE

    作成するWebGateエージェントのタイプを入力します。10gおよび11gは14cではサポートされなくなりました。

    ohsWebgate14c

    WLSADMIN

    OAMドメイン内のWebLogic Server管理コンソールへのログインに使用するWebLogic Server管理ユーザー・アカウントを入力します。

    weblogic

    WLSHOST

    OAMドメイン内の管理サーバーのホスト名を入力します。

    oamhost1.example.com

    WLSPORT

    OAMドメインの管理サーバーのポートを入力します。

    ノート:

    ドメインでWebLogic管理ポートを使用している場合は、ここに入力する必要があります。

    9002

  2. ポリシー・サーバーを停止します。「管理対象WebLogic ServerおよびAccess Managerサーバーの起動と停止」を参照してください。

  3. ポリシー・マネージャ・サーバーを停止します。
  4. idmConfigToolを実行してOAMを構成し、LDAPと統合します。
    export JAVA_HOME=/u01/oracle/products/jdk
    export PATH=$JAVA_HOME/jdk/bin:$PATH
    export MW_HOME=/u01/oracle/products/idm
    export ORACLE_HOME=$MW_HOME/idm
    export WLST_PROPERTIES="-Djavax.net.ssl.trustStore=/u01/oracle/config/keystores/idmTrustStore.p12 -Djavax.net.ssl.trustStorePassword=password -Dweblogic.security.SSL.ignoreHostnameVerification=true"
    
    $ORACLE_HOME/idmtools/bin/idmConfigTool.sh -configOAM input_file=loam.props log_level=FINEST mode=all
    Oracle Access Managerを構成するための自動スクリプトが正常に実行されました。

    ノート:

    WLST_PROPERTIESは、WebLogicドメインがSSL有効の場合にのみ設定します。指定されたトラスト・ストアは、WebLogicドメイン・トラスト・ストアの絶対位置です。
  5. ポリシー・マネージャ・サーバーとともにOAMドメイン・サーバーを再起動します。「管理対象WebLogic ServerおよびAccess Managerサーバーの起動と停止」を参照してください。
  6. 構成を確認します。
    1. 次のOracle Access Managementコンソールにログインします。

      http://oamhost.example.com:7001/oamconsole

      または

      https:///oamhost.example.com:7002/oamconsole

      ノート:

      IDSTORE_OAMADMINUSERで指定したユーザーを使用してログインします。
    2. 「アプリケーション・セキュリティ」ページで、「エージェント」をクリックします。

      「SSOエージェントの検索」ページが表示されます。

    3. 「検索」フィールドにWebGate名を入力します。

      ノート:

      これは、configOAM.configプロパティ・ファイルでACCESS_GATE_IDに指定した値です。
    4. 「検索結果」表にエージェントが表示されます。

3.2 Oracle Identity and Access Managementで使用するLDAPディレクトリの準備

Oracle Access ManagementおよびOracle Identity GovernanceでLDAPディレクトリを使用するには、これらの製品に必要なオブジェクト・クラスがディレクトリに含まれている必要があります。これらのオブジェクト・クラスを使用すると、Oracle Access Managerでアカウントをロックし、Oracle Identity Governanceでセッションを終了できます。

このディレクトリは、Oracle Access Management (OAM)およびOracle Identity Governance (OIG)に必要な複数のシステム・ユーザーでも事前構成する必要があります。たとえば、WebLogic管理ページを保護する場合は、ログインを容易にするためにLDAPディレクトリ内のユーザーが必要です。また、LDAPディレクトリにアクセスして読み取るには、WebLogicドメイン用のシステム以外のユーザーを作成する必要があります。

3.3 自動スクリプトを使用した不足オブジェクト・クラスの追加

OIG-OAM統合用の自動スクリプトOIGOAMIntegration.shを使用して、不足しているオブジェクト・クラスを追加します。このスクリプトは、欠落しているオブジェクト・クラスをディレクトリ内の既存のユーザーに追加します。

  1. addMissingObjectClasses.configファイル(ORACLE_HOME/idm/server/ssointg/configにある)を、IDSTORE_HOSTIDSTORE_PORTIDSTORE_BINDDNIDSTORE_BINDDN_PWDおよびIDSTORE_USERSEARCHBASEの値で更新します。

    addMissingObjectClasses.configファイルの例

    IDSTORE_DIRECTORYTYPE: OUD
    IDSTORE_HOST: idstore.example.com
    IDSTORE_PORT: 1389
    IDSTORE_BINDDN: cn=oudadmin
    IDSTORE_BINDDN_PWD: <password>
    IDSTORE_USERSEARCHBASE: cn=Users,dc=example,dc=com
  2. OIG-OAM統合のための自動スクリプトを実行してOAM通知を有効にします。
    OIGOAMIntegration.sh -addMissingObjectClasses
LDAPディレクトリ内の既存のユーザーのオブジェクト・クラスを追加するための自動スクリプトが正常に実行されました。

ノート:

このステップは、LDAPディレクトリ内のユーザー数によって異なります。LDAPディレクトリ内の10000ユーザーにつき10分かかると予測されます。