26 RDBMSセキュリティ・ストアの管理

Oracle WebLogic Serverでは、認可プロバイダ、ロール・マッピング・プロバイダ、資格証明マッピング・プロバイダおよび証明書レジストリ・プロバイダ用のデータ・ストアとして外部のRDBMSを使用するためのオプションが用意されています。このデータ・ストアはRDBMSセキュリティ・ストアと呼ばれますが、クラスタなどのドメイン内の複数のWebLogic Server インスタンスでSAML 2.0サービスを使用する場合には強くお薦めします。

本番環境のSAML 2.0セキュリティ・プロバイダは、RDBMSセキュリティ・ストアを必要とします。これは、それらが管理するデータを、データを共有するすべてのWebLogic Serverインスタンスの間で同期できるようにするためです。(開発環境のみの場合は、SAML 2.0セキュリティ・プロバイダでセキュリティ・ストアとしてLDAPを使用します)。

ノート:

RDBMSセキュリティ・ストアを使用するには、まず、ドメインを作成して外部RDBMSサーバーを構成します。ドメインを起動する前に、RDBMSセキュリティ・ストアで必要になる表をデータストア内に作成します。WebLogic Serverインストール・ディレクトリには、サポート対象のデータベースごとに、これらの表を作成する一連のSQLスクリプトが含まれています。

この章は次のトピックで構成されます。

WebLogic ServerのRDBMSセキュリティ・ストアとしての使用がサポートされている特定のデータベース・システムの最新の詳細は、Oracle Fusion Middlewareでサポートされるシステム構成を参照してください。

RDBMSセキュリティ・ストアを使用するセキュリティ・プロバイダ

一部のWebLogicセキュリティ・プロバイダでは、ドメイン内にRDBMSセキュリティ・ストアが構成されている場合、そのストアを使用します。

このようなセキュリティ・プロバイダのリストを次に示します。

  • XACML認可プロバイダ

  • XACMLロール・マッピング・プロバイダ

  • SAML 1.1の以下のプロバイダ

    • SAML IDアサーション・プロバイダV2

    • SAML資格証明マッピング・プロバイダV2

  • SAML 2.0の以下のプロバイダ

    • SAML 2.0 IDアサーション・プロバイダ

    • SAML 2.0資格証明マッピング・プロバイダ

  • WebLogic資格証明マッピング・プロバイダ

  • PKI資格証明マッピング・プロバイダ

  • 証明書レジストリ

ドメイン内にRDBMSセキュリティ・ストアが構成されている場合、セキュリティ・レルム内に作成されている上記のいずれかのセキュリティ・プロバイダのインスタンスは、自動的にRDBMSセキュリティ・ストアのみをデータストアとして使用し、組込みLDAPサーバーは使用しません。ドメイン内に構成されている上記のリスト以外のWebLogicセキュリティ・プロバイダは、それぞれのデフォルト・ストアを使用します。たとえば、デフォルト認証プロバイダは組込みLDAPサーバーを使用します。

RDBMSセキュリティ・ストアはドメインの作成時およびドメインの起動前に構成することをお薦めします。WebLogic ServerにはRDBMSSecurityStoreMBeanが用意されています。これはWebLogic Scripting Tool (WLST)からRDBMSセキュリティ・ストアを構成するためのインタフェースです。(構成ウィザードには、RDBMSセキュリティ・ストアを構成する機能はありません。)

RDBMSセキュリティ・ストアの構成

RDBMSセキュリティ・ストアを作成して構成するには、RDBMSセキュリティ・ストアを使用したドメインの作成、セキュリティ・データストアでのRDBMS表の作成、RDBMSセキュリティ・ストアのJMSトピックの構成など、いくつかのタスクを実行する必要があります。

次の各トピックでは、RDBMSセキュリティ・ストアを構成するために実行する必要があるタスクについて説明します。

RDBMSセキュリティ・ストアを使用するドメインの作成

