Amazon VPC Lattice에서의 데이터 보호 - 아마존 VPC 래티스

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

Amazon VPC Lattice에서의 데이터 보호

The AWS 공동 책임 모델 Amazon VPC Lattice의 데이터 보호에 적용됩니다. 이 모델에 설명된 바와 같이 AWS 모든 시스템을 운영하는 글로벌 인프라를 보호하는 책임이 있습니다. AWS 클라우드. 이 인프라에서 호스팅되는 콘텐츠에 대한 통제권을 유지할 책임은 귀하에게 있습니다. 이 콘텐츠에는 에 대한 보안 구성 및 관리 작업이 포함됩니다. AWS 서비스 사용하는 것. 데이터 프라이버시에 대한 자세한 내용은 데이터 프라이버시를 참조하십시오FAQ. 유럽의 데이터 보호에 대한 자세한 내용은 다음을 참조하십시오. AWS 공동 책임 모델 및 관련 GDPR 블로그 게시물 AWS 보안 블로그.

전송 중 암호화

VPCLattice는 컨트롤 플레인과 데이터 플레인으로 구성된 완전 관리형 서비스입니다. 각 영역은 서비스에서 서로 다른 용도로 사용됩니다. 컨트롤 플레인은 리소스 (예:, 및) 를 생성, 읽기/설명, 업데이트, 삭제 및 나열 (CRUDL) 하는 APIs 데 사용되는 관리 기능을 제공합니다. CreateService UpdateService VPCLattice 컨트롤 플레인에 대한 통신은 전송 중에 에 의해 보호됩니다. TLS 데이터 플레인은 서비스 간 상호 연결을 제공하는 VPC Lattice API Invoke입니다. TLS또는 를 사용할 때 VPC Lattice 데이터 플레인에 대한 통신을 암호화합니다. HTTPS TLS 암호 제품군 및 프로토콜 버전은 VPC Lattice에서 제공하는 기본값을 사용하며 구성할 수 없습니다. 자세한 내용은 VPC Lattice 서비스를 위한 HTTPS 리스너 단원을 참조하십시오.

저장 중 암호화

기본적으로 저장 데이터를 암호화하면 민감한 데이터 보호와 관련된 운영 오버헤드와 복잡성을 줄이는 데 도움이 됩니다. 동시에 엄격한 암호화 규정 준수 및 규제 요구 사항을 충족하는 안전한 애플리케이션을 구축할 수 있습니다.

Amazon S3 관리 키 (SSE-S3) 를 사용한 서버 측 암호화

Amazon S3 관리 키 (SSE-S3) 로 서버 측 암호화를 사용하는 경우 각 객체는 고유한 키로 암호화됩니다. 추가 보호 수단으로 정기적으로 교체되는 루트 키를 사용하여 키 자체를 암호화합니다. Amazon S3 서버 측 암호화는 현존하는 가장 강력한 블록 암호 중 하나인 256비트 고급 암호화 표준 (AES-256) 을 사용하여 데이터를 암호화합니다. GCM AES-GCM, AES - 이전에 암호화된 객체의 경우 여전히 해당 객체의 암호 해독이 지원됩니다. CBC 자세한 내용은 Amazon S3에서 관리하는 암호화 키 (-S3) 를 사용한 서버 측 암호화 사용을 참조하십시오. SSE

VPCLattice 액세스 로그용 S3 버킷에 대해 Amazon S3 관리형 암호화 키 (SSE-S3) 를 사용하여 서버 측 암호화를 활성화하면 각 액세스 로그 파일이 S3 버킷에 저장되기 전에 자동으로 암호화됩니다. 자세한 내용은 Amazon CloudWatch 사용 설명서의 Amazon S3로 전송된 로그를 참조하십시오.

서버 측 암호화를 사용한 서버 측 암호화 AWS KMS 에 저장된 키 AWS KMS (SSE-KMS)

서버 측 암호화: AWS KMS 키 (SSE-KMS) 는 SSE -S3와 비슷하지만 이 서비스를 사용하면 추가 혜택과 요금이 부과됩니다. 에는 별도의 권한이 있습니다. AWS KMS Amazon S3에 있는 객체의 무단 액세스를 방지하는 추가 보호 기능을 제공하는 키입니다. SSE- KMS 또한 언제 실행되었는지 보여주는 감사 추적을 제공합니다. AWS KMS 키를 누가 사용했는지 자세한 내용은 다음과 같은 서버 측 암호화 사용을 참조하십시오. AWS Key Management Service (SSE-KMS).

