プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Identity Managerの管理
11g リリース2 (11.1.2.3.0)
E61959-10
  目次へ移動
目次

前
 
次
 

B Oracle Identity ManagerのSSOプロバイダの構成

この付録では、Oracle Identity Managerでシングル・サインオン(SSO)を使用可能にするための構成手順について説明します。このためには、Oracle Identity ManagerでOpenSSO、IBM Tivoli Access ManagerおよびCA SiteMinderといったサードパーティのSSOプロバイダを使用できるようにします。

この付録には、次の項が含まれます。

B.1 サードパーティのSSOソリューションとの統合に関する共通の前提条件

この項では、Oracle Identity ManagerとサードパーティのSSOプロバイダ(Siteminder、OpenSSOおよびTivoli Access Managerなど)との統合に関する共通の前提条件をリストします。SSOプロバイダ固有の前提条件は、対応する項に別個にリストします。共通の前提条件は次のとおりです。

  • Oracle Identity Managerのアイデンティティ群が、SSOプロバイダにより使用されるLDAPレジストリのアイデンティティ情報と同期されていること。この目的のために、Oracle Identity ManagerのLDAP同期機能を使用できます。

  • Oracle Identity Managerシステム管理者(xelsysadm)アカウントがLDAPリポジトリに作成されており、この管理者アカウントを使用してOIMへのSSOログインを実行できること。このアカウントは、LDAPリポジトリ内に存在する他のOIMユーザーと同じユーザー・コンテナに作成する必要があります。また、Oracle Identity Managerユーザー・ログイン(uidまたはsamAcountName)にマッピングされるLDAPユーザー属性の値がXELSYSADMに設定されていることも確認してください。

  • SSOプロバイダによって返されるSSOヘッダーには、OIMユーザー・ログイン・フィールドにマッピングされるユーザー名の値が含まれていること。

B.2 Oracle Identity ManagerでのOpenSSOの使用可能化

この項には次のトピックが含まれます:

B.2.1 前提条件

Oracle Identity ManagerとOpenSSOとの統合の前提条件は次のとおりです。

  • Oracle Identity Manager 11g リリース2 (11.1.2.3.0)がインストールされ構成されていること。

  • OpenSSO 8.0がインストールされ構成されていること。

  • OpenSSO Enterprise Policy Agent 3.0 for Oracle WebLogic Server/Portal 10 (weblogic_v10_agent_3)がインストールされ構成されていること。

  • Oracle Identity ManagerとサードパーティのSSOソリューションとの統合に関する共通の前提条件を満たしていること(「サードパーティのSSOソリューションとの統合に関する共通の前提条件」を参照)。

B.2.2 Oracle Identity ManagerとOpenSSOとの統合