ドメインでRDBMSセキュリティ・ストアを使用するには、ドメインの作成時にRDBMSセキュリティ・ストアを構成することをお薦めします。配置済の既存のドメインを、RDBMSをセキュリティ・ストアとして使用するよう変更することはお薦めできません。データベース接続が正しく構成されていない場合は、ドメインにアクセス権を付与するために必要なポリシーが使用不可になり、使用できないドメインとなります。

RDBMSセキュリティ・ストアを使用するドメインを作成するための高レベルのプロセスは次のとおりです:

  1. 次のいずれかの方法で、RDBMSセキュリティ・ストアを使用する新しいドメインを作成します:

    • WLSTオフラインを使用してドメインを作成し、単一のスクリプトを使用してRDBMSセキュリティ・ストアを構成します。

    • 構成ウィザードまたはWLSTを使用して、新しいWebLogicドメインを作成します。次に、ドメインを起動する前に、WLSTオフラインを使用してRDBMSセキュリティ・ストアを構成します。構成ウィザードには、RDBMSセキュリティ・ストアを構成する機能はありません。『Oracle WebLogic ServerおよびCoherenceのインストールと構成』WebLogicドメインの作成と構成に関する項を参照してください。

    WLSTオフラインを使用してRDBMSセキュリティ・ストアを構成するためのサンプル・スクリプトは、「WLSTオフラインを使用したRDBMSセキュリティ・ストアの作成」を参照してください。

  2. ドメインを開始する前に、RDBMS表をデータストアに作成します。WebLogic Serverのインストール・ディレクトリには、サポートされている各RDBMSシステム用のスクリプト・セットが格納されています。通常、このステップはデータベース管理者が実行します。「セキュリティ・データ・ストア内でのRDBMS表の作成」を参照してください。

  3. Javaユーティリティdbpingを使用して、データベース接続をテストします。「データベース接続のテスト」を参照してください。

  4. ドメインを起動します。

    ノート:

    RDBMS表が作成されていないか、データベース接続を使用できない場合、ドメインは起動しません。
  5. ドメインを起動した後、WebLogic Server管理コンソールを使用してRDBMS構成を管理できます。Oracle WebLogic Server管理コンソール・オンライン・ヘルプRDBMSセキュリティ・ストアの構成に関する項を参照してください。

  6. 2つ以上のWebLogic Serverインスタンスまたはクラスタを含むドメインでRDBMSセキュリティ・ストアが構成されている場合、Oracleでは、そのドメインのJMS通知を有効にし、RDBMSセキュリティ・ストアで使用できるJMSトピックを構成することを強くお薦めします。「RDBMSセキュリティ・ストアのJMSトピックの構成」を参照してください。

  7. SAMLを使用してシングル・サインオンを構成する場合は、「SAML 2.0サービスの構成」を参照してください。本番環境のSAML 2.0セキュリティ・プロバイダは、RDBMSセキュリティ・ストアを必要とします。これは、それらが管理するデータを、データを共有するすべてのWebLogic Serverインスタンスの間で同期できるようにするためです。

WLSTオフラインを使用したRDBMSセキュリティ・ストアの作成

WLSTオフラインを使用して、次のいずれかの方法でRDBMSセキュリティ・ストアを作成できます:

  • 単一のWLSTオフライン・スクリプトを使用してドメインを作成し、RDBMSセキュリティ・ストアを構成します。

  • 構成ウィザードを使用してドメインを作成し、WLSTオフラインを使用してRDBMSセキュリティ・ストアを構成します。

RDBMSセキュリティ・ストアを構成するには、WLSTスクリプトで次のデータベース接続プロパティを指定する必要があります:

  • RDBMSのタイプ

    RDBMSセキュリティ・ストアの格納がサポートされているデータベースの詳細は、Oracle Fusion Middlewareでサポートされるシステム構成を参照してください。

  • RDBMSに接続するためのJDBCドライバとクラス名(oracle.jdbc.OracleDriverなど)

  • RDBMSの名前、ホスト、ポート、およびURL

  • RDBMSシステムにアクセスできるドメイン・ユーザーのユーザー名とパスワード

    ノート:

    この項で提供されるWLSTの例では、わかりやすいように、RDBMSシステム・ユーザーのユーザー名とパスワードの資格証明をクリア・テキストで渡しています。通常はWLSTコマンドにクリア・テキストのパスワードを入力しないでください。特に、クリア・テキストのパスワードが含まれるWLSTスクリプトをディスクに保存することは避けてください。このような状況では、暗号化されたパスワードを渡すメカニズムをかわりに使用する必要があります。

  • RDBMSシステムに渡す必要のある任意の接続プロパティ(オプション)JDBCドライバの接続プロパティ属性で指定するパラメータはカンマ区切りのリストにする必要があります。

