設定 Amazon Bedrock AgentCore 程式碼解譯器的根憑證授權機構
根據預設,Amazon Bedrock AgentCore Code Interpreter 工作階段僅信任可公開辨識的憑證授權單位。如果您的代理程式需要存取使用私有 CA 簽署之憑證的 TLS 攔截代理後方的內部服務或資源,您必須在啟動工作階段時提供自訂根 CA 憑證。
Amazon Bedrock AgentCore 會使用發起人憑證從 AWS Secrets Manager 擷取 PEM 編碼的憑證內容、驗證 X.509 格式和過期,並將憑證安裝到工作階段的作業系統信任存放區。這可讓程式碼解譯器建立內部資源的信任 HTTPS 連線。
運作方式
Amazon Bedrock AgentCore Code Interpreter 的根憑證授權機構運作方式如下:
-
您可以提供憑證位置清單,每個位置都指向 AWS Secrets Manager 中包含 PEM 編碼根 CA 憑證的秘密。
-
Amazon Bedrock AgentCore 使用您的發起人憑證從 AWS Secrets Manager 擷取每個憑證。
-
每個憑證都會針對正確的 X.509 PEM 格式進行驗證,並加以檢查,以確保其尚未過期,也不會在有效性開始日期之前使用。
-
有效的憑證會部署到工作階段的作業系統信任存放區,可供程式碼執行時間和沙盒內的任何網路用戶端使用。
在工具層級設定的憑證 (透過 CreateCodeInterpreter ) 會與工作階段開始時提供的任何憑證合併。這可讓您在工具上設定整個組織的憑證,並視需要新增工作階段特定的憑證。
注意
憑證組態是每個工作階段的一次性操作。安裝憑證後,就無法在該工作階段期間修改憑證。
先決條件
在設定根 CA 憑證之前,請確定您有下列項目:
-
完成一般先決條件。
-
儲存為 AWS Secrets Manager 中秘密的根 CA 憑證。每個秘密必須包含有效的 PEM 編碼 X.509 憑證
-
從 AWS Secrets Manager 讀取憑證秘密的 IAM 許可。將下列許可新增至您的 IAM 政策:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SecretsManagerCertificateAccess", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:<Region>:<account-id>:secret:<secret-name>" } ] }
將您的憑證儲存在 AWS Secrets Manager 中
您必須先將它儲存為 AWS Secrets Manager 中的秘密,才能搭配 Amazon Bedrock AgentCore Code Interpreter 使用根 CA 憑證。秘密值必須是 PEM 編碼的憑證內容。
範例
請注意來自輸出的秘密 ARN。使用憑證組態啟動工作階段時,您將使用此 ARN。
重要
秘密必須包含有效的 PEM 編碼 X.509 憑證。憑證不得過期,且必須在其有效期間內。Amazon Bedrock AgentCore 會在安裝憑證之前驗證憑證格式和到期時間。
使用自訂憑證啟動程式碼解譯器工作階段
若要啟動信任自訂根 CA 憑證的程式碼解譯器工作階段,請在StartCodeInterpreterSession請求中包含 certificates 參數。
範例
使用多個憑證
您可以在單一程式碼解譯器工作階段中提供多個根 CA 憑證。當您的環境需要多個內部憑證授權單位的信任時,這很有用,例如不同內部服務或環境的個別 CAs。
範例
在工具層級設定憑證
您可以在建立自訂程式碼解譯器時,在工具層級設定憑證。除了在工作階段開始時間提供的任何憑證之外,在工具層級設定的憑證也會自動套用至以該工具啟動的每個工作階段。
這對於應受所有程式碼解譯器工作階段信任的整個組織憑證非常有用。
範例
當您使用已設定憑證的程式碼解譯器啟動工作階段時,工具層級憑證會與任何工作階段層級憑證結合。工具層級憑證會先套用,接著套用工作階段層級憑證。
憑證需求和限制
憑證必須符合下列要求:
| 需求 | 詳細資訊 |
|---|---|
|
格式 |
PEM 編碼的 X.509 憑證 |
|
儲存 |
AWS Secrets Manager 秘密 (做為字串值,而非二進位) |
|
Validity |
憑證不得過期,且必須在其有效期間內 (介於 |
|
每個工作階段的憑證上限 |
每個工作階段 10 個,每個工具 10 個。工作階段總計最多可以有 20 個憑證。 |
|
秘密 ARN 格式 |
|
|
位置類型 |
只有 AWS Secrets Manager 支援做為憑證位置 |
疑難排解
下表說明為 Amazon Bedrock AgentCore Code Interpreter 設定根 CA 憑證時的常見錯誤及其解決方法。
| 錯誤 | 原因 | Resolution |
|---|---|---|
|
在 Secrets Manager 中找不到憑證秘密 |
秘密 ARN 不存在或秘密已刪除。 |
確認秘密 ARN 正確,且秘密存在於指定的區域中。 |
|
Secrets Manager 中對憑證秘密的存取遭拒 |
發起人沒有秘密的 |
將 |
|
憑證內容不是有效的 PEM/X.509 格式 |
秘密值不是有效的 PEM 編碼 X.509 憑證。 |
確保秘密包含格式正確的 PEM 憑證,開頭為 |
|
憑證已過期 |
憑證 |
將過期的憑證取代為 AWS Secrets Manager 中的有效憑證,然後重試。 |
|
憑證尚未有效 |
憑證 |
等到憑證的有效期開始,或使用目前有效的憑證。 |
|
憑證數量超過允許的上限 |
在工作階段層級或工具層級提供超過 10 個憑證。 |
將憑證數量減少為每個工作階段 10 個或更少,每個工具 10 個或更少。 |
|
憑證位置為必填 |
在沒有位置的情況下提供憑證項目。 |
確保陣列中的每個憑證都包含一個 |
|
未啟用憑證組態 |
您的帳戶未啟用憑證功能。 |
請聯絡 AWS Support 以啟用您帳戶的憑證功能。 |