リージョン間で AWS Secrets Manager シークレットをレプリケートする - AWS Secrets Manager

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

リージョン間で AWS Secrets Manager シークレットをレプリケートする

シークレットを複数の AWS リージョン レプリケートし、リージョンのアクセスと低レイテンシーの要件を満たすために、これらのリージョンに分散するアプリケーションをサポートします。後で必要な場合は、レプリカシークレットをスタンドアロンに昇格させ、レプリケーション用に個別に設定できます。Secrets Manager は、指定したリージョン全体で、タグ、リソースポリシー、シークレットの更新など、暗号化されたシークレットデータおよびメタデータをレプリケートします。

複製されたシークレットの ARN は、リージョンを除いてプライマリシークレットと同じです。以下にその例を示します。

  • プライマリシークレット: arn:aws:secretsmanager:Region1:123456789012:secret:MySecret-a1b2c3

  • レプリカシークレット: arn:aws:secretsmanager:Region2:123456789012:secret:MySecret-a1b2c3

レプリカシークレットの料金情報については、AWS Secrets Manager の料金を参照してください。

他のリージョンにレプリケートされているソースデータベースのデータベース認証情報を保存すると、シークレットにはソースデータベースの接続情報が含まれます。その後、シークレットをレプリケートすると、レプリカはソースシークレットのコピーとなり、同じ接続情報が含まれます。リージョン接続情報のシークレットにキー/値ペアを追加できます。

プライマリシークレットのローテーションを設定すると、Secrets Manager はプライマリリージョンでシークレットのローテーションを実行し、新しいシークレット値が関連するすべてのレプリカシークレットに反映されます。すべてのレプリカシークレットのローテーションを個別に管理する必要はありません。

シークレットは、すべての有効な AWS リージョンでレプリケーションできます。ただし、Secrets Manager を特別な AWS リージョン (AWS GovCloud (US) または中国のリージョン等) で使用する場合、設定できるのは、それらの特別な AWS リージョン内にあるシークレットおよびそのレプリカのみとなります。有効な AWS リージョンにあるシークレットを特別なリージョンでレプリケートしたり、特別なリージョンのシークレットを商用リージョンでレプリケーションしたりすることはできません。

シークレットを別のリージョンにレプリケートするには、そのリージョンを有効にする必要があります。詳細については、「AWS リージョンの管理」を参照してください。

シークレットが保存されているリージョンで Secrets Manager エンドポイントを呼び出すことで、レプリケートせずに複数のリージョンでシークレットを使用できます。; エンドポイントのリストについては、「AWS Secrets Manager エンドポイント」を参照してください。レプリケーションを使用してワークロードの耐障害性を向上させるには、「AWS でのディザスタリカバリ (DR) アーキテクチャ、パートI:クラウドでのリカバリの戦略」を参照してください。

Secrets Manager は、シークレットをレプリケートすると CloudTrail ログエントリを生成します。詳細については、「AWS CloudTrail による AWS Secrets Manager イベントのログ記録」を参照してください。

シークレットを他のリージョンにレプリケートするには (コンソール)
  1. Secrets Manager コンソール (https://console.aws.amazon.com/secretsmanager/) を開きます。

  2. シークレットのリストから、自分のシークレットを選択します。

  3. シークレットの詳細ページの [レプリケーション] タブで、次のいずれかを実行します。

    • シークレットがレプリケートされない場合は、[Replicate secret] (シークレットをレプリケート) をクリックします。

    • シークレットがレプリケートされている場合は、[Replicate secret] (シークレットをレプリケート) セクションで、[Add Regions] (リージョンを追加) をクリックします。

  4. [Add replica regions] (レプリカリージョンの追加) ダイアログボックスで、次の操作を行います。

    1. [AWS Region] (AWS リージョン) で、シークレットのレプリケート先となるリージョン選択します。

    2. (オプション) [Encryption key] (暗号化キー) で、シークレットの暗号化に使用する KMS キーを選択します。このキーは、レプリカのリージョンに存在する必要があります。

    3. (オプション) 別のリージョンを追加するには、[Add more regions] (リージョンを追加) をクリックします。

    4. [Replicate] (レプリケート) を選択します。

    シークレットの詳細ページに戻ります。[Replicate Secret] (シークレットをレプリケート) セクションで、[Replication Status] (レプリケーションステータス) がそれぞれのリージョンを表示します。

AWS CLI

例 シークレットを異なるリージョンにレプリケートする

次に、シークレットをeu-west-3 にレプリケートする、replicate-secret-to-regions の例を示します。このレプリカは、AWS マネージドキー aws/secretsmanager により暗号化されます。

aws secretsmanager replicate-secret-to-regions \ --secret-id MyTestSecret \ --add-replica-regions Region=eu-west-3
例 シークレットを作成し、レプリケートする

次のではシークレットを作成し、eu-west-3 にレプリケートします。このレプリカは、AWS マネージドキー aws/secretsmanager により暗号化されます。

aws secretsmanager create-secret \ --name MyTestSecret \ --description "My test secret created with the CLI." \ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}" --add-replica-regions Region=eu-west-3

AWS SDK

シークレットをレプリケートするには、ReplicateSecretToRegions コマンドを使用してください。詳細については、「AWS SDKs」を参照してください。