この付録では、OPSSのシステム・プロパティ(サーバー起動時にスイッチ-Dを使用して設定)および構成プロパティ(構成ファイルjps-config.xmlで要素<property>および<extendedProperty>を使用して設定)について次の各項で説明します。
サーバー・プロパティをプログラムによって管理するには、OPSS MBeansを使用します。詳細と例は、第E.2.3項「OPSS Mbeansを使用したプログラミング」を参照してください。
サーバーを再起動せずにシステム・プロパティを設定することはできません。システム・プロパティを設定するには、管理者はsetDomainEnv.shシェル・スクリプトを編集し、そのスクリプト内の環境変数EXTRA_JAVA_PROPERTIESにプロパティを追加する必要があります。
表F-1は、OPSSで使用可能なJavaシステム・プロパティを示しています。
表F-1 OPSSで使用されるJavaシステム・プロパティ
| 名前 | 説明 | 
|---|---|
| 
 | アイデンティティ・ストア・サービスで公開されるこのプロパティは、 XMLファイルベースのアイデンティティ・ストアの場合: このプロパティが LDAPベースのアイデンティティ・ストアの場合:  デフォルト:  | 
| 
 | OPSSポリシー・ファイルの場所を指定します。 | 
| 
 | Trueに設定すると、サーバーが開発モードで実行されている場合のアプリケーションのデプロイ時または再デプロイ時に、資格証明の移行によって既存の資格証明が上書きされるように指定します。詳細は、第15.4.5.3項「資格証明を上書きにより移行するには」を参照してください。 | 
| 
 | サーバーのロギング出力を増やします。詳細は、第I.1.2.1項「jps.auth.debug」を参照してください。 | 
| 
 | サーバーのロギング出力を増やします。詳細は、第I.1.2.2項「jps.auth.debug.verbose」を参照してください。 | 
| 
 | システムでドメイン・ファイル -Djps.change.notifier.file.delay=600000 本番環境では、約10分(600000ミリ秒)の頻度を推奨します。開発環境では、約3分(180000ミリ秒)の頻度を推奨します。 | 
| 
 | Java 2ポリシーを有効にします。 値: ブール デフォルト:  | 
| 
 | ポリシー・ストアが読取り専用かどうかを指定します。 値: ブール デフォルト:  | 
| 
 | アプリケーション・ロールがリクエストごとに再計算されるかどうかを指定します。このフラグをtrueに設定すると、サーバーのパフォーマンスに大きな影響があります。 値: ブール デフォルト: false | 
| 
 | OPSSのコンテキスト・インスタンスを作成するためのファクトリ・クラスを指定します。 値: 文字列 デフォルト:  | 
| 
 | ドメイン構成ファイル 値: 文字列 | 
| 
 | OPSSの構成インスタンスを作成するためのファクトリ・クラスを指定します。 値: 文字列 デフォルト:  | 
この項では、要素<property>または<extendedProperty>を使用してファイルjps-config.xmlに設定できるプロパティについて次の各項で説明します。
表F-2は、LDAPベースまたはファイルベースのストア・インスタンスの場所を指定するプロパティを示しています。
表F-2 サービス・インスタンスのプロパティ
表F-3は、ファイルベースおよびLDAPベースのアイデンティティ・ストア・インスタンスのプロパティを示しています。
表F-3 アイデンティティ・ストアのプロパティ
表F-4は、サービス・インスタンスで指定できるLDAPベースのストアのプロパティを示しています。LDAPベースのアイデンティティ・ストアのサービス・インスタンスの場合は、ユーザーおよびロールAPIがJNDI接続ファクトリ使用時に必ず接続プール・プロパティを選択するようにするために、アイデンティティ・ストアのサービス・インスタンスに次のプロパティを含める必要があります。
<property name="INITIAL_CONTEXT_FACTORY" value="com.sun.jndi.ldap.LdapCtxFactory"/>
表F-4 LDAPプロパティ
例:
<jpsConfig ... >
   ...
   <!-- These are various JPS common properties used for LDAP operations -->
   <property name="oracle.security.jps.farm.name" value="cn=OracleFarmContainer"/>
   <property name="oracle.security.jps.ldap.root.name"
             value="cn=OracleJpsContainer"/>
   <property name="oracle.security.jps.ldap.max.retry" value="5"/>
   ...
