Amazon Bedrock API 金鑰 - AWS Identity and Access Management

Amazon Bedrock API 金鑰

Amazon Bedrock 是一項全受管服務,提供來自領先 AI 公司和 Amazon 的基礎模型。您可以透過 AWS 管理主控台存取 Amazon Bedrock,以及使用 AWS CLI 或 AWS API 以程式設計方式存取 Amazon Bedrock。向 Amazon Bedrock 發出程式設計請求時,您可以使用臨時安全憑證或 Amazon Bedrock API 金鑰進行身分驗證。Amazon Bedrock 支援兩種類型的 API 金鑰:

  • 短期 API 金鑰 – 短期 API 金鑰是一個使用 AWS 第 4 版簽署程序的預先簽章 URL。短期 API 金鑰與產生 API 金鑰的身分憑證具有相同的許可和過期時間,有效期最長為 12 小時或主控台工作階段的剩餘時間,以較短者為準。您可以使用 Amazon Bedrock 主控台、Python 套件 aws-bedrock-token-generator 和其他程式設計語言套件來產生短期 API 金鑰。如需詳細資訊,請參閱 Amazon Bedrock User Guide 中的 Generate Amazon Bedrock API keys for easy access to the Amazon Bedrock API

  • 長期 API 金鑰 – 長期 API 金鑰與 IAM 使用者相關聯,並使用 IAM 服務特定的憑證產生。這些憑證僅用於 Amazon Bedrock,並透過限制憑證範圍來增強安全性。您可以設定長期 API 金鑰的過期時間。可以使用 IAM 或 Amazon Bedrock 主控台、AWS CLI 或 AWS API 來產生長期 API 金鑰。

IAM 使用者最多可以擁有兩個 Amazon Bedrock 長期 API 金鑰,方便您輪換安全金鑰。

在產生長期 API 金鑰時,AWS 受管政策 AmazonBedrockLimitedAccess 會自動連接至 IAM 使用者。此政策授予對核心 Amazon Bedrock API 操作的存取權。如果需要額外的 Amazon Bedrock 存取權,您可以修改 IAM 使用者的許可。如需有關修改許可的資訊,請參閱新增和移除 IAM 身分許可。如需有關如何使用 Amazon Bedrock 金鑰的詳細資訊,請參閱 Amazon Bedrock User Guide 中的 Use an Amazon Bedrock API key

注意

與短期 API 金鑰相比,長期 API 金鑰的安全風險更高。建議盡可能使用短期 API 金鑰或臨時安全憑證。如果使用長期 API 金鑰,建議定期輪換金鑰。

必要條件

必須先符合下列先決條件,才能使用 IAM 主控台來產生 Amazon Bedrock 長期 API 金鑰:

  • 用於與長期 API 金鑰建立關聯的 IAM 使用者。如需有關建立 IAM 使用者的說明,請參閱在 AWS 帳戶中建立 IAM 使用者

  • 請確定您擁有下列 IAM 政策許可,以便管理 IAM 使用者的服務特定憑證。此範例政策授予建立、列出、更新、刪除和重設服務特定憑證的許可。將 Resource 元素中的 username 值取代為將為其產生 Amazon Bedrock API 金鑰的 IAM 使用者名稱:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "ManageBedrockServiceSpecificCredentials", "Effect": "Allow", "Action": [ "iam:CreateServiceSpecificCredential", "iam:ListServiceSpecificCredentials", "iam:UpdateServiceSpecificCredential", "iam:DeleteServiceSpecificCredential", "iam:ResetServiceSpecificCredential" ], "Resource": "arn:aws:iam::*:user/username" } ] }

產生 Amazon Bedrock 長期 API 金鑰 (主控台)

產生 Amazon Bedrock 長期 API 金鑰 (主控台)
  1. 簽署 AWS 管理主控台,並開啟位於 https://console.aws.amazon.com/iam/ 的 IAM 主控台。

  2. 在 IAM 主控台的導覽面板中,選擇使用者

  3. 選擇要為其產生 Amazon Bedrock 長期 API 金鑰的 IAM 使用者。

  4. 選擇安全憑證索引標籤。

  5. Amazon Bedrock 的 API 金鑰區段中,選擇產生 API 金鑰

  6. 對於 API 金鑰過期,請執行下列其中一項操作:

    • 選擇 API 金鑰的有效期:153090365 天。

    • 選擇自訂持續時間以指定自訂 API 金鑰過期日期。

    • 選取永不過期 (不建議)

  7. 選擇產生 API 金鑰

  8. 複製或下載您的 API 金鑰。這是您唯一可以檢視 API 金鑰值的機會。

    重要

    請妥善儲存您的 API 金鑰。關閉此對話方塊之後,您將無法再次擷取此 API 金鑰。如果遺失或忘記私密存取金鑰,將無法擷取它。請改為建立新的存取金鑰,並停用舊金鑰。

產生 Amazon Bedrock 長期 API 金鑰 (AWS CLI)

若要使用 AWS CLI 產生 Amazon Bedrock 長期 API 金鑰,請依照下列步驟操作:

  1. 使用 create-user 命令建立將與 Amazon Bedrock 搭配使用的 IAM 使用者:

    aws iam create-user \ --user-name BedrockAPIKey_1
  2. 使用 attach-user-policy 命令將 AWS 受管政策 AmazonBedrockLimitedAccess 連接至 Amazon Bedrock IAM 使用者:

    aws iam attach-user-policy --user-name BedrockAPIKey_1 \ --policy-arn arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess
  3. 使用 create-service-specific-credential 命令產生 Amazon Bedrock 長期 API 金鑰。對於憑證存留期,您可以指定 1-36600 天之間的任意值。如果未指定憑證存留期,則 API 金鑰將不會過期。

    若要產生有效期為 30 天的長期 API 金鑰:

    aws iam create-service-specific-credential \ --user-name BedrockAPIKey_1 \ --service-name bedrock.amazonaws.com \ --credential-age-days 30

回應中傳回的 ServiceApiKeyValue 便是您的長期 Amazon Bedrock API 金鑰。請妥善儲存 ServiceApiKeyValue 值,因為您之後將無法再擷取它。

列出長期 API 金鑰 (AWS CLI)

若要列出特定使用者的 Amazon Bedrock 長期 API 金鑰中繼資料,請使用 list-service-specific-credentials 命令與 --user-name 參數:

aws iam list-service-specific-credentials \ --service-name bedrock.amazonaws.com \ --user-name BedrockAPIKey_1

若要列出帳戶中的所有 Amazon Bedrock 長期 API 金鑰中繼資料,請使用 list-service-specific-credentials 命令與 --all-users 參數:

aws iam list-service-specific-credentials \ --service-name bedrock.amazonaws.com \ --all-users

更新長期 API 金鑰的狀態 (AWS CLI)

若要更新 Amazon Bedrock 長期 API 金鑰的狀態,請使用 update-service-specific-credential 命令:

aws iam update-service-specific-credential \ --user-name "BedrockAPIKey_1" \ --service-specific-credential-id "ACCA1234EXAMPLE1234" \ --status Inactive|Active

產生 Amazon Bedrock 長期 API 金鑰 (AWS API)

您可以使用下列 API 操作來產生和管理 Amazon Bedrock 長期 API 金鑰: