ヘッダーをスキップ
Oracle® Fusion Middlewareアプリケーション・セキュリティ・ガイド
11gリリース1(11.1.1)
B56235-07
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

7 アイデンティティ・ストア・サービスの構成

この章では、OPSSアイデンティティ・ストア・サービスを使用する方法について説明します。この項の内容は次のとおりです。

7.1 アイデンティティ・ストア・サービスの概要

この項では、OPSSアイデンティティ・ストア・サービスにおける次の主要概念について説明します。

7.1.1 アイデンティティ・ストア・サービスについて

アイデンティティ・ストア・サービスを使用すると、アイデンティティ・ストアにユーザーおよびロール(グループ)の情報を問い合せることができます。

デフォルトでは、サービス・インスタンスは、単一のLDAPアイデンティティ・ストアへの問合せをサポートしています。複数のLDAPアイデンティティ・ストアに問合せを行う仮想アイデンティティ・ストアをサポートするようにサービスを構成できます。ID仮想化として知られているこの機能については、第7.3項「アイデンティティ・ストア・サービスの構成」を参照してください。

7.1.2 サービス・アーキテクチャ

図7-1は、アイデンティティ・ストア・サービスのアーキテクチャを示しています。構成に応じて、サービスではアイデンティティ・ストアとして、XMLファイルまたは1つ以上のLDAPサーバーをサポートできます。

LDAP用にサービスを構成すると、デフォルトでは、単一のLDAPストアに問合せが行われます。複数のLDAPストアに問い合せるように、サービスを構成することもできます。

図7-1 OPSSアイデンティティ・ストア・サービス

図7-1については周囲のテキストで説明しています。

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

アイデンティティ・ストア・サービスは、次のサーバーをサポートしています。

  • Oracle WebLogic Server

  • サード・パーティのアプリケーション・サーバー

サービスの構成内容は、アプリケーション・サーバーによって異なるため、そのサービスをサポートするプロバイダを指定する必要があります。

7.1.4 Java SEのサポート

アイデンティティ・ストア・サービスは、スタンドアロンのJava SE環境で使用できます。

詳細は、第7.3.6項「Java SE環境」を参照してください。

7.2 アイデンティティ・ストア・プロバイダの構成

アイデンティティ・ストア・サービスを使用する前に、アイデンティティ・ストア・プロバイダを構成する必要があります。OPSSでは、ファイルベース(XML)とLDAPベースの両方のプロバイダがサポートされます。

次のjps-config.xmlファイルの断片は、XMLプロバイダとLDAPプロバイダの構成を示しています。serviceProviderは、serviceProviders要素の子要素です。

<serviceProvider type="IDENTITY_STORE" name="idstore.ldap.provider" 
 class="oracle.security.jps.internal.idstore.ldap.LdapIdentityStoreProvider">
      <description>LDAP-based IdentityStore Provider</description>
</serviceProvider>
 
<serviceProvider type="IDENTITY_STORE" name="idstore.xml.provider" 
 class="oracle.security.jps.internal.idstore.xml.XmlIdentityStoreProvider">
      <description>XML-based IdentityStore Provider</description>
</serviceProvider>

詳細は、第8.7.1項「アイデンティティ・ストア・プロバイダの構成」を参照してください。

7.3 アイデンティティ・ストア・サービスの構成

この項では、アイデンティティ・ストア・サービスをLDAPベースのストアに構成する方法について説明します。この項の内容は次のとおりです。

7.3.1 構成内容

この項では、アイデンティティ・ストア・サービスの各種構成パラメータについて説明します。内容は次のとおりです。

7.3.1.1 複数のLDAP検索の構成

複数のLDAP問合せ用にサービスを構成するには、次のパラメータを使用します。

  • virtualizeプロパティ - このプロパティには、true (複数のLDAP検索)またはfalse (単一のLDAP検索)を設定できます。デフォルトはfalseです。

  • グローバル接続パラメータ(virtualizeが有効の場合) - アプリケーションの呼び出す際に、これらのパラメータを使用して、グローバルLDAP構成(ベースの検索、ベースの作成など)を指定します。これらのパラメータのいずれかが構成されていない場合、OPSSはデフォルト値を使用します。

  • バックエンド接続パラメータ - このパラメータは各LDAPストアに固有のものです。各LDAPに対して1セットのバックエンド・パラメータが指定されます。既存の値を上書きしないかぎり、このパラメータを設定する必要はありません。