인증서 프라이빗 키의 암호화 및 암호 해독

ACM인증서와 개인 키는 다음을 사용하여 암호화됩니다. AWS 별칭이 aws/acm인 관리형 KMS 키 에서 이 별칭이 포함된 키 ID를 확인할 수 있습니다. AWS KMS 콘솔: 아래 AWS 관리 키.

VPCLattice는 ACM 리소스에 직접 액세스하지 않습니다. 다음을 사용합니다. AWS TLS연결 관리자를 사용하여 인증서의 개인 키를 보호하고 액세스할 수 있습니다. ACM인증서를 사용하여 VPC Lattice 서비스를 생성하면 Lattice는 인증서를 다음과 연결합니다. VPC AWS TLS연결 관리자. 이렇게 하려면 에서 권한 부여를 생성해야 합니다. AWS KMS 귀하를 상대로 AWS 접두사가 aws/acm인 관리형 키. 권한 부여는 TLS 연결 관리자가 암호화 작업에 KMS 키를 사용할 수 있도록 하는 정책 도구입니다. 권한 부여를 통해 수혜자 주체 (TLS연결 관리자) 는 키에 대해 지정된 권한 부여 작업을 호출하여 인증서의 개인 KMS 키를 해독할 수 있습니다. TLS그런 다음 연결 관리자는 인증서와 해독된 (일반 텍스트) 개인 키를 사용하여 Lattice 서비스 클라이언트와 보안 연결 (SSL/TLS세션) 을 설정합니다. VPC 인증서가 VPC Lattice 서비스에서 분리되면 권한 부여는 사용 중지됩니다.

KMS키에 대한 액세스 권한을 제거하려면 다음을 사용하여 서비스에서 인증서를 교체하거나 삭제하는 것이 좋습니다. AWS Management Console 또는 의 update-service 명령 AWS CLI.

VPCLattice의 암호화 컨텍스트

암호화 컨텍스트는 개인 키의 용도에 대한 컨텍스트 정보를 포함하는 선택적 키-값 쌍 집합입니다. AWS KMS 암호화 컨텍스트를 암호화된 데이터에 바인딩하고 이를 추가 인증 데이터로 사용하여 인증된 암호화를 지원합니다.

VPCLattice 및 TLS Connection Manager에서 TLS 키를 사용하는 경우 저장된 키를 암호화하는 데 사용되는 암호화 컨텍스트에 VPC Lattice 서비스 이름이 포함됩니다. 다음 섹션에 표시된 것처럼 CloudTrail 로그의 암호화 컨텍스트를 보거나 콘솔의 Associated Resources 탭을 보면 인증서와 개인 키가 어떤 VPC Lattice 서비스에 사용되고 있는지 확인할 수 있습니다. ACM

데이터를 해독하기 위해 동일한 암호화 컨텍스트를 요청에 포함시킵니다. VPCLattice는 모두 동일한 암호화 컨텍스트를 사용합니다. AWS KMS암호화 작업. 여기서 키는 VPC Lattice 서비스의 Amazon 리소스 이름 (ARN) 이고 값은 aws:vpc-lattice:arn

다음 예제는 다음과 같은 작업 출력의 암호화 컨텍스트를 보여줍니다. CreateGrant

"encryptionContextEquals": { "aws:acm:arn": "arn:aws:acm:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws:vpc-lattice:arn": "arn:aws:vpc-lattice:us-west-2:111122223333:service/svc-0b23c1234567890ab" }

VPCLattice의 암호화 키 모니터링

를 사용하는 경우 AWS VPCLattice 서비스의 관리 키는 다음과 같이 사용할 수 있습니다. AWS CloudTrailVPCLattice가 보내는 요청을 추적하기 위해 AWS KMS.

CreateGrant

ACM인증서를 VPC Lattice 서비스에 추가하면 TLS Connection Manager가 인증서와 연결된 개인 키를 해독할 수 있도록 해 달라는 CreateGrant 요청이 사용자를 대신하여 전송됩니다. ACM

이벤트 기록 CloudTrail, 에서 CreateGrant 작업을 이벤트로 볼 수 있습니다. CreateGrant

다음은 해당 CreateGrant 작업에 대한 이벤트 기록의 예제 CloudTrail 이벤트 기록입니다.

