11 外部認証への切替え

本番環境に最大限のセキュリティを確保し、高度なアイデンティティ管理ソリューションとシームレスなシングル・サインオンの操作性を提供するために、Oracle Access ManagementOracle WebCenter Sitesの統合をお薦めします。または、必要に応じて、WebCenter Sitesを外部LDAP認証プロバイダ・ディレクトリと統合することもできます。

次のトピックでは、いずれかの外部アイデンティティ管理ソリューションに対する認証のためにWebCenter Sitesを構成する方法を説明します。

LDAPディレクトリに対する認証への切替え

このトピックでは、WebCenter Sitesを外部LDAP認証プロバイダ・ディレクトリに対する認証に切り替える方法について説明します。Oracle Access Managementとの統合を実行できない場合、これは本番環境のための推奨のソリューションです。

認証プロバイダを変更する前に、WebCenter Sitesをインストールし構成してください。
WebCenter Sitesを外部LDAPディレクトリに対する認証に切り替えるには:
  1. (オプション)使用しているLDAPサーバーが大/小文字を区別する場合は、ldap.caseAwareプロパティの値をtrueに変更します。
    デフォルトでは、ldap.caseAwareの値はfalseに設定されています。大/小文字を区別するLDAPサーバーを使用しているとき、このプロパティがfalseに設定されている場合、サインインに失敗します。ldap.caseAwareの値をTrueに変更するには、次のステップに従います。
    • WebCenter Sites管理インタフェースにサインインし、管理ツリータブ>「システム・ツール」>「プロパティ管理」オプションに移動します。

    • ldapを検索し、値をFalseからTrueに変更します。

    • 管理対象サーバーを再起動します。

    ノート:

    SitesとLDAPを統合する際、LDAP内のユーザー・データがカンマで区切られている場合(たとえば: test,user)、そのデータはフェッチされません。このデータを取得するには、..sites/installディレクトリにあるdir.iniファイルの構文を、"syntax.escape=\\からsyntax.escape=\#"に変更する必要があります。
  2. LDAPコンフィギュレータにアクセスし(http://sites-host:sites-port/sites-context/ldapconfig)、画面に表示される指示に従って、使用する環境に応じて値を入力します。
  3. LDAPのロールバックの場合は、WebCenter Sites管理対象サーバーを再起動し、同じLDAPコンフィギュレータURLにアクセスします。

    現在は、手動によるLDAP統合のみがあります。LDAPサーバーへの書込みはなく、DOMAIN_HOME/wcsites/wcsites/config/ldapフォルダ下にLDIFファイルのみが作成されます(これはWebCenter Sitesアプリケーションのデフォルトのインストール場所です。すべてのカスタマイズおよびパスの変更はLDAPの正常な統合の後に行う必要があります)。peopleparentgroupparentusernameおよびその他のフィールドは、以前のリリースのように事前移入されません。

  4. (オプション)使用する環境に応じて、NEW_DOMAIN_HOME/wcsites/wcsites/config/にあるLDIFファイルの値を変更します。

    フィールドが事前移入されていないので、次のORACLEDIRの例に従ってください:

    ldap server type -- ORACLEDIR
    ldap DSN -- dc=oracle,dc=com
    ldap host -- localhost
    ldap port -- 389
    ldap username -- cn=orcladmin
    ldap password -- password
    ldap peopleParent -- cn=Users,dc=oracle,dc=com
    ldap groupparent -- cn=Groups,dc=oracle,dc=com
  5. Oracle Virtual DirectoryをLDAP認証プロバイダとして選択すると、WebCenter Sitesに生成されるLDIFファイルをOracle Internet Directoryサーバーにインポートし、Oracle Virtual Directoryにアダプタを作成してOracle Internet Directoryサーバーに接続できます。

    Oracle Virtual DirectoryのLDAPサーバーにはそれ独自の記憶域がないので、LDIFファイルを直接にOracle Virtual Directoryにインポートすることはできません。

  6. 外部LDAP認証プロバイダにLDIFファイルをインポートします。
  7. このWebCenter Sitesインスタンスを実行しているWebLogic管理対象サーバーを再起動します。

Oracle Access Managerに対する認証への切替え

Oracle Access Managerに対する認証を行うようにWebCenter Sitesを構成できます。このソリューションは本番環境にお薦めします。

お客様がすでにOAMサーバーを実行中であることを前提としています。このOAMとの統合では、oamconsoleを使用したOAMサーバーの構成とSites内の一部の構成の変更が必要です。
WebCenter Sitesとの統合は、Oracle Access Manager 11.1.2.2.0および11.1.2.3.0でサポートされます。
WebCenter SitesOracle Access Managerに対する認証に切り替えるには:
  1. たとえばhttp://<oam_host:oam_port>/<oam console>/ というように、oamconsoleを介してOracle Access Managerサーバーにサインインし、WebGateを構成します。
  2. ターゲットWebCenter Sitesインスタンスが含まれているWebLogicドメインに、NEW_ORACLE_HOME/wcsites/webcentersites/sites-homeにあるoamlogin.warおよびoamtoken.warアプリケーション・ファイルをデプロイします。
  3. DOMAIN_HOME/wcsites/wcsites/config/wemsites_settings.propertiesプロパティ・ファイルを作成します。
  4. wemsites_settings.propertiesファイルに、次のように値を入力します。
    要素 プロパティ
    oamredirect http://oam_server_host:oam_port/oam/server/auth_cred_submit
    oamlogout oamlogout=http://oam_server_host:oam_port/oam/server/logout
    forgotpassword helpdesk-email-address
  5. NEW_DOMAIN_HOME/wcsites/wcsites/config/SSOConfig.xmlに次のプロパティを設定します。「統合ステップ」のステップ12を参照してください。
    要素 プロパティ
    serviceUrl http://{ohs_server_host}:{ohs_port}/{sites_context_root}/REST
    ticketUrl http://{oamtoken_server_host}:{oamtoken_port}/oamtoken
    signoutURL

    http://{oam_server_host}:{oam_port}/oam/server/logout?end_url={end_url}

    このURLは、WebCenter Sitesログアウトを呼び出すときに使用します。これには、Oracle Access Managerによるすべてのログアウト処理が完了した後にブラウザから戻される、エンコードされたURLが含まれます。
    end_url

    テスト(ステージング)および本番(配信)環境: http%3A%2F%2F{ohs_server_host}%3A{ohs_port}%2F{sites_context_root}%2Fwem%2Ffatwire%2Fwem%2FWelcome

    dbUsername WebCenter Sitesの一般管理者のユーザー・アカウント名。
    dbPassword WebCenter Sitesの一般管理者のユーザー・アカウントのパスワード。

    ノート:

    ohs_serverホストおよびohs_portをWebLogicホストおよびポートにするか、構成に応じてその他のHTTPサーバー・ホストおよびポートを使用できます。OHS構成の詳細は、「統合ステップ」のステップ2からステップ9を参照してください。mod_wl_ohs.confファイルのOAM OHSに次の構成の例を追加します。
    <IfModule weblogic_module>
        <Location /oamlogin>
         SetHandler weblogic-handler
           WebLogicHost SITES_HOST       
    WebLogicPort SITES_PORT   
    </Location> 
    </IfModule>
      <IfModule weblogic_module>
     <Location /sites>
           SetHandler weblogic-handler
           WebLogicHost SITES_HOST
           WebLogicPort SITES_PORT
     </Location>
     </IfModule>
  6. Oracle Access ManagerインスタンスのobAccsessClient.xmlおよびcwallet.ssoファイルを、ターゲットWebCenter Sitesインスタンス上のNEW_DOMAIN_HOME/wcsites/wcsites/config/oblix/lib/ディレクトリにコピーします。

    ノート:

    これらのファイルは、WebGateが構成された後に自動生成されます。
  7. 互換性モードとoblixパスを設定するために、sites-configディレクトリのoamtoken.xmlファイルを編集します。互換性モードは11gに設定し、oblixパスはoblix/libフォルダが含まれているsites-configフォルダに設定します。
  8. WebCenter SitesのためのOracle Access Managerの構成で、保護リソース、パブリック・リソースおよび除外リソースを次のように更新します。

    図11-1 WebCenter Sites用の保護リソース、パブリック・リソースおよび除外されたリソースのリスト

    図11-1の説明が続きます
    「図11-1 WebCenter Sites用の保護されたリソース、パブリック・リソースおよび除外されたリソースのリスト」の説明
  9. Weblogic ServerにOAMSDKクライアントをoamtoken.warアプリケーションとして統合するために、WebCenter Sitesドメインのjps-config.xmlファイルを編集します。このファイルは、WebLogic Server 12 cの起動スクリプトの一部であり、デフォルトでは、WebLogicドメインはこのファイルを使用して実行されます。

    -Doracle.security.jps.config=NEW_ORACLE_HOME/user_projects/domains/DOMAIN_NAME/config/fmwconfig/jps-config.xml

    1. 次の例に示すように、既存のjsp-config.xmlファイル内の既存のサービス・インスタンスの隣に、サービス・インスタンスを追加します。
      <serviceInstance name="credstore.oamtoken" provider="credstoressp" location="./oamtoken">
      <description>File Based Credential Store Service Instance</description>
      <property name="location" value="./oamtoken"/>
      </serviceInstance>
      locationは、cwallet.ssoファイルを含むディレクトリのパスです。前述の例では、このパスは、現在のjsp-config.xmlファイルへの参照に設定されています。omtokenフォルダが、現在のディレクトリを基準にして作成され、そこにcwallet.ssoファイルが配置されていることを確認してください。locationの値は、cwallet.ssoファイルが配置されている場所への絶対パスにすることもできます。
    2. <jpsContext name="default">の下に、<serviceInstanceRef ref="credstore.oamtoken"/>を追加します。
    3. <jpsContexts default="default">の下に、次の<jpsContext>要素を追加します。
      <jpsContext name="OAMASDK">
      <serviceInstanceRef ref="credstore.oamtoken"/>
      </jpsContext>
  10. oamtoken.warのコードを使用できるように権限を追加します。
    クライアントは、Oracle Access Managerに作成されたWebゲートにアクセスします。セキュリティの制約に対処するために、WebCenter Sitesドメインに資格証明を追加する必要があります。
    1. wlst.shスクリプトでWebLogic Scripting Toolを起動します。
      cd NEW_ORACLE_HOME/oracle_common/common/bin/./wlst.sh
    2. WebCenter Sitesドメインの管理サーバーに接続します。
      connect('user-name','password','sites-host:admin-port')
    3. 権限を付与します。
      grantPermission(codeBaseURL="file:/scratch/idc/newoam/rend/Oracle_Home/user_projects/domains/renddomain/servers/wcsites_server1/tmp/_WL_user/oamtoken/-", permClass="oracle.security.jps.service.credstore.CredentialAccessPermission",permTarget="context=SYSTEM,mapName=OAMAgent,keyName=*",permActions="*")
      基本的に、前述のパスは、WebLogic Serverのoamtoken.warアプリケーションが展開されている場所へのパスです。
    4. ターゲットWebCenter Sites管理対象サーバーを再起動します。
  11. (オプション) WebCenter SitesOracle Access Managerの間の信頼が確立していない場合は、WebCenter SitesのWeb層の設定を次のように変更します。
    1. Oracle Access Managerコンソールにサインインします。
    2. Webゲートの認可ポリシー(保護されたリソースのポリシーの下)の「レスポンス」タブに移動します。
    3. 「IDアサーション」チェック・ボックスを有効化(選択)します。
    4. 「適用」をクリックして、変更を保存します。
  12. (オプション) WebCenter SitesがOAM統合を使用するクラスタにデプロイされている場合。oamticketcacheキャッシュにレプリケートするには、次のステップが必要です。
    1. configディレクトリにあるcas-cache.xmlには、oamticketcacheがデフォルトで構成されています。
    2. oamticketcacheという名前のキャッシュ内で、次のように表示されるコメント化されたセクションのコメントを解除します。
      <cacheEventListenerFactory
      class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"  
      properties="replicateAsynchronously=true, replicatePuts=true,
      replicateUpdates=true,
      	replicateUpdatesViaCopy=false, replicateRemovals=true"/>
      <bootstrapCacheLoaderFactory 
      class="net.sf.ehcache.distribution.RMIBootstrapCacheLoaderFactory"
      		properties="bootstrapAsynchronously=false,
      			maximumChunkSizeBytes=5000000"
      		propertySeparator="," />
    3. cacheManagerPeerProviderFactoryを次のように修正し、ポートが一意であることを確認してください。 
      <cacheManagerPeerProviderFactory
      class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
      	properties="peerDiscovery=automatic,
      multicastGroupAddress=230.0.0.8,
      		multicastGroupPort=40002, timeToLive=1" />
    4. 前のステップで指定したように、cacheManagerPeerProviderFactorycacheManagerPeerListenerFactoryのポートは異なるものである必要があります。
    5. 両方のプロパティについて、すべてのクラスタ・ノードのポートが同じである必要があります。
  13. SSOConfig.xmlファイルで作業する場合は、次のステップに従います。
    1. WebCenter SitesデプロイメントのSSOConfig.xmlファイルを変更します。このファイルは、ロードする認証クラスや、それらのクラスで必要なプロパティを制御します。
    2. Sitesサーバーを停止します。
    3. デプロイされているWebCenter SitesアプリケーションのWEB-INF/classesディレクトリにあるSSOConfig.xmlファイルをバックアップします。
      たとえば、/u01/software/Apps/OraMiddleware/user_projects/domains/OAMSitesDomain/wcsites/wcsites/config/SSOConfig.xmlとします。
    4. SSOConfig.xmlを次のように変更します。 

      ノート:

      serviceUrltticketUrlsignoutURLdbUsernameおよびdbPasswordのプロパティの設定は、追加ステップで説明します。ステップ5を参照してください。
    5. signoutUrlプロパティは、WebCenter Sitesのログアウトの起動時に使用されるURLを指定します。これには、OAMによりすべてのログアウト処理が完了した後にブラウザから戻される、エンコードされたURLが含まれます。
    6. Sites管理の場合は、end_urlの値としてhttp%3A%2F%2F{ohs_server_host}%3A{ohs_port}%2F{sites_context_root}%2Fwem%2Ffatwire%2Fwem%2FWelcomeを使用します。
    7. Sitesの配信の場合は、end_urlの値としてhttp%3A%2F%2F{ohs_server_host}%3A{ohs_port}%2F{sites_context_root}%2Fwem%2Ffatwire%2Fwem%2FWelcomeを使用します。
      dbUsernameプロパティおよびdbPasswordプロパティには、WebCenter Sitesの一般管理者の資格証明を入力できます(デフォルトではfwadmin/xceladmin)。これらのプロパティの値は、WebCenter Sitesアプリケーションの起動時に暗号化されます。

      ノート:

      次のコード例では、csServerUrlserviceUrl、ticketUrl、signoutURLdbUsernamedbPasswordのプロパティを設定します。ステップ5を参照してください。
      <?xml version="1.0" encoding="UTF-8"?>
      <!--
      
          Copyright (c) 2010 FatWire Corporation. All Rights Reserved.
          Title, ownership rights, and intellectual property rights in and
          to this software remain with FatWire Corporation. This  software
          is protected by international copyright laws and treaties, and
          may be protected by other law.  Violation of copyright laws may
          result in civil liability and criminal penalties.
      
      -->
      
      <beans xmlns="http://www.springframework.org/schema/beans"
      	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jdbc="http://www.springframework.org/schema/jdbc"
      	xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
      	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
      	http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
      	http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">
      
      	<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />
      	<!-- Root Context: defines shared resources visible to all other web components -->
      	
      	<jdbc:initialize-database data-source="dataSource"	enabled="true" ignore-failures="ALL">		
      		<!-- For installer the first jdbc:script will opened. Installer will configure it automatically -->
      		<jdbc:script location="classpath:crawler_oracle_db.sql" />
      		<!--jdbc:script location="classpath:crawler_hsql_db.sql" /-->
      		<!--jdbc:script location="classpath:crawler_sql_server_db.sql" /-->
      		<!--jdbc:script location="classpath:crawler_oracle_db.sql" /-->
      		<!--jdbc:script location="classpath:crawler_db2_db.sql" /-->
      	</jdbc:initialize-database>
      	
      	<!-- Section# 1 Installer will consume below configuration to configure a datasource name created on the appservers -->
      	<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
      		<property name="jndiName" value="wcsitesDS"/>
      	</bean>
      	
      	<!-- Single Sign On provider -->
      	<bean id="ssoprovider" class="com.fatwire.wem.sso.oam.OAMProvider">
      		<property name="config" ref="ssoconfig" />
      	</bean>
      	<!--It is invoked by the OAM filter to resolve an OAM authenticated user against a remote Site CS instance.--> 
      	<bean id="oamIdentity" class="com.fatwire.auth.identity.RemoteUsernameResolver" >
      		<property name="csServerUrl" value="http://{ohs_server_host}:{ohs_port}/{sites_context_root}/custom/customCsResolver.jsp"/>
      	</bean>
        
      	<!-- Single Sign On filter -->
      	<bean id="ssofilter" class="com.fatwire.wem.sso.oam.filter.OAMFilter">
      		<property name="config" ref="ssoconfig" />
      		<property name="provider" ref="ssoprovider" />
      		<property name="identityResolver" ref="oamIdentity" />
      		
      		<!-- Set "trustConfigured" to "true" in case of trust relationship configured between WebGate and WLS.
      		It will turn off check for OAM_ASSERTION header. -->
      		<property name="trustConfigured" value="false" />
      	</bean>
        
      
      	<!-- Single Sign On listener -->
      	<bean id="ssolistener" class="com.fatwire.wem.sso.oam.listener.OAMListener">
      	</bean>
      	
      	<!-- Single Sign On configuration -->
      	<bean id="ssoconfig" class="com.fatwire.wem.sso.oam.conf.OAMConfig">
      		<!-- URL prefix for REST service endpoint -->
      		<property name="serviceUrl" value="http://{ohs_server_host}:{ohs_port}/{sites_context_root}/REST" />
      		
      		<!-- URL prefix for Token Service servlet -->
      		<property name="ticketUrl" value="http://{oamtoken_server_host}:{oamtoken_port}/oamtoken" />
      		
      		<!-- URL to be called when WEM logout is required. -->
      		<property name="signoutUrl" value="http://{oam_server_host}:{oam_port}/oam/server/logout?end_url=http%3A%2F%2F{ohs_server_host}%3A{ohs_port}%2F{sites_context_root}%2Fwem%2Ffatwire%2Fwem%2FWelcome"/>
      		
      		<!-- Do not proxy tickets, tt's the last server in thecall chain -->
      		<property name="proxyTickets" value="false" />
      		
      		<!-- Database Credentials needed by user lookup inOAMFilter -->
      		<property name="dbUsername" value="fwadmin" />
      		<property name="dbPassword" value="xceladmin"/>
      		
      		<!-- Your application protected resources (relative to applicationUrl) -->
      		<property name="protectedMappingIncludes">
      			<list>
      				<value>/__admin</value>
      				<value>/__admin/**</value>
      			</list>
      		</property>
      		
      		<!-- Your application protected resources excludes (relative to applicationUrl) -->
      		<property name="protectedMappingExcludes">
      			<list>
      				<value>/__admin/layout</value>
      			</list>
      		</property>
      		<property name="applicationProxyCallbackPath" value="/sso/proxycallback" />
      		<property name="gateway" value="false" />
      	</bean>
      	
      	<context:component-scan base-package="com.fatwire.crawler.remote.dao" />
      	<context:component-scan base-package="com.fatwire.crawler.remote.support" />
      	<context:component-scan base-package="com.fatwire.crawler.remote.di" />
      	<context:component-scan base-package="com.fatwire.crawler.remote.resources.support" />
      
      </beans>
OAMを認証した後は、次の統合を実行する必要があります。

SiteCaptureとOAMの統合

この項では、SiteCaptureのOAMとの統合ステップを示します。

SiteCaptureのためのOracle Access Managerとの統合では、次のステップに従う必要があります。
  1. Oracle WebCenter SitesとOracle Access Managerを統合します。詳細は、「OAMとOracle WebCenter Sitesの統合」を参照してください。
  2. SiteCaptureのためのOracle Access Managerの統合には、追加構成が必要です。
    1. WebCenter Sitesアプリケーション・ドメインに対して追加のリソース定義を作成します(次の表を参照)。
      リソースURL 保護レベル 認証 認可
      /<sites-context>/REST/roles

      非保護

      パブリック

      すべて許可

      /<sites-context>/custom/customCsResolver.jsp

      非保護

      パブリック

      すべて許可

      /resources/.../*

      除外

      該当なし

      該当なし

      /__admin/.../*

      保護

      保護

      保護

    2. 次のように保護されたリソース・ポリシーを構成します。
    1. 「アプリケーション・ドメイン」→「開く」アイコンをクリックします。
    2. 「検索」をクリックし、「WCSitesWebGate」を選択します。
    3. 「認証ポリシー」タブをクリックし、「認証ポリシー」を選択します。「認証スキーム」で、以前作成した認証スキームであるLDAPWemSchemeを選択します。
    4. 「レスポンス」タブをクリックします。
    5. 「IDアサーション」チェック・ボックスを選択します。
    6. 認証ポリシーの条件が満たされている場合は、レスポンスを作成できます。レスポンスは、WebCenter SitesのHTTPフィルタでLDAP属性を識別し、認証済ユーザーについての情報を提供するために必要です。これらのレスポンスを作成するステップは、次のとおりです。
    7. 追加(+)アイコンをクリックし、次を入力します。
    1. 名前: FATGATE_CSTIMEOUTを入力します。
    2. タイプ: 「ヘッダー」を選択します。
    3. : 30を入力します。
  3. SiteCaptureアプリケーションをインストールします。SiteCaptureのインストール・プロセスでは、次に示すパラメータを使用します。
    プロパティの説明 プロパティ
    コンテンツ・サーバーのホスト名またはIP

    fw.cs.hostname

    {ohs_host}

    コンテンツ・サーバーのアプリケーション・サーバー・ポート

    fw.cs.port

    {ohs_port}

    コンテンツ・サーバーのコンテキスト

    fw.cs.context

    {sites_context_root}

    コンテンツ・サーバーのプロトコル(httpまたはhttps)

    fw.cs.protocol

    {sites.protocol}

    RESTADMINロールを持つコンテンツ・サーバー・ユーザー名

    fw.cs.username

    {username}

    コンテンツ・サーバーのユーザー・パスワード

    fw.cs.password

    {password}

    SiteCaptureサーバーのホスト名またはIP

    fw.sc.hostname

    {sc_host}

    SiteCaptureアプリケーション・サーバー・ポート

    fw.sc.port

    {sc_port}

    SiteCaptureプロトコル(httpまたはhttps)

    fw.sc.protocol

    {sc.protocol}

    CASサーバー・ホスト名

    fw.cas.host

    インストーラの{ohs_host}。または

    sitecapture.propertiesでは空

    CASサーバー・ポート

    fw.cas.port

    インストーラの{ohs_port}。または

    sitecapture.propertiesでは空

    CASサーバー・コンテキスト

    fw.cas.context

    インストーラのcas。または

    sitecapture.propertiesでは空

  4. SiteCaptureアプリケーションのroot-context.xmlファイルを調整します。SiteCaptureには、次の2つのファイルが用意されています。
    1. root-context.xml
      root-context.xmlをバックアップし、名前をroot-context.xml.bakファイルに変更します。
    2. oam_root-context.xml
      oam_root-context.xmlファイルの名前をroot-context.xmlファイルに変更します。
      <?xml version="1.0" encoding="UTF-8"?>
      <beans xmlns="http://www.springframework.org/schema/beans"
      	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jdbc="http://www.springframework.org/schema/jdbc"
      	xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
      	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
      	http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
      	http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">
      
      	<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />
      	<!-- Root Context: defines shared resources visible to all other web components -->
      	
      	<jdbc:initialize-database data-source="dataSource"	enabled="true" ignore-failures="ALL">		
      		<!-- For installer the first jdbc:script will opened. Installer will configure it automatically -->
      		<jdbc:script location="classpath:crawler_oracle_db.sql" />
      		<!--jdbc:script location="classpath:crawler_hsql_db.sql" /-->
      		<!--jdbc:script location="classpath:crawler_sql_server_db.sql" /-->
      		<!--jdbc:script location="classpath:crawler_oracle_db.sql" /-->
      		<!--jdbc:script location="classpath:crawler_db2_db.sql" /-->
      	</jdbc:initialize-database>
      	
      	<!-- Section# 1 Installer will consume below configuration to configure a datasource name created on the appservers -->
      	<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
      		<property name="jndiName" value="wcsitesDS"/>
      	</bean>
      	
      	<!-- Single Sign On provider -->
      	<bean id="ssoprovider" class="com.fatwire.wem.sso.oam.OAMProvider">
      		<property name="config" ref="ssoconfig" />
      	</bean>
      	<!--It is invoked by the OAM filter to resolve an OAM authenticated user against a remote Site CS instance.--> 
      	<bean id="oamIdentity" class="com.fatwire.auth.identity.RemoteUsernameResolver" >
      		<property name="csServerUrl" value="http://{ohs_server_host}:{ohs_port}/{sites_context_root}/custom/customCsResolver.jsp"/>
      	</bean>
        
      	<!-- Single Sign On filter -->
      	<bean id="ssofilter" class="com.fatwire.wem.sso.oam.filter.OAMFilter">
      		<property name="config" ref="ssoconfig" />
      		<property name="provider" ref="ssoprovider" />
      		<property name="identityResolver" ref="oamIdentity" />
      		
      		<!-- Set "trustConfigured" to "true" in case of trust relationship configured between WebGate and WLS.
      		It will turn off check for OAM_ASSERTION header. -->
      		<property name="trustConfigured" value="false" />
      	</bean>
        
      
      	<!-- Single Sign On listener -->
      	<bean id="ssolistener" class="com.fatwire.wem.sso.oam.listener.OAMListener">
      	</bean>
      	
      	<!-- Single Sign On configuration -->
      	<bean id="ssoconfig" class="com.fatwire.wem.sso.oam.conf.OAMConfig">
      		<!-- URL prefix for REST service endpoint -->
      		<property name="serviceUrl" value="http://{ohs_server_host}:{ohs_port}/{sites_context_root}/REST" />
      		
      		<!-- URL prefix for Token Service servlet -->
      		<property name="ticketUrl" value="http://{oamtoken_server_host}:{oamtoken_port}/oamtoken" />
      		
      		<!-- URL to be called when WEM logout is required. -->
      		<property name="signoutUrl" value="http://{oam_server_host}:{oam_port}/oam/server/logout?end_url=http%3A%2F%2F{ohs_server_host}%3A{ohs_port}%2F{sites_context_root}%2Fwem%2Ffatwire%2Fwem%2FWelcome"/>
      		
      		<!-- Do not proxy tickets, tt's the last server in thecall chain -->
      		<property name="proxyTickets" value="false" />
      		
      		<!-- Database Credentials needed by user lookup inOAMFilter -->
      		<property name="dbUsername" value="fwadmin" />
      		<property name="dbPassword" value="xceladmin"/>
      		
      		<!-- Your application protected resources (relative to applicationUrl) -->
      		<property name="protectedMappingIncludes">
      			<list>
      				<value>/__admin</value>
      				<value>/__admin/**</value>
      			</list>
      		</property>
      		
      		<!-- Your application protected resources excludes (relative to applicationUrl) -->
      		<property name="protectedMappingExcludes">
      			<list>
      				<value>/__admin/layout</value>
      			</list>
      		</property>
      		<property name="applicationProxyCallbackPath" value="/sso/proxycallback" />
      		<property name="gateway" value="false" />
      	</bean>
      	
      	<context:component-scan base-package="com.fatwire.crawler.remote.dao" />
      	<context:component-scan base-package="com.fatwire.crawler.remote.support" />
      	<context:component-scan base-package="com.fatwire.crawler.remote.di" />
      	<context:component-scan base-package="com.fatwire.crawler.remote.resources.support" />
      
      </beans>

      ノート:

      mod_wl_ohs.confファイルを更新するには、次のコードを含める必要があります。 
      <IfModule weblogic_module>
      <Location /__admin>
      		SetHandler weblogic-handler
      		WebLogicHost SITECAPTURE_HOST
      	WebLogicPort SITECAPTURE_HOST 
      </Location>
      </IfModule>

OAMとOracle WebCenter Sites: Satellite Serverの統合

この項では、OAMのOracle WebCenter Sites: Satellite Serverとの統合ステップを示します。

Oracle Access Manager統合のためのSatellite Serverの構成は、WebCenter Sitesの手順よりも簡単です。Satellite Serverを使用したOAMとWebCenter Sitesの統合の詳細は、「OAMとOracle WebCenter Sites: Satellite Serverの統合」を参照してください。

ノート:

次のコード例では、OAM OHSのRSS構成およびmod_wl_ohs.confファイルを指定します。
<IfModule weblogic_module>
 <Location /ss>
       SetHandler weblogic-handler
       WebLogicHost SATELLITESERVER_HOST
     WebLogicPort SATELLITESERVER_HOST
 </Location>
 </IfModule>

OAMと訪問者サービスの統合

この項では、OAMのVisitor Servicesとの統合ステップを示します。

この項で説明するステップを実行する前に、Visitor Servicesで提供されているOAMIdentityProviderを構成していることを確認します。  OAMアイデンティティ・プロバイダでは、Visitor ServicesがOAMと通信できるようにします。OAMと訪問者サービスの統合の詳細は、『Oracle Fusion Middleware Oracle WebCenter Sitesでの開発』を参照してください。

ノート:

次のコード例では、OAM OHSの訪問者構成およびmod_wl_ohs.confファイルを指定します。
<IfModule weblogic_module>
    <Location /oamlogin>
      SetHandler weblogic-handler
       WebLogicHost SITES_HOST
       WebLogicPort SITES_PORT
   </Location>
 </IfModule>
 <IfModule weblogic_module>
 <Location /visitors-webapp>
   SetHandler weblogic-handler       
	WebLogicHost VISITORSERVICES_HOST    
	WebLogicPort VISITORSERVICES_HOST
 </Location>
 </IfModule>

外部資格証明コレクタを使用した認証OAMへの切替え

このトピックでは、2つのWebGateと2つのOHSを構成するステップについて示します。このトピックのステップと同様のステップを使用して、サイト・キャプチャ、Satellite Serverおよび訪問者サービスをOAMに構成できます。

前述のとおり、資格証明はOAMサーバー直接収集されるため、OAMサーバーホストとポートが公開され、セキュリティの脅威の原因になりますが、DCC (外部資格証明コレクタ) WebGate資格証明を導入することで、WebGateで収集できるようになります(資格証明はWebGateによってOAMに転送され、さらに処理されます)。DCCでは、OAMサーバーのホストとポートを公開しないため、セキュリティ脅威が軽減されます。DCCは、単一のWebGateと単一のOHS、2つのWebGate (例: DCC WebGateとリソースWebGate)と2つのOracle HTTP Server (各OHSサーバーはそれぞれのWebGateファイルをホスト)を使用して構成できます。

前提条件

この章では、外部資格証明コレクタの構成に必要な前提条件を示します。

DCCを構成するための前提条件は、次のとおりです。
  1. WebCenter Sites 12.2.1.3.0とCASがインストールされており、稼働状態である。
  2. OAM 11.1.2.3.0がインストールされており、2つのOHSをWebGateに構成して、OAMドメインが構成されている。次のリストは、このインストールに必要なソフトウェアです。
    • OAM 11.1.2.3.0。たとえば : ofm_iam_generic_11.1.2.3.0_disk*.zip

    • RCU 11.1.1.9.0。たとえば : ofm_rcu_linux_11.1.1.9.0_64_disk*.zip

    • 最新バージョンのSOAスイート。

    • WebTier 11.1.1.9.0。たとえば : ofm_webtier_linux_11.1.1.9.0_64_disk*.zip

    • WebGate 11.1.2.3.0。たとえば : ofm_webgates_generic_11.1.2.3.0_disk*.zip

DCC WebGateの構成

このトピックでは、DCC Webgateの構成方法について説明します。

DCC WebGateを構成するには、次のステップに従います。
  1. oamconsoleにログインします。「アプリケーション・セキュリティ」「起動パッド」が開きます。
  2. 「エージェント」「Webゲートの作成」をクリックします。「Webゲートの作成」フォームが開きます。
  3. 「Webゲートの作成」フォームで、次のように値を入力します。
    1. バージョン : 11g
    2. 名前: DCC-11g-WG。たとえば、任意の名前を入力します。
    3. ホスト識別子: DCC-11g-WG。たとえば、任意の名前を入力します。
    4. セキュリティ: 任意のオプションを選択します。
    5. ポリシーの自動作成: 選択されているデフォルトのオプションのままにします。
  4. 「適用」をクリックします。
  5. DCC-11g-WGという名前の新しいWebGateがデフォルト値で作成されます。「Webゲート」フォームで、次のフィールドを更新します。
    1. ログアウトURL: /oamsso-bin/logout.pl
    2. ログアウト・コールバックURL: /oam_logout_success
    3. ログアウト・リダイレクトURL: http://{OAM_host:OAM_port}/oam/server/logout
    4. ログアウト・ターゲットURL: end_url
    5. 資格証明コレクタ操作の許可: 選択されているデフォルトのオプションのままにします。
  6. 「適用」をクリックします。
  7. 「起動パッド」に移動して、「Access Manager」「ホスト識別子」をクリックします。
  8. 検索フォームが表示されたら、「検索」をクリックします
  9. ステップ3cで作成したホスト識別子DCC-11g-WGをクリックします。
  10. 「ホスト名組合せ」領域の「+」を」クリックして、ホスト名とポートを追加します。
  11. 詳細をすべて入力したら、「適用」をクリックします。

    ノート:

    これらは、ログイン・チャレンジを表示するために、DCC WebGateファイルがコピーされるOHSのホスト名とポートです。
  12. 「起動パッド」に移動して、「認証スキーム」をクリックします。
  13. 検索フォームが表示されたら、「作成」をクリックします。
  14. ステップ15aからgで指定した両方のWebGateで使用される新しい認証スキームを作成します。
  15. 「適用」をクリックしますWebLogicの組込みLDAPをLDAP認証モジュールとして使用します(WebLogicの管理コンソールを使用してfwadminユーザーがmyrealmに追加されます)
    1. 名前: DCCAuthnScheme11g.たとえば、任意の名前を入力します。
    2. 認証レベル : 2
    3. チャレンジ・メソッド : FORM
    4. チャレンジ・リダイレクトURL: http://{OHS_Host_of_Resource_Webgate:OHS_Port}
    5. 認証モジュール: LDAP
    6. チャレンジURL: /oamsso-bin/login.pl
    7. コンテキスト・タイプ: external
  16. 「起動パッド」に移動して、「アプリケーション・ドメイン」をクリックします。
  17. 検索フォームが表示されたら、「検索」をクリックします(使用可能なすべてのアプリケーション・ドメインが表示されます。これらはWebGateの作成時にデフォルトで作成されます)。
  18. アプリケーション・ドメイン(ステップ3bで作成)をクリックします(複数のタブで構成されたアプリケーション・ドメインが開き、デフォルトで「サマリー」が開きます)。
    1. 「リソース」タブをクリックすると、検索フォームと「作成」ボタンが表示されます。
    2. 「作成」をクリックすると、フォームが次のように更新されます。

      ノート:

      次のように除外された他のURLを追加します(「作成」ごとに「リソースURL」を変更)。
      • タイプ: HTTP

      • ホスト識別子: DCC-11g-WG (ステップ3cで指定した名前)

      • リソースURL: /oamsso-bin/login.pl

      • 保護レベル: excluded

    3. 「適用」をクリックします。
    4. 「認証ポリシー」タブをクリックしてから、「保護されたリソース・ポリシー」をクリックします。次のようにフォームを更新して、「適用」をクリックします。
      • 認証スキーム: ステップ15で作成したDCCAuthnScheme11g

  19. 前述でWebLogicドメイン($DOMAIN_HOME/output/DCC-11g-WG)に作成したDCC WebGateファイルを、これらのWebGateファイルをホストするOHSフォルダ($OHS_INSTANCE_HOME/config/OHS/$OHS_NAME /webgate/config)にコピーします。
    • ObAccessClient.xml

    • cwallet.sso

  20. OHSを再起動します。

リソースWebGateの構成

このトピックでは、リソースWebGateの構成のステップについて説明します。

リソースWebGateを構成するには、次のステップに従います。
  1. oamconsoleにログインします(「アプリケーション・セキュリティ」の起動パッドが表示されます)。
  2. 「エージェント」「Webゲート」「Webゲートの作成」をクリックします。
  3. 「Webゲートの作成」フォームで、次のように値を入力します。
    1. バージョン: 11g
    2. 名前: Resource-11g-WG (任意の名前)
    3. ホスト識別子: DCC-11g-WG (前述の「名前」と同じか、任意の名前)
    4. セキュリティ: オープン(任意のオプションを選択)
    5. ポリシーの自動作成: 選択したオプション
  4. 「適用」をクリックします
  5. Resoruce-11g-WGの名前の新しいWebGateがデフォルト値で作成されます。「Webゲート」フォームで、次のフィールドを更新します。
    1. ログアウトURL: /logout
    2. ログアウト・コールバックURL: /oam_logout_success
    3. ログアウト・リダイレクトURL: http://{OAM_Host_of_DCC_Webgate:OAM_Port}/oamsso-bin/logout.pl
    4. ログアウト・ターゲットURL: end_url
  6. 「適用」をクリックします
  7. 「起動パッド」に移動して、「Access Manager」「ホスト識別子」をクリックします(検索フォームが表示されます)。「検索」をクリックします。
  8. ステップ3cで作成したホスト識別子DCC-11g-WGをクリックします。
  9. 「ホスト名組合せ」の「+」を」クリックして、ホスト名とポートを追加します。
  10. 必要なホスト名とポートがすべて追加されたら、「適用」をクリックします。

    ノート:

    これらは、リソースWebGateファイルがコピーされるOHSのホスト名とポートです。
  11. 「起動パッド」に移動して、「アプリケーション・ドメイン」をクリックします(検索フォームが表示されます)。「検索」をクリックすると、WebGateの作成時にデフォルトで作成される、使用可能なすべてのアプリケーション・ドメインが表示されます。
  12. 「アプリケーション・ドメイン」(ステップ3bで作成)をクリックします(複数のタブで構成されたアプリケーション・ドメインが開き、デフォルトで「サマリー」が開きます)。
    1. 「リソース」タブをクリックすると、検索フォームと「作成」ボタンが表示されます。次の表の行ごとに「作成」をクリックして、次のように作成フォームを更新し、「適用」をクリックします。

      表11-1 リソース識別子

      タイプ ホスト識別子 リソースURL 保護レベル 認証ポリシー 認可ポリシー

      HTTP

      Resource-11g-WG

      /{sites-context}/**

      保護

      保護されたリソース・ポリシー

      保護されたリソース・ポリシー

      HTTP

      Resource-11g-WG

      /{sites-context}/ContentServer/*

      保護

      保護されたリソース・ポリシー

      保護されたリソース・ポリシー

      HTTP

      Resource-11g-WG

      /{sites-context}/Satellite/*

      保護

      保護されたリソース・ポリシー

      保護されたリソース・ポリシー

      HTTP

      Resource-11g-WG

      /{sites-context}/faces/jspx/…/*

      保護

      保護されたリソース・ポリシー

      保護されたリソース・ポリシー

      HTTP

      Resource-11g-WG

      /{sites-context}/wem/fatwire/…/*

      保護

      保護されたリソース・ポリシー

      保護されたリソース・ポリシー

      HTTP

      Resource-11g-WG

      /{sites-context}/Xcelerate/LoginPage.html

      保護

      保護されたリソース・ポリシー

      保護されたリソース・ポリシー

    2. 「認証ポリシー」タブをクリックしてから、「保護されたリソース・ポリシー」をクリックします。次のようにフォームを更新して、「適用」をクリックします。
      1. 認証スキーム: DCCAuthnScheme11g (ステップ8で作成)

      2. 「リソース」タブをクリックしてから、「IDアサーション」をクリックします。「追加」をクリックして、次のレスポンスを含めます。

        表11-2 IDアサーション要素

        タイプ 名前

        ヘッダー

        FATGATE_POLICY

        保護

        ヘッダー

        FATGATE_EMAIL

        $user.attr.mail

    3. 「認可ポリシー」タブをクリックしてから、保護されたリソース・ポリシーをクリックします。次の表のように、フォームを更新します。
      1. 「リソース」をクリックしてから、「IDアサーション」をクリックします。

        表11-3 IDアサーション要素

        タイプ 名前

        ヘッダー

        FATGATE_POLICY

        保護

        ヘッダー

        FATGATE_EMAIL

        $user.attr.mail

      2. 前述のレスポンスを追加したら、「追加」をクリックします

      3. 「適用」をクリックします。

  13. 前述でWebLogicドメイン($DOMAIN_HOME/output/Resource-11g-WG)に作成したリソースWebGateファイルを、これらのWebGateファイルをホストするOHSフォルダ($OHS_INSTANCE_HOME/config/OHS/$OHS_NAME /webgate/config)にコピーします。
    1. ObAccessClient.xml
    2. cwallet.sso
  14. OHSを再起動します。

Sites OAM統合

このトピックでは、Sites OAMとDCCの統合を構成するステップについて説明します

Sites OAM統合を構成するには、次のステップに従います。
  1. oamtoken WebアプリケーションをSitesサーバーにデプロイします。

    ノート:

    oamlogin Webアプリケーションは使用されていないため、デプロイしないでください。
  2. cas WebアプリケーションをSitesサーバーからアンデプロイします。
  3. CS Webアプリケーションに移動して、SSOConfig.xmlを編集モードで開きます。
  4. 次のBeanをファイルに追加して、ファイルを保存します。
    <!-- Single Sign On configuration -->
    		<bean id="ssoconfig" class="com.fatwire.wem.sso.oam.conf.OAMConfig">
    			<!-- URL prefix for REST service endpoint -->
    
    			<property name="serviceUrl" value="http://{OHS_Host_of_Resource_Webgate:OHS_Port}/{sites-context}/REST" />
    			<!-- URL prefix for Token Service servlet -->
    			<property name="ticketUrl" value="http://{Sites_Host:Sites_Port}/oamtoken" />
    			<!-- URL to be called when WEM logout is required. -->
    			<property name="signoutUrl" value="http:// {OHS_Host_of_DCC_Webgate:OHS_Port }/oamsso-bin/logout.pl?end_url=http%3A%2F%2F{OHS_Host_of_Resource_Webgate} %3A{OHS_Port }%2F{sites-context}%2Fwem%2Ffatwire%2Fwem%2FWelcome" />
    			<!-- Do not proxy tickets, tt's the last server in the call chain -->
    			<property name="proxyTickets" value="false" />
    			<!-- Database Credentials needed by user lookup in OAMFilter -->
    			<property name="dbUsername" value="fwadmin" />
    			<property name="dbPassword" value="{password_for_above_user}" />
    			<!-- Your application protected resources (relative to applicationUrl) -->			
    			<property name="protectedMappingIncludes">
    				<list>
     							<value>wem/fatwire/**value>wem/fatwire/**>
    							<value>/faces/jspx/**value>/faces/jspx/**>		
    <value>/ContentServer?[pagename=OpenMarket/Xcelerate/UIFramework/LoginPage|OpenMarket/Xcelerate/UIFramework/ShowMainFrames|fatwire/getAllUserGroups|fatwire/getAllSecurityConfigs|rest/asset,# </value>  
    <value><Satellite?[pagename=fatwire/insitetemplating/request|OpenMarket/Xcelerate/ControlPanel/Request|OpenMarket/Xcelerate/ControlPanel/EditPanel|fatwire/wem/ui/Ping|fatwire/wem/sso/validateMultiticket|OpenMarket/Xcelerate/UIFramework/ShowPreviewFrames,#]
    </value>
    							<value>Xcelerate/LoginPage.html</value>
  5. 前述の変更後に、Sitesサーバーを再起動します。
  6. リソースWebGateから保護されたURLを使用して、Sitesにログインします。たとえば : http://{OHS_Host_of_Resource_Webgate:OHS_Port}/{sites-context}/.

    ノート:

    サイト・キャプチャ、Satellite Serverおよび訪問者サービスについても、同じようにOAMに構成できます。