Amazon VPC 萊迪格的資料保護 - Amazon VPC 格子

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

Amazon VPC 萊迪格的資料保護

AWS 共同責任模型適用於 Amazon VPC Landis 中的資料保護。如此模型中所述, AWS 負責保護執行所有 AWS 雲端. 您負責維護在此基礎設施上託管內容的控制權。此內容包括您所使用 AWS 服務 的安全組態和管理任務。如需有關資料隱私權的詳細資訊,請參閱資料隱私權FAQ如需歐洲資料保護的相關資訊,請參閱AWS 安全性GDPR部落格上的AWS 共同責任模型和部落格文章。

傳輸中加密

VPC萊迪思是由控制平面和數據平面組成的全受管服務。每架飛機在服務中都有不同的目的。控制平面提供了APIs用於建立、讀取/描述、更新、刪除和列出 (CRUDL) 資源的管理員 (例如,CreateServiceUpdateService)。與VPC萊迪思控制平面的通信由在運輸過程TLS中受到保護。數據平面是VPC晶格調用API,它提供了服務之間的互連。TLS當您使用HTTPS或TLS時,會將與VPC萊迪思資料平面的通訊加密。密碼套件和協議版本使用由VPC萊迪思提供的默認值,並且無法配置。如需詳細資訊,請參閱適用於 VPC 格子服務的 HTTPS 接聽程式

靜態加密

預設情況下,靜態資料加密有助於降低保護敏感資料所涉及的營運開銷和複雜性。同時,其可讓您建置符合嚴格加密合規性和法規要求的安全應用程式。

使用 Amazon S3 受管金鑰 (SSE-S3) 進行伺服器端加密

當您將伺服器端加密與 Amazon S3 受管金鑰 (SSE-S3) 搭配使用時,每個物件都會使用唯一金鑰加密。作為額外的保護措施,我們會使用我們定期輪換的根金鑰來加密金鑰本身。Amazon S3 伺服器端加密使用最強大的區塊加密之一,256 位元進階加密標準 (AES-256) GCM 來加密您的資料。對於在 AES-GCM,AES-之前加密的對象,CBC仍然支持解密這些對象。如需詳細資訊,請參閱使用伺服器端加密搭配 Amazon S3 受管加密金鑰 (SSE- S3)。

如果您針對VPC萊迪思存取日誌的 S3 儲存貯體使用 Amazon S3 受管加密金鑰 (SSE-S3) 啟用伺服器端加密,我們會在每個存取日誌檔存放到 S3 儲存貯體之前自動加密每個存取日誌檔。如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南中的傳送至 Amazon S3 的日誌

使用儲存於 AWS KMS (SSE-KMS) AWS KMS 金鑰的伺服器端加密

使用 AWS KMS 金鑰 (SSE-KMS) 的伺服器端加密類似於 SSE-S3,但使用此服務還有額外的好處和費用。 AWS KMS 金鑰有個別的許可,可提供額外的保護,防止未經授權存取 Amazon S3 中的物件。SSE-KMS 還為您提供了一個審計跟踪,顯示 AWS KMS 密鑰的使用時間以及由誰使用。如需詳細資訊,請參閱搭配 AWS Key Management Service (SSE-KMS) 使用伺服器端加密

加密和解密您的證書的私鑰

您的ACM憑證和私密金鑰會使用別名為 aws/ acm 的 AWS 受管理KMS金鑰加密。您可以在AWS 受管理金鑰底下的 AWS KMS 主控台中檢視具有此別名的金鑰 ID。

VPC萊迪思不會直接訪問您的ACM資源。它會使用 AWS TLS連線管理員來保護和存取憑證的私密金鑰。當您使用ACM憑證建立VPC萊迪思服務時,萊迪VPC思會將您的憑證與 AWS TLS連線管理員建立關聯。這是通過在您的 AWS 託管密鑰中 AWS KMS 創建一個帶有前綴 aws/ acm 的授予來完成的。授權是允許TLS連線管理員在密碼編譯作業中使用KMS金鑰的原則工具。授權可讓受權者主體 (TLS連線管理員) 呼叫KMS金鑰上指定的授權作業,以解密憑證的私密金鑰。TLS連接管理器然後使用證書和解密(明文)私鑰來建立與萊迪思服務的客戶端的安全連接(SSL/TLS會話)。VPC當憑證與VPC萊迪思服務斷開關聯時,授權就會被淘汰。

如果您要移除對KMS金鑰的存取權,建議您使用中的或update-service命令,取代 AWS Management Console 或刪除服務中的憑證 AWS CLI。

VPC格子的加密上下文

密上下文是一組可選的鍵值對,其中包含有關私鑰可用於什麼的上下文信息。 AWS KMS 將加密內容繫結至加密的資料,並將其用作其他驗證資料,以支援已驗證的加密

當您的密TLS鑰與VPC萊迪思和TLS連接管理器一起使用時,您的VPC萊迪思服務的名稱包含在用於加密靜態密鑰的加密上下文中。您可以檢視 CloudTrail 記錄檔中的加密內容 (如下一節所示),或查看ACM主控台中的 [關聯資源] 索引標籤,來驗證您的憑證和私密金鑰正在使用哪個VPC萊迪思服務。

若要解密資料,請求中會包含相同的加密內容。VPC萊迪思在所有 AWS KMS密碼編譯操作中使用相同的加密內容,其中密鑰是aws:vpc-lattice:arn,值是VPC萊迪思服務的 Amazon 資源名稱(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" }

監控VPC萊迪思的加密金鑰

當您將 AWS 託管金鑰與VPC萊迪思服務搭配使用時,您可以使用AWS CloudTrail來追蹤VPC萊迪思傳送到的請求 AWS KMS。

CreateGrant

當您將ACM憑證新增至VPC萊迪思服務時,會代表您傳送一個CreateGrant請求,讓TLS連線管理員能夠解密與您的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萊迪思服務ARN。

ListGrants

您可以使用您的KMS金鑰 ID 和您的帳戶 ID 來呼叫ListGrantsAPI。這將為您提供指定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萊迪思服務ARN。

解密

VPC萊迪思使用TLS連接管理器調用Decrypt操作來解密您的私鑰,以服務於您的VPC萊迪思服務TLS連接. 您可以在事件歷史記錄「解密」中將Decrypt操作視為CloudTrail事件

以下是Decrypt作業事件歷程記錄中的範例 CloudTrail 事件記錄。

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