Amazon VPC エンドポイントポリシーを使用してAmazon EC2 APIを制御する

Amazon EC2でIAMリソースポリシーをVPCエンドポイントにアタッチできるようになったと発表されました。
VPCエンドポイントポリシーをアタッチしAmazon EC2 APIへのアクセスをきめ細かく制御できます。

VPCエンドポイントポリシー

エンドポイントポリシーとは接続先のサービスへのアクセスを制御するポリシーなので、 インターネットを経由せずにAWSの内部で通信を可能とするVPCエンドポイントを制御するポリシーです。

エンドポイントポリシーの使用を開始するには

  • Amazon EC2のVPCエンドポイントを作成(com.amazonaws.region.ec2 )
  • 既存の VPC エンドポイントにポリシーを追加

する方法があります。

エンドポイントの作成時にポリシーをアタッチしない場合、サービスへのフルアクセスを許可するデフォルトのポリシーがアタッチされます。

ポリシーで定義できる内容

  • アクションを実行できるプリンシパル

  • 実行できるアクション

  • アクションを実行できるリソース

暗号化されていないボリュームでインスタンスを起動する権限を拒否するVPCエンドポイントポリシーの例です

{
    "Version": "2012-10-17",
    "Statement": [
    {
        "Action": "ec2:*",
        "Effect": "Allow",
        "Resource": "*"
    },
    {
        "Action": [
            "ec2:CreateVolume"
        ],
        "Effect": "Deny",
        "Resource": "*",
        "Condition": {
            "Bool": {
                "ec2:Encrypted": "false"
            }
        }
    },
    {
        "Action": [
            "ec2:RunInstances"
        ],
        "Effect": "Deny",
        "Resource": "*",
        "Condition": {
            "Bool": {
                "ec2:Encrypted": "false"
            }
        }
    }]
}

公式サイトより