View a markdown version of this page

資料加密 - Amazon Bedrock AgentCore

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

資料加密

資料加密通常分為兩類:靜態加密和傳輸中加密。

靜態加密

我們根據業界標準加密 AWS 客服人員登錄檔中的靜態資料。

根據預設,我們會使用 AWS 擁有的金鑰在 登錄檔中加密您的資料,無需額外付費。您無法檢視、管理或稽核此金鑰的使用。

建立登錄檔時,您可以選擇使用客戶受管 AWS KMS 金鑰加密記錄描述項。使用客戶受管金鑰可讓您更好地控制加密程序,包括能夠:

  • 建立和管理金鑰,包括設定金鑰政策

  • 使用 AWS KMS 自動金鑰輪換來自動輪換金鑰

  • 停用或刪除金鑰以控制對加密資料的存取

  • 透過 AWS CloudTrail 稽核金鑰用量

如需詳細資訊,請參閱 AWS Key Management Service 開發人員指南中的客戶受管金鑰。

注意

AWS 當您使用客戶受管金鑰時,需支付 KMS 費用。有關更多資訊,請參閱 AWS 金鑰 Management Service 定價。

加密的內容

當您指定客戶受管金鑰時, AWS 代理登錄檔會加密靜態記錄描述項。記錄描述項是存放在每個登錄檔記錄中resource-type-specific中繼資料 , 這是詳細組態,說明什麼是資源以及如何使用它:

  • MCP 伺服器記錄 — 伺服器定義和工具定義 (包括輸入參數和輸出格式)。

  • 客服人員記錄 — 描述功能、技能和通訊界面的客服人員卡。

  • 技能記錄 — 套件或儲存庫詳細資訊和 Markdown 文件。

  • 自訂資源記錄 — 自訂 JSON 中繼資料結構。

電源的搜尋索引SearchDiscoverableRegistryRecords也會使用相同的金鑰加密。

下列資料不會使用客戶受管金鑰加密 (仍會使用 AWS 擁有的金鑰加密):

  • 登錄檔名稱和描述

  • 記錄名稱、描述、通訊協定和外部版本

  • 登錄檔和記錄識別符 (IDs、ARNs)

注意

ListRegistryRecords 會傳回記錄摘要 (名稱、描述、通訊協定、外部版本),而不進行任何 KMS 呼叫。即使您的 KMS 金鑰無法使用,此操作仍可運作。

考量事項

當您為登錄檔設定加密時,請考慮下列事項:

  • 您只能在建立登錄檔時指定客戶受管金鑰。您無法在建立登錄檔後新增、變更或移除加密組態。

  • 如果您想要變更登錄檔的 KMS 金鑰,您必須使用所需的金鑰建立新的登錄檔,並遷移您的記錄。

  • AWS 代理程式登錄檔僅支援對稱加密 KMS 金鑰。您無法使用非對稱 KMS 金鑰或多區域金鑰。

  • KMS 金鑰必須與登錄檔位於相同的 AWS 區域。

  • 如果您選擇客戶受管金鑰,建議您啟用自動金鑰輪換。

  • 沒有客戶受管金鑰的註冊機構會繼續使用 AWS 擁有的金鑰。現有登錄不會發生行為變更。

AWS 客服人員登錄檔如何在 AWS KMS 中使用授予

AWS 客服人員登錄檔需要授予才能使用您的客戶受管金鑰。

當您使用客戶受管金鑰建立登錄檔時, AWS 代理登錄檔會透過傳送 CreateGrant 請求至 AWS KMS 來代表您建立授予。授予的範圍僅限於使用加密內容限制的特定登錄檔。

AWS 客服人員登錄檔需要授予 ,才能將客戶受管金鑰用於下列內部操作:

  • 傳送 GenerateDataKey 請求以建立用於加密記錄描述項的資料金鑰。

  • 傳送解密請求來解密加密的資料金鑰,以便用來解密您的資料。

  • 傳送 DescribeKey 請求以驗證金鑰是否有效。