7.3.1.2 グローバル/接続パラメータ

表7-1は、グローバル・パラメータとそのデフォルト値(該当する場合)を示しています。

表7-1 LDAPアイデンティティ・ストアのグローバル・パラメータ

パラメータ デフォルト値

group.create.bases

user.create.basesと同じ

group.filter.object.classes

groupofuniquenames

グローバル値が明示的に指定されている場合に使用

group.mandatory.attrs

-

group.member.attrs

uniquemember

group.object.classes

groupofuniquenames

group.search.bases

-

group.selected.create.base

-

group.selected.search.base

-

groupname.attr

cn

グローバル値が明示的に指定されている場合に使用

max.search.filter.length

-

search.type

-

user.create.bases

認証プロバイダが1つしかない場合は、それが作成ベース値として使用されます。認証プロバイダが複数ある場合は、デフォルト値が設定されないため、ユーザーが明示的にグローバル値を設定する必要があります。

user.filter.object.classes

inetorgperson

user.login.attr

uid

user.mandatory.attrs

-

user.object.classes

inetorgperson

グローバル値が明示的に指定されている場合に使用

user.search.bases

group.search.basesと同じ

username.attr

cn

グローバル値が明示的に指定されている場合に使用


7.3.1.3 バックエンド/接続パラメータ

前述のように、このパラメータはバックエンドLDAPストアに固有のものです。詳細は、次を参照してください:

7.3.2 WebLogic Serverにおける構成

Oracle WebLogic Serverでは、LDAP認証プロバイダは、WebLogicコンソールまたはWLSTコマンドラインを使用して構成します。実行時にOracle WebLogic Serverによって構成の詳細がOPSSに渡されます。Oracle WebLogic Serverでは、特定のコンテキストで複数の認証プロバイダを構成することができます。また、アイデンティティ・ストア・サービスを初期化する際に、デフォルトでは、最初の認証プロバイダが選択されます。この処理については、第3.2.2.1項「複数の認証プロバイダ」で説明しています。

認証プロバイダを構成した後で、アイデンティティ・ストア・サービスを設定して、1つのLDAPアイデンティティ・ストアまたは複数のストアに問い合せることができます。複数のストアを構成するにはvirtualizeプロパティを設定する必要があります。

この項では、これらのオプションの設定方法について説明します。

7.3.2.1 単一のLDAPを使用する場合のサービスの構成

アイデンティティ・ストア・サービスを構成して、問合せ可能なLDAPストアは1つだけです。単一のLDAPサービス・インスタンスを使用する場合のjps-config.xmlファイルの断片を示している例7-2を参照してください。

7.3.2.2 virtualizeプロパティを指定せずに複数のLDAPを使用する場合のサービスの構成

virtualizeプロパティを設定できない場合は、複数のLDAPストアを問い合せて、WebLogic Serverの構成をオーバーライドするようアイデンティティ・ストア・サービスを構成できます。jps-config.xmlファイルの断片を示している例7-1を参照してください。この例では、LDAP URLのカンマ区切りリストを使用して複数のLDAPサービス・インスタンスが定義されています。

例7-1 virtualizeプロパティを設定しない複数のLDAPの構成

<property name="ldap.url", value="ldap://host1:port1,ldap://host2:port2" />

7.3.2.3 Fusion Middleware Controlによる複数のLDAPを使用する場合のサービスの構成

単一のLDAPの場合の設定に記載されているように、Oracle WebLogic Serverに認証プロバイダを構成して起動します。

