Redis OSS AUTH コマンドによる認証 - Amazon ElastiCache (Redis OSS)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Redis OSS AUTH コマンドによる認証

注記

Redis OSS AUTHは に置き換えられましたロールベースのアクセスコントロール (RBAC)。すべてのサーバーレスキャッシュでは、認証時に RBAC を使用する必要があります。

Redis OSS 認証トークンまたはパスワードにより、Redis OSS はクライアントにコマンドの実行を許可する前にパスワードを要求できるため、データセキュリティが向上します。Redis OSS AUTHは独自設計型クラスターでのみ使用できます。

ElastiCache (Redis OSS) での AUTH の概要

ElastiCache (Redis OSS) クラスターAUTHで Redis OSS を使用する場合、いくつかの改良点があります。

特に、 ElastiCache (Redis OSS) で AUTH を使用する場合は、次の AUTH トークンまたはパスワードの制約に注意してください。

  • トークン、またはパスワードは、印刷可能な 16~128 文字である必要があります。

  • 英数字以外の文字は、(!、&、#、$、^、<、>、-) に制限されています。

  • AUTH は、転送中の暗号化 ( ElastiCache Redis OSS) クラスターに対してのみ有効にできます。

強力なトークンを設定するには、以下の要件を満たすなど、厳格なパスワードポリシーに従うことをお勧めします。

  • トークンまたはパスワードには、次の文字タイプのうち少なくとも 3 つを含める必要があります。

    • 英大文字

    • 英小文字

    • 数字

    • アルファベット以外の文字 (!&#$^<>-)

  • トークンまたはパスワードには、ディクショナリワードまたはわずかに変更されたディクショナリワードを含めることはできません。

  • トークンまたはパスワードは、最近使用したトークンと同じ、または類似するものであってはなりません。

ElastiCache (Redis OSS) クラスターへの認証の適用

トークンで保護された Redis OSS サーバーにトークン (パスワード) を入力するようにユーザーに要求できます。そのためには、レプリケーショングループまたはクラスターを作成するときに、正しいトークンを指定したパラメータ --auth-token (API: AuthToken) を含めます。また、レプリケーショングループまたはクラスターに対する後続のすべてのコマンドにもそのパラメータを含めます。

次の AWS CLI オペレーションでは、転送中の暗号化 (TLS) が有効で、AUTHトークン を持つレプリケーショングループを作成しますThis-is-a-sample-token。サブネット グループ sng-test を、実存のサブネットグループに置き換えます。

キーのパラメータ
  • --engineredis を指定する必要があります。

  • --engine-version — 3.2.6 または 4.0.10 以降を指定する必要があります。

  • --transit-encryption-enabled — 認証と HIPAA 適格性に必要です。

  • --auth-token — HIPAA 適格性に必要です。この値は、このトークンで保護された Redis OSS サーバーの正しいトークンである必要があります。

  • --cache-subnet-group — HIPAA 適格性に必要です。

Linux、macOS、Unix の場合:

aws elasticache create-replication-group \ --replication-group-id authtestgroup \ --replication-group-description authtest \ --engine redis \ --cache-node-type cache.m4.large \ --num-node-groups 1 \ --replicas-per-node-group 2 \ --transit-encryption-enabled \ --auth-token This-is-a-sample-token \ --cache-subnet-group sng-test

Windows の場合:

aws elasticache create-replication-group ^ --replication-group-id authtestgroup ^ --replication-group-description authtest ^ --engine redis ^ --cache-node-type cache.m4.large ^ --num-node-groups 1 ^ --replicas-per-node-group 2 ^ --transit-encryption-enabled ^ --auth-token This-is-a-sample-token ^ --cache-subnet-group sng-test

既存の ElastiCache (Redis OSS) クラスターの AUTH トークンの変更

認証の更新を容易にするために、 ElastiCache (Redis OSS) クラスターで使用されるAUTHトークンを変更できます。エンジンバージョンが 5.0.6 以降で、 ElastiCache (Redis OSS) で転送中の暗号化が有効になっている場合は、この変更を行うことができます。

認証トークンの変更は、ROTATE と SET の 2 つの戦略をサポートしています。ROTATE 戦略は、以前のトークンを保持しながら、サーバーに AUTH トークンを追加します。SET 戦略は、単一の AUTH トークンのみをサポートするようにサーバーを更新します。変更をすぐに適用するには、これらの変更の呼び出しで --apply-immediately パラメータを指定します。

AUTH トークンの更新

Redis OSS サーバーを新しい AUTH トークン で更新するには、 --auth-tokenパラメータを新しいAUTHトークンとして ModifyReplicationGroup API を呼び出し、 値を ROTATE --auth-token-update-strategyとして呼び出します。ROTATE の変更が完了すると、クラスターは auth-tokenパラメータで指定されたトークンに加えて、以前の AUTH トークンをサポートします。AUTH トークンローテーションの前にレプリケーショングループに AUTH トークンが設定されていない場合、クラスターは認証なしの接続をサポートするだけでなく、 --auth-tokenパラメータで指定された AUTH トークンをサポートします。更新戦略 SET AUTH トークンの設定 を使用して AUTH トークンを必須に更新するには、「」を参照してください。

注記

AUTH トークンを前もって設定しない場合、変更が完了すると、クラスターは auth-token パラメータで指定されたもの以外の AUTH トークンをサポートしません。

この変更が既に 2 つの AUTH トークンをサポートしているサーバーで実行された場合、このオペレーション中に最も古い AUTH トークンも削除されます。これにより、サーバーは一度に最大 2 つの最新の AUTH トークンをサポートできます。

この時点で、最新の AUTH トークンを使用するようにクライアントを更新することで続行できます。クライアントが更新された後、AUTH トークンの更新に関する SET 戦略 (次のセクションで説明) を採用して、新しいトークンのみの使用を開始できます。

次の AWS CLI オペレーションは、AUTHトークン をローテーションするようにレプリケーショングループを変更しますThis-is-the-rotated-token

Linux、macOS、Unix の場合:

aws elasticache modify-replication-group \ --replication-group-id authtestgroup \ --auth-token This-is-the-rotated-token \ --auth-token-update-strategy ROTATE \ --apply-immediately

Windows の場合:

aws elasticache modify-replication-group ^ --replication-group-id authtestgroup ^ --auth-token This-is-the-rotated-token ^ --auth-token-update-strategy ROTATE ^ --apply-immediately

AUTH トークンの設定

Redis OSS サーバーを更新して 1 つの必須AUTHトークンをサポートするには、最後の AUTH トークンと同じ値を持つ --auth-tokenパラメータと値を持つ --auth-token-update-strategyパラメータを使用して ModifyReplicationGroup API オペレーションを呼び出しますSET。SET 戦略は、以前に ROTATE 戦略を使用した から 2 つの AUTH トークンまたは 1 つのオプションの AUTH トークンを持つクラスターでのみ使用できます。変更が完了すると、Redis OSS サーバーは auth-token パラメータで指定された AUTH トークンのみをサポートします。

次の AWS CLI オペレーションでは、AUTH トークンを に設定するようにレプリケーショングループを変更しますThis-is-the-set-token

Linux、macOS、Unix の場合:

aws elasticache modify-replication-group \ --replication-group-id authtestgroup \ --auth-token This-is-the-set-token \ --auth-token-update-strategy SET \ --apply-immediately

Windows の場合:

aws elasticache modify-replication-group ^ --replication-group-id authtestgroup ^ --auth-token This-is-the-set-token ^ --auth-token-update-strategy SET ^ --apply-immediately

既存の ElastiCache (Redis OSS) クラスターでの認証の有効化

既存の Redis OSS サーバーで認証を有効にするには、 ModifyReplicationGroup API オペレーションを呼び出します。--auth-token パラメータで新しいトークンを指定し、--auth-token-update-strategy パラメータで値 ROTATE を指定して、ModifyReplicationGroup を呼び出します。

ROTATE の変更が完了すると、クラスターは認証なしの接続をサポートするだけでなく、 --auth-tokenパラメータで指定されたAUTHトークンもサポートします。すべてのクライアントアプリケーションが更新され、AUTH トークンで Redis OSS に認証されたら、SET 戦略を使用して AUTH トークンを必要に応じてマークします。認証の有効化は、転送中の暗号化 (TLS) が有効になっている Redis OSS サーバーでのみサポートされます。

RBAC から Redis OSS AUTH への移行

で説明されているように Redis OSS ロールベースのアクセスコントロール (RBAC) を使用してユーザーを認証しロールベースのアクセスコントロール (RBAC)、Redis OSS AUTH に移行する場合は、次の手順を使用します。コンソールまたは CLI を使用して移行できます。

コンソールを使用して RBAC から Redis OSS AUTH に移行するには
  1. にサインイン AWS Management Console し、https://console.aws.amazon.com/elasticache/ で ElastiCache コンソールを開きます。

  2. 右上隅のリストから、変更するクラスターがある AWS リージョンを選択します。

  3. ナビゲーションペインで、変更するクラスターで実行されているエンジンを選択します。

    選択したエンジンのクラスターが一覧表示されます。

  4. クラスターのリストで、変更するクラスターの名前を選択します。

  5. [アクション][変更] の順に選択します。

    [変更] ウィンドウが表示されます。

  6. アクセスコントロール で、Redis OSS AUTH のデフォルトユーザーアクセス を選択します。

  7. Redis OSS AUTH トークン で、新しいトークンを設定します。

  8. [変更をプレビュー] を選択し、次の画面で [変更] を選択します。

を使用して RBAC から Redis OSS AUTH に移行するには AWS CLI

次のいずれかのコマンドを使用して、Redis OSS レプリケーショングループの新しいオプションAUTHトークンを設定します。オプションの Auth トークンは、SET次のステップの更新戦略を使用して、Auth トークンが必須としてマークされるまで、レプリケーショングループへの認証されていないアクセスを許可することに注意してください。

Linux、macOS、Unix の場合:

aws elasticache modify-replication-group \ --replication-group-id test \ --remove-user-groups \ --auth-token This-is-a-sample-token \ --auth-token-update-strategy ROTATE \ --apply-immediately

Windows の場合:

aws elasticache modify-replication-group ^ --replication-group-id test ^ --remove-user-groups ^ --auth-token This-is-a-sample-token ^ --auth-token-update-strategy ROTATE ^ --apply-immediately

上記のコマンドを実行した後、Redis OSS アプリケーションを更新して、新しく設定されたオプションの AUTH トークンを使用して ElastiCache レプリケーショングループに認証できます。認証トークンのローテーションを完了するには、次のコマンドSETで更新戦略を使用します。これにより、必要に応じてオプションの AUTH トークンにマークされます。認証トークンの更新が完了すると、レプリケーショングループのステータスは と表示ACTIVEされ、このレプリケーショングループへのすべての Redis OSS 接続には認証が必要です。

Linux、macOS、Unix の場合:

aws elasticache modify-replication-group \ --replication-group-id test \ --auth-token This-is-a-sample-token \ --auth-token-update-strategy SET \ --apply-immediately

Windows の場合:

aws elasticache modify-replication-group ^ --replication-group-id test ^ --remove-user-groups ^ --auth-token This-is-a-sample-token ^ --auth-token-update-strategy SET ^ --apply-immediately

詳細については、「Redis OSS AUTH コマンドによる認証」を参照してください。

注記

ElastiCache クラスターのアクセスコントロールを無効にする必要がある場合は、「」を参照してくださいRedis OSS キャッシュでのアクセスコントロールの ElastiCache無効化