クライアント アプリケーションと Memorystore for Valkey の間で移動するすべてのデータを安全に暗号化できます。これは転送中の暗号化です。転送中の暗号化を使用すると、すべての Valkey トラフィックが Transport Layer Security(TLS)プロトコルで暗号化されます。これにより、アプリケーションと Memorystore for Valkey 間で移動するすべてのデータが機密性を保ち、改ざんされないようになります。
転送中の暗号化が有効になっている場合、Valkey クライアントは安全な接続を介してのみ通信を行います。TLS 用に構成されていない Valkey クライアントはブロックされます。転送中の暗号化を使用する場合は、Valkey クライアントが TLS プロトコルを使用できることを確認する必要があります。
転送中の暗号化を使用するユースケースの例を次に示します。
- 機密性の高いキャッシュ保存データを保護する: Memorystore for Valkey を使用してセッション トークン、個人情報(PII)、API キーなどの価値の高い情報を保存する場合、転送中の暗号化により、VPC アクセス権を持つ攻撃者がデータにアクセスすることを防ぐことができます。
- 業界標準に準拠する: 医療業界の HIPAA や金融データの PCI DSS など、多くのセキュリティ フレームワークでは、規制と業界のコンプライアンスを目的として、保存データと転送中の両方で機密情報を暗号化することが義務付けられています。
- Identity and Access Management(IAM)認証を保護する: IAM 認証を使用してデータへのアクセスを管理する場合、Memorystore for Valkey では、転送中の認証トークンの漏洩を防ぐために TLS が必要です。
- 中間者攻撃を防ぐ: TLS は、認証局(CA)を使用してサーバー エンドポイントを認証します。CA は、アプリケーションと Memorystore for Valkey の間でデータが移動する際に、サーバー スプーフィングや不正なデータ変更からアプリケーションを保護します。
転送中の暗号化の前提条件
Memorystore for Valkey で転送中の暗号化を使用するには、次のものが必要です。
TLS またはサードパーティの TLS サイドカーをサポートする Valkey クライアント。
インスタンスにアクセスするクライアント マシンにインストールされている CA 証明書。
すべての Valkey クライアント ライブラリで TLS がサポートされているわけではありません。TLS をサポートしていないクライアントを使用している場合は、クライアントの TLS を有効にするサードパーティ プラグインを使用することをおすすめします。転送中の暗号化が有効になっている Memorystore for Valkey のクラスタモードが有効なインスタンスまたはクラスタモードが無効なインスタンスに接続する方法の例をご覧ください。
認証局(CA)
転送中の暗号化を使用するインスタンスには、インスタンス内のマシンの証明書を認証する認証局(CA)があります。Memorystore for Valkey では、サーバー CA モードを選択できます。CA モードは、インスタンスのデジタル証明書の発行に使用される CA 階層を決定します。
Memorystore for Valkey には、次の CA モードがあります。
- インスタンス単位の CA: Memorystore for Valkey は、各インスタンスに独自の固有の CA インフラストラクチャをプロビジョニングします。インスタンスに安全にアクセスするには、この CA 階層を信頼するようにクライアントを構成する必要があります。これには、インスタンスにアクセスするクライアントごとに CA 証明書をダウンロードしてインストールすることが含まれます。
- 共有 CA: 管理されたリージョン化された CA インフラストラクチャ。リージョンごとに、単一の CA 証明書バンドルをダウンロードできます。このバンドルは、共有 CA を使用するように構成したリージョンにあるすべてのインスタンスで有効です。共有 CA を使用すると、クライアントが管理する必要がある証明書の数が減ります。この CA モードはプレビュー版でご利用いただけます。
- 顧客管理の CA: Certificate Authority Service でホストされている独自の CA プールを使用します。クライアント アプリケーションがこの CA を信頼するように構成されている場合、追加の CA 証明書をダウンロードしてインストールしなくても、アプリケーションをインスタンスに接続できます。これにより、制御が強化され、コンプライアンス要件を満たすことができます。この CA モードはプレビュー版でご利用いただけます。
サーバー証明書のローテーション
Memorystore for Valkey は、インスタンス単位の CA、共有 CA、顧客管理の CA モードを使用するインスタンスに対して、毎週サーバーサイドの証明書のローテーションを実施します。新しいサーバー証明書は新しい接続にのみ適用され、このローテーション中も既存の接続は維持されます。
Memorystore for Valkey では、週に 1 回サーバーサイドの証明書のローテーションが行われます。また、顧客管理の CA モードでは、必要に応じて証明書をローテーションできます。
転送中の暗号化を有効にした場合のパフォーマンスへの影響
転送中の暗号化機能では、処理にオーバーヘッドを伴うデータの暗号化と復号を行います。このため、転送中の暗号化を有効にすると、クライアントのパフォーマンスが低下する可能性があります。また、転送中の暗号化を使用する場合、追加の接続のそれぞれに関連リソースのコストがかかります。
転送中の暗号化に関連するレイテンシを判断するには、クライアントのパフォーマンスを比較します。これを行うには、転送中の暗号化が有効になっているインスタンスのパフォーマンスと、無効になっているインスタンスのパフォーマンスをベンチマークします。
パフォーマンスを改善するためのガイドライン
インスタンスのパフォーマンスを改善するには、次のガイドラインを使用します。
可能なときは、クライアントの接続数を減らします。オンデマンドの有効期間が短い接続を作成するのではなく、長期の接続を確立してそれを再利用します。
インスタンスのサイズを増やします。
クライアントのホストマシンの CPU リソースを増やします。クライアント マシンの CPU 数が多くなるほど、パフォーマンスが向上します。Compute Engine VM を使用する場合は、最適化されたインスタンスを使用することをおすすめします。
クライアントのトラフィックに関連付けられたペイロード サイズを減らします。ペイロードが大きければ大きいほど、より多くの往復が必要となります。