🔑 Amazon Bedrock API Keys: Autenticación Simplificada para Desarrolladores
🇻🇪🇨🇱 Dev.to Linkedin GitHub Twitter Instagram Youtube Linktr
{% embed https://dev.to/elizabethfuentes12 %}
¿Qué son las API Keys de Amazon Bedrock?
Amazon Bedrock ahora ofrece dos tipos de API Keys para simplificar la autenticación programática, cada una diseñada para diferentes casos de uso:
🟢 Short-term API Keys (Recomendadas)
- Duración: Hasta 12 horas o tiempo restante de sesión de consola
- Tecnología: Pre-signed URLs con AWS Signature Version 4
- Permisos: Heredan los mismos permisos de la identidad que las genera
- Generación: Consola de Bedrock, paquete Python
aws-bedrock-token-generator - Seguridad: Menor riesgo por su corta duración
🟡 Long-term API Keys (Para desarrollo)
- Duración: De 1 día hasta 365 días (o sin expiración)
- Asociación: Vinculadas a usuarios IAM específicos
- Límite: Máximo 2 keys por usuario IAM
- Política automática: Se adjunta
AmazonBedrockLimitedAccessal usuario - Seguridad: Mayor riesgo - requiere rotación regular
🛠️ Cómo Generar Long-term API Keys
Prerrequisitos
- Usuario IAM existente
- Permisos IAM necesarios:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceSpecificCredential",
"iam:ListServiceSpecificCredentials",
"iam:UpdateServiceSpecificCredential",
"iam:DeleteServiceSpecificCredential",
"iam:ResetServiceSpecificCredential"
],
"Resource": "arn:aws:iam::*:user/username"
}
]
}
🖥️ Método 1: Consola AWS
- Navega a IAM Console → Users
- Selecciona el usuario IAM
- Pestaña Security credentials
- Sección API keys for Amazon Bedrock → Generate API Key

- Configura expiración (1, 5, 30, 90, 365 días o personalizada)

- ¡IMPORTANTE! Descarga/copia la key inmediatamente - no podrás recuperarla después

⌨️ Método 2: AWS CLI
Para generar una clave API a largo plazo de Amazon Bedrock mediante la AWS CLI, utilice Pasos para generar una clave API a largo plazo para Amazon Bedrock (AWS CLI).
💻 Implementación en Código
🌐 Primero debes agregar la nueva key
Set as environment variable
export AWS_BEARER_TOKEN_BEDROCK=your-api-key-here
Or use in applications
import os api_key = os.getenv(‘AWS_BEARER_TOKEN_BEDROCK’)
import requests
# Configuración
url = "https://bedrock-runtime.us-east-1.amazonaws.com/model/anthropic.claude-3-sonnet-20240229-v1:0/invoke"
payload = {
"messages": [
{
"role": "user",
"content": [{"type": "text", "text": "Hello, Bedrock!"}]
}
],
"max_tokens": 1000,
"anthropic_version": "bedrock-2023-05-31"
}
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_BEDROCK_API_KEY"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
🔒 Mejores Prácticas de Seguridad
⚠️ AWS recomienda encarecidamente:
- Preferir short-term API keys sobre long-term cuando sea posible
- Implementar rotación regular para long-term keys
- Almacenar keys de forma segura (nunca en código fuente)
- Monitorear uso mediante CloudTrail
- Principio de menor privilegio - ajustar permisos según necesidad
🎯 ¿Cuándo usar cada tipo?
| Escenario | Recomendación |
|---|---|
| Aplicaciones producción | Short-term API keys |
| Desarrollo/Testing | Long-term API keys |
| CI/CD Pipelines | Short-term API keys |
| Scripts personales | Long-term API keys |
| Aplicaciones enterprise | Short-term + rotación automática |
¿Ya has probado las nuevas API Keys? ¡Comparte tu experiencia en los comentarios! 🚀