Aller au contenu principal

Intégration Akeyless

GGScout prend en charge l'intégration avec Akeyless pour collecter et surveiller vos secrets. Ce guide vous aidera à configurer l'intégration.

Fonctionnalités prises en charge​

  • Collecte de plusieurs versions de secrets
  • Authentification par clé API
  • Mode d'accessibilité standard
  • Prise en charge multi-environnements

Configuration​

Pour configurer GGScout afin qu'il fonctionne avec Akeyless, ajoutez la configuration suivante à votre fichier ggscout.toml :

[sources.akeyless]
type = "akeyless"
api_url = "https://api.akeyless.io"
access_id = "${AKEYLESS_ACCESS_ID}"
access_key = "${AKEYLESS_ACCESS_KEY}"
accessibility = "regular"
auth_mode = "apikey"
fetch_all_versions = true
mode = "read"
env = "production"
owner = "devops-team@example.com"

[[sources.akeyless.include]]
resource_ids = ["/app/*", "/database/*", "/api-key"]

[[sources.akeyless.exclude]]
resource_ids = ["/test/*", "/temp/*", "/old-secret"]

Paramètres de configuration​

ParamètreDescriptionRequisValeur par défaut
typeDoit être défini sur "akeyless"Oui
access_idVotre ID d'accès AkeylessOui
access_keyVotre clé d'accès AkeylessOui
accessibilityMode d'accessibilité (par défaut : "regular")Non"regular"
auth_modeMode d'authentification (par exemple, "apikey")Oui
fetch_all_versionsCollecter ou non toutes les versions des secretsOui
modeMode d'intégration (l'un des suivants : "read", "write", "read/write")Non"read"
api_urlURL de l'API AkeylessNon"https://api.akeyless.io"
envEnvironnement par défaut des secrets de cette source. GitGuardian infère un environnement par secret et se rabat sur cette valeurNon
ownerPropriétaire de cette source (un e-mail, généralement celui d'un employé ou d'une équipe)Non
[[sources.<name>.include]]Table de motifs de resource_id à inclure (voir ci-dessous)Non
[[sources.<name>.exclude]]Table de motifs de resource_id à exclure (voir ci-dessous)Non

Remarque :

  • Utilisez les tables [[sources.<name>.include]] et [[sources.<name>.exclude]] pour spécifier plusieurs règles d'inclusion/exclusion. Chaque table doit comporter un tableau resource_ids.
  • Les motifs prennent en charge les jokers (*) uniquement à la fin pour la correspondance par préfixe. Pour des correspondances exactes, spécifiez le nom complet sans joker.
  • GitGuardian infère l'environnement de chaque secret d'abord à partir de son chemin de dossier, puis (depuis ggscout 0.33.0) à partir des item_tags écrits sous la forme env:production ou environment=staging, et utilise le env au niveau de la source uniquement lorsqu'aucun des deux ne le nomme.

Authentification​

GGScout prend en charge l'authentification avec Akeyless via :

  1. Clé API : En utilisant l'ID d'accès et la clé d'accès
  2. Variables d'environnement : En utilisant les variables d'environnement Akeyless standard

Variables d'environnement​

  • AKEYLESS_ACCESS_ID : Votre ID d'accès Akeyless
  • AKEYLESS_ACCESS_KEY : Votre clé d'accès Akeyless

Bonnes pratiques​

  1. Utilisez des variables d'environnement pour les identifiants sensibles
  2. Suivez le principe du moindre privilège pour les politiques d'accès
  3. Activez fetch_all_versions pour suivre l'évolution de vos secrets dans le temps
  4. Effectuez régulièrement une rotation des clés d'accès
  5. Utilisez des ID d'accès distincts pour différents environnements
  6. Mettez en œuvre des politiques de rotation des secrets appropriées
  7. Surveillez les journaux d'accès pour détecter toute activité suspecte