Funcionalidade 6: Integração com Gerenciador de Segredos em Nuvem

Visão Geral

Atualmente, o Semaphore armazena todas as credenciais em seu próprio banco de dados. Organizações que utilizam plataformas em nuvem precisam de uma forma de obter segredos diretamente do serviço de gerenciamento de segredos do seu provedor de nuvem em tempo de execução, evitando a duplicação de credenciais e aproveitando as políticas de rotação existentes. Esta funcionalidade adiciona integrações nativas com AWS Secrets Manager e Azure Key Vault como recursos exclusivos do plano Enterprise.

Motivação

Especificação Detalhada

Enterprise

6.1 Integração com AWS Secrets Manager

Objetivo: Obter segredos em tempo de execução do AWS Secrets Manager, permitindo que equipes aproveitem sua infraestrutura de segredos AWS existente sem duplicar credenciais no banco de dados do Semaphore.

Requisitos:

{
  "name": "Production AWS",
  "type": "aws_secrets_manager",
  "region": "us-east-1",
  "auth_method": "iam_role",
  "role_arn": "arn:aws:iam::123456789:role/semaphore-secrets",
  "external_id": "optional-external-id"
}
{
  "type": "external",
  "backend": "aws_secrets_manager",
  "secret_name": "production/db_password",
  "field": "password",
  "aws_config_id": 1
}

Issues relacionadas: #2248

6.2 Integração com Azure Key Vault

Objetivo: Obter segredos em tempo de execução do Azure Key Vault, permitindo que organizações que utilizam Azure gerenciem e rotacionem credenciais de forma centralizada sem armazená-las no Semaphore.

Requisitos:

{
  "name": "Production Azure",
  "type": "azure_key_vault",
  "vault_url": "https://my-vault.vault.azure.net",
  "auth_method": "managed_identity",
  "tenant_id": "...",
  "client_id": "..."
}
{
  "type": "external",
  "backend": "azure_key_vault",
  "secret_name": "db-password",
  "version": "latest",
  "azure_config_id": 1
}

Issues relacionadas: #2248, #3170

6.3 Referência Unificada de Segredos Externos

Objetivo: Fornecer um tipo comum de entrada no armazenamento de chaves que aponta para um segredo em qualquer provedor de nuvem suportado.

Requisitos:

6.4 Cache de Segredos

Objetivo: Reduzir chamadas de API para provedores de nuvem armazenando segredos resolvidos em cache na memória.

Requisitos:

Alterações no Esquema do Banco de Dados

Novas tabelas:

Tabelas modificadas:

API Endpoints

Configuração

Novas opções de configuração:

Key Env Var Default Descrição
secret_cache_ttl SEMAPHORE_SECRET_CACHE_TTL 5m TTL padrão do cache em memória para segredos externos resolvidos
secret_resolve_timeout SEMAPHORE_SECRET_RESOLVE_TIMEOUT 10s Tempo máximo de espera pela resposta da API do provedor de nuvem ao resolver um segredo

You might also like