控制產生和使用 Amazon Bedrock API 金鑰的許可 - Amazon Bedrock

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

控制產生和使用 Amazon Bedrock API 金鑰的許可

Amazon Bedrock API 金鑰的產生和使用由 Amazon Bedrock 和 IAM 服務中的動作和條件金鑰控制。

控制 Amazon Bedrock API 金鑰的產生

iam:CreateServiceSpecificCredential 動作可控制產生服務特定金鑰 (例如長期 Amazon Bedrock API 金鑰)。您可以將此動作限制為 IAM 使用者做為資源,以限制可產生金鑰的使用者。

您可以使用下列條件金鑰,對 iam:CreateServiceSpecificCredential動作的許可強加條件:

  • iam:ServiceSpecificCredentialAgeDays – 可讓您在條件中指定金鑰的過期時間,以天為單位。例如,您可以使用此條件金鑰,僅允許建立在 90 天內過期的 API 金鑰。

  • iam:ServiceSpecificCredentialServiceName – 可讓您在條件中指定服務的名稱。例如,您可以使用此條件金鑰,僅允許為 Amazon Bedrock 而非其他服務建立 API 金鑰。

控制 Amazon Bedrock API 金鑰的使用

bedrock:CallWithBearerToken 動作控制短期或長期 Amazon Bedrock API 金鑰的使用。

您可以使用 bedrock:bearerTokenType條件金鑰搭配字串條件運算子來指定要套用 許可的承載字符類型bedrock:CallWithBearerToken。您可以指定下列其中一個值:

  • SHORT_TERM – 在 條件中指定短期 Amazon Bedrock API 金鑰。

  • LONG_TERM – 在 條件中指定長期 Amazon Bedrock API 金鑰。

下表摘要說明如何防止身分產生或使用 Amazon Bedrock API 金鑰:

用途 長期金鑰 短期金鑰
防止產生金鑰 將拒絕iam:CreateServiceSpecificCredential動作的政策連接到 IAM 身分。 N/A
防止使用金鑰 將拒絕bedrock:CallWithBearerToken動作的政策連接到與金鑰相關聯的 IAM 使用者。 將拒絕bedrock:CallWithBearerToken動作的政策連接到您不想使用金鑰的 IAM 身分。
警告

由於短期 Amazon Bedrock API 金鑰使用工作階段的現有登入資料,因此您可以拒絕對產生金鑰的身分bedrock:CallWithBearerToken執行動作,以防止其使用。不過,您無法防止產生短期金鑰。

控制 API 金鑰產生和使用的範例政策

例如,用於控制 API 金鑰產生和使用的 IAM 政策,請從下列主題中選取 :

防止身分產生長期金鑰和使用 Amazon Bedrock API 金鑰

若要防止 IAM 身分產生長期 Amazon Bedrock API 金鑰和使用任何 Amazon Bedrock API 金鑰,請將下列政策連接至身分:

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid":"DenyBedrockShortAndLongTermAPIKeys", "Effect": "Deny", "Action": [ "iam:CreateServiceSpecificCredential", "bedrock:CallWithBearerToken" ], "Resource": [ "*" ] } ] }
警告
  • 您無法防止產生短期金鑰。

  • 此政策將防止為所有支援建立服務特定登入資料的 AWS 服務建立登入資料。如需詳細資訊,請參閱 IAM 使用者的服務特定登入資料。

防止身分使用短期 API 金鑰

若要防止 IAM 身分使用短期 Amazon Bedrock API 金鑰,請將下列政策連接至身分:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "bedrock:CallWithBearerToken", "Resource": "*", "Condition": { "StringEquals": { "bedrock:bearerTokenType": "SHORT_TERM" } } } }

防止身分使用長期 API 金鑰

若要防止 IAM 身分使用長期 Amazon Bedrock API 金鑰,請將下列政策連接至身分:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "bedrock:CallWithBearerToken", "Resource": "*", "Condition": { "StringEquals": { "bedrock:bearerTokenType": "LONG_TERM" } } } ] }

明確防止身分使用短期 API 金鑰

若要明確防止 IAM 身分使用短期 Amazon Bedrock API 金鑰,但允許其他 API 金鑰使用,請將下列政策連接至身分:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "bedrock:CallWithBearerToken", "Resource": "*", "Condition": { "StringEquals": { "bedrock:bearerTokenType": "SHORT_TERM" } } }, { "Effect": "Allow", "Action": "bedrock:CallWithBearerToken", "Resource": "*" } ] }

明確防止身分使用長期 API 金鑰

若要明確防止 IAM 身分使用長期 Amazon Bedrock API 金鑰,但允許使用其他 API 金鑰,請將下列政策連接至身分:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "bedrock:CallWithBearerToken", "Resource": "*", "Condition": { "StringEquals": { "bedrock:bearerTokenType": "LONG_TERM" } } }, { "Effect": "Allow", "Action": "bedrock:CallWithBearerToken", "Resource": "*" } ] }

只有在 Amazon Bedrock 金鑰在 90 天內過期時,才允許建立金鑰

若要允許 IAM 身分僅在適用於 Amazon Bedrock 且過期時間為 90 天或更短時建立長期 API 金鑰,請將下列政策連接至身分:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceSpecificCredential", "Resource": "arn:aws:iam::123456789012:user/username", "Condition": { "StringEquals": { "iam:ServiceSpecificCredentialServiceName": "bedrock.amazonaws.com" }, "NumericLessThanEquals": { "iam:ServiceSpecificCredentialAgeDays": "90" } } } ] }