次に、Fusion Middleware Controlで次の手順を実行します。

  1. 左側のナビゲーション・ペインでWebLogicドメインを選択します。

  2. 「セキュリティ」→「セキュリティ・プロバイダ構成」に移動します。

  3. ページ上の「アイデンティティ・ストア・プロバイダ」セクションを開きます。

  4. 構成」をクリックします(「アイデンティティ・ストアと対話するユーザー/ロールAPIで使用するパラメータの構成」に相当)。

  5. 「アイデンティティ・ストア構成」ページが表示されます。

  6. 「カスタム・プロパティ」で「追加」をクリックします。

  7. 次のように、新しいプロパティを追加します。

    Property Name=virtualize
    Value=true
    

    注意:

    このプロパティは、デフォルト・コンテキストのアイデンティティ・ストアのサービス・インスタンスに追加してください。


  8. OK」をクリックします。

7.3.2.4 WLSTによる複数のLDAPを使用する場合のサービスの構成

WLSTを使用してvirtualizeプロパティを構成するには、次の手順を実行します。

  1. 対象ドメインの管理サーバーに接続するためのpyスクリプト・ファイルを作成します。この操作をするには、userNameuserPasslocalHost、およびportNumberを指定する必要があります。

    このスクリプトの詳細は、付録E「スクリプトを使用したOPSSサービス・プロバイダ・インスタンスの構成」を参照してください。

  2. $ORACLE_HOME/common/binに移動します。

  3. wlst.shコマンドを実行して、スクリプトを実行します。

    たとえば、idstore.ldapという名前の認証プロバイダがドメイン構成ファイルに含まれている場合、次のようにコマンドを入力します。

    wlst.sh /tmp/updateServiceInstanceProperty.py -si idstore.ldap 
    -key "virtualize" -value "true"

    複数のLDAP検索に使用するプロバイダが構成されます。

7.3.2.5 WLSTを使用したタイムアウト設定の構成

WLSTを使用してタイムアウト設定を構成するには、次の手順を実行します。

  1. 次のWLSTコマンドを実行し、すべてのアダプタをリストします。listAdapters()

  2. 次のWLSTコマンドを実行して、アダプタごとにタイムアウトを設定します。たとえば、120秒のタイムアウトを設定します。タイムアウトなしの場合はゼロに設定します。

    modifyLDAPAdapter('<ADAPTER NAME>', 'OperationTimeout', 120000)

  3. WebLogic Serverを再起動します。

7.3.2.6 その他のパラメータの構成

必要に応じて、jps-config.xmlを更新して、第7.3.1項「構成内容」に記載されている問合せパラメータを設定できます。これらのパラメータはオプションです。デフォルト値が指定されています。

7.3.2.7 サーバーの再起動

複数のLDAP問合せを構成したら、WebLogic管理サーバーおよび管理対象サーバーを再起動します。

7.3.2.8 構成ファイルの例

例7-2に、単一のLDAP問合せ用にOracle WebLogic Server環境に構成されたjps-config.xmlのサンプル・ファイルを示します。

例7-2 Oracle WebLogic Serverにおける単一のLDAP構成

<!-- JPS WLS LDAP Identity Store Service Instance -->
        <serviceInstance name=idstore.ldap provider=idstore.ldap.provider>
            <property name=idstore.config.provider                       value=oracle.security.jps.wls.internal.idstore.
                      WlsLdapIdStoreConfigProvider/>
            <property name=CONNECTION_POOL_CLASS                       
                      value=oracle.security.idm.providers.stdldap.JNDIPool/>
        </serviceInstance>

例7-3に、複数のLDAP問合せ用にOracle WebLogic Server環境に構成されたjps-config.xmlのサンプル・ファイルを示します。

例7-3 Oracle WebLogic Serverにおける複数のLDAP構成

