별칭을 사용하여 CMK에 대한 액세스 제어 - AWS Key Management Service

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

별칭을 사용하여 CMK에 대한 액세스 제어

에 대한 액세스를 제어할 수 있습니다.AWS KMSCMK (고객 마스터 키) 는 CMK와 연결된 별칭을 기반으로 합니다. 이렇게 하려면KMS:요청별칭KMS:리소스 별칭조건 키를 사용합니다. 이 기능은AWS KMS에 대한 지원속성 기반 액세스 제어(ABAC).

kms:RequestAlias조건 키는 요청의 별칭을 기반으로 CMK에 대한 액세스를 허용하거나 거부합니다. 이kms:ResourceAliases조건 키는 CMK와 연결된 별칭을 기반으로 CMK에 대한 액세스를 허용하거나 거부합니다.

이러한 기능을 사용하면 별칭을 사용하여 CMK를 식별할 수 없습니다.resource정책 문의 요소. 별칭의 값 인 경우resource요소의 경우 정책은 별칭 리소스와 연결될 수 있는 CMK가 아닌 별칭 리소스에 적용됩니다.

참고

태그 및 별칭 변경이 CMK 인증에 영향을 미치려면 최대 5분이 걸릴 수 있습니다. 최근 변경 사항은 권한 부여에 영향을 미치기 전에 API 작업에 표시될 수 있습니다.

별칭을 사용하여 CMK에 대한 액세스를 제어할 때는 다음 사항을 고려하십시오.

  • 별칭을 사용하여최소 권한 액세스 권한을 부여합니다.. IAM 보안 주체에게 사용하거나 관리해야 하는 CMK에 필요한 권한만 부여합니다. 예를 들어 별칭을 사용하여 프로젝트에 사용되는 CMK를 식별합니다. 그런 다음 프로젝트 팀에게 프로젝트 별칭과 함께 CMK만 사용할 수 있는 권한을 부여합니다.

  • 교장에게 제공하는 것에 대해 조심하십시오.kms:CreateAlias,kms:UpdateAlias또는kms:DeleteAlias별칭을 추가, 편집, 삭제할 수 있는 권한을 부여합니다. 별칭을 사용하여 CMK에 대한 액세스를 제어하는 경우 별칭을 변경하면 보안 주체에 사용 권한이 없는 CMK를 사용할 수 있는 권한이 부여될 수 있습니다. 또한 다른 보안 주체가 작업을 수행하는 데 필요한 CMK에 대한 액세스를 거부할 수 있습니다.

  • 에서 보안 주체를 검토하십시오. AWS 계정 현재 별칭을 관리하고 필요한 경우 권한을 조정할 수 있는 권한이 있는 키 정책을 변경하거나 권한 부여를 생성할 권한이 없는 주요 관리자는 별칭을 관리할 권한이 있는 경우 CMK에 대한 액세스를 제어할 수 있습니다.

    예를 들어, 콘솔키 관리자에 대한 기본 키 정책includeskms:CreateAlias,kms:DeleteAlias, 및kms:UpdateAlias권한을 사용합니다. IAM 정책에서 모든 CMK에 대한 별칭 권한을 부여할 수 있습니다. AWS 계정 . 예를 들어AWS 키 관리서비스고급 사용자관리형 정책을 사용하면 보안 주체가 모든 CMK에 대한 별칭을 생성, 삭제 및 나열할 수 있지만 이를 업데이트할 수는 없습니다.

  • 별칭에 따라 달라지는 정책을 설정하기 전에 AWS 계정 . 정책을 포함하려는 별칭에만 적용해야 합니다. 사용CloudTrail 로그CloudWatch 경보를 클릭하여 CMK에 대한 액세스에 영향을 줄 수 있는 별칭 변경 사항을 알려줍니다. 또한,ListAliases응답에는 각 별칭에 대한 생성 날짜 및 최종 업데이트 날짜가 포함됩니다.

  • 별칭 정책 조건은 패턴 일치를 사용하며 별칭의 특정 인스턴스에 연결되지 않습니다. 별칭 기반 조건 키를 사용하는 정책은 패턴과 일치하는 모든 새 별칭과 기존 별칭에 영향을 줍니다. 정책 조건과 일치하는 별칭을 삭제했다가 다시 만들면 이전 별칭과 마찬가지로 새 별칭에도 조건이 적용됩니다.

