View a markdown version of this page

Claves de API - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Claves de API

Las claves de API de Amazon Bedrock le permiten autenticar las solicitudes de API mediante un token portador en lugar de credenciales. AWS Hay dos tipos:

  • Short-term— Dura hasta 12 horas (o la duración de la sesión, lo que sea más corto). Hereda los permisos del principal de IAM utilizado para generarla. Se recomienda para uso en producción.

  • Long-term— Dura hasta una fecha de caducidad configurada. Crea un usuario de IAM con políticas adjuntas. Se recomienda solo para la exploración.

nota

Todas las llamadas a la API están registradas AWS CloudTrail. Las claves de API se transmiten como encabezados de autorización y no se registran.

Genera una clave de API a corto plazo

Elija la pestaña del método que prefiera y siga estos pasos:

Console
  1. Inicie sesión Consola de administración de AWS con una identidad de IAM que tenga permisos para usar la consola Amazon Bedrock. A continuación, abra la consola Amazon Bedrock en https://console.aws.amazon.com/bedrock.

  2. En el panel de navegación izquierdo, seleccione Claves de API.

  3. En la pestaña Claves de Short-term API, selecciona Generar claves de API a corto plazo.

La clave caduca cuando caduca la sesión de la consola (máximo 12 horas). Para generar una clave para una región diferente, primero cambia de región en la consola.

Python

Instala el generador de fichas:

pip install aws-bedrock-token-generator

Genera un token:

from aws_bedrock_token_generator import provide_token token = provide_token() print(f"Token: {token}")
Javascript

Instala el generador de fichas:

npm install @aws/bedrock-token-generator

Genera un token:

import { getTokenProvider } from "@aws/bedrock-token-generator"; const provideToken = getTokenProvider(); const token = await provideToken(); console.log(`Bearer Token: ${token}`);
Java

Agrega la dependencia (Maven):

<dependency> <groupId>software.amazon.bedrock</groupId> <artifactId>aws-bedrock-token-generator</artifactId> <version>1.1.0</version> </dependency>

Genera un token:

import software.amazon.bedrock.token.BedrockTokenGenerator; BedrockTokenGenerator tokenGenerator = BedrockTokenGenerator.builder().build(); String token = tokenGenerator.getToken();

Genera una clave de API a largo plazo

aviso

Long-term las claves son solo para exploración. Para la producción, utilice claves de corta duración. Para obtener más información, consulte Alternativas a las claves de acceso a largo plazo.

Elija la pestaña del método que prefiera y siga estos pasos:

Console
  1. Inicie sesión Consola de administración de AWS con una identidad de IAM que tenga permisos para usar la consola Amazon Bedrock. A continuación, abra la consola Amazon Bedrock en https://console.aws.amazon.com/bedrock.

  2. En el panel de navegación izquierdo, seleccione Claves de API.

  3. En la pestaña Claves de Long-term API, selecciona Generar claves de API a largo plazo.

  4. Elige una fecha de caducidad y, si lo deseas, añade permisos en Permisos avanzados.

  5. Seleccione Generar.

CLI
# Create an IAM user aws iam create-user --user-name bedrock-api-user # Attach permissions aws iam attach-user-policy --user-name bedrock-api-user \ --policy-arn arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess # Generate the API key (replace NUMBER-OF-DAYS) aws iam create-service-specific-credential \ --user-name bedrock-api-user \ --service-name bedrock.amazonaws.com \ --credential-age-days ${NUMBER-OF-DAYS}

ServiceApiKeyValueEn la respuesta aparece tu clave de API.

Para desactivar o eliminar la clave más adelante, usa la siguiente información ServiceSpecificCredentialId de la respuesta:

# Deactivate the key aws iam update-service-specific-credential \ --user-name bedrock-api-user \ --service-specific-credential-id ${ServiceSpecificCredentialId} \ --status Inactive # Delete the key permanently aws iam delete-service-specific-credential \ --user-name bedrock-api-user \ --service-specific-credential-id ${ServiceSpecificCredentialId}
Python
import boto3 iam_client = boto3.client("iam") # Create IAM user iam_client.create_user(UserName="bedrock-api-user") # Attach permissions iam_client.attach_user_policy( UserName="bedrock-api-user", PolicyArn="arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess" ) # Generate API key response = iam_client.create_service_specific_credential( UserName="bedrock-api-user", ServiceName="bedrock.amazonaws.com", CredentialAgeDays=30 ) api_key = response["ServiceSpecificCredential"]["ServiceApiKeyValue"] print(api_key)

