기본 키 정책 - AWS Key Management Service

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

기본 키 정책

KMS 키를 생성할 때 새 KMS 키에 대한 키 정책을 지정할 수 있습니다. 키를 제공하지 않으면 자동으로 생성합니다. AWS KMS AWS KMS 사용하는 기본 키 정책은 AWS KMS 콘솔에서 키를 생성하는지 아니면 AWS KMS API를 사용하는지에 따라 달라집니다.

프로그래밍 방식으로 KMS 키를 생성하는 경우 기본 키 정책

키 정책을 지정하지 않고 AWS KMS API를 사용하여 프로그래밍 방식으로 KMS 키를 생성 (AWS Command Line Interface또는 AWS SDK 사용 포함 AWS Tools for PowerShell) 하면 매우 간단한 기본 키 정책이 AWS KMS 적용됩니다. 이 기본 키 정책에는 KMS 키 소유자에게 IAM 정책을 사용하여 KMS 키의 모든 AWS KMS 작업에 대한 액세스를 허용할 수 있는 권한을 부여하는 하나의 정책 설명이 있습니다. AWS 계정 이 정책 설명에 대한 자세한 내용은 AWS 계정 에 대한 액세스 허용 및 IAM 정책 활성화 섹션을 참조하세요.

를 사용하여 KMS 키를 생성할 때의 기본 키 정책 AWS Management Console

를 사용하여 KMS 키를 생성하면 IAM 정책에 대한 액세스를 AWS 계정 허용하고 IAM 정책을 활성화하는 정책 설명으로 키 정책이 시작됩니다. AWS Management Console그러면 콘솔이 주요 관리자 명령문, 주요 사용자 명령문 및 보안 주체가 다른 서비스와 함께 KMS 키를 사용할 수 있도록 허용하는 명령문 (대부분의 키 유형에서) 을 추가합니다. AWS AWS KMS 콘솔의 기능을 사용하여 IAM 사용자, IAM 역할, 주요 관리자와 주요 사용자 (또는 둘 다) 를 지정할 수 있습니다. AWS 계정

권한

AWS 계정 에 대한 액세스 허용 및 IAM 정책 활성화

다음 기본 키 정책 문은 매우 중요합니다.

  • KMS 키를 AWS 계정 소유한 사람에게 KMS 키에 대한 전체 액세스 권한을 부여합니다.

    다른 AWS 리소스 정책과 달리 AWS KMS 키 정책은 계정이나 해당 ID에 대한 권한을 자동으로 부여하지 않습니다. 계정 관리자에게 권한을 부여하려면 키 정책에 이와 같이 이 권한을 제공하는 명시적인 문이 포함되어야 합니다.

  • 계정이 IAM 정책을 사용하여 키 정책뿐만 아니라 KMS 키에 대한 액세스를 허용할 수 있도록 합니다.

    이 권한이 없으면 키에 대한 액세스를 허용하는 IAM 정책은 효과가 없지만 키에 대한 액세스를 거부하는 IAM 정책은 여전히 유효합니다.

  • 이는 삭제할 수 없는 계정 루트 사용자를 포함한 계정 관리자에게 액세스 제어 권한을 부여하여 키를 관리할 수 없게 될 위험을 줄입니다.

다음 키 정책 문은 프로그래밍 방식으로 생성된 KMS 키에 대한 전체 기본 키 정책입니다. 이는 콘솔에서 만든 KMS 키에 대한 기본 키 정책의 첫 번째 정책 설명입니다. AWS KMS

{ "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:*", "Resource": "*" }
IAM 정책에서 KMS 키에 대한 액세스를 허용할 수 있습니다.

위에 표시된 키 정책 설명은 키 소유자에게 IAM 정책을 사용할 수 AWS 계정 있는 권한과 키 정책을 사용하여 KMS 키에 대한 모든 작업 (kms:*) 을 허용할 수 있는 권한을 부여합니다.

이 키 정책 문의 보안 주체는 계정 보안 주체이며 arn:aws:iam::account-id:root 형식의 ARN으로 표시됩니다. 계정 보안 주체는 AWS 계정과 해당 관리자를 나타냅니다.

