Control de los permisos para generar y usar las claves de API de Amazon Bedrock - Amazon Bedrock

Control de los permisos para generar y usar las claves de API de Amazon Bedrock

La generación y el uso de las claves de API de Amazon Bedrock se controlan mediante claves de acciones y condiciones en los servicios de Amazon Bedrock e IAM.

Control de la generación de claves de API de Amazon Bedrock

La acción iam:CreateServiceSpecificCredential controla la generación de una clave específica del servicio (como una clave de API de Amazon Bedrock de larga duración). Puede limitar esta acción a los usuarios de IAM como una forma de restringir el número de usuarios para los que se puede generar una clave.

Puede utilizar las siguientes claves de condición para imponer condiciones al permiso de la acción iam:CreateServiceSpecificCredential:

  • iam:ServiceSpecificCredentialAgeDays: permite especificar, en esta condición, el tiempo de caducidad de la clave en días. Por ejemplo, puede utilizar esta clave de condición para permitir únicamente la creación de claves de API que caduquen en 90 días.

  • iam:ServiceSpecificCredentialServiceName: permite especificar, en la condición, el nombre de un servicio. Por ejemplo, puede utilizar esta clave de condición para permitir únicamente la creación de claves de API para Amazon Bedrock y no para otros servicios.

Control del uso de claves de API de Amazon Bedrock

La acción bedrock:CallWithBearerToken controla el uso de una clave de API de Amazon Bedrock de corta o larga duración.

Puede utilizar la clave de condición bedrock:bearerTokenType con operadores de condición de cadena para especificar el tipo de token de portador al que se aplicará el permiso para bedrock:CallWithBearerToken. Puede especificar uno de los siguientes valores:

  • SHORT_TERM: especifica las claves de API de Amazon Bedrock de corta duración en la condición.

  • LONG_TERM: especifica las claves de API de Amazon Bedrock de larga duración en la condición.

En la siguiente tabla se resume cómo evitar que una identidad genere o utilice claves de API de Amazon Bedrock:

Finalidad Clave de larga duración Clave de corta duración
Impedir la generación de claves Asocie una política que deniegue la acción iam:CreateServiceSpecificCredential a una identidad de IAM. N/A
Impedir el uso de una clave Asocie una política que deniegue la acción bedrock:CallWithBearerToken al usuario de IAM asociado a la clave. Asocie una política que deniegue la acción bedrock:CallWithBearerToken a las identidades de IAM que no desee que puedan usar la clave.
aviso

Dado que una clave de API de Amazon Bedrock de corta duración utiliza las credenciales existentes de una sesión, puede impedir su uso denegando la acción bedrock:CallWithBearerToken en la identidad que generó la clave. Sin embargo, no puede impedir la generación de una clave de corta duración.

Ejemplos de políticas para controlar la generación y el uso de claves de API

Para ver ejemplos de políticas de IAM para controlar la generación y el uso de las claves de API, seleccione uno de los siguientes temas:

Cómo impedir que una identidad genere claves de larga duración y utilice claves de API de Amazon Bedrock

Para impedir que una identidad de IAM genere claves de API de Amazon Bedrock de larga duración y utilice cualquier clave de API de Amazon Bedrock, asocie la siguiente política a la identidad:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid":"DenyBedrockShortAndLongTermAPIKeys", "Effect": "Deny", "Action": [ "iam:CreateServiceSpecificCredential", "bedrock:CallWithBearerToken" ], "Resource": [ "*" ] } ] }
aviso
  • No puede impedir la generación de claves de corta duración.

  • Esta política impedirá la creación de credenciales para todos los servicios de AWS que admiten la creación de credenciales específicas de un servicio. Para obtener más información, consulte Credenciales específicas del servicio para los usuarios de IAM.

Cómo impedir que una identidad use las claves de API de corta duración

Para impedir que una identidad de IAM use claves de API de Amazon Bedrock de corta duración, asocie la siguiente política a la identidad:

Cómo impedir que una identidad use las claves de API de larga duración

Para impedir que una identidad de IAM use claves de API de Amazon Bedrock de larga duración, asocie la siguiente política a la identidad:

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

Cómo impedir explícitamente que una identidad use las claves de API de corta duración

Para impedir que una identidad de IAM use claves de API de Amazon Bedrock de corta duración, pero permitir que use otras claves de API, asocie la siguiente política a la identidad:

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

Cómo impedir explícitamente que una identidad use las claves de API de larga duración

Para impedir explícitamente que una identidad de IAM use claves de API de Amazon Bedrock de larga duración, pero permitir que use otras claves de API, asocie la siguiente política a la identidad:

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

Cómo permitir la creación de claves de Amazon Bedrock solo si caducan en un plazo de 90 días

Para permitir que una identidad de IAM cree una clave de API de larga duración solo si es para Amazon Bedrock y el tiempo de caducidad es de 90 días o menos, asocie la siguiente política a la identidad:

JSON
{ "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" } } } ] }