Oracle® Fusion Middleware Oracle Platform Security Servicesによるアプリケーションの保護 11gリリース1 (11.1.1) E64849-03 |
|
前 |
次 |
この付録では、OPSSのシステム・プロパティ(サーバー起動時にスイッチ-D
を使用して設定)および構成プロパティ(構成ファイルjps-config.xml
で要素<property>
および<extendedProperty>
を使用して設定)について次の各項で説明します。
サーバー・プロパティをプログラムによって管理するには、OPSS MBeansを使用します。詳細と例は、第E.2.3項「OPSS Mbeansを使用したプログラミング」を参照してください。
注意: すべてのOPSSの構成変更を有効にするには(手動で、またはJpsConfiguration MBeanを使用して)、サーバーを再起動する必要があります。OPSSのデータ・ドメイン変更は、サーバーを再起動しなくても有効になります。データの変更には、アプリケーション・ポリシーの変更と、資格証明の作成、削除または更新があります。 |
導入または変更したシステム・プロパティは、サーバーを再起動するまで有効になりません。システム・プロパティを設定するには、管理者はsetDomainEnv.sh
シェル・スクリプトを編集し、そのスクリプト内の環境変数EXTRA_JAVA_PROPERTIES
にプロパティを追加する必要があります。
表F-1は、OPSSで使用可能なJavaシステム・プロパティを示しています。
表F-1 OPSSシステム・プロパティ
名前 | 説明 |
---|---|
|
共通のコンポーネント・ホームの場所を指定します。 Java EEアプリケーションおよびJava SEアプリケーションの両方で必須です。 デフォルト値なし |
|
JpsAuth.checkPermissionメソッドがSubject.doAsブロック内で呼び出されたときにパーミッション・チェックが失敗すると、その失敗について通知します。 setting jps.auth.debugまたはjps.auth.debug.verboseだけでは、この場合に失敗の通知を受け取ることはできません。 オプション。 |
|
Javaセキュリティ・ポリシー・ファイルの場所を指定します。 |
|
メモリーに保持されるpermissioncollectionmapエントリの数を制御します。各エントリは、パーミッションのセットに相当します。この設定を有効にするには、プロパティ オプション。 有効な値: 負でない整数。 デフォルト値: |
|
実行時およびデバッグのオーバーヘッドを軽減するJDK APIのAccessController.checkPermissionのコールの委任を有効または無効にします。 オプション。 有効な値: デフォルト値なし |
|
サーバーのロギング出力を制御します。デフォルト値はFALSEです。詳細は、第K.1.2.1項「jps.auth.debug」を参照してください。 オプション。 |
|
サーバーのロギング出力を制御します。デフォルト値はFALSEです。詳細は、第K.1.2.2項「jps.auth.debug.verbose」を参照してください。 オプション。 |
|
サブジェクトの保護ドメインのキャッシュを有効または無効にします。 オプション。 有効な値: デフォルト値: |
|
パーミッション・チェックのトリガー時にサブジェクトの保護ドメインの評価を有効または無効にします。 オプション。 有効な値: デフォルト値: |
|
メモリーに保持されるcombinermapエントリの数を制御します。各エントリは、プリンシパルのセットに相当します。この設定を有効にするには、プロパティ オプション。 有効な値: 負でない整数。 デフォルト値: |
|
WebLogic Serverにデプロイされているアプリケーションのポリシーおよび資格証明の移行を有効または無効にします。WebLogic Serverに対してのみ有効です。 アプリケーション・ファイルのweblogic-application.xmlにある特定のアプリケーション設定に関係なく、サーバーにデプロイされているすべてのアプリケーションについてアプリケーションのポリシーおよび資格証明の移行を無効にするにはTRUEに設定します。 オプション。 有効な値: デフォルト値: |
|
混合モードを有効または無効にします。 混合モードが有効になっている場合、OPSSポリシー・プロバイダでは、java.policy、weblogic.policyおよびjps-config.xmlで構成されたポリシー・ストアから読取りが実行されます。 オプション。 有効な値: デフォルト値: |
|
マップ・タイプの使用を制御します。 マップ・タイプは、一部の構造を特別なキャッシュに保持することで、それらの構造がJava仮想マシンによるガベージ・コレクションの対象となるのを防ぐために使用されます。
関連プロパティ オプション。 有効な値: デフォルト値: |
|
グループ・メンバーシップの変更が有効になるまでのミリ秒数を指定します。 この値はWebLogic認証プロバイダの オプション。 有効な値: 任意の正の整数。 デフォルト値: |
|
メモリーに保持されるsubjectmapエントリの数を制御します。各エントリは、サブジェクトに関するTTL情報に相当します。この設定を有効にするには、プロパティ オプション。 有効な値: 負でない整数。 デフォルト値: |
|
ドメイン構成ファイル 必須。 デフォルト値なし |
|
コード・ソースURLのディレクトリへのパスを指定します。 オプション。 デフォルト値なし |
|
コード・ソースURLの拡張を指定します。 オプション。 デフォルト値なし |
|
指定した部分文字列を含むアプリケーション・ロール名をログに記録します。一致対象の部分文字列を指定しないと、すべてのアプリケーション・ロール名が記録されます。 オプション。 デフォルト値なし 使用例と詳細は、第K.1.2.3項「認可プロセスのデバッグ」を参照してください。 |
oracle.security.jps.log.for.permeffect |
指定した値に従って、付与された権限または拒否された権限をログに記録します。値を指定しないと、(付与または拒否にかかわらず)すべての権限が記録されます。 オプション。 デフォルト値なし 使用例と詳細は、第K.1.2.3項「認可プロセスのデバッグ」を参照してください。 |
oracle.security.jps.log.for.permclassname |
指定した名前に完全一致するパーミッション・クラス名をログに記録します。一致対象の名前を指定しないと、すべてのパーミッション・クラス名が記録されます。 オプション。 デフォルト値なし 使用例と詳細は、第K.1.2.3項「認可プロセスのデバッグ」を参照してください。 |
oracle.security.jps.log.for.permtarget.substring |
指定した部分文字列を含むパーミッション・ターゲット名をログに記録します。一致対象の部分文字列を指定しないと、すべてのパーミッション・ターゲットが記録されます。 オプション。 デフォルト値なし 使用例と詳細は、第K.1.2.3項「認可プロセスのデバッグ」を参照してください。 |
oracle.security.jps.log.for.enterprise.principalname |
指定した名前に完全一致するプリンシパル(エンタープライズ・ユーザーまたはエンタープライズ・ロール)名をログに記録します。一致対象の名前を指定しないと、すべてのプリンシパル名が記録されます。 オプション。 デフォルト値なし 使用例と詳細は、第K.1.2.3項「認可プロセスのデバッグ」を参照してください。 |
wlst.offline.log |
オフラインのWLSTコマンドを実行する際は、ログ・ファイルの場所を指定します。 オプション。 デフォルト値なし 有効な値: <filename>、stdout、strerr、disable。 |
wlst.offline.log.priority |
通知のレベルを指定します。 オプション。 デフォルト値なし 有効な値: OFF、SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST、ALL、デバッグ、情報、警告、エラー、致命的。 |
opss.audit.logDirectory |
オプション。 デフォルト値なし 有効値: 任意の書込みディレクトリ。 |
この項では、様々なインスタンスのプロパティについて説明します。この項の内容は次のとおりです。
表F-2はトラスト・サービスを除くすべてのサービスに共通するOPSSプロパティをまとめたものです。
表F-2 共通プロパティ
名前 | 説明 |
---|---|
次のプロパティは、Java EEアプリケーションとJava SEアプリケーションの両方で有効です。 |
|
|
OIDストアへのアクセスに使用されるパスワードの資格証明のキー。ブートストラップ・ウォレットに格納されます。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 必須。 デフォルト値なし 出荷時の値は |
|
OIDストアへのアクセスに使用されるパスワードの資格証明のマップ。ブートストラップ・ウォレットに格納されます。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 必須。 デフォルト値: |
|
JBDCのURL。 Java SEアプリケーションとJava EEアプリケーションで有効です。 DBストアにのみ適用されます。 必須。 デフォルト値なし 値の例: |
|
OIDセキュリティ・ストアのURLです。形式は Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアにのみ適用します。 必須。 デフォルト値なし |
|
OIDストア内のドメイン・ノードのRDN形式。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 必須。 デフォルト値なし |
|
OIDストア内のルート・ノードのRDN形式。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 必須。 デフォルト値なし |
|
保護ドメインおよびリクエスト・パーミッション・クラスごとにキャッシュで使用できるパーミッション・コレクションの最大数。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値: 5000 |
|
ポリシー・ストアのタイプ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 必須。 デフォルト値なし 値: |
次のプロパティは、Java EEアプリケーションでのみ有効です。 |
|
|
JDBCデータ・ソース・インスタンスのJNDI名。 Java EEアプリケーションでのみ有効です。 DBストアにのみ適用されます。 必須。 デフォルト値なし |
|
再試行回数。 Java EEアプリケーションでのみ有効です。 DBストアにのみ適用されます。 オプション。 デフォルト値: 3 |
|
次に再試行するまでの秒数。 Java EEアプリケーションでのみ有効です。 DBストアにのみ適用されます。 オプション。 デフォルト値: 15 |
|
Weblogic DBユーザーとパスワードの資格証明のマップおよびキーを指定します。 Java EEアプリケーションでのみ有効です。 DBストアにのみ適用されます。 オプション。 デフォルト値なし。 |
|
Weblogic DBユーザーとパスワードのマップおよびキーの場所を指定します。このプロパティは、DBベースのストアに再関連付けする際に自動的に設定されます。 Java EEアプリケーションでのみ有効です。 DBストアにのみ適用されます。 オプション。 有効な値: デフォルト値:
それ以外の |
次のプロパティは、Java SEアプリケーションでのみ有効です。 |
|
|
bootstrapで指定されたユーザー名のかわりに使用する、クリアテキストによるプリンシパル名。開発環境でのみ使用できます。 Java SEアプリケーションでのみ有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値なし |
|
bootstrapで指定されたパスワードのかわりに使用する、クリアテキストによるセキュリティ・プリンシパルのパスワード。使用はお薦めしません。 Java SEアプリケーションでのみ有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値なし |
|
JDBCドライバ。 Java SEアプリケーションでのみ有効です。 DBストアにのみ適用されます。 必須。 デフォルト値なし 値の例: |
次の各項では、ポリシー・ストアのプロパティについて説明します。
OIDベースまたはDBベースのインスタンスで使用できるポリシー・ストア・プロバイダ・クラスは次のとおりです。
oracle.seurity.jps.internal.policystore.ldap.LdapPolicyStoreProvider
表F-3は、ポリシー・ストア・インスタンス固有のプロパティを示しています。このプロパティのリストは、使用可能なアプリケーションの種類に基づく3つのブロックで構成されています。その他のプロパティについては、共通プロパティを参照してください。
表F-3 ポリシー・ストアのプロパティ
名前 | 説明 |
---|---|
|
次のいずれかのチェックに合格しなかった場合に、例外のスローを制御します。
Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値: 有効な値: |
例1
次のコードは、Java EEアプリケーションで使用するOIDベースのポリシー・ストア・インスタンスの構成を示しています。
<propertySet name="props.ldap.1"> <property name="java.naming.ldap.derefAliases" value="never"/> <property name="bootstrap.security.principal.key" value="bootstrap_6aCNhgRM3zF04ToliwecdF6K3oo="/> <property name="oracle.security.jps.farm.name" value="cn=compact1_oid26008"/> <property name="server.type" value="OID"/> <property name="oracle.security.jps.ldap.root.name" value="cn=jpsTestNode"/> <property name="ldap.url" value="ldap://myComp.com:2020"/> </propertySet> <serviceProvider type="POLICY_STORE" name="policystore.provider" class="oracle.security.jps.internal.policystore.ldap.LdapPolicyStoreProvider"/> <serviceInstance name="policystore.ldap" provider="policystore.provider"> <propertySetRef ref="props.ldap.1"/> </serviceInstance>
例2
次のコードは、Java SEアプリケーションで使用するOIDベースのポリシー・ストア・インスタンスの構成を示しています。
<serviceInstance name="policystore.oid" provider="policy.oid"> <property value="OID" name="server.type"/> <property value="bootstrap" name="bootstrap.security.principal.key"/> <property name="ldap.url" value="ldap://myHost.com:1234"/> <property name="oracle.security.jps.ldap.root.name" value="cn=jpsNode"/> <property name="oracle.security.jps.farm.name" value="cn=domain1"/> </serviceInstance>
Java SEアプリケーションの構成の追加サンプルは、第24.5項「構成例」を参照してください。
例3
次の例は、Java EEアプリケーションで使用するDBベースのストア(ランタイム・サービス・プロバイダのインスタンスを含む)の構成を示しています。
<jpsConfig> ... <propertySets> <!-- property set props.db.1 common to all DB services --> <propertySet name="props.db.1"> <property name="jdbc.url" value="jdbc:oracle:thin@xxx.com:1521:orcl"/> <property name="datasource.jndi.name" value="opssds"/> <property value="cn=farm" name="oracle.security.jps.farm.name"/> <property value="cn=jpsroot" name="oracle.security.jps.ldap.root.name"/> <property value="dsrc_lookup_key" name="bootstrap.security.principal.key"/> <property value="credential_map" name="bootstrap.security.principal.map"/> </propertySet> </propertySets> <serviceProviders> <serviceProvider class="oracle.security.jps.internal.policystore.ldap.LdapPolicyStoreProvider" type="POLICY_STORE" name="rdbms.policystore.provider" > <description>RDBMS based PolicyStore provider</description> </serviceProvider> <serviceProvider type="KEY_STORE" name="keystore.provider" class="oracle.security.jps.internal.keystore.KeyStoreProvider"> <description>PKI Based Keystore Provider</description> <property name="provider.property.name" value="owsm"/> </serviceProvider> <serviceProvider name="pdp.service.provider" type="PDP" class="oracle.security.jps.az.internal.runtime.provider.PDPServiceProvider"> <description>OPSS Runtime Service provider</description> </serviceProvider> </serviceProviders> <serviceInstances> <serviceInstance name="policystore.rdbms" provider="rdbms.policystore.provider"> <property value="DB_ORACLE" name="server.type"/> <propertySetRef ref = "props.db.1"/> <property name="session_expiration_sec" value="60"/> <property name="failover.retry.times" value="5"/> </serviceInstance> <serviceInstance name="credstore.rdbms" provider="rdbms.credstore.provider"> <propertySetRef ref = "props.db.1"/> </serviceInstance> <serviceInstance name="keystore.rdbms" provider="rdbms.keystore.provider"> <propertySetRef ref = "props.db.1"/> <property name="server.type" value="DB_ORACLE"/> </serviceInstance> <serviceInstance name="pdp.service" provider="pdp.service.provider"> <property name="oracle.security.jps.runtime.pd.client.sm_name" value="permissionSm"/> <property name="oracle.security.jps.pdp.AuthorizationDecisionCacheEnabled" value="true"/> <property name="oracle.security.jps.pdp.AuthorizationDecisionCacheEvictionCapacity" value="500"/> <property name="oracle.security.jps.pdp.AuthorizationDecisionCacheEvictionPercentage" value="10"/> <property name="failover.retry.times" value="5"/> <property name="failover.retry.interval" value="20"/> <property name="oracle.security.jps.policystore.purge.timeout" value="30000"/> <propertySetRef ref = "props.db.1"/> </serviceInstance> </serviceInstances> <jpsContexts default="default"> <jpsContext name="default"> <serviceInstanceRef ref="pdp.service"/> <serviceInstanceRef ref="policystore.rdbms"/> <serviceInstanceRef ref="credstore.rdbms"/> <serviceInstanceRef ref="keystore.rdbms"/> </jpsContext> </jpsContexts> ... </jpsConfig>
例4
次のコードは、Java SEアプリケーションで使用するDBベースのポリシー・ストア・インスタンスの構成を示しています。
<serviceInstance name="policystore.rdbms" provider="policy.rdbms"> <property name="server.type" value="DB_ORACLE"/> <property name="jdbc.url" value="jdbc:oracle:thin:@xxx.com:1722:orcl"/> <property name="jdbc.driver" value="oracle.jdbc.driver.OracleDriver"/> <property name="bootstrap.security.principal.key" value="bootstrap_DWgpEJgXwhDIoLYVZ2OWd4R8wOA=" /> <property name="oracle.security.jps.ldap.root.name" value="cn=jpsTestNode"/> <property name="oracle.security.jps.farm.name" value="cn=view_steph.atz"/> </serviceInstance>
Java SEアプリケーションの構成の追加サンプルは、第24.5項「構成例」を参照してください。
OIDベースまたはDBベースのインタンスで使用できる実行時ポリシー・ストア・プロバイダ・クラスは次のとおりです。
oracle.seurity.jps.az.internal.runtime.provider.PDPServiceProvider
表F-4は、ポリシー・ストア・インスタンスの実行時のプロパティを示しています。
表F-4 実行時のポリシー・ストアのプロパティ
名前 | 説明 |
---|---|
|
ロール・メンバーのキャッシュ・タイプ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 有効な値:
デフォルト値: |
|
ロール・メンバーのキャッシュで使用する方針のタイプ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 有効な値:
デフォルト値: |
|
メンバー・キャッシュに維持するロール数。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値: 1000。 |
|
ポリシーの遅延ロードを有効または無効にします。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 有効な値: デフォルト値: |
|
パーミッションのキャッシュで使用する方針のタイプ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 有効な値:
デフォルト値: |
|
パーミッション・キャッシュに維持するパーミッション付与数。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値: 1000。 |
|
ポリシー・ストアのリフレッシュを有効または無効にします。このプロパティを設定した場合、 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 有効な値: デフォルト値: |
|
キャッシュのリフレッシュを有効または無効にします。このプロパティを設定した場合、 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 有効な値: デフォルト値: |
|
ポリシー・ストア・キャッシュを消去するまでの時間(ミリ秒)。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値は43200000 (12時間)です。 |
|
ポリシー・ストアで変更がポーリングされる間隔(ミリ秒単位)。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値: 600000 (10分)。 |
|
パーミッションのキャッシュが無効になるまでのユーザーのパーミッションの数。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値: 50。 |
|
ApplicationRoleメンバーシップ・キャッシュの作成方法を制御します。TRUEに設定した場合、キャッシュはサーバーの起動時に作成され、それ以外の場合は、必要に応じて作成されます(遅延ロード)。 ユーザーおよびグループの数がアプリケーション・ロールの数を大きく上回っている場合はTRUEに設定します。それ以外の場合、つまりアプリケーション・ロールの数が非常に多い場合はFALSEに設定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 有効な値: デフォルト値: |
|
一時的な保存に使用するフォルダ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 XMLストア、OIDストアおよびDBストアに適用されます。 オプション。 デフォルト値: システムの一時フォルダ。 |
|
認可キャッシュを有効にするかどうかを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 XMLストア、OIDストアおよびDBストアに適用されます。 オプション。 有効な値: デフォルト値: |
|
削除容量に達したときに削除するセッションの比率。 Java EEアプリケーションとJava SEアプリケーションで有効です。 XMLストア、OIDストアおよびDBストアに適用されます。 オプション。 デフォルト値: 10 |
|
維持する認可とロールのマッピング・セッションの最大数。最大数に達すると、古いセッションが削除され、必要になったときに再確立されます。 Java EEアプリケーションとJava SEアプリケーションで有効です。 XMLストア、OIDストアおよびDBストアに適用されます。 オプション。 デフォルト値: 500 |
|
セッション・データをキャッシュする秒数。 Java EEアプリケーションとJava SEアプリケーションで有効です。 XMLストア、OIDストアおよびDBストアに適用されます。 オプション。 デフォルト値: 60 |
|
次のいずれかのチェックに合格しなかった場合に、例外のスローを制御します。
Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値: 有効な値: |
oracle.security.jps.policystore.refresh.purge.timeout |
キャッシュがリフレッシュされるタイムアウト間隔をミリ秒で指定します。多数のユーザーが同時にアプリケーションにアクセスする際にお薦めします。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値なし設定例: <property name="oracle.security.jps.policystore.refresh.purge.timeout" @ value="200000"/> |
oracle.security.jps.ldap.policystore.refresh.interval |
キャッシュがリフレッシュされる時間間隔をミリ秒で指定します。多数のユーザーが同時にアプリケーションにアクセスする際にお薦めします。 Java EEアプリケーションとJava SEアプリケーションで有効です。 OIDストアとDBストアに適用されます。 オプション。 デフォルト値なし設定例: <property name="oracle.security.jps.ldap.policystore.refresh.interval" @ value="300000"/> |
表F-5は、資格証明ストア・インスタンス固有のプロパティを示しています。その他のプロパティについては、共通プロパティを参照してください。
表F-5 資格証明ストアのプロパティ
名前 | 説明 |
---|---|
|
資格証明を暗号化するかどうかを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 ファイルおよびOIDストアにのみ適用されます。 有効な値: オプション。 デフォルト値: |
次のコードは、Java EEアプリケーションの資格証明ストアの構成を示しています。
<propertySet name="props.ldap.1"> <property name="java.naming.ldap.derefAliases" value="never"/> <property name="bootstrap.security.principal.key" value="bootstrap_6aCNhgRM3zF04ToliwecdF6K3oo="/> <property name="oracle.security.jps.farm.name" value="cn=compact1_oid26008"/> <property name="server.type" value="OID"/> <property name="oracle.security.jps.ldap.root.name" value="cn=jpsTestNode"/> <property name="ldap.url" value="ldap://myComp.com:2020"/> </propertySet> <serviceProvider type="CREDENTIAL_STORE" name="ldap.credentialstore.provider" class="oracle.security.jps.internal.credstore.ldap.LdapCredentialStoreProvider"/> <serviceInstance name="credstore.ldap" provider="ldap.credentialstore.provider"> <propertySetRef ref="props.ldap.1"/> </serviceInstance>
表F-6は、LDAPベースのアイデンティティ・ストア・インスタンスのプロパティを示しています。拡張プロパティはその旨明示しています。それぞれのプロパティに対応する、ユーザーおよびロールAPIのプロパティも示しています。
表F-6 LDAPベースのアイデンティティ・ストアのプロパティ
名前 | 説明 |
---|---|
|
アイデンティティ・ストアのタイプ。 Java SEアプリケーションとJava EEアプリケーションで有効です。 必須 有効な値:
カスタムの認証プロバイダを使用する場合、サービス・インスタンスの構成で次のいずれかのプロパティを指定する必要があります。 <property name="idstore.type" value="<your-idstore-type>" <property name="ADF_IM_FACTORY_CLASS" value="<your-IDM-FACTOY_CLASS_NAME>" ユーザーおよびロールAPIの対応するプロパティ: ADF_IM_FACTORY_CLASS |
|
LDAP URL値。 Java SEアプリケーションとJava EEアプリケーションで有効です。 必須。 デフォルト値なし 値の例: ユーザーおよびロールAPIのタイプするプロパティ: ADF_IM_PROVIDER_URL |
|
LDAPサーバーに対するDN形式のユーザー検索ベース。拡張プロパティ。 Java SEアプリケーションとJava EEアプリケーションで有効です。 必須。 デフォルト値なし 値の例: ユーザーおよびロールAPIの対応するプロパティ: USER_SEARCH_BASES |
|
LDAPサーバーに対するDN形式のグループまたはエンタープライズ検索ベース。拡張プロパティ。 Java SEアプリケーションとJava EEアプリケーションで有効です。 必須 デフォルト値なし 値の例: ユーザーおよびロールAPIの対応するプロパティ: ROLE_SEARCH_BASES |
|
idstoreプロバイダ・クラス。 Java EEアプリケーションでのみ有効です。 必須 次の値のみサポートされています。 oracle.security.jps.wls.internal.idstore.WlsLdapIdStoreConfigProvider |
|
グループまたはエンタープライズ・ロールの作成に使用するベースDN。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 ユーザーおよびロールAPIを使用した書込み操作を可能にする場合は必須それ以外の場合はオプション。 シングルDNの値の例: <extendedProperty> <name>group.create.bases</name> <values> <value>cn=groups,dc=us,dc=oracle,dc=com</value> </values> </extendedProperty> ユーザーおよびロールAPIの対応するプロパティ: ROLE_CREATE_BASES |
|
ユーザーの作成に使用するベースDN。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 ユーザーおよびロールAPIを使用した書込み操作を可能にする場合は必須それ以外の場合はオプション。 シングルDNの値の例: <extendedProperty> <name>user.create.bases</name> <values> <value>cn=users,dc=us,dc=oracle,dc=com</value> </values> </extendedProperty> ユーザーおよびロールAPIの対応するプロパティ: USER_CREATE_BASES |
|
エンタープライズ・ロールおよびグループの検索に使用する、オブジェクト・クラスの完全修飾名。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: ユーザーおよびロールAPIの対応するプロパティ: ROLE_FILTER_OBJECT_CLASSES |
|
エンタープライズ・ロールまたはグループの作成時に指定する必要がある属性。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: <extendedProperty> <name>group.mandatory.attrs</name> <values> <value>cn</value> <value>objectClass</value> </values> </extendedProperty> ユーザーおよびロールAPIの対応するプロパティ: ROLE_MANDATORY_ATTRS |
|
エンタープライズ・ロールまたはグループのメンバーの識別名(DN)を指定する静的ロールの属性。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: <extendedProperty> <name>group.member.attrs</name> <values> <value>uniqueMember</value> </values> </extendedProperty> ユーザーおよびロールAPIの対応するプロパティ: ROLE_MEMBER_ATTRS |
|
エンタープライズ・ロールまたはグループを表現するために使用する1つ以上のスキーマ・オブジェクト・クラスの完全修飾名。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: <extendedProperty> <name>group.object.classes</name> <values> <value>top</value> <value>groupOfUniqueNames</value> </values> </extendedProperty> ユーザーおよびロールAPIの対応するプロパティ: ROLE_OBJECT_CLASSES |
|
エンタープライズ・ロールまたはグループを作成するためのベースDN。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: ユーザーおよびロールAPIの対応するプロパティ: ROLE_SELECTED_CREATEBASE |
|
エンタープライズ・ロールまたはグループの名前を一意に識別する属性。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: ユーザーおよびロールAPIの対応するプロパティ: ROLE_NAME_ATTR |
|
エンタープライズ・ロールまたはグループを検索するためのベースDN。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: |
|
検索フィルタの最大文字数。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値: 正の整数。 ユーザーおよびロールAPIの対応するプロパティ: MAX_SEARCHFILTER_LENGTH |
|
リポジトリに対する問合せに使用する検索のタイプ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 有効な値: ユーザーおよびロールAPIの対応するプロパティ: IDENTITY_SEARCH_TYPE |
|
ユーザーの検索に使用するオブジェクト・クラスの完全修飾名。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: ユーザーおよびロールAPIの対応するプロパティ: USER_FILTER_OBJECT_CLASSES |
|
ユーザーのログインID。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例:
ユーザーおよびロールAPIの対応するプロパティ: USER_LOGIN_ATTR |
|
ユーザーの作成時に指定する必要がある属性。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: <extendedProperty> <name>user.mandatory.attrs</name> <values> <value>cn</value> <value>objectClass</value> <value>sn</value> </values> </extendedProperty> ユーザーおよびロールAPIの対応するプロパティ: USER_MANDATORY_ATTRS |
|
ユーザーを表現するために使用するスキーマ・クラスの完全修飾名。拡張プロパティ。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 ユーザーおよびロールAPIの対応するプロパティ: USER_OBJECT_CLASSES |
|
ユーザー名を一意に識別するLDAP属性。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 ユーザーおよびロールAPIの対応するプロパティ: USER_NAME_ATTR |
|
アイデンティティ・ストアをホストするシステムの名前。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 |
|
アイデンティティ・ストアのデフォルトのレルム。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: ユーザーおよびロールAPIの対応するプロパティ: ADF_IM_SUBSCRIBER_NAME |
|
検索と変更を実行できる認証プロバイダを制御します。TRUEに設定した場合、構成されているすべての認証プロバイダで検索と変更が可能になります。FALSEに設定した場合、検索と変更は構成スタックの最初の認証プロバイダでのみ可能になります。 すべての認証プロバイダでユーザーおよびロールAPIを使用して情報の検索と書込みを実行する場合は、TRUEに設定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 有効な値: デフォルト値: 値の例:
|
注意: 認証プロバイダ属性username を変更した場合(たとえば、プロビジョニング後またはテスト環境から本番環境への移行時)、それに応じてアイデンティティ・ストア・サービスのアイデンティティ・ストア・サービス・パラメータusername.attr も変更する必要があります。これらの2つの値は同じにしておく必要があります。 |
次のコード例は、Java SEアプリケーションに使用するOIDベースのアイデンティティ・ストアの構成を示しています。
<serviceInstance name="idstore.ldap" provider="idstore.ldap.provider"> <property name="idstore.type" value="OID"/> <property name="ldap.url" value="ldap://myHost.com:1234"/> <extendedProperty> <name>user.search.bases</name> <values> <value>cn=users,dc=us,dc=oracle,dc=com</value> </values> </extendedProperty> <extendedProperty> <name>group.search.bases</name> <values> <value>cn=groups,dc=us,dc=oracle,dc=com</value> </values> </extendedProperty> </serviceInstance>
表F-7は、OIDベースの全ストアに共通し、あらゆるサービス・インスタンスで指定できるプロパティを示しています。
OIDベースのアイデンティティ・ストアのサービス・インスタンスの場合は、ユーザーおよびロールAPIでJNDI接続ファクトリを使用するときに接続プールのプロパティが必ず選択されるように、アイデンティティ・ストアのサービス・インスタンスで次のプロパティを指定する必要があります。
<property name="INITIAL_CONTEXT_FACTORY" value="com.sun.jndi.ldap.LdapCtxFactory"/>
表F-7 OIDの汎用的なプロパティ
名前 | 説明 |
---|---|
|
JNDI接続プールが使用するOID接続のタイプを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値: デフォルト値: |
|
OID接続プール内の最大接続数を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: 30 |
|
OID接続プールの最小接続数を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: 5 |
|
OID接続に使用するプロトコルを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値: デフォルト値: |
|
使用する接続プールを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値: デフォルト値: |
|
アイドル接続がプールにとどまっていられるミリ秒数を指定します。タイムアウト後に接続が閉じられ、プールから削除されます。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト値: 300000 (5分) |
|
OID接続に問題がある場合の、最大再試行回数を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 値の例: 5 |
次のコードは、いくつかのプロパティの構成を示しています。
<jpsConfig ... > ... <!-- common properties used by all LDAPs --> <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-8は、ファイルベース、OIDベースまたはDBベースの匿名ユーザー、匿名ロールおよび認証ロールの構成に使用できるプロパティを示しています。
表F-8 匿名ロールと認証ロールのプロパティ
名前 | 説明 |
---|---|
|
匿名ロールの説明を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト値なし |
|
匿名ロールのプリンシパル名を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト値: |
|
匿名ロールの名前を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト値: |
|
匿名ユーザーのプリンシパル名を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト値: |
|
認証ロールの説明を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト値なし |
|
認証ユーザー・ロールのプリンシパル名を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト値: |
|
認証ロールの名前を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト値: |
|
ユーザーの認証後にサブジェクトから匿名ロールを削除する必要があるかどうかを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 有効な値: デフォルト値: |
表F-9は、トラスト・サービス固有のプロパティを示しています。
表F-9 トラスト・サービスのプロパティ
名前 | 説明 |
---|---|
|
トラスト・サービス・ストアのタイプ、JKSまたはKSSを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 有効な値: デフォルトなし。 指定されていない場合は、KSSストアがすでにプロビジョニングされていれば、値は |
|
kss://<stripeName>/<keyStoreName> Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト: |
|
kss://<stripeName>/<keyStoreName> Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト: |
|
キーストアからX.509証明書と秘密鍵を取得するために使用する別名を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト: WLSドメインの名前。 |
|
トークンに含める名前を指定します。発行先のトラスト・サービスにより、トークンを取得して検証するために使用されます。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト: WLSドメインの名前。 |
|
トラスト・プロバイダ・クラスの完全修飾名を指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 必須。 値: サポートされている値は |
|
時間条件を検証する際に許容される時間差を秒単位で指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト: 0。 |
|
トークンが発行された後の有効時間を秒単位で指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 必須。 デフォルトなし。 |
|
キーストアにアクセスするための資格証明のマップを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト: キーストア・インスタンス・プロパティ |
|
Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト: キーストア・インスタンス・プロパティ |
|
Java EEアプリケーションとJava SEアプリケーションで有効です。 オプション。 デフォルト: キーストア・インスタンス・プロパティ |
|
SAMLトークンに証明書が含まれているかどうかを指定します。 Java EEアプリケーションとJava SEアプリケーションで有効です。 必須。 有効な値: デフォルト: |
次の例では、トラスト・サービスの構成を示します。
<propertySet name="trust.provider.embedded"> <property name="trust.provider.className" value="oracle.security.jps.internal.trust.provider.embedded.EmbeddedProviderImpl"/> <property name="trust.clockSkew" value="60"/> <property name="trust.token.validityPeriod" value="1800"/> <property name="trust.aliasName" value="orakey"/> <property name="trust.issuerName" value="orakey"/> <property name="trust.csf.map " value="my-csf-map"/> <property name="trust.csf.keystorePass" value="my-keystore-csf-key"/> <property name="trust.csf.keypass" value="my-signing-csf-key"/> </propertySet>
表F-10は、監査サービス固有のプロパティを示しています。その他のプロパティについては、共通プロパティを参照してください。
表F-10 監査サービスのプロパティ
プロパティ | 説明 | 必須 | 値 | デフォルト値 |
---|---|---|---|---|
audit.filterPreset |
監査のレベル。 |
いいえ |
None、Low、MediumまたはHigh |
なし |
audit.customEvents |
Customの場合、監査の対象となる監査イベントのリスト。イベントは、コンポーネント・タイプを使用して修飾する必要があります。イベントはカンマ、コンポーネント・タイプはセミコロンで区切ります。 例: JPS:CheckAuthorization, CreateCredential; OIF:UserLogin |
いいえ |
||
audit.specialUsers |
filterPresetがNoneの場合もアクティビティが常に監査の対象となる1名以上のユーザーから構成されるリスト。 カンマが含まれるユーザー名は、適切にエスケープ処理する必要があります。たとえば、Fusion Middleware Controlを使用する場合、3名のユーザーは"admin, fmwadmin, cn=test\,cn=user\,ou:ST\,L=RS\,c=is\,"のように指定します。
setAuditPolicy(addSpecialUsers="cn=orcladmin\\\,cn=com") |
いいえ |
||
audit.maxFileSize |
監査イベントが書き込まれるバスストップ・ファイルのサイズを制御しますバイト単位 |
いいえ |
104857600 |
|
audit.loader.interval |
監査ローダーがデータベースにアップロードする頻度を制御します。秒単位 |
いいえ |
15秒 |
|
audit.loader |
監査イベントのストア・タイプ。タイプがデータベース(DB)の場合は、audit.loader.jndiまたはJDBCプロパティも定義します。 |
はい |
File、DB |
File |
audit.loader.jndi |
データベースに監査イベントをアップロードするための、アプリケーション・サーバー内のデータソースのJNDI名。 |
いいえ |
jdbc/AuditAppendDataSource |
|
audit.db.principal.map / audit.db.principal.key |
JavaSEで実行されており、repositoryTypeがDBの場合の、ブートストラップ資格証明ストア内のJDBCユーザー名とパスワード資格証明に対するマップとキー。 |
いいえ |
||
audit.loader.jdbc.string |
JavaSEで実行されており、repositoryTypeがDBの場合の、JDBC接続に対するJDBC文字列。 |
いいえ |
||
audit.logDirectory |
バスストップ・ファイルのベース・ディレクトリ。 |
JavaSEでは必須 |
jse |
|
audit.timezone |
Oracle WebLogic ServerタイムスタンプまたはUTCのどちらでイベントを記録するかを決定します。 |
いいえ |
utc、local |
utc |
audit.change.scanning. |
OIDベースまたはDBベースの監査ストアを使用した分散環境では、監査サービスは、インスタンスを実行する各OPSSの監査実行時ポリシーの変更を監視し、任意のキャッシュ済のポリシーを動的に再ロードします。 このプロパティは、任意の変更をサービスがチェックする頻度をミリ秒単位で決定します。 |
いいえ |
0(ゼロ)より大きい数値 |
60000 (60秒) |
次の例は、監査サービスの構成を示しています。
<serviceInstance name="audit" provider="audit.provider" location="./audit-store.xml"> <property name="audit.filterPreset" value="Medium"/> <property name="audit.loader.jndi" value="jdbc/AuditAppendDataSource"/> <property name="audit.loader.repositoryType" value="DB" /> <property name="server.type" value="DB_ORACLE"/> <property name="audit.timezone" value="local" /> </serviceInstance>
表F-11は、キーストア・サービス固有のプロパティを示しています。その他のプロパティについては、共通プロパティを参照してください。
表F-11 キーストア・サービスのプロパティ
プロパティ | 説明 | 必須 | 値 | デフォルト |
---|---|---|---|---|
keystore.file.path |
ファイル・プロバイダが構成されている場合のkeystores.xmlファイルの場所。 |
ファイルベースのキーストア・プロバイダが構成されている場合は、はい。 |
- |
./ |
ca.key.alias |
キーストア・サービス・インスタンスに使用されているサード・パーティCAのsystem/castore内のキー別名。 |
いいえ |
- |
- |
location |
キーストアの場所。絶対パスまたは相対パスを指定できます。 |
keystore.typeがJKSの場合は、はい。keystore.typeがPKCS11またはHSM (LunaSA)の場合は、いいえ。 |
キーストアへのパス |
./default-keystore.jks |
keystore.type |
キーストアのタイプ。 |
いいえ |
KSS、JKS、PKCS11、Luna |
JKS |
keystore.csf.map |
Oracle Web Services Managerによって使用される資格証明ストア・マップ名。OWSMでのみ使用可能です。 |
いいえ |
資格証明ストアのマップ名 |
oracle.wsm.security |
keystore.pass.csf.key |
キーストア・パスワードを指す資格証明ストア・キー。OWSMでのみ使用可能です。 |
いいえ |
資格証明ストアのcsfキー名 |
keystore-csf-key |
keystore.sig.csf.key |
キーストア内の署名鍵の別名およびパスワードを指す資格証明ストアのキー名。HSMの場合は、資格証明ストアのキー名ではなく、ダイレクト・キー別名になります。OWSMでのみ使用可能です。 |
いいえ |
資格証明ストアのcsfキー名、またはHSMの場合はダイレクト別名 |
sign-csf-key |
keystore.enc.csf.key |
キーストア内の暗号化鍵の別名およびパスワードを指す資格証明ストアのキー名。HSMの場合は、資格証明ストアのキー名ではなく、ダイレクト・キー別名になります。OWSMでのみ使用可能です。 |
いいえ |
資格証明ストアのcsfキー名、またはHSMの場合はダイレクト別名 |
enc-csf-key |
次の例は、キーストア・サービスの構成を示しています。
<propertySet name="props.ldap.1"> <property name="java.naming.ldap.derefAliases" value="never"/> <property name="bootstrap.security.principal.key" value="bootstrap_6aCNhgRM3zF04ToliwecdF6K3oo="/> <property name="oracle.security.jps.farm.name" value="cn=compact1_oid26008"/> <property name="server.type" value="OID"/> <property name="oracle.security.jps.ldap.root.name" value="cn=jpsTestNode"/> <property name="ldap.url" value="ldap://myComp.com:2020"/> </propertySet> <serviceProvider type="KEY_STORE" name="keystore.provider" class="oracle.security.jps.internal.keystore.KeyStoreProvider"> </serviceProvider> <serviceInstance name="keystore.ldap" provider="keystore.provider"> <propertySetRef ref="props.ldap.1"/> </serviceInstance>
次の例は、LDAPベースのプロバイダに対するキーストア・サービスの構成を示しています。
<serviceInstance name="keystore" provider="keystore.provider" location="./default-keystore.jks"> <description>Default JPS Keystore Service</description> <property name="server.type" value="OID"/> <property name="keystore.type" value="JKS"/> <property name="keystore.csf.map" value="oracle.wsm.security"/> <property name="keystore.pass.csf.key" value="keystore-csf-key"/> <property name="keystore.sig.csf.key" value="sign-csf-key"/> <property name="keystore.enc.csf.key" value="enc-csf-key"/> <property value="bootstrap" name="bootstrap.security.principal.key"/> <property value="cn=wls-jrfServer" name="oracle.security.jps.farm.name"/> <property value="cn=jpsTestNode" name="oracle.security.jps.ldap.root.name"/> <property value="ldap://myHost.com:1234" name="ldap.url"/> </serviceInstance>
次の例は、DBベースのプロバイダに対するキーストア・サービスの構成を示しています。
<propertySet name="props.db.1"> <property name="jdbc.url" value="jdbc:oracle:thin:@host:port:sid"/> <property name="oracle.security.jps.farm.name" value="cn=farm"/> <property name="server.type" value="DB_ORACLE"/> <property name="oracle.security.jps.ldap.root.name" value="cn=jpsroot"/> <property name="jdbc.driver" value="oracle.jdbc.OracleDriver"/> <property name="bootstrap.security.principal.map" value="credendial_map"/> <property name="bootstrap.security.principal.key" value="credential_key"/> </propertySet> … … <serviceInstance name="keystore.rdbms" provider="keystore.provider" location="./default-keystore.jks"> <propertySetRef ref = "props.db.1"/> <property name="server.type" value="DB_ORACLE"/> <property name="keystore.type" value="JKS"/> <property name="keystore.csf.map" value="oracle.wsm.security"/> <property name="keystore.pass.csf.key" value="keystore-csf-key"/> <property name="keystore.sig.csf.key" value="sign-csf-key"/> <property name="keystore.enc.csf.key" value="enc-csf-key"/> </serviceInstance>