Aller au contenu principal

Azure pipelines

Prélude

L'intégration CI/CD de GitGuardian avec Azure Pipelines s'effectue via notre application CLI : ggshield.
ggshield est une surcouche de l'API GitGuardian pour la détection de secrets, une clé d'API est requise pour l'authentification.

⚠ Azure Pipelines ne prend pas en charge les plages de commits en dehors des Pull Requests GitHub, par conséquent, lors des événements de push dans une branche standard, seul votre dernier commit sera scanné. Cette limitation ne s'applique pas aux Pull Requests GitHub où tous les commits de la pull request seront scannés.

Aperçu

Azure Pipelines output

Installation

Les comptes de service sont recommandés pour exécuter cette intégration.

Veuillez noter que les comptes de service ne sont disponibles que pour les workspaces sous notre plan Business, et que leur administration est réservée aux Managers. Si votre workspace est sous le plan Free, vous pouvez toujours utiliser un jeton d'accès personnel pour exécuter cette intégration.

  1. Créez un compte de service depuis la section API de votre workspace GitGuardian (ou un jeton d'accès personnel si vous êtes sous le plan Free).

  2. Ajoutez cette clé d'API à la variable secrète gitguardianApiKey dans les paramètres de votre pipeline.

  3. Ajoutez un nouveau job utilisant ggshield à votre pipeline Azure

jobs:
- job: GitGuardianShield
pool:
vmImage: 'ubuntu-latest'
container: gitguardian/ggshield:latest
steps:
- script: ggshield secret scan ci
env:
GITGUARDIAN_API_KEY: $(gitguardianApiKey)

Scanner tous les pipelines avec l'extension Azure DevOps

Si vous souhaitez ajouter le scan de secrets ggshield à chaque pipeline de votre organisation Azure DevOps sans les modifier un par un, utilisez plutôt l'extension Azure DevOps de ggshield.

L'extension ajoute un décorateur de pipeline qui injecte automatiquement le job de scan de secrets ggshield dans chaque exécution de pipeline de votre organisation. Elle vous permet également de partager un seul jeton de compte de service GitGuardian entre tous vos jobs CI Azure DevOps, au lieu de configurer une variable secrète dans chaque pipeline.

remarque

Microsoft n'autorise pas les extensions utilisant un décorateur de pipeline à être répertoriées publiquement sur le Visual Studio Marketplace. Pour cette raison, notre extension n'est disponible qu'en privé. Contactez l'équipe de support de GitGuardian si vous souhaitez que nous vous la partagions.