ノート:

RDBMSセキュリティ・ストアの作成および構成の操作は、RDBMSSecurityStoreMBeanを使用すると可能になります。RDBMSセキュリティ・ストアは、内部的には、データベースでサポートされているJDBCドライバを使用してデータベースに接続して相互運用します。RDBMSSecurityStoreMBeanで設定された属性はjavax.sql.DataSource実装で設定される属性に変換されます。RDBMSSecurityStoreMBeanで設定できる属性の詳細は、Oracle WebLogic Server MBeanリファレンスRDBMSSecurityStoreMBeanに関する項を参照してください。

次のWLSTオフライン・スクリプトは、ドメインの作成方法とRDBMSセキュリティ・ストアを単一スクリプトで構成する方法を示すサンプルと、構成ウィザードまたはWLSTを使用して新しいドメインを作成した後にOracle、MS-SQLおよびDB2のRDBMSセキュリティ・ストアを構成する方法を示しています:

  • 「RDBMSセキュリティ・ストアを使用したドメインの作成のサンプル」に、ドメイン作成とRDBMSセキュリティ・ストア構成を単一のスクリプトに組み合せたWLSTオフライン・スクリプトのサンプルを示します。このスクリプトは、MS/SQLデータベースをRDBMSセキュリティ・ストアとして構成します。

  • 「Oracle Databaseのサンプル」には、Oracle DatabaseをRDBMSセキュリティ・ストアとして構成するためのWLSTオフライン・スクリプトのサンプルが含まれています。このスクリプトは、構成ウィザードまたはWLSTを使用して新しいドメインを作成した後で、ドメインを起動する前に実行します。

  • 「MS-SQLのサンプル」には、MS-SQLデータベースをRDBMSセキュリティ・ストアとして構成するためのWLSTオフライン・スクリプトのサンプルが含まれています。このスクリプトは、構成ウィザードまたはWLSTを使用して新しいドメインを作成した後で、ドメインを起動する前に実行します。

  • 「DB2のサンプル」には、DB2をRDBMSセキュリティ・ストアとして構成するためのWLSTオフライン・スクリプトのサンプルが含まれています。このスクリプトは、構成ウィザードまたはWLSTを使用して新しいドメインを作成した後で、ドメインを起動する前に実行します。

WLSTスクリプトは、filename.pyなどのように.pyファイル拡張子を使用して保存する必要があります。これらのスクリプトを実行するには、WLSTオフラインの起動時にスクリプトの名前を含めます。たとえば、LinuxでWLSTオフラインを起動するには:

cd ORACLE_HOME/oracle_common/common/bin
./wlst.sh filename.py

この例では、ORACLE_HOMEは、インストール時に指定したOracleホーム・ディレクトリを表します。

『WebLogic Scripting Toolの理解』スクリプトの実行に関する項を参照してください。

RDBMSセキュリティ・ストアを使用したドメインの作成のサンプル

例26-1に、base_domainという名前のドメインを作成し、RDBMSセキュリティ・ストアとしてMS/SQLデータベースを構成するWLSTスクリプトのサンプルを示します。

例26-1 ドメインの作成とRDBMSセキュリティ・ストアとしてのMS-SQLの構成

# Select and load the template to use for creating the domain
selectTemplate('Basic WebLogic Server Domain')
loadTemplates()
cd('/')

# Set the name of the domain as base_domain
set('Name', 'base_domain')

# Set the listen port for the Administration Server
cd('Servers/AdminServer')
set('Name', 'admin')
set('ListenPort',7001)