<jpsConfig xmlns="http://xmlns.example.com/oracleas/schema/11/jps-config-11_1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.example.com/oracleas/schema/11/jps-config-11_1.xsd" schema-major-version="11" schema-minor-version="1">
 
 <serviceProviders>
        <serviceProvider type="IDENTITY_STORE" name="idstore.ldap.provider" 
                 class="oracle.security.jps.internal.idstore.ldap.LdapIdentityStoreProvider">
            <description>LDAP-based IdentityStore Provider</description>
        </serviceProvider>
 </serviceProviders>
 
 <serviceInstances>
        <!-- IDstore instance connecting to multiple ldap  -->
        <serviceInstance name="idstore.virtualize" provider="idstore.ldap.provider">
 
            <!-- following property indicates using WLS ldap Authenticators -->
            <property name="idstore.config.provider" 
                 value="oracle.security.jps.wls.internal.idstore.WlsLdapIdStoreConfigProvider"/>
 
             <!-- following property enables virtualization i.e., support for multiple stores -->
            <property name="virtualize" value="true"/>
 
            <!-- Front end ldap properties (if not supplied, will use default values) --> 
            <extendedProperty>
                <name>user.create.bases</name>
                <values>
                   <value>cn=users_front,dc=us,dc=example,dc=com</value>
                </values>
            </extendedProperty>
            <extendedProperty>
                <name>group.create.bases</name>
                <values>
                  <value>cn=groups_front,dc=us,dc=example,dc=com</value>
                </values>
            </extendedProperty>
        </serviceInstance>
 </serviceInstances>
 
  <jpsContexts default="default">
 
        <!-- the identity store uses multiple ldaps -->
        <jpsContext name="default">
            <!-- use multiple ldap -->
            <serviceInstanceRef ref="idstore.virtualize"/>    
            <!-- .....other services -->
        </jpsContext>
  </jpsContexts>
 
</jpsConfig>

次のことに留意してください:

  • 複数のLDAP問合せを有効にするために、サービス・インスタンスのvirtualizeプロパティをtrueに設定します。

  • 必要に応じて、デフォルト値をオーバーライドする場合は、extendedProperty要素を使用することにより、フロントエンド・パラメータを設定できます。

    詳細は、第7.3.1項「構成内容」の「フロントエンド・パラメータ」を参照してください。

7.3.3 分割プロファイルの構成

ID仮想化では「分割プロファイル」がサポートされています。分割プロファイルでは、2つの異なるソースに格納されている単一IDの属性をアプリケーションが使用します。

この機能には、この章で説明している構成以外に追加構成が必要です。詳細は、付録K「ID仮想化のためのアダプタ構成」を参照してください。

7.3.4 カスタム認証プロバイダの構成

OPSSでは、アイデンティティ・ストアにアクセスするための、複数のLDAPベースのOracle WebLogic Server認証プロバイダ(WebLogic認証プロバイダ)がサポートされています。出荷時に設定されているWebLogic認証プロバイダがLDAPサーバー・タイプに適していない場合は、このタスク用に汎用の認証プロバイダをカスタマイズできます。

この項では、アイデンティティ・ストア・サービスに対してvirtualizeフラグが有効になっている場合に、このような認証プロバイダを構成する方法について説明します。

このコンテキストでは、次の点に注意してください。

  • 汎用のLDAP認証プロバイダの使用時には、適切なLDAPプラグインを見つけられるように、アイデンティティ・ストア・サービスに対して正確なLDAPタイプを指定する必要があります。これは、jps-config.xml内のidstore.typeプロパティをオーバーライドすることにより行います。

  • virtualizeフラグが有効になっており、Oracle WebLogic Serverドメインに複数の認証プロバイダがあるため(たとえば、defaultAuthenticatorと汎用のLDAP)、アイデンティティ・ストア・サービスに対して、どのLDAPサーバーのidstore.typeをオーバーライドすべきかを指定する必要があります。

この情報は、jps-config.xml内で次のように指定します。

<serviceInstance name="idstore.ldap" provider="idstore.ldap.provider">
    <property name="idstore.config.provider"
value="oracle.security.jps.wls.internal.idstore.WlsLdapIdStoreConfigProvider"
/>
    <property name="CONNECTION_POOL_CLASS"
value="oracle.security.idm.providers.stdldap.JNDIPool" />
 
    <property value="true" name="virtualize" />
 
    <!-- the following refer to the Generic ldap name configured on the WLS
authenticator provider, you get this name from WebLogic config.xml file or admin
console  -->
    <serviceInstanceRef ref="myGenericLDAPName"/>
 
  </serviceInstance>
 
 
  <!-- the following provide the overriding to the Generic ldap (e.g. AD)
