AWS Secrets Manager シークレットを作成する - AWS Secrets Manager

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

AWS Secrets Manager シークレットを作成する

API キー、アクセストークン、データベース用ではない認証情報、およびその他のシークレットを Secrets Manager に保存するには、次の手順を実行します。Amazon ElastiCache シークレットで、ローテーションを有効にする場合は、規定どおりの JSON 構造で、そのシークレットを保存する必要があります。

シークレットを作成するには、SecretsManagerReadWrite AWS 管理ポリシーによって付与されるアクセス許可が必要です。

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

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

  2. [Store a new secret] (新しいシークレットを保存する) を選択します。

  3. [Choose secret type] (シークレットタイプを選択する) ページで、次の操作を行います。

    1. [Secret type] (シークレットタイプ) で、[Other type of secret] (他の種類のシークレット) を選択します。

    2. [キーと値のペア] に、JSON の キーと値 ペアでシークレットを入力するか、[プレーンテキスト] タブを開き、任意の形式でシークレットを入力します。シークレットには最大 65536 バイトまで保存できます。

    3. [暗号化キー] には、シークレット内の値を暗号化するために Secrets Manager で使用する AWS KMS key を選択します。詳細については、「シークレット暗号化と復号」を参照してください。

      • 多くの場合、Secrets Manager に AWS マネージドキー を使用するときは、aws/secretsmanager を選択します。このキーを使用してもコストは発生しません。

      • 別の AWS アカウント からシークレットにアクセスする必要がある場合、または独自の KMSキーを使用してローテーションまたはキーポリシーを適用できるようにする場合は、リストからカスタマーマネージドキーを選択するか、[Add new key] (新しいキーを追加) を選択して作成します。カスタマーマネージドキーの使用料金の詳細については、「料金」を参照してください。

        必要なもの: KMS キーのアクセス許可 クロスアカウントアクセスの詳細については、「別のアカウントのユーザーの AWS Secrets Manager シークレットに対するアクセス許可」を参照してください。

    4. [Next] (次へ) をクリックします。

  4. [Configure secret] (シークレットを設定する) ページで、次の操作を行います。

    1. わかりやすいシークレット名説明を入力します。シークレット名は 1~512 文字の Unicode 文字で構成されます。

    2. (オプション) [Tags] (タグ) セクションで、タグをシークレットに追加します。タグ付け戦略については、「AWS Secrets Manager シークレットにタグ付けする」を参照してください。機密情報は暗号化されていないため、タグに保存しないでください。

    3. (オプション) [Resource permissions] (リソースに対するアクセス許可) でリソースポリシーをシークレットに追加するには、[Edit permissions] (アクセス許可の編集) をクリックします。詳しくは、「アクセス許可ポリシーを AWS Secrets Manager シークレットにアタッチする」 を参照してください。

    4. (オプション) [Replicate secret] (シークレットのレプリケート) で、シークレットを別の AWS リージョン にレプリケートするには、[Replicate secret] (シークレットをレプリケートする) をクリックします。シークレットのレプリケーションは、この段階で実行することも、後に戻ってきて実行することもできます。詳しくは、「シークレットを他のリージョンにレプリケートする」 を参照してください。

    5. [Next] (次へ) を選択します。

  5. (オプション) [Configure rotation] (ローテーションを設定する) ページで、シークレットの自動ローテーションを有効にできます。ローテーションをオフにしておいて、後でオンにすることもできます。詳しくは、「シークレットのローテーション」 を参照してください。[Next] (次へ) を選択します。

  6. [Review] (レビュー) ページで、シークレットの詳細を確認し、[Store] (保存) を選択します。

    Secrets Manager はシークレットのリストに戻ります。新しいシークレットが表示されない場合は、更新ボタンを選択します。

AWS CLI

コマンドシェルにコマンドを入力すると、コマンド履歴がアクセスされたり、ユーティリティからコマンドパラメータにアクセスされたりするリスクがあります。「AWS CLI を使用して AWS Secrets Manager のシークレットを保存する際のリスクを軽減する」を参照してください。

例 シークレットを作成する

次に、2 つのキーと値のペアを持つシークレットを作成する、create-secret の例をします。

aws secretsmanager create-secret \ --name MyTestSecret \ --description "My test secret created with the CLI." \ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"
例 JSON ファイルの認証情報からシークレットを作成する

次の create-secret の例では、ファイル内の認証情報からシークレットを作成しています。詳細については、「AWS CLI ユーザーガイド」の「ファイルから AWS CLI パラメータをロードする」を参照してください。

aws secretsmanager create-secret \ --name MyTestSecret \ --secret-string file://mycreds.json

mycreds.json の内容:

{ "username": "diegor", "password": "EXAMPLE-PASSWORD" }

AWS SDK

AWS SDK のいずれかを使用してシークレットを作成するには、CreateSecret アクションを使用します。詳しくは、「AWS SDK」 を参照してください。