資料加密 - AWS HealthImaging

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

資料加密

透過 AWS HealthImaging,您可以為雲端中的靜態資料新增一層安全性,提供可擴充且有效率的加密功能。其中包含:

  • 靜態資料加密功能大部分提供 AWS services

  • 靈活的金鑰管理選項,包括 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金鑰的存取權,讓使用者能夠存取 Grant 作業所 HealthImaging 需的權限。如需詳細資訊,請參閱 AWS KMS 中的 AWS 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:CreateGrantkms:GenerateDataKeykms:RetireGrantkms:Decrypt、和的權限kms:ReEncrypt*,以及的必要權限AWS HealthImaging。

如何 HealthImaging 使用贈款 AWS KMS

HealthImaging 需要授權才能使用您的客戶管理KMS金鑰。當您建立使用客戶管理KMS金鑰加密的資料存放區時, HealthImaging CreateGrant請將請求傳送至 AWS KMS。 中的補助金 AWS KMS 用於授予對客戶帳戶中KMS密鑰的 HealthImaging 訪問權限。

代表您建 HealthImaging 立的授權不應該撤銷或淘汰。如果您撤銷或淘汰授予使用 HealthImaging 權限的授權 AWS KMS 您帳戶中的金鑰、 HealthImaging 無法存取此資料、加密推送至資料存放區的新影像資源,或在提取時將其解密。當您撤銷或淘汰的授權時 HealthImaging,變更會立即發生。若要撤銷存取權限,您應該刪除資料存放區,而不是撤銷授與。刪除資料存放區後,代表您 HealthImaging 淘汰授權。

監控您的加密金鑰 HealthImaging

您可以使用 CloudTrail 來追蹤傳 HealthImaging 送至的要求 AWS KMS 代表您使用客戶管理的KMS金鑰時。記錄檔中的記 CloudTrail 錄項目會顯示medical-imaging.amazonaws.com.rproxy.goskope.comuserAgent欄位中,以清楚區分由提出的要求 HealthImaging。

下列範例是CreateGrantGenerateDataKeyDecrypt、和DescribeKey要監視的 CloudTrail 事件 AWS KMS HealthImaging 要求存取由客戶管理金鑰加密之資料的作業。

以下說明如CreateGrant何使用允許存 HealthImaging 取客戶提供的KMS金鑰,以 HealthImaging 便使用該KMS金鑰來加密所有靜態客戶資料。

使用者不需要建立自己的授權。 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" }

下列範例顯示如何 HealthImaging 呼叫Decrypt作業,以使用已儲存的加密資料金鑰存取加密資料。

{ "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" }

下面的示例演示如何 HealthImaging 使用DescribeKey操作來驗證是否 AWS KMS 客戶擁有 AWS KMS key 處於可用狀態,並在無法正常工作時幫助用戶進行故障排除。

{ "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 開發人員指南