Documentation Index
Fetch the complete documentation index at: https://docs.crewai.com/llms.txt
Use this file to discover all available pages before exploring further.
Visão Geral
Este guia o orienta na configuração do AWS Secrets Manager como provedor de segredos para sua organização na CrewAI Platform, usando credenciais estáticas (chaves de acesso, opcionalmente com AssumeRole). Ao final, a CrewAI Platform poderá ler segredos armazenados na sua conta AWS e injetá-los como valores de variáveis de ambiente em runtime.Este guia cobre o caminho de credenciais estáticas — segredos são resolvidos no momento do deploy e incorporados à imagem do deployment. Valores rotacionados exigem um novo deploy. Se você quiser segredos conscientes de rotação que se atualizam a cada kickoff de automação (sem novo deploy), veja AWS Workload Identity (Federação OIDC).
Este guia cobre a configuração do lado da AWS e a configuração da credencial na CrewAI Platform. Para então referenciar um segredo a partir de uma variável de ambiente, veja Usando o Secrets Manager.
Pré-requisitos
Antes de começar, certifique-se de que você tem:
- Uma conta AWS com permissão para criar usuários IAM, políticas gerenciadas pelo cliente e (opcionalmente) papéis IAM.
- A região AWS onde seus segredos vivem (ou viverão), por exemplo
us-east-1. - Uma organização na CrewAI Platform onde seu usuário tem a permissão
secret_providers: manage. Veja Permissões (RBAC).
Escolha um Método de Autenticação
A CrewAI Platform suporta duas formas para que a plataforma se autentique no AWS Secrets Manager. Escolha uma antes de começar — os passos abaixo diferem dependendo do que você escolher.| Método | Quando usar | Trade-offs |
|---|---|---|
| Chaves de acesso estáticas | Começar rápido, deployments single-account | Configuração mais simples; chaves de acesso devem ser rotacionadas manualmente |
| AssumeRole | Cross-account, hardening de produção | Credenciais de curta duração; suporta External ID; requer papel IAM extra |
Passo 1 — Criar um Usuário IAM
Abra o console IAM, navegue até Users, depois clique em Create user.- Nome sugerido:
crewai-secrets-reader. - Deixe Provide user access to the AWS Management Console desmarcado — este principal é usado programaticamente pela CrewAI Platform, não por humanos.
- Clique em Next.
Passo 2 — Criar a Política IAM
A CrewAI Platform precisa de acesso somente leitura ao AWS Secrets Manager e permissão para descriptografar segredos via KMS. Crie uma política gerenciada pelo cliente com o seguinte JSON. No console IAM, navegue até Policies, depois clique em Create policy. Escolha a aba JSON e substitua o conteúdo por:- Policy name:
CrewAISecretsManagerRead - Description (optional):
Read-only access to AWS Secrets Manager for CrewAI Platform
Passo 3 — Anexar a Política
- Chaves de acesso estáticas
- AssumeRole
- No console IAM, navegue até Users e clique no usuário que você criou no Passo 1.
- Na aba Permissions, clique em Add permissions → Attach policies directly.
- Procure por
CrewAISecretsManagerRead, selecione-a e clique em Next. - Clique em Add permissions.
Passo 4 — Obter Credenciais
- Chaves de acesso estáticas
- AssumeRole
- No console IAM, abra o usuário do Passo 1.
- Clique na aba Security credentials.
- Em Access keys, clique em Create access key.
- Selecione Application running outside AWS (ou Other) como caso de uso. Clique em Next.
- (Opcional) Adicione uma tag de descrição. Clique em Create access key.
- Clique em Show para revelar a secret access key, então copie tanto o Access key ID quanto a Secret access key, ou clique em Download .csv file.
Passo 5 — Adicionar a Credencial na CrewAI Platform
Na CrewAI Platform, navegue até Settings → Secret Provider Credentials e clique em Add Credential.- Chaves de acesso estáticas
- AssumeRole
Preencha o formulário:
- Name: Um nome descritivo, ex.
aws-prod. - Provider:
AWS Secrets Manager. - Region: A região AWS onde seus segredos vivem, ex.
us-east-1. Deve corresponder à região dos segredos que você quer ler. - Access Key ID: O valor do Passo 4.
- Secret Access Key: O valor do Passo 4.
- (Opcional) Marque Set as default credential for this provider. A credencial padrão é usada por variáveis de ambiente que referenciam segredos AWS sem especificar uma credencial explicitamente.
Como os dois modos se comportam em runtime:
- Com apenas chaves de acesso estáticas, a CrewAI Platform chama o AWS Secrets Manager diretamente usando as chaves que você forneceu.
- Quando um Role ARN está definido, a CrewAI Platform primeiro chama
sts:AssumeRolecom as chaves de acesso fornecidas (e External ID se configurado), depois usa as credenciais de curta duração retornadas pelo STS para ler seus segredos.
Passo 6 — Criar Pelo Menos Um Segredo na AWS
Se você ainda não tem segredos no AWS Secrets Manager, crie um agora para que possa verificar a conexão no Passo 7. No console do AWS Secrets Manager, clique em Store a new secret.- Secret type: Escolha Other type of secret.
- Key/value pairs — ou:
- Informe um ou mais pares chave/valor (recomendado para segredos estruturados), ou
- Use a aba Plaintext para um único valor de string.
- Encryption key: Use
aws/secretsmanager(a chave gerenciada pela AWS) a menos que você tenha um requisito específico de chave KMS.
- Secret name: Um nome único, ex.
crewai/openai-api-key. - Description (optional): Uma nota curta sobre o propósito do segredo.
Sintaxe de referência por chave JSON. Se você armazenar um segredo com múltiplos pares chave/valor (um objeto JSON), a CrewAI Platform pode extrair um campo específico usando a sintaxe
secret-name#json_key em referências de variáveis de ambiente. Por exemplo, um segredo chamado database-credentials com {"username": "...", "password": "..."} pode ser referenciado como database-credentials#password. Veja Usando o Secrets Manager para detalhes.Passo 7 — Testar a Conexão
De volta à CrewAI Platform, na página Secret Provider Credentials, encontre a credencial que você acabou de criar e clique em Test Connection. Um toast de sucesso confirma que a CrewAI Platform consegue se autenticar na AWS e ler segredos da sua conta. Se o teste falhar, verifique as causas mais comuns:| Sintoma | Causa provável |
|---|---|
AccessDenied em secretsmanager:ListSecrets | Política não anexada, ou usuário errado. Reconfira o Passo 3. |
AccessDenied em kms:Decrypt | Falta a declaração KMSDecrypt, ou seus segredos usam uma chave KMS gerenciada pelo cliente não coberta por Resource: "*". |
InvalidClientTokenId / SignatureDoesNotMatch | Access key ID ou secret access key errados. Reconfira os Passos 4 e 5. |
RegionDisabledException / nenhum segredo encontrado | A Region da credencial não corresponde a onde seus segredos realmente vivem. |
AccessDenied em sts:AssumeRole (apenas AssumeRole) | Política inline sts:AssumeRole ausente no usuário IAM, ou a trust policy do role não permite este principal, ou o External ID não corresponde. |
| Teste passa imediatamente após criar o usuário IAM, mas falha da próxima vez | Credenciais IAM às vezes levam um ou dois minutos para se propagar globalmente. Tente novamente. |
Próximos Passos
Agora que a AWS está conectada, vá para Usando o Secrets Manager para:- Conceder aos membros da organização as permissões corretas para usar (ou gerenciar) o Secrets Manager.
- Referenciar seus segredos AWS a partir de variáveis de ambiente da CrewAI Platform.
