Feature 6 : Intégration avec Cloud Secret Manager

Aperçu

Semaphore stocke actuellement toutes les informations d’identification dans sa propre base de données. Les organisations utilisant des plateformes cloud ont besoin d’un moyen de récupérer les secrets directement depuis le service de gestion des secrets de leur fournisseur cloud au moment de l’exécution, évitant ainsi la duplication des informations d’identification et tirant parti des politiques de rotation existantes. Cette fonctionnalité ajoute des intégrations natives avec AWS Secrets Manager et Azure Key Vault en tant que capacités exclusives Enterprise.

Motivation

Spécification détaillée

Enterprise

6.1 Intégration AWS Secrets Manager

Objectif : Récupérer les secrets au moment de l’exécution depuis AWS Secrets Manager, permettant aux équipes de tirer parti de leur infrastructure AWS de secrets existante sans dupliquer les informations d’identification dans la base de données de Semaphore.

Exigences :

{
  "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 associés : #2248

6.2 Intégration Azure Key Vault

Objectif : Récupérer les secrets au moment de l’exécution depuis Azure Key Vault, permettant aux organisations utilisant Azure de gérer et faire la rotation des informations d’identification de manière centralisée sans les stocker dans Semaphore.

Exigences :

{
  "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 associés : #2248, #3170

6.3 Référence externe unifiée de secrets

Objectif : Fournir un type d’entrée de key store commun qui pointe vers un secret chez n’importe quel fournisseur cloud pris en charge.

Exigences :

6.4 Mise en cache des secrets

Objectif : Réduire les appels API aux fournisseurs cloud en mettant en cache les secrets résolus en mémoire.

Exigences :

Modifications du schéma de base de données

Nouvelles tables :

Tables modifiées :

API Endpoints

Configuration

Nouvelles options de configuration :

Key Env Var Default Description
secret_cache_ttl SEMAPHORE_SECRET_CACHE_TTL 5m TTL par défaut du cache en mémoire pour les secrets externes résolus
secret_resolve_timeout SEMAPHORE_SECRET_RESOLVE_TIMEOUT 10s Temps maximum d’attente d’une réponse de l’API du fournisseur cloud lors de la résolution d’un secret

You might also like