15.4.3. キャッシュ
cache-service
および datagrid-service
を使用したキャッシュの作成および設定
環境変数を使用して cache-service
または datagrid-service
でキャッシュを作成および設定しないでください。
これらの環境変数は、デプロイメント設定のテンプレートだけで使用することを目的としており、非推奨となっています。
Hot Rod エンドポイントを使用して、キャッシュを動的に cache-service
および datagrid-service
でキャッシュを作成する必要があります。詳細は、「キャッシュのリモート作成」を参照してください。
CACHE_NAMES
設定でキャッシュインスタンスを定義します。
Data Grid デプロイメント設定テンプレートを使用して、キャッシュインスタンスを定義していない場合に、起動スクリプトは
SYNC
モードでデフォルトの分散キャッシュを追加します。ヒント設定の各キャッシュインスタンスに一意の名前を指定します。キャッシュインスタンス間の区別に役立つアンダースコア(_)と説明ラベルを使用します。これにより、キャッシュ固有の設定を適用する時に競合が発生しないようにします。
たとえば、
CACHE_NAMES=addressbook,addressbook_indexed
です。CACHE_CONTAINER_START
キャッシュコンテナーの起動方法を設定します。以下のいずれかを指定します。
-
LAZY
: サービスまたはデプロイメントで要求されたときにキャッシュコンテナーを開始します。これがデフォルトになります。 -
EAGER
: サーバーの起動時にキャッシュコンテナーを起動します。
-
CACHE_CONTAINER_STATISTICS
-
統計を収集するようにキャッシュコンテナーを設定します。値は
true
(デフォルト)またはfalse
です。パフォーマンスを向上させるために、値をfalse
に設定します。 DEFAULT_CACHE
- キャッシュコンテナーのデフォルトキャッシュを設定します。
15.4.3.1. キャッシュコンテナーのセキュリティー設定
CONTAINER_SECURITY_CUSTOM_ROLE_MAPPER_CLASS
ロールマッパーにカスタムプリンシパルのクラスを指定します。
例:
CONTAINER_SECURITY_CUSTOM_ROLE_MAPPER_CLASS=com.acme.CustomRoleMapper
CONTAINER_SECURITY_ROLE_MAPPER
以下の値を使用して、このキャッシュコンテナーのロールマッパーを設定します。
-
identity-role-mapper
: プリンシパル名をロール名として使用します。指定がない場合は、これがデフォルトのロールマッパーになり、CONTAINER_SECURITY_ROLES
環境変数を使用してロール名を定義します。 -
common-name-role-mapper
: プリンシパル名が識別名 (DN) の場合は Common Name (CN) をロール名として使用します。たとえば、DNcn=managers,ou=people,dc=example,dc=com
はmanager
のロール名にマッピングされます。 -
cluster-role-mapper
はClusterRegistry
を使用してプリンシパル名をロールマッピングに保存します。 -
custom-role-mapper
:org.infinispan.security.impl.PrincipalRoleMapper
インターフェースの実装の完全修飾クラス名を使用します。
-
CONTAINER_SECURITY_ROLES
ロール名を定義し、パーミッションを割り当てます。
例:
CONTAINER_SECURITY_ROLES=admin=ALL,reader=READ,writer=WRITE