데이터 암호화 - AWS HealthImaging

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

데이터 암호화

를 사용하면 클라우드에 저장된 데이터에 보안 계층을 추가하여 확장 가능하고 효율적인 암호화 기능을 제공할 수 있습니다. AWS HealthImaging 다음이 포함됩니다.

  • 대부분의 경우 저장 데이터 암호화 기능을 사용할 수 있습니다. AWS 서비스

  • 다음을 포함한 유연한 키 관리 옵션 AWS Key Management Service, 이를 통해 보유 여부를 선택할 수 있습니다. AWS 암호화 키를 관리하거나 자체 키를 완벽하게 제어할 수 있습니다.

  • AWS 소유 AWS KMS 암호화 키

  • Amazon용 서버 측 암호화 () 를 사용하여 민감한 데이터를 전송하기 위한 암호화된 메시지 대기열 SSE SQS

또한, AWS 암호화 및 데이터 보호를 개발 또는 배포한 모든 서비스와 통합할 수 있도록 합니다. APIs AWS 환경.

고객 관리형 키 생성

를 사용하여 대칭적인 고객 관리 키를 만들 수 있습니다. AWS Management Console 또는 AWS KMS APIs. 자세한 내용은 에서 대칭 암호화 KMS 키 만들기를 참조하십시오. AWS Key Management Service 개발자 가이드.

키 정책은 고객 관리형 키에 대한 액세스를 제어합니다. 모든 고객 관리형 키에는 키를 사용할 수 있는 사람과 키를 사용하는 방법을 결정하는 문장이 포함된 정확히 하나의 키 정책이 있어야 합니다. 고객 관리형 키를 생성할 때 키 정책을 지정할 수 있습니다. 자세한 내용은 고객 관리 키에 대한 액세스 관리를 참조하십시오. AWS Key Management Service 개발자 가이드.

고객 관리형 키를 HealthImaging 리소스와 함께 사용하려면 키 정책에서 kms: CreateGrant 작업을 허용해야 합니다. 이렇게 하면 지정된 KMS 키에 대한 액세스를 제어하는 고객 관리 키에 권한 부여가 추가되어 사용자에게 권한 부여 작업에 HealthImaging 필요한 액세스 권한이 부여됩니다. 자세한 내용은 Grants의 Grants를 참조하십시오. AWS KMSAWS Key Management Service 개발자 가이드.

고객 관리 KMS 키를 HealthImaging 리소스와 함께 사용하려면 키 정책에서 다음 API 작업을 허용해야 합니다.

  • kms:DescribeKey은 키를 검증하는 데 필요한 고객 관리형 키 세부 정보를 제공하는 합니다. 이것은 모든 작업에 필요합니다.

  • kms:GenerateDataKey는 모든 쓰기 작업에 대해 저장된 리소스를 암호화할 수 있는 액세스를 제공합니다.

  • kms:Decrypt는 암호화된 리소스의 읽기 또는 검색 작업에 대한 액세스를 제공합니다.

  • kms:ReEncrypt*는 리소스를 재암호화할 수 있는 액세스를 제공합니다.

다음은 사용자가 해당 키로 암호화된 데이터 저장소를 생성하고 상호 작용할 수 있도록 HealthImaging 하는 정책 설명의 예시입니다.