Oracle Identity Manager 11g リリース2 (11.1.2.3.0)をOracle WebLogic Server上のOpenSSO 8.0と統合するには:

  1. OpenSSOを起動します。

  2. Oracle Identity Managerを起動します。

  3. OpenSSOポリシー・エージェントを、Oracle Identity Managerドメインの管理サーバーにインストールします。これを行うには、次のようにします。

    1. OpenSSOにJ2EEエージェント・プロファイルを作成します。プロファイルの作成の詳細は、OpenSSOのドキュメントのポリシー・エージェントに関する説明を参照してください。

    2. WebLogic管理サーバーにエージェントをインストールします。agentadminユーティリティを使用して、エージェントをインストールします。OpenSSOのドキュメントのポリシー・エージェントに関する説明を参照してください。

  4. OpenSSOポリシー・エージェントを、Oracle Identity ManagerドメインのOracle Identity Manager管理対象サーバーにインストールします。そのためには、Oracle Identity Manager管理対象サーバーにエージェントをインストールします。管理対象サーバーへのエージェントのインストールの詳細は、OpenSSOのドキュメントのポリシー・エージェントに関する説明を参照してください。ステップ3.aで作成したエージェント・プロファイルと同じエージェント・プロファイルを使用します。


    注意:

    Oracle Identity Managerのクラスタ化デプロイメントの場合、各Oracle Identity Manager管理対象サーバーにポリシー・エージェントをインストールします。

  5. インストール後にOpenSSOポリシー・エージェントを構成するには:


    注意:

    Oracle Identity Managerのクラスタ化デプロイメントの場合、OpenSSOポリシー・エージェントを各Oracle Identity Manager管理対象サーバーで構成する必要があります。

    1. WebLogic Serverインスタンスを構成し、エージェントのクラスパスとJAVAオプションを設定します。

    2. 管理サーバーと管理対象サーバーにエージェント・アプリケーションをデプロイします。

    3. エージェント認証プロバイダをデプロイして構成します。

    4. WebLogic管理者をバイパス・リストに追加します。

    5. OIM Webアプリケーションにエージェント・フィルタをインストールします。この手順では、OpenSSOエージェント・フィルタを、OIMユーザー・ログインをサポートするすべてのOracle Identity Manager Webアプリケーションに追加します。これを行うには、次のようにします。


      注意:

      対応するデプロイメント・ディスクリプタは次の場所にあります。
      • IDM_ORACLE_HOME/server/apps/oim.ear/iam-consoles-faces.war/WEB-INF/web.xml

      • IDM_ORACLE_HOME/server/apps/oracle.iam.console.identity.self-service.ear/oracle.iam.console.identity.self-service.war/WEB-INF/web.xml

      • IDM_ORACLE_HOME/server/apps/oracle.iam.console.identity.sysadmin.ear/oracle.iam.console.identity.sysadmin.war/WEB-INF/web.xml


      i) IDM_ORACLE_HOME/server/apps/ディレクトリに移動します。

      ii) oim.ear/iam-consoles-faces.war/WEB-INF/web.xmlファイルのバックアップを作成し、これを編集してOpenSSOのドキュメントに記載されているフィルタ要素を追加します。変更を保存します。

      iii) oracle.iam.console.identity.self-service.earファイルのバックアップを作成し、これを一時的な場所に抽出します。次にoracle.iam.console.identity.self-service.warファイルを抽出します。WEB-INF/web.xmlを編集してOpenSSOのドキュメントに記載されているフィルタ要素を追加します。oracle.iam.console.identity.self-service.warと変更されたweb.xmlを再パッケージし、oracle.iam.console.identity.self-service.earと変更されたoracle.iam.console.identity.self-service.warを再パッケージします。

      iv) oracle.iam.console.identity.sysadmin.earのバックアップを作成し、これを一時的な場所に抽出します。次にoracle.iam.console.identity.sysadmin.warファイルを抽出します。WEB-INF/web.xmlを編集してOpenSSOのドキュメントに記載されているフィルタ要素を追加します。oracle.iam.console.identity.sysadmin.warと変更されたweb.xmlを再パッケージし、oracle.iam.console.identity.sysadmin.earと変更されたoracle.iam.console.identity.sysadmin.warを再パッケージします。


      注意:

      ステップiiiおよびivの実行後に、変更されたEARファイルと元のEARファイルの差のみがweb.xmlファイルに含まれていることを確認してください。

      v) Oracle Identity Managerインスタンスを停止します。

      vi) OIM_DOMAIN_HOME/servers/OIM_SERVER_INSTANCE/tmp/_WL_user/ディレクトリに移動します。設定がMicrosoft Windows上の場合、OIM_DOMAIN_HOME\servers\OIM_SERVER_INSTANCE\tmp\_WL_user\ディレクトリに移動します。

      vii) oracle.iam.console.identity.self-service.earとoracle.iam.console.identity.sysadmin.earのUIアプリケーションに固有のディレクトリを削除します。典型的なOracle Identity Manager設定では、削除対象ディレクトリはoracle.iam.console.identity.self-service.ear_V2.0とoracle.iam.console.identity.sysadmin.ear_V2.0です。

      viii) Oracle Identity Manager管理対象サーバーのインスタンスを再起動してから、ステップviで示したディレクトリ・パスにディレクトリが再作成されていることを確認します。

  6. Oracle Identity Manager管理対象サーバーのエージェント・プロファイルをOracle Identity ManagerのURL情報で更新します。これを行うには、次のようにします。

    1. OpenSSOアプリケーションにログインし、Oracle Identity Manager管理対象サーバーのエージェント・プロファイルを選択します。

    2. 一般タブをクリックします。エージェント・フィルタ・モードを変更します。既存の値をすべて削除します。空のキーを持つ新しい値と、対応するマップ値としてJ2EE_POLICYを追加します。

    3. アプリケーション・タブをクリックします。各セクションを次のように更新します。

      • ログイン・フォームURI。次の行を追加します。

        /oim/faces/pages/Login.jspx
        /identity/faces/signin
        /sysadmin/faces/signin
        
      • ログイン・エラーURI。次の行を追加します。

        /identity/faces/signin
        /sysadmin/faces/signin
        /oim/faces/pages/LoginError.jspx
        
      • 非強制URI処理。次の行を追加します。

        /identity/faces/register
        /identity/faces/forgotpassword
        /identity/faces/trackregistration
        /identity/faces/forgotuserlogin
        /identity/faces/accountlocked
        /identity/adfAuthentication
        /identity/afr/blank.html
        /sysadmin/adfAuthentication
        /sysadmin/afr/blank.html
        /sysadmin/faces/noaccess
        /oim/afr/blank.html
        /workflowservice/*
        /callbackResponseService/*
        /spml-xsd/*
        
  7. Oracle Identity ManagerでSSOを構成します。これを行うには、次のようにします。

    1. WebLogicオーセンティケータを設定します。これを行うには、次のようにします。

      i) OpenSSOにより使用されるユーザー・データ・ストアに対応するLDAPサーバー用のWebLogic認証プロバイダを追加して構成します。たとえば、OpenSSOによりSun DSEEが使用される場合は、iPlanet認証プロバイダを構成します。制御フラグをSUFFICIENTに設定します。


      注意:

      すべてのOracle Identity Managerユーザーが、オーセンティケータが指定するLDAPサーバーと同期されていることを確認してください。

      ii) Oracle Identity Managerの署名認証プロバイダ(OIMSignatureAuthenticator)を追加して構成します。制御フラグをSUFFICIENTに設定します。

      iii) オーセンティケータ・チェーンを次の順序で並べます。

      • DefaultAuthenticator - SUFFICIENT

      • OIMSignatureAuthenticator - SUFFICIENT

      • AgentAuthenticator - OPTIONAL

      • LDAPAuthenticator - SUFFICIENT

      • DefaultIdentityAsserter

    2. 次のコマンドを実行して、OpenSSOログアウトURLを実行するようにOracle Identity Managerログアウトを変更します。

      cd <IDM_ORACLE_HOME>/common/bin
      ./wlst.sh
      connect()
      addOAMSSOProvider(loginuri="/${app.context}/adfAuthentication", logouturi="http(s)://openssohost:openssoport/opensso/UI/Logout", autologinuri="/obrar.cgi")
      exit()
      
    3. Oracle Identity Manager ssoenabledフラグをtrueに設定します。これを行うには、次のようにします。

      i) Enterprise Managerにログインします。システムMBeanブラウザを開きます。

      ii) oracle.iam:Location=<OIM_SERVER_NAME>,name=SSOConfig,type=XMLConfig.SSOConfig,XMLConfig=Config,Application=oim,ApplicationVersion=11.1.2.0.0 mbeanを開きます。

      iii) ssoEnabledの値をtrueに設定します。

  8. Oracle Identity Managerドメインを再起動します。

  9. 次のURLに移動して構成をテストします。

    http://OIM_HOST:OIM_PORT/identity/

    ページはOpenSSOログイン・ページにリダイレクトされます。有効なOracle Identity Managerユーザーとしてログインします。

B.2.3 構成を検証するための検証テストの実行

次の検証手順を実行して、Oracle Identity ManagerとOpenSSOとの統合が正常に行われたかどうかを検証します。

SSOを使用したOracle Identity Managerへのユーザー・ログイン

前提条件: Oracle Identity ManagerとLDAPにユーザー(ENDUSER001など)を作成します。

手順: 作成したユーザー(ENDUSER001など)として、SSOを使用してOracle Identity Managerにログインし、問題なくログインできるかどうかを確認します。

期待される結果: ログインは正常に行われます。

Oracle Identity Managerへのクライアントベース・ログイン

前提条件: Oracle Identity Manager Design Consoleがインストールされ構成されていることを確認します。

手順: SSOパスワードを使用してシステム管理者としてDesign Consoleにログインします。

期待される結果: LDAPAuthenticatorがSSOログインに関して適切に構成されていれば、Design Consoleに問題なくログインできます。

署名ベースの認証

署名ベースの認証をテストするには:

  1. スケジューラ・サービスURLにアクセスします。これは、次に示すOracle Identity Manager管理対象サーバー・ポート上で実行されている必要があります。

    http://OIM_HOST:OIM_PORT/SchedulerService-web

  2. SSOパスワードを使用して、システム管理者としてログインします。

  3. ログインが成功し、次の詳細が画面に表示されている場合、署名ログインは成功です。

    スケジューラの現在のステータス: 起動済

    最後のエラー: なし

  4. 次の内容が表示された場合は、そのページで「開始」をクリックします。

    スケジューラの現在のステータス: 停止済

    ページにエラーが表示されていない場合、署名ログインは成功しています。

B.3 Oracle Identity ManagerでのIBM Tivoli Access Managerの使用可能化

この項には次のトピックが含まれます:

B.3.1 前提条件

Oracle Identity ManagerとOpenSSOとの統合の前提条件は次のとおりです。

  • Oracle Identity Manager 11g リリース2 (11.1.2.3.0)がインストールされ構成されていること。

  • IBM Tivoli Access Manager (TAM) for e-business 6.1がインストールされ構成されていること。

  • IBM Tivoli Access Manager Adapter for Oracle WebLogic Server for TAM 6.1およびOracle WebLogic Server 10gまたは11gがインストールされ構成されていること。

  • Oracle Identity ManagerとサードパーティのSSOソリューションとの統合に関する共通の前提条件を満たしていること(「サードパーティのSSOソリューションとの統合に関する共通の前提条件」を参照)。

  • フォーム・ベースのログインがTAMで有効になっていること。

B.3.2 Oracle Identity ManagerとIBM Tivoli Access Managerとの統合

Oracle Identity Manager 11g リリース2 (11.1.2.3.0)をIBM Tivoli Access Manager for e-business 6.1と統合するには:

  1. IBM Tivoli Access Managerを起動します。

  2. Oracle Identity Managerを起動します。

  3. websealおよびWebLogic間の接続を設定します。これを行うには、次のようにします。

    1. websealをOracle Identity Manager WebLogic Serverに接続するためのジャンクションを作成します。

    2. websealのログアウトおよびログイン・ページを構成します。

    3. weblogicセキュリティ・プロバイダをデプロイします。

      Oracle WebLogic Server用IBM Tivoli Access Manager Adapterに付属の、TAMとweblogicの統合に関するドキュメントを参照してください。詳細を次に示します。

      • ジャンクションの作成時には、Oracle Identity Manager上の非SSLポートとSSLポートの両方を考慮してください。

      • 保護されたリソースにwebsealジャンクションを作成する場合は、必ず「-c iv-user」(iv-user HTTPヘッダーの挿入)オプションを使用してください。

      • 保護する/保護しない必要があるリソースのリストを次に示します。

        次のリソースは保護します。

        /oim

        /xlWebApp

        /Nexaweb

        /identity

        /sysadmin

        次のURIは保護しません。

        /identity/faces/register

        /identity/faces/forgotpassword

        /identity/faces/trackregistration

        /identity/faces/forgotuserlogin

        /identity/faces/accountlocked

        /identity/adfAuthentication

        /identity/afr/blank.html

        /sysadmin/adfAuthentication

        /sysadmin/afr/blank.html

        /sysadmin/faces/noaccess

        /oim/afr/blank.html

        次のリソースは保護しません。

        /workflowservice

        /callbackResponseService

        /spml-xsd

      • Tivolli Access Managerアイデンティティ・アサーション・プロバイダ(AMIdentityAsserterLite)のみを構成します。構成時に「iv-user」オプションを選択します。

      • Tivolli Access Managerアイデンティティ認証プロバイダは構成しません。

      • TAMにより使用されるLDAPレジストリに対応するLDAPサーバー用のWebLogic認証プロバイダを構成します。たとえば、TAMによりSun DSEEが使用される場合は、iPlanet認証プロバイダを構成します。制御フラグをSUFFICIENTに設定します。Oracle Identity Managerのすべてのユーザーが、このLDAPサーバーに同期されていることを確認します。LDAPサーバーに存在しないOracle Identity Managerユーザーは、Oracle Identity Managerにログインできません。

      • Oracle Identity Managerの署名認証プロバイダ(OIMSignatureAuthenticationProvider)を構成します。構成時にOracle Identity Managerデータベースの詳細を指定します。OIMAuthenticationProviderで指定したものと同じ詳細を使用できます。制御フラグをSUFFICIENTに設定します。

      • オーセンティケータ・チェーンを次の順序で並べます。

        TAMIdentityAsserter

        OIMSignatureAuthenticator - SUFFICIENT

        LDAPAuthenticator - SUFFICIENT

        DefaultAuthenticator - SUFFICIENT

        DefaultIdentityAsserter


        注意:

        TAMIdentityAsserterを使用できない場合、「サードパーティのSSO統合の簡素化」で説明しているように、OAMIdentityAsserterを使用できます。

  4. 次のコマンドを使用して、TAMログアウトURLを実行するようにOracle Identity Managerログアウトを変更します。

    cd <IDM_ORACLE_HOME>/common/bin
    ./wlst.sh
    connect()
    addOAMSSOProvider(loginuri="/${app.context}/adfAuthentication", logouturi="http(s)://<webseal-host:port>/pkmslogout", autologinuri="/obrar.cgi")
    exit()
    
  5. OIM ssoenabledフラグをtrueに設定します。これを行うには、次のようにします。

    1. Enterprise Managerにログインします。システムMBeanブラウザを開きます。

    2. oracle.iam:Location=<OIM_SERVER_NAME>,name=SSOConfig,type=XMLConfig.SSOConfig,XMLConfig=Config,Application=oim,ApplicationVersion=11.1.2.0.0 mbeanを開きます。

    3. ssoEnabledの値をtrueに設定します。

  6. Oracle Identity Managerを再起動します。

  7. 次のURLに移動して構成をテストします。

    http(s)://WEBSEAL_HOST:WEBSEAL_PORT/identity/faces/home

    TAMログイン・ページが表示されます。有効なOracle Identity Managerユーザーとしてログインすると、ログインが成功します。

B.3.3 構成を検証するための検証テストの実行

次の検証手順を実行して、Oracle Identity ManagerとTAMとの統合が正常に行われたかどうかを検証します。

SSOを使用したOracle Identity Managerへのユーザー・ログイン

前提条件: Oracle Identity ManagerとLDAPにユーザー(ENDUSER001など)を作成します。

手順: 作成したユーザー(ENDUSER001など)として、SSOを使用してOracle Identity Managerにログインし、問題なくログインできるかどうかを確認します。

期待される結果: ログインは正常に行われます。

Oracle Identity Managerへのクライアントベース・シングル・ログイン

前提条件: Oracle Identity Manager Design Consoleがインストールされ構成されていることを確認します。

手順: SSOパスワードを使用してシステム管理者としてDesign Consoleにログインします。

期待される結果: LDAPAuthenticatorがSSOログインに関して適切に構成されていれば、Design Consoleに問題なくログインできます。

署名ベースの認証

署名ベースの認証をテストするには:

  1. スケジューラ・サービスURLにアクセスします。これは、次に示すOracle Identity Manager管理対象サーバー・ポート上で実行されている必要があります。

    http://OIM_HOST:OIM_PORT/SchedulerService-web

  2. SSOパスワードを入力して、システム管理者としてログインします。

  3. ログインが成功し、次の詳細が画面に表示されている場合、署名ログインは成功です。

    スケジューラの現在のステータス: 起動済

    最後のエラー: なし

  4. 次の内容が表示された場合は、そのページで「開始」をクリックします。

    スケジューラの現在のステータス: 停止済

    ページにエラーが表示されていない場合、署名ログインは成功しています。

B.4 Oracle Identity ManagerでのCA SiteMinderの使用可能化

この項には次のトピックが含まれます:

B.4.1 前提条件

Oracle Identity ManagerとCA SiteMinderとの統合の前提条件は次のとおりです。

B.4.2 Oracle Identity ManagerとCA SiteMinderとの統合

Oracle Identity ManagerをCA SiteMinderと統合するには:

  1. Siteminderのインストール・ドキュメントを参照して、Siteminder WebLogicエージェントをインストールします。インストールGUIの指示に従います。

  2. setDomainEnv.shファイルを編集して、次のように変数を設定します。

    ASA_HOME='PATH_TO_SITEMINDER_AGENT_HOME'
    export ASA_HOME
    
    SMASA_CLASSPATH="$ASA_HOME/conf:$ASA_HOME/lib/smagentapi.jar:$ASA_HOME/lib/smjavasdk2.jar:$ASA_HOME/lib/sm_jsafe.jar:$ASA_HOME/lib/smclientclasses.jar:$ASA_HOME/lib/sm_jsafeJCE.jar"
    export SMASA_CLASSPATH
    
    SM_JAVA_OPTIONS=" -Dsmasa.home=$ASA_HOME"
    export SM_JAVA_OPTIONS
    
    CLASSPATH=${SMASA_CLASSPATH}:${CLASSPATH}
    export CLASSPATH
    
  3. startWebLogic.shファイルを編集して、次のようにSM_JAVA_OPTIONSをJAVAコマンドに追加します。

    $JAVA_HOME/bin/java ${JAVA_VM} ${MEM_ARGS} -Dweblogic.Name=${SERVER_NAME} -Djava.security.policy=${WL_HOME}/server/lib/weblogic.policy ${JAVA_OPTIONS}
    ${SM_JAVA_OPTIONS} ${PROXY_SETTINGS} ${SERVER_CLASS}
    
  4. ASA_HOME/conf/WebAgent.confファイルを編集して、EnableWebAgentパラメータの値をYESに変更します。

  5. 管理対象サーバーおよび管理サーバーをすべて再起動します。

  6. Weblogic認証チェーンで、SiteminderIdentityAsserterおよびSiteminderAuthenticationProviderを追加/構成します。アイデンティティ・アサータの共通構成で、SMSESSIONを選択します。

  7. 「プロバイダ固有」サブタブで、「SMアイデンティティ・アサータ構成ファイル:」フィールドをASA_HOME/conf/WebAgent.confに設定します。

  8. SiteminderAuthenticationProvider 'ProviderSpecific'で、「SM認証プロバイダ構成ファイル:」をASA_HOME/conf/WebAgent.confに更新します。

  9. 認証チェーンから既存のOIMAuthenticationProviderを削除します。

  10. OIMSignatureAuthenticatorを認証チェーンに追加します。制御フラグをSUFFICIENTに設定します。このオーセンティケータは、Oracle Identity Managerへの署名ログインベースのログインを処理することのみを目的として追加します。

  11. LDAPオーセンティケータ(OID、Iplanetなど)を認証チェーンに追加し、制御フラグをSUFFICIENTとして設定します。このオーセンティケータが同じLDAPプロバイダを指す、つまり、次のように構成されていることを確認します。

    1. Oracle Identity Managerと同期化されている、つまり、OIMアイデンティティがすべて移入されています。

    2. 認証を目的としてSiteminderサーバーによって使用されています。

      HTTP以外をベースとするログイン・リクエスト(OIM Design Consoleへのログインや他のOIMクライアントへのログイン)、およびOPSSベースのアサーション・リクエストを処理するには、LDAPAuthenticatorを追加する必要があります。

  12. 表B-1に示すように認証チェーンを並べ替えます。

    表B-1 認証チェーン

    認証プロバイダ 制御フラグ

    SiteminderIdentityAsserter


    OIMSignatureAuthenticator

    SUFFICIENT

    SiteminderAuthenticationProvider

    SUFFICIENT

    LDAPAuthenticator

    SUFFICIENT

    DefaultAuthenticator

    SUFFICIENT

    DefaultIdentityAsserter



  13. ドメイン内の管理サーバーおよびすべての管理対象サーバーを再起動します。

  14. 次のコマンドを使用して、OIMのSSOログアウトを構成します。

    cd <IDM_ORACLE_HOME>/common/bin
     
    ./wlst.sh
     
    connect()
     
    addOAMSSOProvider(loginuri="/${app.context}/adfAuthentication", logouturi="SITEMINDER_LOGOUT_URL", autologinuri="/obrar.cgi")
     
    exit()
    

    注意:

    connect()呼出しにより、管理サーバーのURLとWebLogic管理ユーザー名およびパスワードを求められます。

  15. Oracle Identity Managerのssoenabledフラグをtrueに設定します。これを行うには、次のようにします。

    1. Enterprise Managerにログインし、システムMBeanブラウザを開きます。

    2. oracle.iam:Location=<OIM_SERVER_NAME>,name=SSOConfig,type=XMLConfig.SSOConfig,XMLConfig=Config,Application=oim,ApplicationVersion=11.1.2.0.0 mbeanを開きます。

    3. ssoEnabledの値をtrueに設定します。

  16. ドメイン内の管理サーバーおよびすべての管理対象サーバーを再起動します。

  17. Siteminder側で保護する/保護しないOracle Identity Managerリソースを次に示します。

    • 次のリソースは保護します。

      /identity

      /sysadmin

      /oim

      /xlWebApp

      /Nexaweb

    • 次のURIは保護しません。

      /identity/faces/register

      /identity/faces/forgotpassword

      /identity/faces/trackregistration

      /identity/faces/forgotuserlogin

      /identity/faces/accountlocked

      /identity/adfAuthentication

      /identity/afr/blank.html

      /sysadmin/adfAuthentication

      /sysadmin/afr/blank.html

      /sysadmin/faces/noaccess

      /oim/afr/blank.html

    • 次のリソースは保護しません。

      /workflowservice

      /callbackResponseService

      /spml-xsd

      /reqsvc

      /sysadmin/logout

      /identity/logout

      /identity/notification/secure

      /SchedulerService-web

      /wsm-pm

      /workflow

      /soa-infra

      /integration

      /b2b

      /sdpmessaging/userprefs-ui

  18. Oracle Identity Managerへのクライアントベース・ログインをサポートするには、smclientclasses.jarをクライアントのクラスパスに追加する必要があります。クライアントのクラスパスを設定するには:

    1. cdコマンドを使用して、OIM_ORACLE_HOME/server/bin/ディレクトリに移動します。

    2. VIエディタでsetEnv.shファイルを開きます。

    3. smclientclasses.jarを、最後にあるCLASSPATH変数に追加します。この設定によって、OIM_ORACLE_HOME/server/binにあるほとんどのクライアント・ユーティリティを実行しながら、Oracle Identity Managerへのクライアント・ログインを正常に実行できます。

      ただし、Design Consoleログインを行えるようにするには、このログイン用に別個にクライアントのクラスパスを設定する必要があります。これを行うには、次のようにします。

    1. OIM_ORACLE_HOME/designconsoleディレクトリに移動します。

    2. VIエディタでclasspath.shファイルを開きます。

    3. smclientclasses.jarを、最後にあるCLASSPATH変数に追加します。

B.4.3 構成を検証するための検証テストの実行

次の検証手順を実行して、Oracle Identity ManagerとCA SiteMinderとの統合が正常に行われたかどうかを検証します。

SSOを使用したOracle Identity Managerへのユーザー・ログイン

前提条件: Oracle Identity ManagerとLDAPにユーザー(ENDUSER001など)を作成します。

手順: 作成したユーザー(ENDUSER001など)として、SSOを使用してOracle Identity Managerにログインし、問題なくログインできるかどうかを確認します。

期待される結果: ログインは正常に行われます。

手順: Oracle Identity Managerシステム管理コンソール(/sysadmin)にOIM管理者(通常はXELSYSADM)にログインし、問題なくログインできるかどうかを確認します。

期待される結果:ログインは正常に行われます。

Oracle Identity Managerへのクライアントベース・ログイン

前提条件: Oracle Identity Manager Design Consoleがインストールされ構成されていることを確認します。

手順: SSOパスワードを使用してシステム管理者としてDesign Consoleにログインします。

期待される結果: SiteminderAuthenticationProviderがSSOログインに関して適切に構成されていれば、Design Consoleに問題なくログインできます。

署名ベースの認証

署名ベースの認証をテストするには:

  1. スケジューラ・サービスURLにアクセスします。これは、次に示すOracle Identity Manager管理対象サーバー・ポート上で実行されている必要があります。

    http://OIM_HOST:OIM_PORT/SchedulerService-web

  2. SSOパスワードを入力して、システム管理者としてログインします。

  3. ログインが成功し、次の詳細が画面に表示されている場合、署名ログインは成功です。

    スケジューラの現在のステータス: 起動済

    最後のエラー: なし

  4. 次の内容が表示された場合は、そのページで「開始」をクリックします。

    スケジューラの現在のステータス: 停止済

    ページにエラーが表示されていない場合、署名ログインは成功しています。

B.5 OAMを使用した基本SSOの構成

この項では、Oracle Identity ManagerとOAMの間の基本統合を構成する方法や、SSO認証を使用して統合を保護する方法について説明します。次の項が含まれます:


注意:

この項で説明する手順を実行する場合、有効になるのは基本SSOのみです。LDAPコネクタを使用して、パスワードをプロビジョニングするとともに、追加構成を実行し、ロック・ステータスをディレクトリに伝播できるようにします。

B.5.1 前提条件

次の前提条件を実行します。

  • Oracle Identity Manager 11g リリース2 (11.1.2.3.0)がインストールされ構成されていることを確認します。

  • Oracle Identity Managerのフロントエンドとして、OAM 11g Webゲートを管理するOHS/リバースプロキシが機能している必要があります。

  • コネクタにより、Oracle Identity Managerのユーザー移入とLDAPリポジトリとの同期が維持されていることを確認します。また、Oracle Identity Managerシステム管理者アカウントがLDAPリポジトリに作成されていることも確認します。

  • Oracle Identity Managerと同期されているものと同じLDAPディレクトリに対してOracle Identity Managerユーザーを認証するためにOAM 11.1.2.3.0がインストールされて構成されていることを確認します。


注意:

OIDAuthenticatorはこの手順では参照として使用されています。AD、ODSEEまたはOUDなどの他のLDAPサーバーがある場合は、適切なWebLogic LDAP認証プロバイダを作成してください。

B.5.2 SSOログアウトおよびオーセンティケータの構成

SSOログアウトおよびオーセンティケータを構成するには:

  1. OIM ssoenabledフラグをtrueに設定します。これを行うには、次のようにします。

    1. Oracle Enterprise Managerにログインして、OIM_DOMAINに移動します。

    2. 「OIMDomain」を右クリックし、「システムMBeanブラウザ」を選択します。

    3. 検索アイコンをクリックし、「ssoconfig」を入力して検索します。

    4. 詳細ページで、SSOEnabledフラグを探し、ドロップダウンから「true」を選択します。「適用」をクリックして、構成変更を保存します。

  2. 次に示すように、oimのSSOログアウトを構成します。

    <IDM_ORACLE_HOME>/common/bin/wlst.sh
        connect()
        addOAMSSOProvider(loginuri="/${app.context}/adfAuthentication", logouturi="/oamsso/logout.html", autologinuri="/obrar.cgi")
        exit()
    

    注意:

    connect()コールは、管理サーバーのURLおよびWebLogic管理者のユーザー名とパスワードを要求します。

  3. 認証プロバイダを構成します。これを行うには、次のようにします。


    注意:

    この手順では、SSOログインおよびOIMクライアントベースのログインが正常に機能するようにOIMドメイン内でセキュリティ・プロバイダを構成します。このために、OAMIDAsserterおよびOIDAuthenticatorを設定する必要があります。OIDAuthenticatorは、OIDに対してユーザーを認証/アサートするために構成します。認証用としてOAMによっても使用される他のディレクトリ・サーバーに対してユーザーを認証/アサートするには、OIDAuthenticatorではなく、対応するオーセンティケータを構成する必要があります。

    1. Oracle WebLogic管理コンソールにログインし、「セキュリティ・レルム」「myrealm」「プロバイダ」「認証」に移動します。

    2. 「新規」をクリックし、OAMIdentityAsserterタイプのOAMIDAsserterを追加します。「OK」をクリックします。

      追加したOAMIDAsserterを編集し、controlフラグをREQUIREDに設定します。

      選択したアクティブなタイプOAM_REMOTE_USERに設定されていることを確認し、構成を保存します。

    3. 「新規」をクリックし、OIMSignatureAuthenticatorタイプのOIMSignatureAuthenticatorを追加します。「OK」をクリックします。OIMSignatureAuthenticatorを編集し、controlフラグをSUFFICIENTに設定します。構成を保存します。

    4. 「新規」をクリックし、OracleInternetDirectoryAuthenticatorタイプのOIDAuthenticatorを追加します。「OK」をクリックします。OIDAuthenticatorを編集し、ControlフラグをSUFFICIENTに設定します。構成を保存します。プロバイダ固有のタブを開き、次の属性(のみ)を設定し、構成を保存します。

      • ホスト: OID_HOST_NAME

      • ポート: OID_PORT

      • プリンシパル: cn=orcladmin

      • 資格証明/資格証明の確認: orcladmin_password

      • ユーザー・ベースDN: cn=Users,dc=us,dc=oracle,dc=com

      • すべてのユーザーのフィルタ: (&(uid=*)(objectclass=inetOrgPerson))

      • 名前指定によるユーザー・フィルタ: (&(uid=%u)(objectclass=inetOrgPerson))

      • UserNameAttribute: uid

      • ユーザー・オブジェクト・クラス: inetOrgPerson

      • 取得したユーザー名をプリンシパルとして使用する: true

      • グループ・ベースDN: cn=Groups,dc=us,dc=oracle,dc=com

      • すべてのグループのフィルタ: (&(cn=*)(objectclass=groupOfUniqueNames))

      • 名前指定によるグループ・フィルタ: (&(cn=%g)(objectclass=groupOfUniqueNames))

    5. すでに構成されているOIMAuthenticationProviderを削除します。

    6. 残りの認証プロバイダを次の順序で並べ替えます。

      i) OAMIDAsserter

      ii) OIMSignatureAuthenticator

      iii) OIDAuthenticator

      iv) DefaultAuthenticator

      v) DefaultIdentityAsserter

    7. 実行した変更をアクティブ化し、OIMドメイン内で構成されているすべてのサーバーを再起動します。

B.5.3 構成を検証するための検証テストの実行

次の検証テストを実行してSSOログアウトおよびオーセンティケータ構成を検証します。

SSOを使用したOracle Identity Managerへのユーザー・ログイン

前提条件: Oracle Identity ManagerとLDAPにユーザー(ENDUSER001など)を作成します。

手順: 作成したユーザー(ENDUSER001など)として、SSO URLを使用してOracle Identity Self Serviceにログインし、問題なくログインできるかどうかを確認します。また、Oracle Identity System Administrationにシステム管理者としてログインし、アクセス・ポリシーなどの様々なリンクにアクセスします。いずれかのコンソールからログアウトし、同じユーザーまたは別のユーザーを使用して再度ログインします。

期待される結果: 問題なくログインでき、すべてのリンクが期待どおりに機能します。

Oracle Identity Managerへのクライアントベース・ログイン

前提条件: Design Consoleがインストールされ構成されていること。

手順: SSOパスワードを使用してシステム管理者としてDesign Consoleにログインします。

期待される結果: LDAPAuthenticatorがSSOログインに関して適切に構成されていれば、Design Consoleにシステム管理者として問題なくログインできます。

署名ベースの認証

署名ベースの認証をテストするには:

  1. 次に示すように、Oracle Identity Manager管理対象サーバーのポートで実行されているスケジューラ・サービスのURLにアクセスします。

    http://OIM_HOST:PORT/SchedulerService-web

  2. SSOパスワードを使用して、システム管理者としてログインします。

  3. ログインが成功し、次の詳細が画面に表示されている場合、署名ログインは成功です。

    スケジューラの現行ステータス: STARTED

    最後のエラー: NONE

  4. 次の内容が表示された場合は、そのページで「開始」をクリックします。

    スケジューラの現行ステータス: STOPPED

    ページにエラーが表示されていない場合、署名ログインは成功しています。

B.6 サードパーティのSSO統合の簡素化

Oracle Identity ManagerをサードパーティのSSOプロバイダ(Tivoli Access ManagerやCA Siteminderなど)と統合するには、「Oracle Identity ManagerでのIBM Tivoli Access Managerの使用可能化」および「Oracle Identity ManagerでのCA SiteMinderの使用可能化」に記載されている手順に従うことをお薦めします。

サードパーティのSSOソリューションによって提供/推奨されるWebLogicプラグイン(アイデンティティ・アサータまたはオーセンティケータ)は、Oracle Identity Manager用としてSSOを提供する方法として推奨される方法です。ただし、「Oracle Identity ManagerでのIBM Tivoli Access Managerの使用可能化」および「Oracle Identity ManagerでのCA SiteMinderの使用可能化」の項に記載されているように、SSOプロバイダ固有のWeblogicプラグインを使用した統合の構成は実現可能ではないため、この項の手順に従って統合を達成できます。


注意:

このアサータは現在、IBM Tivoli Access ManagerやCA SiteMinderといったサードパーティのSSOプロバイダをサポートしています。

Oracleのアイデンティティ・アサータを構成するには:

  1. Oracle Weblogic管理コンソールにログインします。

  2. 「セキュリティ・レルム」「myrealm」「プロバイダ」「認証」に移動します。

  3. 「新規」をクリックし、OAMIdentityAsserterを追加します。

  4. 追加したアサータを開き、controlフラグをREQUIREDに設定します。「アクティブなタイプ」シャトルで、選択したアクティブなタイプとしてSSO固有のHTTPヘッダーを選択します。たとえば、SiteMinder SSOプロバイダが使用されている場合は、SM_USERヘッダーを選択します。同様に、Tivoli Access Manager SSOプロバイダが使用されている場合は、iv-userヘッダーを選択します。

  5. 同様に、プロバイダ固有のプロパティのSSOHeader名フィールドの値をiv-userまたはSM_USERに適切に変更します。


    注意:

    • SM_USERおよびiv-userと記載されているのは、CA SiteminderおよびIBM Tivoli Access Managerによってそれぞれ設定されるデフォルトのSSOヘッダーであると考えられるためです。

    • 同じ理由で、OIMユーザー・ログイン・フィールドにマッピングされるユーザー名の値がSSOヘッダーに含まれていない場合は、SSOプロバイダがOAM_REMOTE_USERという名前のヘッダーの一部としてユーザー名を返すように構成することをお薦めします。この場合は、手順4で、選択したアクティブなタイプとしてOAM_REMOTE_USERを選択し、手順5をスキップします。


  6. 構成を保存します。

  7. 次のように認証チェーンを構成します。

    OAMIDAsserter - REQUIRED

    OIMSignatureAuthenticator - SUFFICIENT

    LDAPAuthenticator - SUFFICIENT

    DefaultAuthenticator - SUFFICIENT

    DefaultIdentityAsserter


    注意:

    LDAPAuthenticatorは、SSOプロバイダによって使用されているLDAPプロバイダに対して認証できる適切なオーセンティケータ(OIDAuthenticatorなど)によって置き換える必要があります。

  8. 「Oracle Identity ManagerでのIBM Tivoli Access Managerの使用可能化」または「Oracle Identity ManagerでのCA SiteMinderの使用可能化」の項に記載されているように、SSOプロバイダに基づいて、Oracle Identity ManagerのSSOログアウトを構成します。

  9. Oracle Identity Managerのssoenabledフラグをtrueに設定します。これを行うには、次のようにします。

    1. Oracle Enterprise Managerにログインし、システムMBeanブラウザを開きます。

    2. oracle.iam:Location=<OIM_SERVER_NAME>,name=SSOConfig,type=XMLConfig.SSOConfig,XMLConfig=Config,Application=oim,ApplicationVersion=11.1.2.0.0 mbeanを開きます。

    3. ssoEnabledの値をtrueに設定します。

  10. 「Oracle Identity ManagerでのIBM Tivoli Access Managerの使用可能化」または「Oracle Identity ManagerでのCA SiteMinderの使用可能化」の項に記載されているように、SSOプロバイダに基づいて、SSOプロバイダ側でOracle Identity Managerリソースを保護する/保護しないようにします。

  11. Oracle Identity Managerドメイン内のすべてのサーバーを再起動します。

Oracleのアイデンティティ・アサータを構成するためにこの方法を使用する場合、セキュリティに関する次の考慮事項に注意してください。

  • OHSおよびWebLogicの保護に関する標準セキュリティ・プラクティスに従ってください。

  • Oracle Identity Managerのフロントエンドとして機能しているHTTP WebサーバーがSSOソリューションの標準セキュリティ・プラクティスを使用して適切に保護されていることを確認してください。

B.7 SSO統合用の構成可能なログインIDのサポートの使用

Oracle Identity Managerは、シングル・サインオンを実現するためにSiteminderやTivoli Access ManagerなどのサードパーティのSSOプロバイダと統合できます。これらのサードパーティのSSOプロバイダを使用すると、ユーザーがSSOログインを実行するために使用する必要があるログインID属性を構成できます。たとえば、(ユーザーIDのかわりに) email属性を使用してログインすることをユーザーに許可する場合、この構成はSSOプロバイダによって許可されます。ただし、この構成は、Oracle Identity ManagerがSSOプロバイダと統合されている場合は正常に機能しません。これは、Oracle Identity Manager内のログインID属性が「ユーザー・ログイン」であるために他のユーザー属性(emailなど)をログインID属性として構成できないことが原因です。このため、この機能の目的は、Oracle Identity ManagerでログインID属性を構成可能にすることにあります。ログインID属性をOracle Identity Managerの他のユーザー・エンティティ属性(Emailなど)に構成すると、ユーザーがemail値を使用してSSOログインを実行してOracle Identity Managerにログインできるようになります。


注意:

  • SSOプロバイダと統合されていないOracle Identity Managerデプロイメントでこの構成を使用することはお薦めしません。

  • このソリューションをお薦めするのは、Oracle Identity ManagerデプロイメントがサードパーティのSSOプロバイダと統合されているときに、「ユーザー・ログイン」以外の属性を使用してログインすることをユーザーに許可する場合です。

  • Oracle Identity ManagerがOAMと統合されている場合、このソリューションを使用することはお薦めしません。ユーザーが複数の属性を使用してログインできるようOAMを構成することは可能ですが、「ユーザー・ログイン」に対応する属性をアサートしてください。この構成の場合、ユーザーはemailを使用してSSOログインを実行しますが、JAAS件名には「ユーザー・ログイン」属性が移入されます。


Oracle Identity ManagerでログインID属性を構成する手順:

  1. Oracle Enterprise Managerにログインします。

  2. 「WebLogicドメイン」を展開します。「DOMAIN_NAME」を右クリックして、「システムMBeanブラウザ」を選択します。

  3. SSOLoginIdMapperを使用するようoim構成のloginMapperプロパティを構成します。これを行うには、次のようにします。

    1. 「アプリケーション定義のMBean」「oracle.iam」「サーバー:OIM_SERVER_NAME」「アプリケーション:oim」XML構成「構成」に移動します。

    2. LoginMapper属性の値をoracle.iam.platform.auth.impl.SSOLoginIDMapperに変更します。

  4. ssoConfigssoEnabled属性をtrueに設定してSSOに対してOracle Identity Managerを構成します。これを行うには、次のようにします。

    1. 「アプリケーション定義のMBean」「oracle.iam」「サーバー:oim_server1」「アプリケーション:oim」XML構成「XMLConfig:SSOConfig」「SSOConfig」に移動します。

    2. SSOEnabled属性の値としてtrueを選択します。

  5. 同じページで、loginIdAttributeの値を有効なOracle Identity Managerユーザー・エンティティ属性に設定します。


    注意:

    loginIdAttributeがEmailに構成されている場合、すべてのユーザーに有効なemail IDが必要であり、これらの値はすべてのOracle Identity Managerユーザーにわたって一意である必要があります。

  6. デフォルトでシードされているすべてのOracle Identity Managerユーザーについて、loginIdAttributeの値がUSR_LOGINの値と同じであることを確認します。たとえば、loginIdAttributeがEmailに構成されている場合、デフォルトのユーザーのemail IDがUSR_LOGIN値と同じであることを確認します。次のSQL文は、Oracle Identity Managerデータベース・スキーマに対して実行できます。

    update usr SET usr_email='OIMINTERNAL' where usr_login='OIMINTERNAL';
    update usr SET usr_email='XELSYSADM' where usr_login='XELSYSADM';
    update usr SET usr_email='WEBLOGIC' where usr_login='WEBLOGIC';
    update usr SET usr_email='XELOPERATOR' where usr_login='XELOPERATOR';
    
  7. 「ユーザー名属性」、「名前指定によるユーザー・フィルタ」および「すべてのユーザーのフィルタ」に適切な属性を使用するようLDAP固有のオーセンティケータ構成を変更します。たとえば、loginIdAttributeがEmailに構成されている場合、オーセンティケータが次のように構成されていることを確認します。

    User Name Attribute: mail 
    User From Name Filter: (&(|(mail=%u)(uid=%u))(objectclass=inetOrgPerson)) 
    All Users Filter: (&(mail=*)(objectclass=inetOrgPerson)
    

    注意:

    「名前指定によるユーザー・フィルタ」には、uid属性(デフォルト)またはmail属性(loginIdAttributeがEmailとして設定されている場合)を使用してユーザーを参照するためのOR条件が含まれます。

    ただし、APIクライアントベースのログインは、loginIdAttribute (mailなど)が構成されている場合はこれを使用してのみ実行することをお薦めします。


  8. LDAPプロバイダでシステム管理者ユーザー・エントリを作成します。uidおよびmail (loginIdAttributeがEmailとして構成されている場合)属性がSYSTEM_ADMINISTRATORとして設定されていることを確認します。


    注意:

    Oracle Identity ManagerでloginIdAttributeが他の一意の属性に設定されている場合、LDAP内の対応するマッピング属性がSYSTEM_ADMINISTRATORに設定されている必要があります。

  9. OPSSレイヤーで次の変更を実行します。

    Oracle Identity ManagerがHTTP (UI)およびt3 (サーバー)チャネルを介してSOAに接続することを考慮すると、デフォルトのユーザー・ログインではなくSSOログインIDに基づいてユーザー参照を処理するようOIMDBProviderを構成する必要があります。これを行うには、次のように、jps-config.xmlファイル内のidstore.oimサービス・インスタンスを変更します。

    <serviceInstance name="idstore.oim" provider="idstore.oim.provider" location=" ">
            <description>OIM Identity Store Service Instance</description>
            <property name="idstore.type" value="CUSTOM"/>
            <property name="ADF_IM_FACTORY_CLASS" value="oracle.iam.userrole.providers.oimdb.OIMDBIdentityStoreFactory"/>
            <property name="DATASOURCE_NAME" value="jdbc/soaOIMLookupDB"/>
            <property value="USER_NAME=USR_EMAIL:USER_ID=USR_EMAIL" name="PROPERTY_ATTRIBUTE_MAPPING"/>
    </serviceInstance>
    

    注意:

    USER_NAMEおよびUSER_IDプロパティの値は、loginIdAttributeに対応するフィールド・マッピングである必要があります。したがって、loginIdAttributeをEmailとして構成した場合、Email属性はUSR_EMAIL列にマッピングされるので、USER_NAMEおよびUSER_IDプロパティをUSR_EMAILに設定する必要があります。

  10. Oracle Identity Managerドメイン・セキュリティ・レルムの認証プロバイダの構成が、特定のSSOプロバイダ用の文書(「Oracle Identity ManagerでのIBM Tivoli Access Managerの使用可能化」および「Oracle Identity ManagerでのCA SiteMinderの使用可能化」など)に記載されているとおりであることを確認します。


注意:

カスタムloginIdAttribute (Emailなど)を構成する場合、カスタムSOAコンポジットの開発時に次のことを確認してください。
  • Oracle Identity Managerが承認のためにSOAコンポジットを起動するとき、RequesterDetailsBeneficiaryDetailsをペイロードの一部として渡します。

    これらの内のLoginおよびManagerLoginフィールドは、User Loginではなく、Emailに設定されます。

  • loginIdAttribute値をタスク割当て先として使用していることを確認してください。

ユーザー(指定されたユーザー・キー)のloginIdAttribute値をフェッチするには、BPELプロセスでRequestDataServicegetUserDetails操作を使用できます。

同じことが既存のカスタムSOAコンポジットにも適用されます。