🔑 Amazon Bedrock API Keys: Autenticación Simplificada para Desarrolladores

🔑 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 AmazonBedrockLimitedAccess al usuario
  • Seguridad: Mayor riesgo - requiere rotación regular

🛠️ Cómo Generar Long-term API Keys

Prerrequisitos

  1. Usuario IAM existente
  2. 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

  1. Navega a IAM ConsoleUsers
  2. Selecciona el usuario IAM
  3. Pestaña Security credentials
  4. Sección API keys for Amazon BedrockGenerate API Key

Image description

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

Image description

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

Image description

⌨️ 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?

EscenarioRecomendación
Aplicaciones producciónShort-term API keys
Desarrollo/TestingLong-term API keys
CI/CD PipelinesShort-term API keys
Scripts personalesLong-term API keys
Aplicaciones enterpriseShort-term + rotación automática

¿Ya has probado las nuevas API Keys? ¡Comparte tu experiencia en los comentarios! 🚀