Funzionalità 6: Integrazione con Cloud Secret Manager

Panoramica

Semaphore attualmente memorizza tutte le credenziali nel proprio database. Le organizzazioni che utilizzano piattaforme cloud hanno bisogno di un modo per recuperare i segreti direttamente dal servizio di gestione dei segreti del proprio cloud provider in fase di esecuzione, evitando la duplicazione delle credenziali e sfruttando le policy di rotazione esistenti. Questa funzionalità aggiunge integrazioni native con AWS Secrets Manager e Azure Key Vault come funzionalità esclusivamente Enterprise.

Motivazione

Specifica Dettagliata

Enterprise

6.1 Integrazione con AWS Secrets Manager

Obiettivo: Recuperare i segreti in fase di esecuzione da AWS Secrets Manager, consentendo ai team di sfruttare la propria infrastruttura AWS esistente per i segreti senza duplicare le credenziali nel database di Semaphore.

Requisiti:

{
  "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
}

Issue correlate: #2248

6.2 Integrazione con Azure Key Vault

Obiettivo: Recuperare i segreti in fase di esecuzione da Azure Key Vault, consentendo alle organizzazioni che utilizzano Azure di gestire e ruotare centralmente le credenziali senza memorizzarle in Semaphore.

Requisiti:

{
  "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
}

Issue correlate: #2248, #3170

6.3 Riferimento Unificato ai Segreti Esterni

Obiettivo: Fornire un tipo di voce comune nel key store che punti a un segreto in qualsiasi cloud provider supportato.

Requisiti:

6.4 Cache dei Segreti

Obiettivo: Ridurre le chiamate API ai cloud provider memorizzando nella cache in memoria i segreti risolti.

Requisiti:

Modifiche allo Schema del Database

Nuove tabelle:

Tabelle modificate:

API Endpoints

Configurazione

Nuove opzioni di configurazione:

Key Env Var Default Descrizione
secret_cache_ttl SEMAPHORE_SECRET_CACHE_TTL 5m TTL predefinito della cache in memoria per i segreti esterni risolti
secret_resolve_timeout SEMAPHORE_SECRET_RESOLVE_TIMEOUT 10s Tempo massimo di attesa per una risposta API del cloud provider durante la risoluzione di un segreto

You might also like