</jpsConfig>
表F-5に、LDAPアイデンティティ・ストアのみのプロパティを示します。ファイルベースとLDAPベース両方のアイデンティティ・ストアに適用されるプロパティのリストは、「アイデンティティ・ストアのプロパティ」を参照してください。
表F-5 LDAPアイデンティティ・ストアのプロパティ
| 名前 | プロパティ/拡張プロパティ | 説明 | 
|---|---|---|
| 
 | 拡張プロパティ | ロール(グループ)作成のためのLDAPディレクトリのベースDNを指定します。 値: 文字列 例:  | 
| 
 | 拡張プロパティ | ロール(グループ)の検索に使用されるオブジェクト・クラスの完全修飾名を指定します。 値: 文字列 | 
| 
 | 拡張プロパティ | ロール(グループ)オブジェクト作成時に指定する必要がある属性を指定します。 値: 文字列 | 
| 
 | 拡張プロパティ | ロールのメンバーの識別名(DN)を指定する静的LDAPロール・オブジェクトの属性を指定します。 値: 文字列 例: 
 
 | 
| 
 | 拡張プロパティ | ロール(グループ)を表すのに使用される1つ以上のスキーマ・オブジェクト・クラスの完全修飾名を指定します。 値: 文字列 | 
| 
 | 拡張プロパティ | ロール(グループ)検索のためのLDAPディレクトリのベースDNを指定します。 値: 文字列 例:  | 
| 
 | 拡張プロパティ | ロール(グループ)作成用のLDAPディレクトリのベースDNを指定します。 値: 文字列 例:  | 
| 
 | 拡張プロパティ | ロール(グループ)検索のためのLDAPディレクトリのベースDNを指定します。 値: 文字列 例:  | 
| 
 | プロパティ | ロール(グループ)の名前を一意に識別するLDAP属性を指定します。 値: 文字列 例:  | 
| 
 | プロパティ | 次の例に示すように、アイデンティティ・ストア・サービスに対する検索フィルタの最大文字数を指定します。 <property name="max.search.filter.length" value="500"/> 値: 正の整数 | 
| 
 | プロパティ | リポジトリ問合せ時に使用される検索のタイプを指定します。 値: SIMPLE、PAGED、VIRTUAL_LIST_VIEW これらの値の説明は、ユーザーおよびロールAPIのjavadocを参照してください。 | 
| 
 | プロパティ | 
 パスワードが資格証明ストアに格納されている場合は、かわりに 値: 文字列 | 
| 
 | プロパティ | 「 値: 文字列 例: orcladmin | 
| 
 | プロパティ | LDAPユーザー名の別名を指定します。パスワードのキーは、 パスワードが 値: 文字列 例: JPS | 
| 
 | プロパティ | 「 値: 文字列 例: ldap.credentials | 
| 
 | 拡張プロパティ | ユーザー作成用のLDAPディレクトリのベースDNを指定します。 値: 文字列 例: cn=users,dc=us,dc=abc,dc=com(単一DN) | 
| 
 | 拡張プロパティ | ユーザー検索に使用されるオブジェクト・クラスの完全修飾名を指定します。 値: 文字列 | 
| 
 | プロパティ | ユーザーのログインIDを指定します。 値: 文字列 | 
| 
 | 拡張プロパティ | ユーザー・オブジェクトの作成時に指定する必要がある属性を指定します。 値: 文字列 | 
| 
 | 拡張プロパティ | ユーザーを表すのに使用される1つ以上のスキーマ・オブジェクト・クラスの完全修飾名を指定します。 値: 文字列 | 
| 
 | 拡張プロパティ | ユーザー検索用のLDAPディレクトリのベースDNを指定します。 値: 文字列 例:  | 
| 
 | プロパティ | ユーザー名を一意に識別するLDAP属性を指定します。 値: 文字列 | 
表F-6に、匿名ユーザー、匿名ロールおよび認証ロールのプロパティを示します。これらのプロパティの中には、匿名サービスやアイデンティティ・ストアのログイン・モジュールの構成に使用されるものがあります。
表F-6 匿名ロールと認証ロールのプロパティ
表F-7に、ポリシー・プロバイダのフレームワークのプロパティを示します。
表F-7 ポリシー・プロバイダのフレームワークのプロパティ
| 名前 | プロパティ/拡張プロパティ | 説明 | 
|---|---|---|
| 
 | プロパティ | 
 値: 文字列 | 
| 
 | プロパティ | ロールのメンバーの識別名(DN)を指定する静的LDAPロール・オブジェクトの属性を指定します。 値: 文字列 例:  | 