키 정책 문의 보안 주체가 계정 보안 주체인 경우 정책 문에서는 IAM 보안 주체에 KMS 키를 사용할 권한을 부여하지 않습니다. 대신, 계정이 IAM 정책을 사용하여 정책 문에 지정된 권한을 위임할 수 있도록 허용합니다. 이 기본 키 정책 문은 계정이 IAM 정책을 사용하여 KMS 키에 대한 모든 작업(kms:*) 권한을 위임할 수 있도록 허용합니다.

는 KMS 키를 관리할 수 없게 될 위험을 줄입니다.

다른 AWS 리소스 정책과 달리 AWS KMS 키 정책은 계정이나 계정 주체에게 권한을 자동으로 부여하지 않습니다. 계정 보안 주체를 포함한 모든 보안 주체에게 권한을 부여하려면 권한을 명시적으로 제공하는 키 정책 문을 사용해야 합니다. 계정 보안 주체 또는 다른 보안 주체에게 KMS 키에 대한 액세스 권한을 부여할 필요는 없습니다. 그러나 계정 보안 주체에게 액세스 권한을 부여하면 키를 관리할 수 없게 되는 문제를 방지할 수 있습니다.

예를 들어 한 명의 사용자에게만 KMS 키에 대한 액세스 권한을 부여하는 키 정책을 만들었다고 가정해 보겠습니다. 그런 다음 해당 사용자를 삭제하면 키를 관리할 수 없게 되므로 AWS Support에 문의하여 KMS 키에 대한 액세스 권한을 다시 받아야 합니다.

위에 표시된 키 정책 설명은 계정 루트 사용자를 포함한 계정 AWS 계정 주체와 관리자를 대표하는 계정 주체에게 키 제어 권한을 부여합니다. 계정 루트 사용자는 AWS 계정을 삭제하지 않으면 삭제할 수 없는 유일한 보안 주체입니다. IAM 모범 사례에서는 긴급 상황을 제외하고는 계정 루트 사용자를 대신하여 조치를 취하는 것을 권장하지 않습니다. 하지만 KMS 키에 액세스할 수 있는 다른 모든 사용자 및 역할을 삭제할 경우 계정 루트 사용자 역할을 해야 할 수도 있습니다.

키 관리자가 KMS 키를 관리하도록 허용

콘솔이 생성한 기본 키 정책을 통해 해당 계정에서 IAM 사용자와 역할을 선택하고 이들을 키 관리자로 지정할 수 있습니다. 이 문은 키 관리자 문이라고 합니다. 키 관리자는 KMS 키를 관리할 수 있는 권한이 있지만 암호화 작업에 KMS 키를 사용할 수 있는 권한은 없습니다. 기본 보기 또는 정책 보기에서 KMS 키를 생성할 때 키 관리자 목록에 IAM 사용자와 역할을 추가할 수 있습니다.

주의

키 관리자는 키 정책을 변경하고 권한 부여를 생성할 수 있는 권한을 가지므로 이 정책에 지정되지 않은 AWS KMS 권한을 자신과 다른 사람에게 부여할 수 있습니다.

태그 및 별칭을 관리할 권한이 있는 보안 주체는 KMS 키에 대한 액세스를 제어할 수도 있습니다. 자세한 내용은 AWS KMS의 ABAC 섹션을 참조하세요.

참고

IAM 모범 사례는 장기 보안 인증 정보가 있는 IAM 사용자의 사용을 장려하지 않습니다. 가능할 경우, 임시 보안 인증 정보를 제공하는 IAM 역할을 사용하세요. 자세한 내용은 IAM 사용 설명서IAM의 보안 모범 사례를 참조하세요.

다음은 AWS KMS 콘솔의 기본 보기에서 키 관리자 문을 나타낸 예제입니다.

콘솔의 기본 키 정책의 키 관리자, 기본 보기

다음은 AWS KMS 콘솔의 기본 보기의 예제 키 관리자 문입니다. 이 키 관리자 문은 단일 리전 대칭 암호화 KMS 키를 위한 것입니다.

{ "Sid": "Allow access for Key Administrators", "Effect": "Allow", "Principal": {"AWS":"arn:aws:iam::111122223333:role/ExampleAdminRole"}, "Action": [ "kms:Create*", "kms:Describe*", "kms:Enable*", "kms:List*", "kms:Put*", "kms:Update*", "kms:Revoke*", "kms:Disable*", "kms:Get*", "kms:Delete*", "kms:TagResource", "kms:UntagResource", "kms:ScheduleKeyDeletion", "kms:CancelKeyDeletion", "kms:RotateKeyOnDemand" ], "Resource": "*" }