Uso de una clave de API

Configura la clave como una variable de entorno:

# macOS/Linux export AWS_BEARER_TOKEN_BEDROCK=${api-key} # Windows setx AWS_BEARER_TOKEN_BEDROCK "${api-key}"

O pásala directamente al Authorization encabezado:

Authorization: Bearer ${api-key}
Ejemplo: haz una solicitud de Converse

elige la pestaña del método que prefieras y, a continuación, sigue los pasos:

cURL
curl -X POST "https://bedrock-runtime.us-east-1.amazonaws.com/model/us.anthropic.claude-sonnet-4-6/converse" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK" \ -d '{ "messages": [{"role": "user", "content": [{"text": "Hello"}]}] }'
Python (boto3)
import os import boto3 os.environ['AWS_BEARER_TOKEN_BEDROCK'] = "${api-key}" client = boto3.client("bedrock-runtime", region_name="us-east-1") response = client.converse( modelId="us.anthropic.claude-sonnet-4-6", messages=[{"role": "user", "content": [{"text": "Hello"}]}] )

Auto-refresh claves de corto plazo

Para aplicaciones de larga duración, llama al generador de fichas antes de cada solicitud. Devuelve un token en caché si sigue siendo válido o genera uno nuevo automáticamente:

Python
from aws_bedrock_token_generator import provide_token import requests url = "https://bedrock-runtime.us-west-2.amazonaws.com/model/us.anthropic.claude-sonnet-4-6/converse" payload = {"messages": [{"role": "user", "content": [{"text": "Hello"}]}]} # Call provide_token() before each request — it handles caching/refresh token = provide_token() headers = {"Content-Type": "application/json", "Authorization": f"Bearer {token}"} response = requests.post(url, headers=headers, json=payload) print(response.json())
Javascript
import { getTokenProvider } from "@aws/bedrock-token-generator"; const provideToken = getTokenProvider(); const url = "https://bedrock-runtime.us-east-1.amazonaws.com/model/us.anthropic.claude-sonnet-4-6/converse"; const payload = {messages: [{role: "user", content: [{text: "Hello"}]}]}; // provideToken() handles caching/refresh automatically const headers = { "Content-Type": "application/json", "Authorization": `Bearer ${await provideToken()}` }; await fetch(url, {method: 'POST', headers, body: JSON.stringify(payload)});

Para ver más ejemplos, consulta la documentación del generador de tokens: Python | Javascript | Java.

Modificar los permisos

Una clave de API de larga duración está asociada a un usuario de IAM. Para cambiar sus permisos, modifique las políticas asociadas a ese usuario. Consulte Añadir y eliminar permisos de identidad de IAM.

Desde la consola: vaya a Claves de API > Claves de Long-term API > seleccione su clave > Administrar en la consola de IAM.

Claves comprometidas

Si una clave está comprometida, lleve a cabo una de las siguientes acciones:

Action Tipo de clave Cómo
Desactivación Long-term Consola: claves de API > tecla de selección > Acciones > Desactivar. API: UpdateServiceSpecificCredential conStatus=Inactive.
Restablecer Long-term Consola: Acciones > Restablecer clave. API:ResetServiceSpecificCredential.
Eliminar Long-term Consola: Acciones > Eliminar. API:DeleteServiceSpecificCredential.
Invalidar sesión Short-term Adjunte una política de IAM a la identidad que deniegue bedrock:CallWithBearerToken o invalide la sesión utilizada para generar la clave.

Controle quién puede generar y usar las claves de API

Dos acciones de IAM controlan la generación y el uso de las claves de la API:

  • iam:CreateServiceSpecificCredential— Controla la generación de claves a largo plazo. Utilice la clave de iam:ServiceSpecificCredentialAgeDays condición para limitar la caducidad (por ejemplo, un máximo de 90 días).

  • bedrock:CallWithBearerToken— Controla el uso de cualquier clave de API. Usa la clave de bedrock:bearerTokenType condición con valores SHORT_TERM o LONG_TERM para dirigirte a tipos de clave específicos.

Ejemplo: impedir que una identidad utilice cualquier clave de API

Adjunta esta política a la identidad:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "bedrock:CallWithBearerToken", "Resource": "*" } ] }
Ejemplo: permita solo claves de corta duración (máximo 90 días)

Adjunte esta política a la identidad:

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

Para ver ejemplos de políticas más detallados, consulteReferencia de claves de API.