As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Chaves de API
As chaves de API do Amazon Bedrock permitem que você autentique solicitações de API usando um token de portador em vez de credenciais. AWS Existem dois tipos:
-
Short-term— Dura até 12 horas (ou a duração da sessão, o que for menor). Herda as permissões do diretor do IAM usado para gerá-lo. Recomendado para uso em produção.
-
Long-term— Dura até uma data de expiração configurada. Cria um usuário do IAM com políticas anexadas. Recomendado somente para exploração.
Todas as chamadas de API estão registradas AWS CloudTrail. As chaves de API são passadas como cabeçalhos de autorização e não são registradas.
Gere uma chave de API de curto prazo
Escolha a guia correspondente ao método de sua preferência e siga as etapas:
- Console
-
Faça login no Console de gerenciamento da AWS com uma identidade do IAM que tenha permissões para usar o console Amazon Bedrock. Em seguida, abra o console Amazon Bedrock em https://console.aws.amazon.com/bedrock.
No painel de navegação à esquerda, selecione Chaves de API.
Na guia Chaves de Short-term API, escolha Gerar chaves de API de curto prazo.
A chave expira quando a sessão do console expira (máximo de 12 horas). Para gerar uma chave para uma região diferente, primeiro alterne as regiões no console.
- Python
-
Instale o gerador de tokens:
pip install aws-bedrock-token-generator
Gere um token:
from aws_bedrock_token_generator import provide_token
token = provide_token()
print(f"Token: {token}")
- Javascript
-
Instale o gerador de tokens:
npm install @aws/bedrock-token-generator
Gere um token:
import { getTokenProvider } from "@aws/bedrock-token-generator";
const provideToken = getTokenProvider();
const token = await provideToken();
console.log(`Bearer Token: ${token}`);
- Java
-
Adicione a dependência (Maven):
<dependency>
<groupId>software.amazon.bedrock</groupId>
<artifactId>aws-bedrock-token-generator</artifactId>
<version>1.1.0</version>
</dependency>
Gere um token:
import software.amazon.bedrock.token.BedrockTokenGenerator;
BedrockTokenGenerator tokenGenerator = BedrockTokenGenerator.builder().build();
String token = tokenGenerator.getToken();
Gere uma chave de API de longo prazo
Escolha a guia correspondente ao método de sua preferência e siga as etapas:
- Console
-
Faça login no Console de gerenciamento da AWS com uma identidade do IAM que tenha permissões para usar o console Amazon Bedrock. Em seguida, abra o console Amazon Bedrock em https://console.aws.amazon.com/bedrock.
No painel de navegação à esquerda, selecione Chaves de API.
Na guia Chaves de Long-term API, escolha Gerar chaves de API de longo prazo.
Escolha um prazo de validade e, opcionalmente, adicione permissões em Permissões avançadas.
Escolha Gerar.
- 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}
ServiceApiKeyValueNa resposta está sua chave de API.
Para desativar ou excluir a chave posteriormente, use o ServiceSpecificCredentialId da resposta:
# 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)
Usar uma chave de API
Defina a chave como uma variável de ambiente:
# macOS/Linux
export AWS_BEARER_TOKEN_BEDROCK=${api-key}
# Windows
setx AWS_BEARER_TOKEN_BEDROCK "${api-key}"
Ou passe-o diretamente no Authorization cabeçalho:
Authorization: Bearer ${api-key}
Exemplo: Faça uma solicitação Converse
escolha a guia do seu método preferido e siga as etapas:
- 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 chaves de curto prazo
Para aplicativos de longa duração, chame o gerador de tokens antes de cada solicitação. Ele retorna um token em cache se ainda for válido ou gera um novo automaticamente:
- 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 mais exemplos, consulte a documentação do gerador de tokens: Python | Javascript | Java.
Modificar permissões
Uma chave de API de longo prazo está associada a um usuário do IAM. Para alterar suas permissões, modifique as políticas anexadas a esse usuário. Consulte Adicionar e remover permissões de identidade do IAM.
No console: acesse Chaves de API > Chaves de Long-term API > selecione sua chave > Gerenciar no console do IAM.
Chaves comprometidas
Se uma chave for comprometida, execute uma das seguintes ações:
| Ação |
Tipo de chave |
Como |
| Desativar |
Long-term |
Console: chaves de API > selecione a chave > Ações > Desativar. API: UpdateServiceSpecificCredential comStatus=Inactive. |
| Redefinir |
Long-term |
Console: Ações > Tecla de redefinição. API:ResetServiceSpecificCredential. |
| Delete |
Long-term |
Console: Ações > Excluir. API:DeleteServiceSpecificCredential. |
| Invalidar sessão |
Short-term |
Anexe uma política do IAM à identidade que nega bedrock:CallWithBearerToken ou invalida a sessão usada para gerar a chave. |
Controle quem pode gerar e usar chaves de API
Duas ações do IAM controlam a geração e o uso da chave da API:
-
iam:CreateServiceSpecificCredential— Controla a geração de chaves de longo prazo. Use a chave de iam:ServiceSpecificCredentialAgeDays condição para limitar a expiração (por exemplo, no máximo 90 dias).
-
bedrock:CallWithBearerToken— Controla o uso de qualquer chave de API. Use a chave de bedrock:bearerTokenType condição com valores SHORT_TERM ou LONG_TERM para segmentar tipos de chave específicos.
Exemplo: impedir que uma identidade use qualquer chave de API
Anexe esta política à identidade:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "bedrock:CallWithBearerToken",
"Resource": "*"
}
]
}
Exemplo: permitir somente chaves de curta duração (máximo de 90 dias)
Anexe esta política à identidade:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:CreateServiceSpecificCredential",
"Resource": "*",
"Condition": {
"NumericLessThanEquals": {
"iam:ServiceSpecificCredentialAgeDays": "90"
},
"StringEquals": {
"iam:ServiceSpecificCredentialServiceName": "bedrock.amazonaws.com"
}
}
}
]
}
Para obter exemplos de políticas mais detalhados, consulteReferência de chaves de API.