認証情報、ロール、およびパーミッションのキャッシュ設定の管理
認証情報、ロール、およびパーミッションのキャッシュの時間と更新間隔を変更します。
system_auth
テーブルにクエリーすることなく複数の要求を発行できます。セキュリティ関連のキャッシュ設定
cassandra.yamlファイルの設定を調整します。
- roles_validity_in_ms
- デフォルト:2000。ロール・キャッシュの有効期間。無効にするには、0に設定します。ユーザーに割り当てられているロールのリストをキャッシュする時間を指定します。ユーザーは、直接割り当てられたり、継承(別のロールに付与されたロール)したりすることで、複数のロールを持つ場合があります。ロール階層の複雑さ、ロール変更に対する許容範囲、環境内のノード数、クラスターのアクティビティー・レベルなどに基づいて、この設定を調整します。
- roles_update_interval_in_ms
- デフォルト:2000。ロール・キャッシュの更新間隔を有効にします。デフォルトは
roles_validity_in_ms
と同じ値になります。この間隔を過ぎると、キャッシュ・エントリーを更新できるようになります。次回アクセス時に、非同期の再読み込みがスケジュールされ、再読み込みが完了するまで古い値が返されます。roles_validity_in_ms
がゼロではない場合、こちらもゼロ以外の値でなければなりません。 - credentials_validity_in_ms
- デフォルト:2000。キャッシュ内の認証情報が有効と見なされる期間(ミリ秒)。このキャッシュは、提供されているIAuthenticatorのPasswordAuthenticator実装と厳密に対応しています。別のIAuthenticator実装が構成されている場合、このキャッシュは使用されず、これらの設定は影響しません。
- credentials_update_interval_in_ms
- デフォルト:credentials_validity_in_msと同じ値。この間隔を過ぎると、キャッシュ・エントリーを更新できるようになります。キャッシュへの次のアクセス時に、キャッシュの非同期再読み込みがスケジュールされます。このキャッシュの再読み込みが完了するまで、キャッシュは古い値を返します。
credentials_validity_in_msがゼロ以外の場合、このプロパティもゼロ以外でなければなりません。
- permissions_validity_in_ms
- デフォルト:2000。パーミッションのフェッチはリソースを多く消費する場合があります。パーミッシヨン・クエリーがパフォーマンスに及ぼす影響を管理するために、キャッシュ内のパーミッションが有効と見なされる期間(ミリ秒)を定義します。セキュリティの許容範囲に合わせてキャッシュの有効期間を設定します。このキャッシュは、標準認証と行レベル・アクセス制御(RLAC)キャッシュに使用されます。キャッシュが完全に有効なのは短い期間です。
- permissions_update_interval_in_ms
- デフォルト:permissions_validity_in_msと同じ値。標準認証キャッシュと行レベル・アクセス制御(RLAC)キャッシュの更新間隔を設定します。この間隔を過ぎると、キャッシュ・エントリーを更新できるようになります。次回アクセス時に、非同期の再読み込みがスケジュールされ、再読み込みが完了するまで古い値が返されます。permissions_validity_in_ms がゼロ以外の場合、roles_update_interval_in_msもゼロ以外でなければなりません。
- permissions_cache_max_entries
- デフォルト:1000。標準認証キャッシュと行レベル・アクセス制御(RLAC)キャッシュで保持されるエントリーの最大数。デフォルト値1000の場合、RLACパーミッション・キャッシュは最大で1000のエントリーを保持でき、標準認証キャッシュも最大で1000のエントリーを保持できます。このオプションは両方のキャッシュに適用されます。行レベルのパーミッションの設定も行う場合にパーミッション・キャッシュのサイズを指定するには、以下の式を使用します。
このオプションがcassandra.yamlに含まれていない場合は手動で入力します。「DSE Unified Authentication(DSE統合認証)の有効化」を参照してください。numRlacUsers * numRlacTables + 100
行レベルのパーミッション・キャッシュ
行レベルのパーミッションを使用する場合、RLACキャッシュを構成して、パーミッション・クエリーのパフォーマンスへの影響を制御します。RLACキャッシュを適切に構成した場合、マイナー・レイテンシー・ペナルティーでノードの通常のスループットが50%減少しますが、CPU使用率は20%増加します。認証と権限管理のキャッシングの無効化
JMX経由で認証と権限管理のキャッシュ(認証情報、ロール、およびパーミッション)の構成を無効にするには、jvm.optionsファイルで以下の行をコメント解除します。
-Dcassandra.disable_auth_caches_remote_configuration=true
このオプションを設定すると、cassandra.yamlファイルでのみキャッシュ・オプションを設定できるようになります。新しい設定を有効にするには、Cassandraを再起動します。
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストールInstaller-Servicesインストール |
/etc/dse/cassandra/cassandra.yaml |
tarボール・インストールInstaller-No Servicesインストール |
installation_location/resources/cassandra/conf/cassandra.yaml |