共有された AMIで作成した Amazon EC2インスタンスが「終了済み」ステータスになってしまう

AWS

2023.3.28

Topics

はじめに

別の AWSアカウントから共有された AMIを使って EC2インスタンスを作成したところ、最初から「終了済み」ステータスとなってしまい、インスタンスが起動できない事象が発生しました。
本記事では、この事象の原因と対応方法をご紹介します。

原因

共有された AMIに含まれるストレージボリュームが、共有元 AWSアカウントのカスタマーマネージド KMSキーによって暗号化されていました。
カスタマーマネージドキーの利用権限を共有先の AWSアカウントに許可しない状態でインスタンスを作成した場合、「終了済み」ステータスとなり起動に失敗します。

共有元 AWSアカウントで対応すること

共有元 AWSアカウントにて、 EBS暗号化に使用されている カスタマーマネージドキーの利用権限を、共有先 AWSアカウントに対して許可する必要があります。

  1. KMS > カスタマー管理型のキー にて、EBS暗号化に使用したキーをクリックします。

  2. 「キーポリシー」タブで「編集」をクリックします。

  3. 以下のポリシーを追記します。<共有先 AWSアカウントID> には、共有先の AWSアカウントID(12桁の数値)を入力します。

    {
    "Sid": "Allow an external account to use this KMS key",
    "Effect": "Allow",
    "Principal": {
        "AWS": [
            "arn:aws:iam::<共有先 AWSアカウントID>:root"
        ]
    },
    "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
    ],
    "Resource": "*"
    }
    
    
  4. 「変更の保存」をクリックします。

共有先 AWSアカウントで対応すること

共有先 AWSアカウントにて、共有元カスタマーマネージドキーの利用を許可する IAMポリシーを作成し、IAMユーザーにアタッチする必要があります。

  1. IAM > ポリシー にて、「ポリシーを作成」をクリックします。

  2. 「ポリシーの作成」にて「JSON」タブを選択し、以下のポリシーを記載します。

    {
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowUseOfKeyInAccount<共有元 AWSアカウントID>",
            "Effect": "Allow",
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:DescribeKey"
            ],
            "Resource": "<共有元カスタマーマネージドキーの ARN>"
        }
    ]
    }
    

    <共有元 AWSアカウントID> には、共有元の AWSアカウントID(12桁の数値)を入力します。
    <共有元カスタマーマネージドキーの ARN> は、KMS > カスタマー管理型のキー > 対象カスタマーマネージドキー の「一般設定」にて確認できます。

  3. 「ポリシーの確認」画面にて任意の名前を設定し、IAMポリシーを作成します。

  4. EC2インスタンスを作成する IAMユーザーに対して、作成した IAMポリシーをアタッチします。

以上の対応を行うことで共有元カスタマーマネージドキーの利用が許可されますので、EC2インスタンスが起動できるようになります。

参考資料

特定の AWS アカウントとの AMI の共有 – Amazon Elastic Compute Cloud
他のアカウントのユーザーに KMS キーの使用を許可する – AWS Key Management Service

テックブログ新着情報のほか、AWSやGoogle Cloudに関するお役立ち情報を配信中!

GENSAI

2014年入社。 関東近郊の山と銭湯と飲み屋を巡り歩いてます。

Recommends

こちらもおすすめ

Special Topics

注目記事はこちら