secrets-management
Ensina seu agente de IA a colocar projetos no ar e cuidar da infraestrutura.
O que ela faz
Gerencia informações sensíveis, como senhas e chaves, para que não precisem ser escritas diretamente no código. Isso torna seus sistemas mais seguros.
Quando usar
- ✓Ao guardar senhas de banco de dados.
- ✓Ao armazenar chaves de API.
- ✓Ao proteger informações em processos automatizados de desenvolvimento e entrega (CI/CD).
Exemplo do que pedir para a IA
“Como posso guardar a chave de API do meu serviço de forma segura?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ferramentas como Vault, AWS Secrets Manager ou Azure Key Vault guardam suas informações sensíveis em um local seguro. Elas fornecem essas informações apenas quando necessário e para quem tem permissão, sem que você precise colocá-las diretamente no seu código.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add wshobson/agents --skill secrets-managementOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/wshobson/agents/main/plugins/cicd-automation/skills/secrets-management/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Gerenciamento de Segredos
Práticas seguras de gerenciamento de segredos para pipelines de CI/CD usando Vault, AWS Secrets Manager e outras ferramentas.
Propósito
Implementar gerenciamento seguro de segredos em pipelines de CI/CD sem codificar informações sensíveis.
Quando Usar
- Armazenar chaves de API e credenciais
- Gerenciar senhas de banco de dados
- Lidar com certificados TLS
- Rotacionar segredos automaticamente
- Implementar acesso com privilégio mínimo
Ferramentas de Gerenciamento de Segredos
HashiCorp Vault
- Gerenciamento centralizado de segredos
- Geração de segredos dinâmicos
- Rotação de segredos
- Registro de auditoria
- Controle de acesso granular
AWS Secrets Manager
- Solução nativa da AWS
- Rotação automática
- Integração com RDS
- Suporte a CloudFormation
Azure Key Vault
- Solução nativa do Azure
- Chaves com suporte a HSM
- Gerenciamento de certificados
- Integração RBAC
Google Secret Manager
- Solução nativa do GCP
- Versionamento
- Integração IAM
Integração com HashiCorp Vault
Configurar Vault
# Start Vault dev server
vault server -dev
# Set environment
export VAULT_ADDR='http://127.0.0.1:8200'
export VAULT_TOKEN='root'
# Enable secrets engine
vault secrets enable -path=secret kv-v2
# Store secret
vault kv put secret/database/config username=admin password=secret
GitHub Actions com Vault
name: Deploy with Vault Secrets
on: [push]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Import Secrets from Vault
uses: hashicorp/vault-action@v2
with:
url: https://vault.example.com:8200
token: ${{ secrets.VAULT_TOKEN }}
secrets: |
secret/data/database username | DB_USERNAME ;
secret/data/database password | DB_PASSWORD ;
secret/data/api key | API_KEY
- name: Use secrets
run: |
echo "Connecting to database as $DB_USERNAME"
# Use $DB_PASSWORD, $API_KEY
GitLab CI com Vault
deploy:
image: vault:1.17
before_script:
- export VAULT_ADDR=https://vault.example.com:8200
- export VAULT_TOKEN=$VAULT_TOKEN
- apk add curl jq
script:
- |
DB_PASSWORD=$(vault kv get -field=password secret/database/config)
API_KEY=$(vault kv get -field=key secret/api/credentials)
echo "Deploying with secrets..."
# Use $DB_PASSWORD, $API_KEY
AWS Secrets Manager
Armazenar Segredo
aws secretsmanager create-secret \
--name production/database/password \
--secret-string "super-secret-password"
Recuperar no GitHub Actions
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-west-2
- name: Get secret from AWS
run: |
SECRET=$(aws secretsmanager get-secret-value \
--secret-id production/database/password \
--query SecretString \
--output text)
echo "::add-mask::$SECRET"
echo "DB_PASSWORD=$SECRET" >> $GITHUB_ENV
- name: Use secret
run: |
# Use $DB_PASSWORD
./deploy.sh
Terraform com AWS Secrets Manager
data "aws_secretsmanager_secret_version" "db_password" {
secret_id = "production/database/password"
}
resource "aws_db_instance" "main" {
allocated_storage = 100
engine = "postgres"
instance_class = "db.t3.large"
username = "admin"
password = jsondecode(data.aws_secretsmanager_secret_version.db_password.secret_string)["password"]
}
Segredos do GitHub
Segredos de Organização/Repositório
- name: Use GitHub secret
env:
API_KEY: ${{ secrets.API_KEY }}
DATABASE_URL: ${{ secrets.DATABASE_URL }}
run: |
# Secrets are injected as env vars — never print them to logs
./deploy.sh
Segredos de Ambiente
deploy:
runs-on: ubuntu-latest
environment: production
steps:
- name: Deploy
env:
PROD_API_KEY: ${{ secrets.PROD_API_KEY }}
run: |
# Secret injected as env var — never print to logs
./deploy.sh
Variáveis do GitLab CI/CD
Variáveis de Projeto
deploy:
script:
- echo "Deploying with $API_KEY"
- echo "Database: $DATABASE_URL"
Variáveis Protegidas e Mascaradas
- Protegidas: Disponíveis apenas em branches protegidos
- Mascaradas: Ocultas nos logs de jobs
- Tipo arquivo: Armazenadas como arquivo
Melhores Práticas
- Nunca commite segredos para o Git
…
Perguntas frequentes
Por que não posso colocar senhas diretamente no código?
Colocar senhas no código é como escrever sua senha em um papel e deixá-lo visível para todos. Se alguém tiver acesso ao seu código, terá acesso às suas senhas, o que é um grande risco de segurança.
O que são 'segredos' neste contexto?
Segredos são informações confidenciais que precisam ser protegidas, como senhas, chaves de API, certificados de segurança e tokens de acesso.
Quais ferramentas são mencionadas?
O texto menciona HashiCorp Vault, AWS Secrets Manager, Azure Key Vault e Google Secret Manager. Também fala sobre como usar segredos nativos do GitHub e GitLab.
Detalhes
Descrição original do autor
Implement secure secrets management for CI/CD pipelines using Vault, AWS Secrets Manager, or native platform solutions. Use when handling sensitive credentials, rotating secrets, or securing CI/CD environments.
repo: wshobson/agents
Popularidade
- Estrelas no GitHub
- 41 mil
- Posição no ranking
- #4823
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
screen-reader-testing
Faz seu agente testar sites usando leitores de tela para garantir que sejam acessíveis.
wshobson/agents
wcag-audit-patterns
Ajuda seu agente a auditar sites para acessibilidade e corrigir problemas de acordo com as diretrizes WCAG.
wshobson/agents
multi-reviewer-patterns
Faz seu agente coordenar revisões de código paralelas, deduplicando achados e consolidando relatórios.
wshobson/agents
parallel-debugging
Permite ao agente depurar problemas complexos com investigações paralelas e análise de causa raiz.
wshobson/agents
Skills parecidas
bun-runtime
Faz seu agente usar o Bun para rodar, organizar e testar código. Ajuda a escolher o Bun em vez de outras ferramentas e a migrar projetos existentes.
affaan-m/ECC
database-migrations
Ajuda seu agente a fazer mudanças seguras em bancos de dados. Ele garante que as alterações possam ser desfeitas e minimiza o tempo de inatividade.
affaan-m/ECC
deployment-patterns
Configura fluxos de implantação e CI/CD, containerização e estratégias de rollback para garantir lançamentos seguros.
affaan-m/ECC