가장 일반적인 KMS 키인 단일 리전 대칭 KMS 키에 대한 기본 키 관리자 문은 다음과 같은 권한을 허용합니다. 이러한 권한에 대한 자세한 내용은 AWS KMS 권한 섹션을 참조하세요.

AWS KMS 콘솔을 사용하여 KMS 키를 생성하면 콘솔은 사용자가 지정한 사용자와 역할을 키 관리자 명령문의 Principal 요소에 추가합니다.

많은 경우 이러한 권한에 와일드카드 문자(*)가 포함되며, 지정된 동사로 시작하는 모든 권한이 허용됩니다. 따라서 새 API 작업을 AWS KMS 추가하면 주요 관리자가 해당 작업을 자동으로 사용할 수 있습니다. 새 작업을 포함하도록 키 정책을 업데이트할 필요는 없습니다. 키 관리자를 고정된 API 작업 집합으로 제한하려는 경우 키 정책을 변경할 수 있습니다.

kms:Create*

kms:CreateAliaskms:CreateGrant를 허용합니다. (kms:CreateKey 권한은 IAM 정책에서만 유효)

kms:Describe*

kms:DescribeKey를 허용합니다. AWS Management Console에서 KMS 키의 키 세부 정보 페이지를 보려면 kms:DescribeKey 권한이 필요합니다.

kms:Enable*

kms:EnableKey를 허용합니다. 대칭 암호화 KMS 키의 경우 kms:EnableKeyRotation도 허용합니다.

kms:List*

kms:ListGrants, kms:ListKeyPolicieskms:ListResourceTags를 허용합니다. ( AWS Management Console에서 KMS 키를 보는 데 필요한 kms:ListAliaseskms:ListKeys 권한은 IAM 정책에서만 유효)

kms:Put*

kms:PutKeyPolicy를 허용합니다. 이 권한은 키 관리자가 이 KMS 키에 대한 키 정책을 변경하도록 허용합니다.

kms:Update*

kms:UpdateAliaskms:UpdateKeyDescription을 허용합니다. 다중 리전 키의 경우 이 KMS 키에서 kms:UpdatePrimaryRegion을 허용합니다.

kms:Revoke*

키 관리자가 권한 부여에서 사용 중지되는 보안 주체가 아니어도 권한 부여를 삭제할 수 있도록 kms:RevokeGrant를 허용합니다.

kms:Disable*

kms:DisableKey를 허용합니다. 대칭 암호화 KMS 키의 경우 kms:DisableKeyRotation도 허용합니다.

kms:Get*

kms:GetKeyPolicykms:GetKeyRotationStatus를 허용합니다. 가져온 키 구성 요소가 있는 KMS 키의 경우 kms:GetParametersForImport를 허용합니다. 비대칭 KMS 키의 경우 kms:GetPublicKey를 허용합니다. AWS Management Console에서 KMS 키의 키 정책을 보려면 kms:GetKeyPolicy 권한이 필요합니다.

kms:Delete*

kms:DeleteAlias를 허용합니다. 가져온 키 구성 요소가 있는 키의 경우 kms:DeleteImportedKeyMaterial을 허용합니다. kms:Delete* 권한은 키 관리자가 KMS 키(ScheduleKeyDeletion)를 삭제하도록 허용하지 않습니다.

kms:TagResource

키 관리자가 KMS 키에 태그를 추가할 수 있도록 하는 kms:TagResource를 허용합니다. 태그를 사용하여 KMS 키에 대한 액세스를 제어할 수도 있으므로 이 권한을 통해 관리자는 KMS 키에 대한 액세스를 허용하거나 거부할 수 있습니다. 자세한 내용은 AWS KMS의 ABAC 섹션을 참조하세요.

kms:UntagResource

키 관리자가 KMS 키에 태그를 삭제할 수 있도록 하는 kms:UntagResource를 허용합니다. 태그를 사용하여 키에 대한 액세스를 제어할 수 있으므로 이 권한을 통해 관리자는 KMS 키에 대한 액세스를 허용하거나 거부할 수 있습니다. 자세한 내용은 AWS KMS의 ABAC 섹션을 참조하세요.

