POST | Inject a secret

Prev Next

A API da Segura® oferece a capacidade de injetar automaticamente credenciais e segredos em arquivos de configuração em diversos ambientes. Utilizando integração A2A (Application-to-Application), as organizações podem atualizar segredos de aplicações em arquivos como YAML, JSON, XML, ENV ou INI, suportando tanto sistemas legados quanto workloads nativos de nuvem. A injeção de credenciais pode ser acionada por rotação de credenciais, eventos agendados ou solicitações de API sob demanda, eliminando os riscos de segredos hard coded e garantindo continuidade operacional.

Caso de Uso

Um provedor de serviços financeiros precisa rotacionar regularmente as credenciais de banco de dados e API de suas aplicações principais sem interrupções. Utilizando a API da Segura, o pipeline DevOps injeta segredos atualizados diretamente nos arquivos .env e nas configurações YAML do Kubernetes durante a implantação. Isso garante que todos os serviços utilizem apenas as credenciais mais recentes, sem a necessidade de intervenção manual de desenvolvedores ou operadores.

Observações Importantes:

  1. Autenticação: as solicitações de API devem ser autenticadas usando um token de portador (Bearer) para garantir que apenas usuários autorizados possam realizar injeções ou consultar status.
  2. Tratamento de erros: a API retorna códigos de status HTTP específicos e mensagens detalhadas para ajudar no diagnóstico de problemas, como erros de formato de arquivo ou falhas de injeção.
  3. Compatibilidade: a API é projetada para ser compatível com ferramentas de CI/CD populares, facilitando a integração em fluxos de trabalho existentes.
  4. Segurança da injeção: a injeção de segredos é realizada de forma segura, respeitando as políticas de segurança definidas, e os segredos nunca são expostos desnecessariamente.
  5. Logs e auditoria: manter registros detalhados de todos os eventos de injeção ajuda a cumprir requisitos de conformidade e facilita a revisão de segurança.

Request

  • Request: POST /api/v4/injection/config-file
  • Authorization: Bearer {token}
{
  "target_path": "/etc/myapp/config.yaml",
  "secret_id": "db-prod-123",
  "file_type": "yaml",
  "injection_field": "db.password",
  "application": "myapp",
  "trigger_type": "rotation"
}

Response

{
  "status": "success",
  "message": "Secret injected and config file updated.",
  "timestamp": "2025-05-28T13:45:00Z"
}