處理已洩露的長期和短期 Amazon Bedrock API 金鑰 - Amazon Bedrock

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

處理已洩露的長期和短期 Amazon Bedrock API 金鑰

如果您的 API 金鑰已洩露,您應該撤銷使用它的許可。您可以使用多種方法來撤銷 Amazon Bedrock API 金鑰的許可:

  • 對於長期 Amazon Bedrock API 金鑰,您可以使用 UpdateServiceSpecificCredentialResetServiceSpecificCredentialDeleteServiceSpecificCredential,以下列方式撤銷許可:

    • 將金鑰的狀態設定為非作用中。稍後可以重新啟用它們。

    • 重設金鑰。此動作會產生金鑰的新密碼。

    • 永久刪除金鑰。

    注意

    若要透過 API 執行這些動作,您必須使用AWS登入資料進行驗證,而不是使用 Amazon Bedrock API 金鑰進行驗證。

  • 對於長期和短期 Amazon Bedrock API 金鑰,您可以連接 IAM 政策來撤銷許可。

變更長期 Amazon Bedrock API 金鑰的狀態

如果需要暫時防止某個金鑰被使用,請將其停用。在您準備好再次使用它時,請重新啟用它。

選擇您偏好方法的索引標籤,然後遵循下列步驟:

Console
停用金鑰
  1. AWS 管理主控台使用具有使用 Amazon Bedrock 主控台之許可的 IAM 身分登入 。接著,開啟位於 https://console.aws.amazon.com/bedrock 的 Amazon Bedrock 主控台。

  2. 在左側導覽窗格中,選取API 金鑰

  3. 長期 API 金鑰區段中,選擇狀態非作用中的金鑰。

  4. 選擇動作

  5. 選取 Deactivate (停用)。

  6. 確認後,請選取停用 API 金鑰。金鑰的狀態會變成非作用中

重新啟用金鑰
  1. AWS 管理主控台使用具有使用 Amazon Bedrock 主控台之許可的 IAM 身分登入 。接著,開啟位於 https://console.aws.amazon.com/bedrock 的 Amazon Bedrock 主控台。

  2. 在左側導覽窗格中,選取API 金鑰

  3. 長期 API 金鑰區段中,選擇狀態非作用中的金鑰。

  4. 選擇動作

  5. 選取啟用

  6. 確認後,請選取啟用 API 金鑰。金鑰的狀態會變成作用中

Python

若要使用 API 停用金鑰,請使用 IAM 端點傳送 UpdateServiceSpecificCredential 請求,並將 Status 指定為 Inactive。您可以使用下列程式碼片段來停用金鑰,以建立金鑰時傳回的值取代 ${ServiceSpecificCredentialId}

import boto3 iam_client = boto3.client("iam") iam_client.update_service_specific_credential( service_specific_credential_id=${ServiceSpecificCredentialId}, status="Inactive" )

若要使用 API 重新啟用金鑰,請使用 IAM 端點傳送 UpdateServiceSpecificCredential 請求,並將 Status 指定為 Active。您可以使用下列程式碼片段來重新啟用金鑰,以建立金鑰時傳回的值取代 ${ServiceSpecificCredentialId}

import boto3 iam_client = boto3.client("iam") iam_client.update_service_specific_credential( service_specific_credential_id=${ServiceSpecificCredentialId}, status="Active" )

重設長期 Amazon Bedrock API 金鑰

如果金鑰的值已洩露或您不再擁有,請將其重設。金鑰必須尚未過期。如果已過期,請刪除金鑰並建立新的金鑰。

選擇您偏好方法的索引標籤,然後遵循下列步驟:

Console
重設金鑰
  1. AWS 管理主控台使用具有使用 Amazon Bedrock 主控台之許可的 IAM 身分登入 。接著,開啟位於 https://console.aws.amazon.com/bedrock 的 Amazon Bedrock 主控台。

  2. 在左側導覽窗格中,選取API 金鑰

  3. 長期 API 金鑰區段中,選擇金鑰。

  4. 選擇動作

  5. 選取重設金鑰

  6. 選取下一步

Python

若要使用 API 重設金鑰,請使用 IAM 端點傳送 ResetServiceSpecificCredential 請求。您可以使用下列程式碼片段來重設金鑰,以建立金鑰時傳回的值取代 ${ServiceSpecificCredentialId}

import boto3 iam_client = boto3.client("iam") iam_client.reset_service_specific_credential( service_specific_credential_id=${ServiceSpecificCredentialId} )

刪除長期 Amazon Bedrock API 金鑰

如果您不再需要金鑰或金鑰已過期,請將其刪除。

選擇您偏好方法的索引標籤,然後遵循下列步驟:

Console
刪除關鍵點
  1. AWS 管理主控台使用具有使用 Amazon Bedrock 主控台之許可的 IAM 身分登入 。接著,開啟位於 https://console.aws.amazon.com/bedrock 的 Amazon Bedrock 主控台。

  2. 在左側導覽窗格中,選取API 金鑰

  3. 長期 API 金鑰區段中,選擇金鑰。

  4. 選擇動作

  5. 選取刪除

  6. 確認刪除。

Python

若要使用 API 刪除金鑰,請傳送 DeleteServiceSpecificCredential 請求與 IAM 端點。您可以使用下列程式碼片段來刪除金鑰,以建立金鑰時傳回的值取代 ${ServiceSpecificCredentialId}

import boto3 iam_client = boto3.client("iam") iam_client.delete_service_specific_credential( service_specific_credential_id=${ServiceSpecificCredentialId} )

連接 IAM 政策以移除使用 Amazon Bedrock API 金鑰的許可

本節提供一些 IAM 政策,可用來限制對 Amazon Bedrock API 金鑰的存取。

拒絕身分使用 Amazon Bedrock API 金鑰進行呼叫

允許身分使用 Amazon Bedrock API 金鑰進行呼叫的動作為 bedrock:CallWithBearerToken。若要防止身分使用 Amazon Bedrock API 金鑰進行呼叫,您可以根據金鑰類型,在身分上連接 IAM 政策:

  • 長期金鑰 – 將政策連接至與金鑰相關聯的 IAM 使用者。

  • 短期金鑰 – 將政策連接至用於產生金鑰的 IAM 角色。

您可以連接到 IAM 身分的 IAM 政策如下所示:

JSON
{ "Version":"2012-10-17", "Statement": { "Effect": "Deny", "Action": "bedrock:CallWithBearerToken", "Resource": "*" } }

使 IAM 角色工作階段失效

如果短期金鑰已洩漏,您可以讓用來產生金鑰的角色工作階段失效來防止其使用。若要讓角色工作階段失效,請將下列政策連接至產生金鑰的 IAM 身分。將 2014-05-07T23:47:00Z 取代為您希望工作階段失效的時間。

JSON
{ "Version":"2012-10-17", "Statement": { "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "DateLessThan": {"aws:TokenIssueTime": "2014-05-07T23:47:00Z"} } } }