かべぎわブログ

技術的なことについてかけたらいいな…

KMSのAWSマネージド型キーのキーポリシーを確認する

概要

KMSのAWSマネージド型キーのキーポリシーを確認してみます。
AWSマネージド型キーはカスタマー管理型のキーとちがい、マネジメントコンソールからキーポリシーを確認することはできませんが、AWSCLIを利用することで確認することができます。

コマンド

こんなかんじのコマンドで確認することができます。
この例はaws/s3のマネージド型キーのキーポリシーが確認できます。
policy-nameはdefault固定です。

$ aws kms get-key-policy --key-id wawawa --policy-name default
{
    "Policy": "{\n  \"Version\" : \"2012-10-17\",\n  \"Id\" : \"auto-s3-2\",\n  \"Statement\" : [ {\n    \"Sid\" : \"Allow access through S3 for all principals in the account that are authorized to use S3\",\n    \"Effect\" : \"Allow\",\n    \"Principal\" : {\n      \"AWS\" : \"*\"\n    },\n    \"Action\" : [ \"kms:Encrypt\", \"kms:Decrypt\", \"kms:ReEncrypt*\", \"kms:GenerateDataKey*\", \"kms:DescribeKey\" ],\n    \"Resource\" : \"*\",\n    \"Condition\" : {\n      \"StringEquals\" : {\n        \"kms:CallerAccount\" : \"123456789012\",\n        \"kms:ViaService\" : \"s3.ap-northeast-1.amazonaws.com\"\n      }\n    }\n  }, {\n    \"Sid\" : \"Allow direct access to key metadata to the account\",\n    \"Effect\" : \"Allow\",\n    \"Principal\" : {\n      \"AWS\" : \"arn:aws:iam::123456789012:root\"\n    },\n    \"Action\" : [ \"kms:Describe*\", \"kms:Get*\", \"kms:List*\" ],\n    \"Resource\" : \"*\"\n  } ]\n}"
}

おわりに

AWSマネージド型キーのキーポリシーが確認できます。
マネージドポリシーでいいかーとおもって使っていると権限が足りなくて実は裏でエラーになっているみたいなことになったりならなかったりするので確認しておくとよいです。

Amazon Web Services エンタープライズ基盤設計の基本

Amazon Web Services エンタープライズ基盤設計の基本