kms:RequestAlias조건 키는 작업 요청에 명시적으로 지정된 별칭에 의존합니다. 이kms:ResourceAliases조건 키는 요청에 표시되지 않더라도 CMK와 연결된 별칭에 따라 달라집니다.

KMS:요청별칭

요청에서 CMK를 식별하는 별칭을 기반으로 CMK에 대한 액세스를 허용하거나 거부합니다. 이KMS:요청별칭조건 키키 정책또는 IAM 정책을 사용합니다. 별칭을 사용하여 요청에서 CMK를 식별하는 작업에 적용됩니다.암호화 작업,DescribeKey, 및GetPublicKey. 다음과 같은 별칭 작업에는 유효하지 않습니다.CreateAlias또는DeleteAlias.

조건 키에서별칭 이름또는 별칭 이름 패턴입니다. 지정할 수는 없습니다.별칭 ARN.

예를 들어 다음 키 정책 설명을 통해 보안 주체가 CMK에 대해 지정된 작업을 사용할 수 있습니다. 이 권한은 요청이 포함된 별칭을 사용하는 경우에만 유효합니다.alpha를 사용하여 CMK를 식별할 수 있습니다.

{ "Sid": "Key policy using a request alias condition", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/alpha-developer" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringLike": { "kms:RequestAlias": "alias/*alpha*" } } }

승인된 보안 주체의 다음 예제 요청은 조건을 충족합니다. 그러나, 사용 하는 요청키 ID,키 ARN또는 다른 별칭이 조건을 충족하지 못하는 경우 이러한 값이 동일한 CMK를 식별하더라도 해당 조건을 충족하지 못할 수 있습니다.

$ aws kms describe-key --key-id "arn:aws:kms:us-west-2:111122223333:alias/project-alpha"

KMS:리소스 별칭

별칭이 요청에 사용되지 않더라도 CMK와 연결된 별칭을 기반으로 CMK에 대한 액세스를 허용하거나 거부합니다. 이KMS:리소스 별칭조건 키를 사용하면 별칭 또는 별칭 패턴 (예:alias/test*를 사용하여 동일한 리전에 있는 여러 CMK에 대한 액세스를 제어할 수 있도록 IAM 정책에서 사용할 수 있습니다. 그것은 모든 경우에 유효합니다.AWS KMSCMK를 사용 하는 작업.

예를 들어, 다음 IAM 정책을 사용하면 보안 주체가 CMK에 대한 자동 키 회전을 AWS 계정 . 그러나 사용 권한은 별칭이 있는 CMK에만 적용됩니다.restricted.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AliasBasedIAMPolicy", "Effect": "Allow", "Action": [ "kms:EnableKeyRotation", "kms:DisableKeyRotation", "kms:GetKeyRotationStatus" ], "Resource": [ "arn:aws:kms:*:111122223333:key/*", "arn:aws:kms:*:444455556666:key/*" ], "Condition": { "ForAnyValue:StringLike": { "kms:ResourceAliases": "alias/restricted*" } } } ] }

kms:ResourceAliases조건은 요청이 아닌 리소스의 조건입니다. 따라서 별칭을 지정하지 않은 요청은 여전히 조건을 만족할 수 있습니다.

일치하는 별칭을 지정하는 다음 예제 요청은 조건을 충족합니다.

$ aws kms enable-key-rotation --key-id "alias/restricted-project"

그러나 다음 예제 요청은 지정된 CMK에restricted, 해당 별칭이 요청에 사용되지 않더라도.

$ aws kms enable-key-rotation --key-id "1234abcd-12ab-34cd-56ef-1234567890ab"