転送中の暗号化について

クライアント アプリケーションと 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 で転送中の暗号化を使用するには、次のものが必要です。

  1. TLS またはサードパーティの TLS サイドカーをサポートする Valkey クライアント。

  2. インスタンスにアクセスするクライアント マシンにインストールされている 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: Certificate Authority Service でホストされている独自の CA プールを使用します。クライアント アプリケーションがこの CA を信頼するように構成されている場合、追加の CA 証明書をダウンロードしてインストールしなくても、アプリケーションをインスタンスに接続できます。これにより、制御が強化され、コンプライアンス要件を満たすことができます。

サーバー証明書のローテーション

Memorystore for Valkey は、インスタンス単位の CA、共有 CA、顧客管理の CA モードを使用するインスタンスに対して、毎週サーバーサイドの証明書ローテーションを実施します。新しいサーバー証明書は新しい接続にのみ適用され、既存の接続はこのローテーション中も維持されます。

Memorystore for Valkey は週単位でサーバーサイドの証明書のローテーションを行いますが、顧客管理の CA モードでは、必要に応じて証明書をローテーションできます。

転送中の暗号化を有効にした場合のパフォーマンスへの影響

転送中の暗号化機能では、処理にオーバーヘッドを伴うデータの暗号化と復号を行います。このため、転送中の暗号化を有効にすると、クライアントのパフォーマンスが低下する可能性があります。また、転送中の暗号化を使用する場合、追加の接続のそれぞれに関連リソースのコストがかかります。

転送中の暗号化に関連するレイテンシを判断するには、クライアントのパフォーマンスを比較します。これを行うには、転送中の暗号化が有効になっているインスタンスのパフォーマンスを、無効になっているインスタンスのパフォーマンスと比較します。

パフォーマンスを改善するためのガイドライン

インスタンスのパフォーマンスを改善するには、次のガイドラインを使用します。

  • 可能な場合は、クライアントの接続数を減らします。オンデマンドの有効期間が短い接続を作成するのではなく、長期の接続を確立してそれを再利用します。

  • インスタンスのサイズを増やします。

  • クライアントのホストマシンの CPU リソースを増やします。クライアント マシンの CPU 数が多くなるほど、パフォーマンスが向上します。Compute Engine VM を使用する場合は、最適化されたインスタンスを使用することをおすすめします。

  • ペイロードが大きければ大きいほど、より多くの往復が必要となるため、クライアントのトラフィックに関連付けられたペイロード サイズを減らします。