{ "eventVersion": "1.08", "userIdentity": { "type": "IAMUser", "principalId": "EX_PRINCIPAL_ID", "arn": "arn:aws:iam::111122223333:user/Alice", "accountId": "111122223333", "accessKeyId": "EXAMPLE_KEY_ID", "sessionContext": { "sessionIssuer": { "type": "IAMUser", "principalId": "EX_PRINCIPAL_ID", "arn": "arn:aws:iam::111122223333:user/Alice", "accountId": "111122223333", "userName": "Alice" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-02-06T23:30:50Z", "mfaAuthenticated": "false" } }, "invokedBy": "acm.amazonaws.com" }, "eventTime": "2023-02-07T00:07:18Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-west-2", "sourceIPAddress": "acm.amazonaws.com", "userAgent": "acm.amazonaws.com", "requestParameters": { "granteePrincipal": "tlsconnectionmanager.amazonaws.com", "keyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "operations": [ "Decrypt" ], "constraints": { "encryptionContextEquals": { "aws:acm:arn": "arn:aws:acm:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws:vpc-lattice:arn": "arn:aws:vpc-lattice:us-west-2:111122223333:service/svc-0b23c1234567890ab" } }, "retiringPrincipal": "acm.us-west-2.amazonaws.com" }, "responseElements": { "grantId": "f020fe75197b93991dc8491d6f19dd3cebb24ee62277a05914386724f3d48758", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "requestID": "ba178361-8ab6-4bdd-9aa2-0d1a44b2974a", "eventID": "8d449963-1120-4d0c-9479-f76de11ce609", "readOnly": false, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }

CreateGrant 예제에서 수혜자 주체는 TLS 연결 관리자이고 암호화 컨텍스트는 VPC Lattice 서비스를 가집니다. ARN

ListGrants

KMS키 ID와 계정 ID를 사용하여 를 호출할 수 있습니다. ListGrants API 그러면 지정된 KMS 키에 대한 모든 권한 목록이 표시됩니다. 자세한 내용은 ListGrants를 참조하세요.

에서 다음 ListGrants 명령을 사용하십시오. AWS CLI 모든 보조금의 세부 정보를 보려면

aws kms list-grants —key-id your-kms-key-id

출력의 예시는 다음과 같습니다.

{ "Grants": [ { "Operations": [ "Decrypt" ], "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Name": "IssuedThroughACM", "RetiringPrincipal": "acm.us-west-2.amazonaws.com", "GranteePrincipal": "tlsconnectionmanager.amazonaws.com", "GrantId": "f020fe75197b93991dc8491d6f19dd3cebb24ee62277a05914386724f3d48758", "IssuingAccount": "arn:aws:iam::111122223333:root", "CreationDate": "2023-02-06T23:30:50Z", "Constraints": { "encryptionContextEquals": { "aws:acm:arn": "arn:aws:acm:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws:vpc-lattice:arn": "arn:aws:vpc-lattice:us-west-2:111122223333:service/svc-0b23c1234567890ab" } } } ] }

위의 ListGrants 예에서 수혜자 주체는 TLS 연결 관리자이고 암호화 컨텍스트에는 VPC Lattice 서비스가 있습니다. ARN

Decrypt

VPCLattice는 Lattice 서비스에서 TLS TLS 연결을 제공하기 위해 연결 관리자를 사용하여 개인 키를 복호화하는 Decrypt 작업을 호출합니다. VPC 이벤트 기록인 Decrypt에서 Decrypt CloudTrail작업을 이벤트로 볼 수 있습니다.

다음은 해당 작업에 대한 이벤트 기록의 예제 CloudTrail 이벤트 기록입니다. Decrypt

{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "tlsconnectionmanager.amazonaws.com" }, "eventTime": "2023-02-07T00:07:23Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "tlsconnectionmanager.amazonaws.com", "userAgent": "tlsconnectionmanager.amazonaws.com", "requestParameters": { "encryptionContext": { "aws:acm:arn": "arn:aws:acm:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws:vpc-lattice:arn": "arn:aws:vpc-lattice:us-west-2:111122223333:service/svc-0b23c1234567890ab" }, "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": "12345126-30d5-4b28-98b9-9153da559963", "eventID": "abcde202-ba1a-467c-b4ba-f729d45ae521", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "sharedEventID": "abcde202-ba1a-467c-b4ba-f729d45ae521", "eventCategory": "Management" }