Google Cloud Secret Manager
Visão Geral
Seção intitulada “Visão Geral”Este guia o orienta na configuração do Google Cloud Secret Manager como provedor de segredos para sua organização na CrewAI Platform, usando credenciais de service account. Ao final, a CrewAI Platform poderá ler segredos armazenados no seu projeto Google Cloud e injetá-los como valores de variáveis de ambiente em runtime.
Pré-requisitos
Seção intitulada “Pré-requisitos”Passo 1 — Criar uma Service Account
Seção intitulada “Passo 1 — Criar uma Service Account”Uma service account é a identidade do lado GCP como a qual a CrewAI Platform irá se autenticar.
No console IAM & Admin → Service Accounts, clique em Create Service Account.
- Service account name:
crewai-secrets-reader - Service account ID: preenchido automaticamente a partir do nome (ex.
crewai-secrets-reader@YOUR_PROJECT_ID.iam.gserviceaccount.com) - Description (optional): “Read-only access to Secret Manager for CrewAI Platform”
Clique em Create and Continue. Pule as concessões opcionais nesta tela — você anexará o papel no Passo 2. Clique em Done.
Para detalhes completos, veja a documentação GCP: Create service accounts.
Passo 2 — Conceder Acesso ao Secret Manager
Seção intitulada “Passo 2 — Conceder Acesso ao Secret Manager”A CrewAI Platform precisa de permissão para listar e ler segredos no seu projeto. Use um de dois escopos — a nível de projeto para simplicidade ou por segredo para menor privilégio.
No console IAM, clique em Grant Access e:
- New principals: o email da service account do Passo 1.
- Role: Secret Manager Secret Accessor (
roles/secretmanager.secretAccessor).
Clique em Save.
Ou via gcloud:
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:crewai-secrets-reader@YOUR_PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/secretmanager.secretAccessor"Conceda o papel apenas nos segredos específicos que a CrewAI Platform deve acessar. Repita para cada segredo:
gcloud secrets add-iam-policy-binding YOUR_SECRET_NAME \ --member="serviceAccount:crewai-secrets-reader@YOUR_PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/secretmanager.secretAccessor" \ --project=YOUR_PROJECT_IDOu no console: abra cada segredo no Secret Manager, clique em Permissions no painel à direita e conceda Secret Manager Secret Accessor à service account.
Passo 3 — Criar uma Chave de Service Account
Seção intitulada “Passo 3 — Criar uma Chave de Service Account”Abra a service account do Passo 1 no console IAM & Admin → Service Accounts.
- Clique na aba Keys.
- Clique em Add Key → Create new key.
- Key type: JSON.
- Clique em Create. O navegador baixa um arquivo JSON — mantenha-o seguro; não pode ser baixado novamente.
Ou via gcloud:
gcloud iam service-accounts keys create ./crewai-secrets-reader.json \ --iam-account=crewai-secrets-reader@YOUR_PROJECT_ID.iam.gserviceaccount.comPasso 4 — Adicionar a Credencial na CrewAI Platform
Seção intitulada “Passo 4 — Adicionar a Credencial na CrewAI Platform”Na CrewAI Platform, navegue até Settings → Secret Provider Credentials e clique em Add Credential.
Preencha o formulário:
- Name: Um nome descritivo, ex.
gcp-prod. - Provider:
Google Cloud Secret Manager. - Project ID: O ID do seu projeto GCP (ex.
my-crewai-prod). - Service Account JSON: Cole o conteúdo inteiro do arquivo JSON que você baixou no Passo 3.
- (Opcional) Marque Set as default credential for this provider. A credencial padrão é usada por variáveis de ambiente que referenciam segredos GCP sem especificar uma credencial explicitamente.
Clique em Create.
Passo 5 — Criar Pelo Menos Um Segredo no GCP
Seção intitulada “Passo 5 — Criar Pelo Menos Um Segredo no GCP”Se você ainda não tem segredos no GCP Secret Manager, crie um agora para que possa verificar a conexão no Passo 6.
No console Secret Manager, clique em Create secret.
- Name: Um nome único, ex.
openai-api-key. - Secret value: Cole um valor bruto ou faça upload de um arquivo.
- Deixe as configurações de rotação, replicação e outras em seus padrões a menos que tenha um requisito específico.
Clique em Create secret.
Ou via gcloud:
echo -n "sk-your-actual-key" | gcloud secrets create openai-api-key \ --data-file=- \ --project=YOUR_PROJECT_ID \ --replication-policy=automaticPara detalhes completos, veja a documentação GCP: Create a secret.
Passo 6 — Testar a Conexão
Seção intitulada “Passo 6 — 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 no GCP e ler segredos do seu projeto.
Se o teste falhar, verifique as causas mais comuns:
| Sintoma | Causa provável |
|---|---|
PERMISSION_DENIED ao listar segredos | A service account está sem roles/secretmanager.secretAccessor, ou você escopou por segredo (list não é concedido). Reconfira o Passo 2. |
PERMISSION_DENIED em secretmanager.secrets.access | Mesmo que acima, mas para um segredo específico. Confirme que a service account tem o papel accessor no segredo em questão. |
unauthorized_client / invalid_grant | O JSON de Service Account colado é inválido, expirado ou pertence a uma service account excluída. Recrie a chave (Passo 3) e cole novamente. |
Project ID does not match | O campo Project ID na CrewAI Platform não corresponde ao projeto dono da service account / segredos. Reconfira o Passo 4. |
API not enabled | Secret Manager API não está habilitada no projeto. Veja Pré-requisitos. |
Próximos Passos
Seção intitulada “Próximos Passos”Agora que o GCP está conectado, 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 GCP a partir de variáveis de ambiente da CrewAI Platform.
Se você quiser segredos conscientes de rotação que se propagam sem novo deploy, mude para GCP Workload Identity Federation — mesmo cofre de segredos, sem credenciais estáticas, segredos buscados por kickoff.