Activer l'analyse des secrets

Ce document explique comment protéger vos informations sensibles grâce à l'analyse intégrée des secrets dans Secure Source Manager.

L'analyse des secrets dans Secure Source Manager améliore la sécurité de votre codebase. Il analyse les commits transférés vers vos dépôts ou fusionnés via des demandes d'extraction, et recherche activement les informations sensibles que vous devez chiffrer ou supprimer. Si de telles données sont détectées, l'analyse des secrets rejette automatiquement le push ou bloque la fusion de la demande d'extraction d'extraction, ce qui empêche la fusion accidentelle d'informations sensibles.

L'analyse des secrets dans Secure Source Manager traite les catégories d'informations suivantes comme sensibles :

  • Clés de chiffrement : inclut des éléments tels que les clés privées SSH.
  • Identifiants AWS : clés d'accès et clés secrètes pour Amazon Web Services.
  • Google Cloud credentials : clés de compte de service et autres secrets Google Cloud .
  • Codes secrets du client OAuth : codes secrets utilisés pour l'authentification des applications avec OAuth.
  • Clés secrètes : clés sensibles utilisées pour l'authentification ou l'autorisation.

Activer l'analyse des secrets

Assurez-vous que les rôles et paramètres suivants sont activés pour votre dépôt.

Rôles requis

Pour obtenir l'autorisation nécessaire pour activer l'analyse des secrets, demandez à votre administrateur de vous accorder le rôle IAM Administrateur de dépôt Secure Source Manager (roles/securesourcemanager.repoAdmin) sur le dépôt Secure Source Manager. Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Ce rôle prédéfini contient l'autorisation securesourcemanager.repositories.update, qui est nécessaire pour activer l'analyse des secrets.

Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.

Pour savoir comment attribuer des rôles Secure Source Manager, consultez Contrôle des accès avec IAM et Accorder aux utilisateurs l'accès à l'instance.

Autorisations de compte de service

Si vous configurez l'analyse des secrets pour utiliser un modèle d'inspection Sensitive Data Protection personnalisé, le compte de service utilisé par Secure Source Manager doit être autorisé à lire le modèle (par exemple, le rôle Lecteur DLP, roles/dlp.reader).

  • Si un compte de service par dépôt est configuré pour le dépôt, Secure Source Manager utilise exclusivement ce compte de service. Vous devez accorder l'autorisation de lecture du modèle au compte de service par dépôt.
  • Si aucun compte de service par dépôt n'est configuré, Secure Source Manager utilise le compte de service de l'instance.

Mettre à jour les paramètres du dépôt

Vous pouvez activer l'analyse des secrets pour vos dépôts via l'interface Secure Source Manager :

  1. Accédez au dépôt dans lequel vous souhaitez activer l'analyse des secrets.
  2. Cliquez sur l'icône Paramètres.
  3. Recherchez le bouton Analyse des secrets.
  4. Cliquez sur le bouton pour l'activer.
  5. Facultatif : Dans le champ Modèle d'inspection, saisissez le nom de ressource de votre modèle d'inspection Sensitive Data Protection.
  6. Cliquez sur le bouton Update Settings (Mettre à jour les paramètres).

Utiliser l'analyse des secrets

Une fois l'analyse des secrets activée, elle surveille activement les commits dans votre dépôt. Si des informations sensibles sont identifiées dans un commit transmis à l'aide de Git ou fusionné via une demande d'extraction d'extraction dans l'interface Web, le commit est rejeté ou la fusion est bloquée.

Lorsque vous effectuez un push à partir de la ligne de commande, vous recevez une erreur indiquant la présence de données sensibles. À ce stade, deux options s'offrent à vous :

Annuler la modification

Pour supprimer les informations sensibles, vous pouvez annuler le commit problématique à l'aide de la commande suivante :

git reset --soft COMMIT_ID

Remplacez COMMIT_ID par l'ID de commit réel.

Étant donné que Git conserve l'historique de tous les commits, les données sensibles peuvent toujours être récupérées à partir des commits précédents. Pour éviter cela, utilisez la commande git reset --soft. Ensuite, corrigez les fichiers et effectuez un nouveau commit pour supprimer les données de l'historique récent de la branche.

Forcer le push du commit (ignorer l'analyse des secrets)

Dans des situations spécifiques où les informations détectées sont jugées acceptables, les utilisateurs disposant des autorisations appropriées peuvent choisir de contourner la vérification de l'analyse des secrets et de forcer le push du commit.

git push -o dlpskip=true origin \
    BRANCH_NAME

Remplacez BRANCH_NAME par le nom de la branche que vous fusionnez.

Étapes suivantes