-->
  <!-- "myGenericLDAPName" is the name used on WLS for the generic LDAP
authenticator provider  -->
  <serviceInstance name="myGenericLDAPName" provider="idstore.ldap.provider">
 
    <!-- the following overrides the 'idstore.type' property to
"ACTIVE_DIRECTORY" -->
    <property name="idstore.type" value="ACTIVE_DIRECTORY" />
  </serviceInstance>

別のLDAPプロバイダ・インスタンスもオーバーライドする必要がある場合は、ファイルに同様のエントリを追加します。

7.3.5 その他のアプリケーション・サーバーの構成

この項のトピックは次のとおりです:

7.3.5.1 単一のLDAPを使用する場合のサービスの構成

詳細は、第22.3.2項「Java SEアプリケーションでのLDAPアイデンティティ・ストアの構成」の例を参照してください。

7.3.5.2 複数のLDAPを使用する場合のサービスの構成

サード・パーティのアプリケーション・サーバーにある複数のLDAPに対応するアイデンティティ・ストア・サービスを構成する手順は、次のとおりです。

  1. jps-config.xmlファイルを変更して、LDAP対応のディレクトリごとにサービスのインスタンスを構成します。

  2. アプリケーション・サーバーを再起動して、変更を有効にします。

例7-4に、サード・パーティのアプリケーション・サーバーに複数のLDAP問合せを実行するように構成されたjps-config.xmlファイルのサンプルを示します。

例7-4 サード・パーティのアプリケーション・サーバーにおける複数のLDAP構成

<jpsConfig xmlns="http://xmlns.example.com/oracleas/schema/11/jps-config-11_1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.example.com/oracleas/schema/11/jps-config-11_1.xsd" schema-major-version="11" schema-minor-version="1">
 
 <serviceProviders>
        <serviceProvider type="IDENTITY_STORE" name="idstore.ldap.provider"                     
                class="oracle.security.jps.internal.idstore.ldap.LdapIdentityStoreProvider">
            <description>LDAP-based IdentityStore Provider</description>
        </serviceProvider>
 </serviceProviders>
 
 <serviceInstances>
          <!-- instance 'idstore.oid'  to represent an ldap server 'oid' -->
            <serviceInstance name="idstore.oid" provider="idstore.ldap.provider">
            <property name="subscriber.name" value="dc=us,dc=example,dc=com"/>
            <property name="idstore.type" value="OID"/>
            <property name="security.principal.key" value="oid.ldap.credentials"/>
            <property name="security.principal.alias" value="JPS"/>
            <property name="ldap.url" 
                value="ldap://hostname.example.com:389,ldap://hostname.example.com:389"/>
            <extendedProperty>
                <name>user.search.bases</name>
                <values>
                   <value>cn=users,dc=us,dc=example,dc=com</value>
                </values>
            </extendedProperty>
            <extendedProperty>
                <name>group.search.bases</name>
                <values>
                  <value>cn=groups,dc=us,dc=example,dc=com</value>
                </values>
            </extendedProperty>
            <property name="username.attr" value="uid" />
            <property name="groupname.attr" value="cn" />
            </serviceInstance>
 
          <!-- instance 'idstore.ad' to represent an ldap server 'ad' -->
            <serviceInstance name="idstore.ad" provider="idstore.ldap.provider">
            <property name="subscriber.name" value="dc=us,dc=example,dc=com"/>
            <property name="idstore.type" value="ACTIVE_DIRECTORY"/>
            <property name="security.principal.key" value="msad.ldap.credentials"/>
            <property name="security.principal.alias" value="JPS"/>
            <property name="ldap.url" 
                value="ldap://hostname.example.com:389,ldap://hostname.example.com:389"/>
            <extendedProperty>
                <name>user.search.bases</name>
                <values>
                   <value>cn=users,dc=us,dc=example,dc=com</value>
                </values>
            </extendedProperty>
            <extendedProperty>
                <name>group.search.bases</name>
                <values>
                  <value>cn=groups,dc=us,dc=example,dc=com</value>
                </values>
            </extendedProperty>
            <property name="username.attr" value="uid" />
            <property name="groupname.attr" value="cn" />
             </serviceInstance>
 
         <!-- IDStore service "idservice.virtualize" to connect to multiple ldaps ( 'oid' and 'ad') using libOVD-->
        <serviceInstance name="idservice.virtualize"          provider="idstore.ldap.provider">
 
             <!--following property enables virtualization i.e., support for multiple stores -->
               <property name="virtualize" value="true"/>
               <!-- backend ldap instance "idstore.oid"-->     
                               <serviceInstanceRef ref="idstore.oid"/>
               <!-- backend ldap instance "idstore.ad"-->
                            <serviceInstanceRef ref="idstore.ad"/>    
            <!-- Front end ldap properties (if not supplied, will use default values) --> 
            <extendedProperty>
                <name>user.create.bases</name>
                <values>
                   <value>cn=users_front,dc=us,dc=example,dc=com</value>
                </values>
            </extendedProperty>
            <extendedProperty>
                <name>group.create.bases</name>
                <values>
                  <value>cn=groups_front,dc=us,dc=example,dc=com</value>
                </values>
            </extendedProperty>
        </serviceInstance>
 </serviceInstances>
 
  <jpsContexts default="default">
 
        <!-- IdStore service connect to  multiple ldaps ('oid'+'ad') through libOVD-->
        <jpsContext name="default">
                <!-- use multiple ldaps ('oid'+'ad') through libOVD-->
            <serviceInstanceRef ref="idservice.virtualize"/>  
            <!-- .....other services -->
        </jpsContext>
 
  </jpsContexts>
 