{ "Sid": "Allow access to create data stores and perform CRUD and search in HealthImaging", "Effect": "Allow", "Principal": { "Service": [ "medical-imaging.amazonaws.com" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:kms-arn": "arn:aws:kms:us-east-1:123456789012:key/bec71d48-3462-4cdd-9514-77a7226e001f", "kms:EncryptionContext:aws:medical-imaging:datastoreId": "datastoreId" } } }

고객 관리 KMS 키를 사용하는 데 필요한 IAM 권한

다음과 같은 데이터 저장소를 생성하는 경우 AWS KMS 고객 관리 KMS 키를 사용하여 암호화를 활성화하면 HealthImaging 데이터 저장소를 생성하는 사용자 또는 역할의 키 IAM 정책과 정책 모두에 필요한 권한이 있습니다.

키 정책에 대한 자세한 내용은 의 활성화 IAM 정책을 참조하십시오. AWS Key Management Service 개발자 가이드.

IAM사용자, IAM 역할 또는 AWS 리포지토리를 생성하는 계정에는kms:CreateGrant,, kms:GenerateDataKey kms:RetireGrant kms:Decryptkms:ReEncrypt*, 및 에 대한 권한과 필요한 권한이 있어야 합니다. AWS HealthImaging

권한 부여를 HealthImaging 사용하는 방법 AWS KMS

HealthImaging 고객 관리 KMS 키를 사용하려면 허가가 필요합니다. 고객 관리 KMS 키로 암호화된 데이터 저장소를 생성하는 경우 는 CreateGrant요청을 다음으로 전송하여 사용자 대신 권한 부여를 HealthImaging 생성합니다. AWS KMS. 보조금 AWS KMS 고객 계정의 KMS 키에 HealthImaging 대한 액세스 권한을 부여하는 데 사용됩니다.

귀하를 대신하여 HealthImaging 생성한 지원금은 취소되거나 폐기되어서는 안 됩니다. 사용 권한을 부여하는 보조금을 취소하거나 폐기하는 경우 HealthImaging AWS KMS 계정의 키는 이 데이터에 액세스할 HealthImaging 수 없고, 데이터 저장소에 푸시된 새 이미지 리소스를 암호화하거나, 가져올 때 복호화할 수 없습니다. 에 대한 지원을 취소하거나 사용 중지하면 변경 사항이 즉시 적용됩니다. HealthImaging 액세스 권한을 취소하려면 권한 부여 취소 대신 데이터 스토어를 삭제합니다. 데이터 저장소가 삭제되면 사용자를 대신하여 지원금을 사용 HealthImaging 중지합니다.

HealthImaging에 대한 암호화 키 모니터링 대상

를 사용하여 CloudTrail 로 HealthImaging 보내는 요청을 추적할 수 있습니다. AWS KMS 사용자 대신 고객 관리 KMS 키를 사용할 수 있습니다. 로그의 로그 항목은 userAgent 필드에 표시되므로 medical-imaging.amazonaws.com 에서 요청한 내용을 명확하게 구분할 수 HealthImaging 있습니다. CloudTrail

다음 예는CreateGrant, GenerateDataKeyDecrypt, 및 DescribeKey 모니터링할 CloudTrail 이벤트입니다. AWS KMS 고객 관리 키로 암호화된 데이터에 HealthImaging 액세스하기 위해 작업을 호출합니다.

다음은 고객이 제공한 KMS 키에 대한 CreateGrant HealthImaging 액세스를 허용하고 해당 KMS 키를 HealthImaging 사용하여 저장된 모든 고객 데이터를 암호화하는 방법을 보여줍니다.

사용자가 직접 지원금을 만들 필요는 없습니다. HealthImaging CreateGrant요청을 보내서 사용자를 대신하여 보조금을 생성합니다. AWS KMS. 보조금 AWS KMS HealthImaging 액세스 권한을 부여하는 데 사용됩니다. AWS KMS 고객 계정을 입력하세요.

{ "Grants": [ { "Operations": [ "Decrypt", "Encrypt", "GenerateDataKey", "GenerateDataKeyWithoutPlaintext", "DescribeKey" ], "KeyId": "arn:aws:kms:us-west-2:824333766656:key/2fe3c119-792d-4b99-822f-b5841e1181d1", "Name": "0a74e6ad2aa84b74a22fcd3efac1eaa8", "RetiringPrincipal": "AWS Internal", "GranteePrincipal": "AWS Internal", "GrantId": "0da169eb18ffd3da8c0eebc9e74b3839573eb87e1e0dce893bb544a34e8fbaaf", "IssuingAccount": "AWS Internal", "CreationDate": 1685050229.0, "Constraints": { "EncryptionContextSubset": { "kms-arn": "arn:aws:kms:us-west-2:824333766656:key/2fe3c119-792d-4b99-822f-b5841e1181d1" } } }, { "Operations": [ "GenerateDataKey", "CreateGrant", "RetireGrant", "DescribeKey" ], "KeyId": "arn:aws:kms:us-west-2:824333766656:key/2fe3c119-792d-4b99-822f-b5841e1181d1", "Name": "2023-05-25T21:30:17", "RetiringPrincipal": "AWS Internal", "GranteePrincipal": "AWS Internal", "GrantId": "8229757abbb2019555ba64d200278cedac08e5a7147426536fcd1f4270040a31", "IssuingAccount": "AWS Internal", "CreationDate": 1685050217.0, } ] }

다음 예는 GenerateDataKey를 사용하여 데이터를 저장하기 전에 사용자에게 암호화하는 데 필요한 권한이 있는지 확인하는 방법을 보여줍니다.

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "EXAMPLEUSER", "arn": "arn:aws:sts::111122223333:assumed-role/Sampleuser01", "accountId": "111122223333", "accessKeyId": "EXAMPLEKEYID", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "EXAMPLEROLE", "arn": "arn:aws:iam::111122223333:role/Sampleuser01", "accountId": "111122223333", "userName": "Sampleuser01" }, "webIdFederationData": {}, "attributes": { "creationDate": "2021-06-30T21:17:06Z", "mfaAuthenticated": "false" } }, "invokedBy": "medical-imaging.amazonaws.com" }, "eventTime": "2021-06-30T21:17:37Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-east-1", "sourceIPAddress": "medical-imaging.amazonaws.com", "userAgent": "medical-imaging.amazonaws.com", "requestParameters": { "keySpec": "AES_256", "keyId": "arn:aws:kms:us-east-1:111122223333:key/EXAMPLE_KEY_ARN" }, "responseElements": null, "requestID": "EXAMPLE_ID_01", "eventID": "EXAMPLE_ID_02", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:111122223333:key/EXAMPLE_KEY_ARN" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }

다음 예제는 저장된 암호화된 데이터 키를 사용하여 암호화된 데이터에 액세스하는 Decrypt 작업을 HealthImaging 호출하는 방법을 보여줍니다.

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "EXAMPLEUSER", "arn": "arn:aws:sts::111122223333:assumed-role/Sampleuser01", "accountId": "111122223333", "accessKeyId": "EXAMPLEKEYID", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "EXAMPLEROLE", "arn": "arn:aws:iam::111122223333:role/Sampleuser01", "accountId": "111122223333", "userName": "Sampleuser01" }, "webIdFederationData": {}, "attributes": { "creationDate": "2021-06-30T21:17:06Z", "mfaAuthenticated": "false" } }, "invokedBy": "medical-imaging.amazonaws.com" }, "eventTime": "2021-06-30T21:21:59Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-east-1", "sourceIPAddress": "medical-imaging.amazonaws.com", "userAgent": "medical-imaging.amazonaws.com", "requestParameters": { "encryptionAlgorithm": "SYMMETRIC_DEFAULT", "keyId": "arn:aws:kms:us-east-1:111122223333:key/EXAMPLE_KEY_ARN" }, "responseElements": null, "requestID": "EXAMPLE_ID_01", "eventID": "EXAMPLE_ID_02", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:111122223333:key/EXAMPLE_KEY_ARN" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }

다음 예제는 DescribeKey 작업을 HealthImaging 사용하여 다음을 확인하는 방법을 보여줍니다. AWS KMS 고객 소유 AWS KMS 키가 사용 가능한 상태이며 작동하지 않는 경우 사용자가 문제를 해결하는 데 도움이 됩니다.

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "EXAMPLEUSER", "arn": "arn:aws:sts::111122223333:assumed-role/Sampleuser01", "accountId": "111122223333", "accessKeyId": "EXAMPLEKEYID", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "EXAMPLEROLE", "arn": "arn:aws:iam::111122223333:role/Sampleuser01", "accountId": "111122223333", "userName": "Sampleuser01" }, "webIdFederationData": {}, "attributes": { "creationDate": "2021-07-01T18:36:14Z", "mfaAuthenticated": "false" } }, "invokedBy": "medical-imaging.amazonaws.com" }, "eventTime": "2021-07-01T18:36:36Z", "eventSource": "kms.amazonaws.com", "eventName": "DescribeKey", "awsRegion": "us-east-1", "sourceIPAddress": "medical-imaging.amazonaws.com", "userAgent": "medical-imaging.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-east-1:111122223333:key/EXAMPLE_KEY_ARN" }, "responseElements": null, "requestID": "EXAMPLE_ID_01", "eventID": "EXAMPLE_ID_02", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:111122223333:key/EXAMPLE_KEY_ARN" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }

자세히 알아보기

다음 리소스는 저장 데이터 암호화에 대한 자세한 정보를 제공하며 다음 리소스는 다음 위치에 있습니다. AWS Key Management Service 개발자 가이드.