AWS KMSAWS 니트로 엔클레이브의 조건 키 - AWS Key Management Service

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

AWS KMSAWS 니트로 엔클레이브의 조건 키

AWS Nitro Enclaves는 엔클레이브라고 하는 격리된 컴퓨팅 환경을 만들어 매우 민감한 데이터를 보호하고 처리할 수 있는 Amazon EC2 기능입니다. AWS KMS Nitro 엔클레이브를 지원하는 조건 키를 제공합니다. AWS 이러한 조건 키는 니트로 엔클레이브 요청 시에만 유효합니다 AWS KMS .

엔클레이브에서 서명된 증명 문서로 Decrypt DeriveSharedSecretGenerateDataKeyGenerateDataKeyPair,,, 또는 GenerateRandomAPI연산을 호출하면 증명 문서의 공개 키로 응답의 일반 텍스트를 APIs 암호화하고 일반 텍스트 대신 암호문을 반환합니다. 이 사이퍼텍스트는 엔클레이브의 프라이빗 키를 사용해야만 해독할 수 있습니다. 자세한 내용은 AWS 니트로 엔클레이브 사용 방법 AWS KMS 단원을 참조하십시오.

다음 조건 키를 사용하면 서명된 증명 문서의 내용에 따라 이러한 작업에 대한 사용 권한을 제한할 수 있습니다. 작업을 허용하기 전에 엔클레이브의 증명 문서를 이러한 조건 키의 값과 비교합니다. AWS KMS AWS KMS

kms: 384 RecipientAttestation ImageSha

AWS KMS 컨디션 키 조건 유형 값 유형 API오퍼레이션 정책 유형

kms:RecipientAttestation:ImageSha384

String

단일 값

Decrypt

DeriveSharedSecret

GenerateDataKey

GenerateDataKeyPair

GenerateRandom

키 정책 및 IAM 정책

kms:RecipientAttestation:ImageSha384조건 키는 요청의 GenerateRandom 서명된 증명 문서의 이미지 다이제스트가 조건 KMS 키의 값과 일치하는 경우 Decrypt DeriveSharedSecret GenerateDataKeyGenerateDataKeyPair,,, 및 키에 대한 액세스를 제어합니다. 증명 문서의 ImageSha384 값은 PCR 0에 해당합니다. 이 조건 키는 요청의 Recipient 파라미터가 Nitro 엔클레이브의 서명된 증명 문서를 지정하는 경우에만 유효합니다. AWS

이 값은 Nitro 거주지에 대한 요청 CloudTrail이벤트에도 포함됩니다. AWS KMS

참고

이 조건 키는 IAM 콘솔이나 IAM 서비스 인증 참조에 표시되지 않더라도 주요 IAM 정책 설명 및 정책 설명에서 유효합니다.

예를 들어 다음 키 정책 설명에서는 data-processing 역할이 복호화,, DeriveSharedSecretGenerateDataKeyGenerateDataKeyPair, 및 GenerateRandom작업에 KMS 키를 사용할 수 있도록 허용합니다. kms:RecipientAttestation:ImageSha384조건 키는 요청에 있는 증명 문서의 이미지 다이제스트 값 (PCR0) 이 조건의 이미지 다이제스트 값과 일치하는 경우에만 작업을 허용합니다. 이 조건 키는 요청의 Recipient 파라미터가 Nitro 엔클레이브의 서명된 증명 문서를 지정하는 경우에만 유효합니다. AWS

요청에 AWS Nitro 거주지의 유효한 증명 문서가 포함되지 않은 경우 이 조건이 충족되지 않아 허가가 거부됩니다.

{ "Sid" : "Enable enclave data processing", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:role/data-processing" }, "Action": [ "kms:Decrypt", "kms:DeriveSharedSecret", "kms:GenerateDataKey", "kms:GenerateDataKeyPair", "kms:GenerateRandom" ], "Resource" : "*", "Condition": { "StringEqualsIgnoreCase": { "kms:RecipientAttestation:ImageSha384": "9fedcba8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef1abcdef0abcdef1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef99" } } }

kms:: < _ID> RecipientAttestation PCR PCR

AWS KMS 조건 키 조건 유형 값 유형 API오퍼레이션 정책 유형

kms:RecipientAttestation:PCR<PCR_ID>

String

단일 값

Decrypt

DeriveSharedSecret

GenerateDataKey

GenerateDataKeyPair

GenerateRandom

키 정책 및 IAM 정책

kms:RecipientAttestation:PCR<PCR_ID>조건 키는 플랫폼 구성이 요청의 GenerateRandom 서명된 증명 문서의 등록 () 이 조건 키의 등록 (PCRs) 과 일치하는 경우에만 KMS 키 Decrypt DeriveSharedSecret GenerateDataKeyGenerateDataKeyPair,, 및 키에 대한 PCRs 액세스를 제어합니다. 이 조건 키는 요청의 Recipient 파라미터가 Nitro 엔클레이브의 서명된 증명 문서를 지정하는 경우에만 유효합니다. AWS

이 값은 Nitro 엔클레이브에 대한 요청을 나타내는 CloudTrail이벤트에도 포함됩니다. AWS KMS

참고

이 조건 키는 IAM 콘솔이나 IAM 서비스 인증 참조에 표시되지 않더라도 주요 IAM 정책 설명 및 정책 설명에서 유효합니다.

PCR값을 지정하려면 다음 형식을 사용합니다. PCRID를 조건 키 이름에 연결합니다. PCR값은 최대 96바이트의 소문자 16진수 문자열이어야 합니다.

"kms:RecipientAttestation:PCRPCR_ID": "PCR_value"

예를 들어, 다음 조건 키는 엔클레이브 및 부트스트랩 PCR1 프로세스에 사용되는 커널의 해시에 해당하는 특정 값을 지정합니다.

kms:RecipientAttestation:PCR1: "0x1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef8abcdef9abcdef8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef0abcde"

다음 예제 키 정책 설명에서는 data-processing 역할이 복호화 작업에 KMS 키를 사용할 수 있도록 허용합니다.

이 명령문의 kms:RecipientAttestation:PCR 조건 키는 요청의 서명된 증명 문서의 PCR1 값이 조건의 kms:RecipientAttestation:PCR1 값과 일치하는 경우에만 작업을 허용합니다. 대소문자를 구분하지 않고 값을 비교하도록 하려면 StringEqualsIgnoreCase 정책 연산자를 사용하십시오. PCR

요청에 증명 문서가 포함되어 있지 않으면 이 조건이 충족되지 않으므로 사용 권한이 거부됩니다.

{ "Sid" : "Enable enclave data processing", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:role/data-processing" }, "Action": "kms:Decrypt", "Resource" : "*", "Condition": { "StringEqualsIgnoreCase": { "kms:RecipientAttestation:PCR1": "0x1de4f2dcf774f6e3b679f62e5f120065b2e408dcea327bd1c9dddaea6664e7af7935581474844767453082c6f1586116376cede396a30a39a611b9aad7966c87" } } }