kms:ScheduleKeyDeletion

키 관리자가 이 KMS 키를 삭제할 수 있도록 하는 kms:ScheduleKeyDeletion을 허용합니다. 이 권한을 삭제하려면 키 관리자가 이 키를 삭제하도록 허용(Allow key administrators to delete this key) 옵션을 삭제합니다.

kms:CancelKeyDeletion

키 관리자가 이 KMS 키 삭제를 취소할 수 있도록 하는 kms:CancelKeyDeletion를 허용합니다. 이 권한을 삭제하려면 키 관리자가 이 키를 삭제하도록 허용(Allow key administrators to delete this key) 옵션을 삭제합니다.

kms:RotateKeyOnDemand

허용 kms:RotateKeyOnDemand- 이를 통해 키 관리자는 이 KMS 키의 키 구성 요소를 온디맨드 방식으로 교체할 수 있습니다.

 

AWS KMS 특수 목적 키를 생성할 때 기본 키 관리자 명령문에 다음 권한을 추가합니다.

kms:ImportKeyMaterial

kms:ImportKeyMaterial 권한은 키 관리자가 키 구성 요소를 KMS로 가져오도록 허용합니다. 이 권한은 키 구성 요소 없이 KMS 키를 생성하는 경우에만 키 정책에 포함됩니다.

kms:ReplicateKey

kms:ReplicateKey권한을 통해 키 관리자는 다른 지역에 다중 지역 기본 키의 복제본을 만들 수 있습니다. AWS 이 권한은 다중 리전 기본 또는 복제본 키를 생성하는 경우에만 키 정책에 포함됩니다.

kms:UpdatePrimaryRegion

kms:UpdatePrimaryRegion 권한은 키 관리자가 다중 리전 복제본 키를 다중 리전 기본 키로 변경하도록 허용합니다. 이 권한은 다중 리전 기본 또는 복제본 키를 생성하는 경우에만 키 정책에 포함됩니다.

키 사용자가 KMS 키를 사용하도록 허용

콘솔이 KMS 키에 대해 생성하는 기본 키 정책을 사용하면 계정과 외부 AWS 계정계정에서 IAM 사용자 및 IAM 역할을 선택하여 주요 사용자로 지정할 수 있습니다.

콘솔은 키 사용자에 대한 키 정책에 두 개의 정책 문을 추가합니다.

KMS 키를 생성할 때 IAM 사용자, IAM 역할 및 AWS 계정 기타를 주요 사용자 목록에 추가할 수 있습니다. 다음 이미지에서 보듯이, 키 정책에 대한 콘솔의 기본 보기로 목록을 편집할 수도 있습니다. 키 정책의 기본 보기는 키 세부 정보 페이지에 있습니다. 다른 AWS 계정 사용자가 KMS 키를 사용할 수 있도록 허용하는 방법에 대한 자세한 내용은 을 참조하십시오. 다른 계정의 사용자가 KMS를 사용하도록 허용

참고

IAM 모범 사례는 장기 보안 인증 정보가 있는 IAM 사용자의 사용을 장려하지 않습니다. 가능할 경우, 임시 보안 인증 정보를 제공하는 IAM 역할을 사용하세요. 자세한 내용은 IAM 사용 설명서IAM의 보안 모범 사례를 참조하세요.

콘솔의 기본 키 정책의 키 사용자, 기본 보기

단일 리전 대칭에 대한 기본 키 사용자 문은 다음과 같은 권한을 허용합니다. 각 권한에 대한 자세한 내용은 AWS KMS 권한 섹션을 참조하세요.

AWS KMS 콘솔을 사용하여 KMS 키를 생성하면 콘솔은 사용자가 지정하는 사용자 및 역할을 각 키 사용자 설명의 Principal 요소에 추가합니다.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::111122223333:role/ExampleRole", "arn:aws:iam::444455556666:root" ]}, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::111122223333:role/ExampleRole", "arn:aws:iam::444455556666:root" ]}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} }

키 사용자가 암호화 작업에 KMS 키를 사용하도록 허용

키 사용자는 KMS 키에서 지원되는 모든 암호화 작업에서 KMS 키를 직접 사용할 수 있는 권한이 있습니다. 또한 이 DescribeKey작업을 사용하여 AWS KMS 콘솔에서 KMS 키에 대한 세부 정보를 가져오거나 AWS KMS API 작업을 사용하여 KMS 키에 대한 세부 정보를 얻을 수 있습니다.