| 
 | プロパティ | ロール名を一意に識別するLDAP属性の名前を指定します。 値: 文字列 例:  | 
| 
 | プロパティ | ロールを表すLDAPスキーマ・オブジェクト・クラスを指定します。複数のクラスを指定する場合は、各クラスを空白で区切ります。 Sun Java System Directory Serverのデフォルトは 値: 文字列 例:  | 
| 
 | プロパティ | ロールが含まれているLDAPディレクトリに、空白で区切られた識別名(DN)のリストを指定します。 値: 文字列 例:  | 
| 
 | プロパティ | LDAPディレクトリ・ツリーでロールを検索するときの深さを指定します。 値:  | 
| 
 | プロパティ | ポリシー・ストアのタイプを示します。 値: 
 
 
 
 
 
 
 | 
次の例は、Oracle Internet Directoryを使用したポリシー・ストアのサービス・プロバイダの構成とそのプロバイダのインスタンス、およびjpscontextでの使用を示しています。
<jpsConfig ... >
   ...
   <serviceProviders>
      <serviceProvider type="POLICY_STORE" name="policystore.ldap.provider"
                    class= "oracle.security.jps.internal.policystore.ldap.LdapPolicyStoreProvider">
         <description>LDAP-based PolicyStore</description>
         <property name="policystore.type" value="OID"/>
         <property name="connection.pool.max.size" value="30"/>
         <property name="connection.pool.provider.type" value="IDM"/>
      </serviceProvider>
   </serviceProviders>
   ...
   <serviceInstances>
      <serviceInstance name="policystore.oid" provider="policystore.ldap.provider">
         <property name="max.search.filter.length" value="4096"/>
         <property name="security.principal" value="cn=orcladmin"/>
         <property name="security.credential" value="password"/>
         <property name="ldap.url" value="ldap://xyz.us.oracle.com:389"/>
         <property name="policystore.jpsbase" value="cn=jps,cn=oraclecontext"/>
         <property name="policystore.role.objectclass" value="orclrole"/>
         <property name="policystore.role.searchbase" value="cn=roles"/>
         <property name="policystore.role.searchscope" value="subtree"/>
         <property name="policystore.role.nameattr" value="cn"/>
         <property name="policystore.role.memberattr" value="uniquemember"/>
         <property name="policystore.role.roleheirarchyattr" value="assignedRoles"/>
      </serviceInstance>
   </serviceInstances>
   ...
   <jpsContexts default="default">
      <jpsContext name="default">
         <serviceInstanceRef ref="policystore.oid"/>
      </jpsContext>
   </jpsContexts>
</jpsConfig>
表F-8は、キーストア・サービスを構成するプロパティを示しています。暗号化と署名を使用するには、まずキーストアにアクセスするためのパスワードを入力し、キーストアの秘密鍵にアクセスして、その秘密鍵を取得するための別名とパスワードを指定する必要があります。
表F-8 キーストアのプロパティ
| 名前 | プロパティ/拡張プロパティ | 説明 | 
|---|---|---|
| 
 | プロパティ | 暗号化用に、使用可能なキーの別名を指定します。 値: 文字列 例:  | 
| 
 | プロパティ | 暗号化用に、使用可能なキーのパスワードを指定します。 値: 文字列 例:  | 
| 
 | プロパティ | キーストアにアクセスするためのパスワードを指定します。 値: 文字列 例:  | 
| 
 | プロパティ | キーストア・ファイルのパスを指定します。 値: 文字列 例:  | 
| 
 | プロパティ | 署名用に、使用可能なキーの別名を指定します。 値: 文字列 例:  | 
| 
 | プロパティ | 署名用に、使用可能なキーのパスワードを指定します。 値: 文字列 例:  | 
| 
 | プロパティ | JKSやOracleウォレットなど、キーストアのタイプを指定します。 値: 文字列 例:  | 
例
<serviceInstance
        location="${oracle.instance}/config/JpsDataStore/JpsSystemStore/default-keystore.jks"
        provider="keystore.provider" name="keystore">
   <description>Default JKS Keystore Service</description>
   <property value="JKS" name="keystore.type"/>
   <property value="oracle.wsm.security" name="keystore.csf.map"/>
   <property value="keystore-csf-key" name="keystore.pass.csf.key"/>
   <property value="sign-csf-key" name="keystore.sig.csf.key"/>
   <property value="enc-csf-key" name="keystore.enc.csf.key"/>
</serviceInstance>