您可以隨時撤銷授予的存取權,或移除服務對客戶受管金鑰的存取權。如果您這麼做, AWS 代理登錄檔將無法存取客戶受管金鑰加密的任何資料,這會影響讀取或寫入記錄描述項的所有操作。

AWS 當您刪除登錄檔時,客服人員登錄檔會淘汰授予。

每個 API 操作使用的 KMS 許可

下表顯示 AWS Agent Registry 為每個 API 呼叫哪些 KMS 操作。對於同步 API 呼叫 (CreateRegistryRecord、GetRegistryRecord、UpdateRegistryRecord、SearchDiscoverableRegistryRecords),您的登入資料會透過轉送存取工作階段 (FAS) 轉送至 AWS KMS。

API 操作 KMS 操作 備註

CreateRegistry

kms:DescribeKey, kms:CreateGrant

驗證金鑰並建立授予

CreateRegistryRecord

kms:GenerateDataKey, kms:Decrypt

加密記錄描述項

GetRegistryRecord

kms:Decrypt

解密記錄描述項

UpdateRegistryRecord

kms:Decrypt, kms:GenerateDataKey

解密現有的 ,加密更新的描述項

ListRegistryRecords

無

無 KMS 呼叫 — 使用未加密的摘要屬性

SearchDiscoverableRegistryRecords

kms:Decrypt

解密搜尋結果的記錄描述項

DeleteRegistryRecord

無

不需要 KMS 呼叫

DeleteRegistry

無

不需要 KMS 呼叫

加密內容

加密內容是一組金鑰值對,其中包含有關資料的其他內容資訊。 AWS KMS 使用加密內容作為額外的已驗證資料,以支援已驗證的加密。

AWS 代理程式登錄檔在所有 KMS 密碼編譯操作中包含下列加密內容:

{ "aws:agent-registry:registry-arn": "arn:aws:agent-registry:us-east-1:111122223333:registry/my-registry-id" }

您可以在 AWS CloudTrail 日誌中使用此加密內容,以識別已執行 KMS 操作的登錄檔。

當金鑰無法使用時的行為

如果您停用或刪除客戶受管 KMS 金鑰、撤銷授予,或發起人的 IAM 政策不再授予必要的 KMS 許可:

  • CreateRegistryRecord — 失敗。服務無法加密記錄描述項。

  • GetRegistryRecord — 失敗。服務無法解密記錄描述項。

  • UpdateRegistryRecord — 失敗。服務無法解密或加密記錄描述項。

  • ListRegistryRecords — 成功。此操作不會進行 KMS 呼叫。

  • SearchDiscoverableRegistryRecords — 失敗。服務無法解密搜尋結果的記錄描述項。

  • DeleteRegistry — 成功。刪除不需要存取 KMS 金鑰。

  • DeleteRegistryRecord — 成功。記錄刪除不需要 KMS 存取。

若要還原存取權,請重新啟用金鑰或更新 IAM 政策,以授予所需的許可。

傳輸中加密

AWS 代理程式登錄檔使用 TLS (Transport Layer Security) 來加密用戶端和服務端點之間傳輸中的所有資料。對 AWS 客服人員登錄檔的所有 API 呼叫都需要 HTTPS。

金鑰管理

AWS 代理程式登錄檔支援兩種靜態加密的金鑰管理選項:

  • AWS 擁有的金鑰 (預設) — 我們代表您擁有和管理金鑰。您不需要建立或管理金鑰,而且無需額外付費。您無法檢視、輪換或稽核此金鑰。

  • 客戶受管金鑰 — 您可以在 KMS 中建立和管理對稱加密 AWS KMS 金鑰。您可以完全控制金鑰政策、輪換排程和金鑰刪除。您可以透過 AWS CloudTrail 稽核金鑰用量。

您可以在建立登錄檔時選取金鑰管理選項。您無法在建立登錄檔之後變更加密金鑰。如需組態步驟,請參閱設定客戶受管金鑰政策。