</jpsConfig>

次のことに留意してください:

  • 最初のサービス・インスタンスは、Oracle Internet Directoryのプロバイダを定義しています。

  • 2番目のサービス・インスタンスは、Microsoft Active Directoryのプロバイダを定義しています。

  • 複数のLDAP問合せを有効にするために、サービス・インスタンスのvirtualizeプロパティをtrueに設定します。

  • 必要に応じて、デフォルト値をオーバーライドする場合は、extendedProperty要素を使用することにより、フロントエンド・パラメータを設定できます。

    詳細は、第7.3.1項「構成内容」の「フロントエンド・パラメータ」を参照してください。

7.3.6 Java SE環境

Java SE環境では、すべての構成がjps-config-jse.xmlファイルに設定されます。必要に応じて次を実行できます。

  1. 新しいアイデンティティ・ストアのサービス・インスタンスを定義します。

  2. 新しいサービス・インスタンスをJPSコンテキストに追加して、事前に定義されているアイデンティティ・ストア・インスタンスをすべて置き換えます。

  3. アイデンティティ・ストア・サービスのvirtualizeフラグを有効にします。例7-4を参照してください。

詳細は、第22.3.2項「Java SEアプリケーションでのLDAPアイデンティティ・ストアの構成」を参照してください。

7.4 プログラムによるアイデンティティ・ストアの問合せ

プログラム上でLDAPアイデンティティ・ストアに問い合せるには、OPSSを使用してJPSコンテキストを取得します(これは、ストア・インスタンスを取得するブリッジのように機能します)。続いて、ユーザーおよびロールAPIを使用して、ストアに問い合せます。