기본적으로 AWS KMS 콘솔은 다음 예와 같은 주요 사용자 설명을 기본 키 정책에 추가합니다. 서로 다른 API 작업을 지원하므로 대칭 암호화 KMS 키, HMAC KMS 키, 퍼블릭 키 암호화를 위한 비대칭 KMS 키, 서명 및 확인을 위한 비대칭 KMS 키에 대한 정책 문의 작업은 약간 다릅니다.

대칭 암호화 KMS 키

콘솔은 대칭 암호화 KMS 키에 대한 키 정책에 다음 문을 추가합니다.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/ExampleKeyUserRole"}, "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:Encrypt", "kms:GenerateDataKey*", "kms:ReEncrypt*" ], "Resource": "*" }
HMAC KMS 키

콘솔은 HMAC KMS 키에 대한 키 정책에 다음 문을 추가합니다.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/ExampleKeyUserRole"}, "Action": [ "kms:DescribeKey", "kms:GenerateMac", "kms:VerifyMac" ], "Resource": "*" }
퍼블릭 키 암호화를 위한 비대칭 KMS 키

콘솔은 키 사용이 암호화 및 해독인 비대칭 KMS 키에 대한 키 정책에 다음 문을 추가합니다.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleKeyUserRole" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:DescribeKey", "kms:GetPublicKey" ], "Resource": "*" }
서명 및 확인을 위한 비대칭 KMS 키

콘솔은 키 사용이 서명 및 확인인 비대칭 KMS 키에 대한 키 정책에 다음 문을 추가합니다.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/ExampleKeyUserRole"}, "Action": [ "kms:DescribeKey", "kms:GetPublicKey", "kms:Sign", "kms:Verify" ], "Resource": "*" }
공유 암호 도출을 위한 비대칭 KMS 키

콘솔은 키 사용이 키 계약인 비대칭 KMS 키에 대한 키 정책에 다음 설명을 추가합니다.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/ExampleKeyUserRole"}, "Action": [ "kms:DescribeKey", "kms:GetPublicKey", "kms:DeriveSharedSecret" ], "Resource": "*" }

이러한 문의 작업은 키 사용자에게 다음 권한을 제공합니다.

kms:Encrypt

키 사용자가 이 KMS 키를 사용하여 데이터를 암호화하도록 허용합니다.

kms:Decrypt

키 사용자가 이 KMS 키를 사용하여 데이터를 해독하도록 허용합니다.

kms:DeriveSharedSecret

주요 사용자가 이 KMS 키를 사용하여 공유 암호를 도출할 수 있습니다.

kms:DescribeKey

키 사용자가 식별자, 생성 날짜, 키 상태 등 이 KMS 키에 대한 세부 정보를 가져오도록 허용합니다. 또한 키 사용자가 콘솔에 KMS 키에 대한 세부 정보를 표시할 수 있습니다. AWS KMS

kms:GenerateDataKey*

키 사용자가 클라이언트 측 암호화 작업을 위해 대칭 데이터 키 또는 비대칭 데이터 키 페어를 요청하도록 허용합니다. 콘솔은* 와일드카드 문자를 사용하여 GenerateDataKey, GenerateDataKeyWithoutPlaintextGenerateDataKeyPair, 및 API 작업에 대한 권한을 나타냅니다. GenerateDataKeyPairWithoutPlaintext 이러한 권한은 데이터 키를 암호화하는 대칭 KMS 키에만 유효합니다.

kms: GenerateMac

키 사용자가 HMAC KMS 키를 사용하여 HMAC 태그를 생성하도록 허용합니다.

kms: GetPublicKey

키 사용자가 비대칭 KMS 키의 퍼블릭 키를 다운로드하도록 허용합니다. 이 공개 키를 공유하는 당사자는 외부 데이터를 암호화할 수 있습니다. AWS KMS그러나, 그 암호문은 AWS KMS에서 Decrypt 작업을 호출해야만 해독할 수 있습니다.

kms: * ReEncrypt