# Set the user name and password for the WebLogic Server administration user
cd('/')
cd('Security')
cd('base_domain')
cd('User/adminusername')
cmo.setName('adminusername')
cmo.setPassword('adminpassword')

# Create the RDBMS security store
print("configure RDBMS store")
create('base_domain','SecurityConfiguration') 
cd('/SecurityConfiguration/base_domain') 
cd('Realm/myrealm') 

# Specify the database attributes on the RDBMSSecurityStoreMBean 
rdbms.setUsername('DBuser')  
rdbms.setPasswordEncrypted('DBpassword')
rdbms.setConnectionURL('jdbc:weblogic:sqlserver://host.example.com:port) 
rdbms.setDriverName('weblogic.jdbc.sqlserver.SQLServerDriver') 
rdbms.setConnectionProperties('user=DBuser,portNumber=port,databaseName=DbName,serverName=host.example.com') 

# Write the domain 
writeDomain('/home/domains/base_domain')

# Exit WLST offline
exit()
Oracle Databaseのサンプル

例26-2に、Oracle DatabaseをRDBMSセキュリティ・ストアとして構成するためのWLSTスクリプトのサンプルを示します。このスクリプトは、構成ウィザードまたはWLSTを使用して新しいドメインを作成した後で、ドメインを起動する前に実行します。

例26-2 RDBMSセキュリティ・ストア用のOracle Databaseの構成

# Read the domain using the complete path to the domain directory
readDomain(domainDirName)

# Create the RDBMS security store
create('DomainName','SecurityConfiguration') 
cd('/SecurityConfiguration/DomainName') 
cd('Realm/myrealm') 
rdbms = create('myRDBMSSecurityStore','RDBMSSecurityStore') 

# Specify the database attributes on the RDBMSSecurityStoreMBean
rdbms.setUsername('DBuser') 
rdbms.setPasswordEncrypted('DBpassword') 
rdbms.setConnectionURL('jdbc:oracle:thin:@hostname.domain:port:sid') 
rdbms.setDriverName('oracle.jdbc.OracleDriver') 
rdbms.setConnectionProperties('user=DBuser,portNumber=port,SID=sid,serverName=hostname.domain')

# Update the domain
updateDomain()

# Exit WLST offline
exit()
MS-SQLのサンプル

例26-3に、MS-SQLデータベースをRDBMSセキュリティ・ストアとして構成するためのWLSTスクリプトのサンプルを示します。このスクリプトは、構成ウィザードまたはWLSTを使用して新しいドメインを作成した後で、ドメインを起動する前に実行します。

例26-3 RDBMSセキュリティ・ストア用のMS-SQLの構成

# Read the domain using the complete path to the domain directory
readDomain(DomainDirName)

# Create the RDBMS security store
create('DomainName','SecurityConfiguration') 
cd('/SecurityConfiguration/DomainName')
cd('Realm/myrealm') 
rdbms = create('myRDBMSSecurityStore','RDBMSSecurityStore') 

# Specify the database attributes on the RDBMSSecurityStoreMBean
rdbms.setUsername('DBuser') 
rdbms.setPasswordEncrypted('DBpassword') 
rdbms.setConnectionURL('jdbc:weblogic:sqlserver://ServerName:port') 
rdbms.setDriverName('weblogic.jdbc.sqlserver.SQLServerDriver') 
rdbms.setConnectionProperties('user=DBuser,portNumber=port,databaseName=DBname,serverName=ServerName') 

# Update the domain
updateDomain()

# Exit WLST offline
exit()
DB2のサンプル

例26-4に、DB2をRDBMSセキュリティ・ストアとして構成するためのWLSTスクリプトのサンプルを示します。このスクリプトは、構成ウィザードまたはWLSTを使用して新しいドメインを作成した後で、ドメインを起動する前に実行します。

ノート:

DB2を選択する場合は、WebLogic Serverで提供されているDB2用のWebLogicタイプ4 JDBCドライバを選択するオプションがあります。ただし、このJDBCドライバを使用する場合は、追加のプロパティBatchPerformanceWorkaroundを指定してtrueに設定する必要があります。この構成でBatchPerformanceWorkaroundtrueに設定しない場合、WebLogic Serverは起動に失敗し、SecurityServiceExceptionメッセージが生成されます。

例26-4 RDBMSセキュリティ・ストア用のDB2の構成

# Read the domain using the complete path to the domain directory
readDomain(domainDirName)

Create the RDBMS security store
create('DomainName','SecurityConfiguration') 
cd('/SecurityConfiguration/DomainName') 
cd('Realm/myrealm') 
rdbms = create('myRDBMSSecurityStore','RDBMSSecurityStore') 

# Specify the database attributes on the RDBMSSecurityStoreMBean
rdbms.setUsername('DBuser') 
rdbms.setPasswordEncrypted('DBpassword') 
rdbms.setConnectionURL('jdbc:weblogic:db2://ServerName:port') 
rdbms.setDriverName('weblogic.jdbc.db2.DB2Driver') 
rdbms.setConnectionProperties('user=DBuser,portNumber=port,databaseName=DBname,AlternateID=DBname-alt,serverName=ServerName,batchPerformanceWorkaround=true') 

# Update the domain
updateDomain()

# Exit WLST offline
exit()

DB2用のWebLogic Type 4 JDBCドライバの接続プロパティの指定の詳細は、『Oracle WebLogic Server JDBCアプリケーションの開発』DataDirectドキュメントの使用に関する項を参照してください。

データベース接続のテスト

RDBMSセキュリティ・ストアを構成するときは、接続の適切な設定を確認するためにデータベース接続をテストするように強くお薦めします。データベース接続に問題があると、ドメインへのアクセスを制御するセキュリティ・プロバイダが必要なセキュリティ・ポリシーを取得できない場合に、ドメインを起動できなくなる可能性があります。

データベース接続は、WebLogic Server Javaユーティリティdbpingを使用してテストできます。dbpingコマンドライン・ユーティリティを使用すると、JDBCドライバを使用したRDBMSとクライアント・マシンの間の接続をテストできます。『Oracle WebLogic Serverコマンド・リファレンス』dbpingに関する項を参照してください。

ノート:

dbpingユーティリティを実行する前に、必ずPATH環境変数にJDKを含めてから、setDomainEnvスクリプトを実行して環境を設定してください。

次のサンプルに、Oracle Databaseに接続されたOracle Thinドライバを使用してdbpingユーティリティを実行する方法を示します。サンプルには、dbpingユーティリティを実行する前にLinuxホストに環境を設定するステップが含まれています。

$ bash
$ export PATH=$JAVA_HOME/bin:$PATH
$ cd myDomain/bin
$ . ./setDomainEnv.sh
$ java utils.dbping ORACLE_THIN DBuser DBpassword myhost.example.com:port:DemoDB

**** Success!!! ****

You can connect to the database in your app using:

  java.util.Properties props = new java.util.Properties();
  props.put("user", "DBuser");
  props.put("password", "DBpassword");
  java.sql.Driver d =
    Class.forName("oracle.jdbc.OracleDriver").newInstance();
  java.sql.Connection conn =
    Driver.connect("DBuser", props);

セキュリティ・データ・ストア内でのRDBMS表の作成

ドメインを起動する前に、データベース管理者はRDBMSセキュリティ・ストアで使用されるデータベース内にRDBMS表を作成するSQLスクリプトを実行する必要があります。次のWebLogicサーバー・インストール・ディレクトリには、サポートされるRDBMSシステムごとに、これらの表を作成するための一連のSQLスクリプトが用意されています。表を削除するためのSQLスクリプトも提供されています。

WL_HOME/server/lib 

RDBMSセキュリティ・ストアとして機能するデータベース用の該当するSQLスクリプトを実行するときは、必ず、ドメイン作成時にRDBMSに対して指定したものと同じ接続プロパティ(アクセスするユーザーの資格証明、データベースURLなど)を指定してください。

表26-1に、各SQLスクリプトの名前を示します。サポートされている特定のデータベース・バージョンについては、Oracle Fusion Middlewareでサポートされるシステム構成を参照してください。

表26-1 RDBMSデータ・ストア表を作成および削除するためのSQLスクリプト

RDBMSシステム データ・ストア表の作成 データ・ストア表の削除

Oracle

rdbms_security_store_oracle.sql

rdbms_security_store_oracle_remove.sql

MS-SQL

rdbms_security_store_sqlserver.sql

rdbms_security_store_sqlserver_remove.sql

DB2

rdbms_security_store_db2.sql

rdbms_security_store_db2_remove.sql

Derby

rdbms_security_store_derby.sql

rdbms_security_store_derby_remove.sql

RDBMSセキュリティ・ストアのJMSトピックの構成

複数のWebLogic Serverインスタンスを含むドメイン、またはクラスタ内にRDBMSセキュリティ・ストアを構成する場合は、以下のタスクを実行することを強くお薦めします。

  1. そのドメインでJMS通知を有効にします。
  2. RDBMSセキュリティ・ストアで使用できるJMSトピックを構成します。

JMS通知を使用すると、RDBMSセキュリティ・ストアに格納され、レルム内のセキュリティ・プロバイダによって管理されるセキュリティ・データを、ドメイン内のすべてのサーバー・インスタンスにわたって同期化することができます。

ノート:

RDBMSセキュリティ・ストアが複数サーバーのドメインやクラスタリングされたドメインで構成されているときに、そのストアで使用できるJMSトピックを構成しない場合は、セキュリティ・ポリシーの作成やセキュリティ構成の更新を慎重に行う必要があります。JMSトピックを構成しない場合、セキュリティの更新内容に従ってすべてのサーバー・インスタンスが一貫して機能するにはドメインの再起動が必要になる可能性があります。

JMS通知を有効にするには、RDBMSセキュリティ・ストアが構成されているドメインを起動して、以下のいずれかの方法でRDBMSSecurityStoreMBeanの属性を構成します。

  • WebLogic Scripting Tool

  • WebLogic Server管理コンソールの「セキュリティ・レルム」「RealmName」「RDBMSセキュリティ・ストア」ページ

JMS通知を有効にするために設定する必要があるRDBMSSecurityStoreMBeanの属性について表26-2で説明します。

表26-2 JMSトピックを構成するためのRDBMSSecurityStoreMBeanの属性

属性名 説明

JMSTopic

通知のパブリッシュ先のJMSトピック、および他のJVMから送信される通知のサブスクライブ先のJMSトピック。ターゲットとなるJMSトピックはあらかじめデプロイされている必要があります。

JMSTopicConnectionFactory

JMSトピックを検索するために使用するjavax.jms.TopicConnectionFactoryインスタンスのJNDI名。

『Oracle WebLogic Server JMSリソースの管理』接続ファクトリの構成に関するトピックでは、javax.jms.TopicConnectionFactoryインスタンスである、WebLogic JMS接続ファクトリweblogic.jms.ConnectionFactoryについて説明しています。接続ファクトリの構成については、このトピックを参照してください。

NotificationProperties

JNDI InitialContextの作成時に渡すキーと値のプロパティのカンマ区切りのリスト。形式はxxKey=xxValue, xxKey=xxValue。以下のプロパティを指定する必要があります。

  • java.naming.provider.url — 使用するサービス・プロバイダの構成情報を指定するためのプロパティ。このプロパティの値にはURL文字列を含める必要があります。たとえば:

    iiops://localhost:7002

  • java.naming.factory.initial — 使用する初期コンテキスト・ファクトリを指定するためのプロパティ。このプロパティの値は、初期コンテキストを作成するファクトリの完全修飾クラス名にします。たとえば:

    weblogic.jndi.WLInitialContextFactory

JNDIUserName

JNDIにアクセスするセキュリティ・レルム内の有効なユーザーのID。

JNDIPassword

JNDIUserName属性で指定したユーザー名のパスワード。

JMSExceptionReconnectAttempts

JMSシステムが深刻な接続エラーを検出した場合に試行される再接続の回数。デフォルトは0で、エラーはログに記録されるが再接続は試行されません。

次のトピックを参照してください。

障害発生時のJMS接続リカバリの構成

通常、複数ノード・ドメインの各WebLogic Serverインスタンスに含まれているWebLogicセキュリティ・サービスは起動時にJMSサーバーに接続します。RDBMSセキュリティ・ストアを使用するセキュリティ・プロバイダがセキュリティ・データを変更した場合は、JMSを介してすべてのWebLogic Serverインスタンスに通知され、各WebLogic ServerインスタンスのWebLogicセキュリティ・サービスで使用されているローカル・キャッシュは、その変更を反映するために同期化されます。

正常に起動されたWebLogic ServerインスタンスでJMS接続が失敗すると、そのサーバー・インスタンスに関連付けられたWebLogicセキュリティ・サービスはJMS接続のリカバリ・プロセスを開始します。リカバリ・プロセスでは次の再接続の試行までに1秒間スリープします。JMSExceptionReconnectAttemptsプロパティで構成された再接続の試行回数に達した後もJMS接続エラーが続く場合、リカバリ・プロセスは停止します。再接続はそれ以上試行されません。つまり、あるWebLogic Serverインスタンスでセキュリティ・データが変更されても、他のWebLogic ServerインスタンスのWebLogicセキュリティ・サービスで管理されているローカル・キャッシュはその変更を反映するために同期化されません。ただし、他の手段(サーバーの再起動など)でJMS接続が正常に回復されると、それらのキャッシュは同期化されます。

WebLogic Serverインスタンスの起動時にJMS接続が正常に開始されない場合は、再接続を試行するタイマー・タスクが自動的に開始されます。接続が正常に行われると、タイマー・タスクは取り消されます。このタイマー・タスクに関する2つのシステム・プロパティを構成できます。

  • com.bea.common.security.jms.initialConnectionRecoverInterval

    接続リカバリ・タスクを実行するまでの遅延を指定します(ミリ秒単位)。デフォルト値は1000で、接続リカバリ・プロセスは1秒間遅延した後に実行されます。

  • com.bea.common.security.jms.initialConnectionRecoverAttempts

    タイマー・タスクを取り消すまでに試行される再接続の最大回数を指定します。デフォルト値は3600で、再接続が3600回試行されるとタイマー・タスクは取り消されます。それ以上の再接続は試行されません。

上記のシステム・プロパティで指定した値を掛け合わせると、接続ポーリングの最大期間を計算できます。たとえば、2つのプロパティのデフォルト値を掛け合わせると(1000ミリ秒の遅延に3600回の再接続試行回数を掛ける)、最大ポーリング期間は1時間となります。

RDBMSセキュリティ・ストアを使用するドメインのアップグレード

RDBMSセキュリティ・ストアを使用するドメインをアップグレードするには、RDBMSセキュリティ・ストアを構成した新しいドメインを作成することをお薦めします。新しいドメインを作成した後で、古いドメインのセキュリティ・レルムからセキュリティ・データをエクスポートして、新しいドメインのセキュリティ・レルムにインポートする必要があります。

ノート:

新しいドメインの作成およびRDBMSセキュリティ・ストアの構成の詳細は、「RDBMSセキュリティ・ストアを使用するドメインの作成」を参照してください。

RDBMSセキュリティ・ストアを使用するドメインのセキュリティ・レルムにセキュリティ・データをインポートすると、RDBMSセキュリティ・ストアを使用するセキュリティ・プロバイダのデータは、自動的にそのデータ・ストアにロードされます。RDBMSセキュリティ・ストアを使用しないセキュリティ・プロバイダのデータは、それらのプロバイダが通常デフォルトで使用するストアに自動的にインポートされます。

セキュリティ・レルムから別のセキュリティ・レルムに個々のセキュリティ・プロバイダを選択的に移行することもできます。ただし、RDBMSセキュリティ・ストアを使用するドメインにセキュリティ・データを移行する場合は、セキュリティ・レルムのデータを1回の操作で移行することをお薦めします。

セキュリティ・レルムの移行の詳細は、以下のトピックを参照してください。