例7-5 プログラムによるLDAPアイデンティティ・ストアの問合せ

 try {
         //find the JPS context
         JpsContextFactory ctxFactory = JpsContextFactory.getContextFactory();
         JpsContext ctx = ctxFactory.getContext();
        
         //find the JPS IdentityStore service instance 
         //(assuming the backend is ldap type)
         LdapIdentityStore idstoreService = (LdapIdentityStore)ctx.getServiceInstance(IdentityStoreService.class)

         //get the User/Role API's Idmstore instance
          oracle.security.idm.IdentityStore idmIdentityStore = idstoreService.getIdmStore();
 
        //use the User/Role API to query id store
        //

//alternatively, instead of using IdentityStore, use the 
//IdentityDirectory to access LDAP oracle.igf.ids.IdentityDirectory ids = idstoreService.getIdentityStore(); // ref. chapter "Developing with the Identity Directory API" // on how to use IdentityDirectory } catch (Exception e) { e.printStackTrace() }

アイデンティティ・ストア・サービスの「virtualize」プロパティを有効にする方法を確認するには、例7-4を参照してください。

MBeansの使用方法の詳細は、第E.2項「MBeanを使用したOPSSサービスの構成」を参照してください。

7.5 アイデンティティ・ストア・サービスでのSSLの使用

アイデンティティ・ストアとLDAPサーバー間の接続に対してSSLを有効にできます。この項では、様々なシナリオで接続を構成する方法について説明します。次の表を使用して、使用する正しい手順を決定します。

仮想化フラグが設定される場合 ユーザーとロールのAPIが使用中 アイデンティティ・ディレクトリ・サービスが使用中

virtualize=false (つまり仮想化フラグを設定しない)

第8.2.3項で説明しているように、JSSEパラメータを使用してトラストストアを指定します。

例:

-Djavax.net.ssl.trustStore=trust_store_path_name

第7.5.2項および第7.5.3項で示しているように、adapters.jksファイルを使用します。

virtualize=true (つまり、仮想化フラグを設定)

第7.5.2項および第7.5.3項で示しているように、adapters.jksファイルを使用します。

第7.5.2項および第7.5.3項で示しているように、adapters.jksファイルを使用します。


7.5.1 Oracle WebLogic Serverからアイデンティティ・ストアへの接続

アイデンティティ・ストアへの接続がOracle WebLogic Server上のクライアントから始まる場合、SSLの構成はOracle WebLogic Serverで行います。詳細は、第8.2.3項を参照してください。

7.5.2 複数のLDAPシナリオでの一方向SSL

アイデンティティ・ディレクトリAPIとユーザーおよびロールAPIのどちらも、複数のLDAPアイデンティティ・ストア構成(virtualize = true)で動作できます。

このシナリオでは、アイデンティティ・ストアからLDAPサーバーへの接続に対してSSLを有効にできます。

手順は次のとおりです。

  1. サービスが使用するLDAPサーバー証明書を格納するためのキーストアを作成します。WebLogic管理サーバーとキーストアの両方に対してパスワードを入力する必要があります。

    $MW_HOME/oracle_common/bin/libovdconfig.shスクリプトを使用し、-createKeystoreオプションを指定して、キーストアを作成します。

    libovdconfig.sh -host wls_host -port wls_adminserver_port -userName
    wls_user_name -domainPath full_path_domain_home -createKeystore
    

    説明:

    • hostはOracle WebLogic Serverホストです。

    • portはOracle WebLogic Serverの管理サーバーのポートです。

    • usernameはOracle WebLogic Serverの管理ユーザー名です。

    • domainPathはドメイン・ホームへの完全パスです。

  2. 適切なエクスポート・コマンドを使用して、LDAPディレクトリから証明書をエクスポートします。

  3. この証明書を、ステップ1で作成したキーストアにインポートします。

    keytoolコマンドを使用して、証明書をキーストアにインポートします。adapters.jksという名前のキーストアに対する構文は次のとおりです。

    $JAVA_HOME/bin/keytool -importcert 
    -keystore $DOMAIN_HOME/config/fmwconfig/ovd/default/keystores/adapters.jks 
    -storepass keystore_password_used_in_libovdconfig.sh 
    -alias alias_name 
    -file full_path_to_LDAPCert_file 
    -noprompt
    
  4. Oracle WebLogic Serverを再起動します。

7.5.3 複数のLDAPシナリオでの双方向SSL

複数のLDAPアイデンティティ・ストア構成に双方向SSLを実装するには、次の手順を実行します。

  1. 第7.5.2項の手順を実行します。

  2. 第7.5.2項のステップ1で作成したキーストアで、CAによって署名された新しいキー・ペアを生成します。

  3. この証明書をファイルにエクスポートします。

  4. 証明書をサーバーのキーストアにインポートします。