키 사용자가 원래 이 KMS 키로 암호화한 데이터를 다시 암호화하거나, 이 KMS 키를 이용해 이전에 암호화한 데이터를 다시 암호화하도록 허용합니다. 이 ReEncrypt작업을 수행하려면 소스 및 대상 KMS 키에 모두 액세스할 수 있어야 합니다. 이를 위해 원본 KMS 키에 대한 kms:ReEncryptFrom 권한과 대상 KMS 키에 대한 kms:ReEncryptTo 권한을 허용할 수 있습니다. 그러나 단순화를 위해 콘솔에서는 두 KMS 키 모두에 대해 kms:ReEncrypt*를 허용합니다(* 와일드카드 문자 사용).

kms:Sign

키 사용자가 이 KMS 키를 사용하여 메시지에 서명하도록 허용합니다.

kms:Verify

키 사용자가 이 KMS 키를 사용하여 서명을 확인하도록 허용합니다.

kms: VerifyMac

키 사용자가 HMAC KMS 키를 사용하여 HMAC 태그를 확인하도록 허용합니다.

키 사용자가 AWS 서비스와 함께 KMS 키를 사용하도록 허용

또한 콘솔의 기본 키 정책은 권한 부여를 사용하는 AWS 서비스에서 데이터를 보호하는 데 필요한 권한을 주요 사용자에게 부여합니다. AWS 서비스에서는 대개 권한 부여를 사용하여 KMS 키 사용에 대한 구체적이고 제한된 권한을 얻습니다.

이 키 정책 설명을 사용하면 키 사용자가 KMS 키에 대한 권한 부여를 생성, 확인 및 취소할 수 있지만, 이는 KMS 키에 대한 권한 부여 요청이 통합된AWS 서비스에서 오는 경우에만 가능합니다. AWS KMS kms: GrantIsFor AWSResource 정책 조건에서는 사용자가 이러한 권한 부여 작업을 직접 호출하는 것을 허용하지 않습니다. 키 사용자가 허용하면 AWS 서비스가 사용자를 대신하여 권한을 생성하여 서비스가 KMS 키를 사용하여 사용자 데이터를 보호하도록 허용할 수 있습니다.

키 사용자는 통합 서비스와 함께 KMS 키를 사용하려면 이러한 권한 부여 권한이 필요하지만 이러한 권한으로는 충분하지 않습니다. 키 사용자는 통합 서비스를 사용할 수 있는 권한도 필요합니다. 통합되는 서비스에 대한 액세스 권한을 사용자에게 부여하는 방법에 대한 자세한 내용은 통합 AWS 서비스 설명서를 참조하십시오. AWS KMS

{ "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/ExampleKeyUserRole"}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} }

예를 들어 키 사용자는 다음과 같은 방법으로 KMS 키에서 이러한 권한을 사용할 수 있습니다.

  • 이 KMS 키를 Amazon Elastic Block Store(Amazon EBS) 및 Amazon Elastic Compute Cloud(Amazon EC2)와 함께 사용하여 암호화된 EBS 볼륨을 EC2 인스턴스에 연결합니다. 키 사용자는 KMS 키를 사용할 수 있는 Amazon EC2 권한을 묵시적으로 부여해 암호화된 볼륨을 인스턴스에 연결합니다. 자세한 정보는 아마존 엘라스틱 블록 스토어 (아마존 EBS) 가 사용하는 방법 AWS KMS을 참조하세요.

  • Amazon Redshift와 함께 이 KMS 키를 사용하여 암호화된 클러스터를 시작합니다. 키 사용자는 KMS 키를 사용할 수 있는 Amazon Redshift 권한을 묵시적으로 부여해 암호화된 클러스터를 시작하고 암호화된 스냅샷을 생성합니다. 자세한 정보는 Amazon Redshift에서 AWS KMS 사용 방법을 참조하세요.

  • 권한 부여를 사용해 해당 서비스로 암호화된 리소스를 생성, 관리 또는 사용하는 AWS KMS와 통합된 다른AWS 서비스와 함께 이 KMS 키를 사용합니다.

기본 키 정책은 키 사용자가 권한 부여를 사용하는 모든 통합 서비스에 권한 부여 권한을 위임하도록 허용합니다. 하지만 권한을 지정된 AWS 서비스에 제한하는 사용자 지정 키 정책을 만들 수 있습니다. 자세한 내용은 kms: ViaService 조건 키를 참조하세요.