Secret Scanner détecte les clés API possibles, les jetons d'accès, les identifiants, les URL de webhook et d'autres valeurs sensibles dans les actifs Apidog pris en charge. Les découvertes indiquent où un secret possible apparaît sans afficher sa valeur complète.
Ce tutoriel explique comment examiner une découverte, réagir à une exposition réelle, enregistrer la résolution et ajouter un modèle de détection personnalisé lorsque votre équipe utilise un format de secret interne.
Avant de commencer
Secret Scanner est disponible avec le plan Enterprise SaaS. Il n'est pas actuellement disponible dans Apidog On-Premises.
L'accès dépend de votre rôle :
| Rôle | Actions disponibles |
|---|---|
| Propriétaire ou Administrateur d'Organisation | Afficher les rapports au niveau de l'organisation pour toutes les équipes |
| Propriétaire ou Administrateur d'Équipe | Examiner les découvertes de l'équipe, résoudre ou rouvrir les découvertes, gérer les modèles personnalisés et consulter les analyses |
| Membre d'Équipe ou Invité | Afficher les découvertes uniquement pour les projets auxquels ils ont accès |
Utilisez des valeurs fictives lors des tests. Ne collez jamais un véritable identifiant dans une ressource simplement pour confirmer que la numérisation fonctionne.
Étape 1 : Examiner le rapport de l'organisation
Les propriétaires et administrateurs d'organisation peuvent utiliser le rapport d'organisation pour identifier les équipes avec des découvertes non résolues.
- Ouvrez le rapport Secret Scanner au niveau de l'organisation.
- Examinez le nombre de découvertes non résolues et de fuites publiées.
- Vérifiez la dernière heure de détection et le statut de la numérisation.
- Ouvrez l'équipe concernée ou contactez son propriétaire ou administrateur d'équipe.
Le rapport de l'organisation aide les administrateurs à identifier les équipes qui nécessitent un suivi.
Le rapport est une vue de triage. L'enquête et la résolution ont lieu dans les pages Secret Scanner de l'équipe concernée.
Étape 2 : Ouvrir et filtrer les découvertes de l'équipe
Dans l'équipe, ouvrez Secret Scanner et sélectionnez Secrets détectés.
Utilisez les filtres disponibles pour affiner la liste par :
- statut
- projet
- modèle
- type de ressource
- mot-clé
Chaque découverte est regroupée par son modèle de détection et une empreinte numérique sécurisée. Une découverte peut avoir plusieurs occurrences lorsque la même valeur détectée apparaît à plus d'un endroit.
Les valeurs sont masquées. Utilisez le projet, le type de ressource, le nombre d'occurrences et l'emplacement source pour enquêter sur la découverte.
Commencez par les découvertes non résolues marquées comme exposition publiée, puis examinez les découvertes qui apparaissent dans plusieurs ressources ou projets.
Étape 3 : Inspecter chaque occurrence
Ouvrez une découverte et examinez ses occurrences. Pour chaque occurrence, confirmez :
- le projet et la ressource contenant la valeur
- le type de ressource et l'emplacement source
- si la valeur apparaît dans la documentation publiée
- les première et dernière heures de détection
- si la valeur est un véritable identifiant ou un faux positif
Ne vous fiez pas uniquement à l'extrait masqué pour décider si une valeur est réelle. Vérifiez la ressource source et, si nécessaire, demandez au propriétaire de la ressource d'identifier le système émetteur sans copier l'identifiant dans un ticket ou un message de chat.
Étape 4 : Réagir à une exposition réelle
Secret Scanner signale une exposition possible ; il ne modifie pas l'identifiant. Gérez un secret confirmé dans le système où il a été émis.
Utilisez cet ordre :
- Révoquez, renouvelez ou invalidez l'identifiant dans le service externe.
- Examinez les journaux d'utilisation disponibles pour détecter toute activité inattendue.
- Supprimez la valeur de chaque occurrence source affichée dans Apidog.
- Remplacez la valeur brute par une variable appropriée ou une référence Vault Secret lorsque le workflow a encore besoin de l'identifiant.
- Enregistrez chaque ressource modifiée afin qu'une analyse asynchrone puisse s'exécuter à nouveau.
Si l'identifiant apparaît dans la documentation publiée, traitez-le comme exposé en externe même si aucune utilisation suspecte n'est visible.
La suppression d'une valeur d'Apidog n'invalide pas les copies qui peuvent déjà exister ailleurs. La rotation ou la révocation est la principale action de confinement pour une fuite réelle.
Étape 5 : Enregistrer la résolution
Une fois la réponse complète, définissez le motif de résolution de la découverte.
| Motif de résolution | Utilisez-le quand |
|---|---|
| Révoqué | La valeur était un secret réel et a été révoquée, renouvelée ou invalidée en dehors d'Apidog |
| Faux positif | La valeur détectée n'est pas un secret |
| Ne sera pas corrigé | La valeur est un secret réel, mais l'équipe a accepté le risque et ne la modifiera pas |
Marquer une découverte comme résolue ne fait que modifier son statut dans Apidog. Cela ne révoque, ne renouvelle, n'invalide, ne supprime ni ne remplace la valeur sous-jacente.
Si une action supplémentaire devient nécessaire, rouvrez la découverte.
Étape 6 : Vérifier le nettoyage
Secret Scanner s'exécute de manière asynchrone plutôt qu'en temps réel. Les analyses sont déclenchées lorsqu'une ressource prise en charge est ajoutée ou lorsque Enregistrer est sélectionné après la modification d'une ressource prise en charge.
Après la remédiation :
- confirmez que toutes les occurrences source connues ont été modifiées
- enregistrez les ressources affectées
- laissez le temps pour la numérisation asynchrone
- examinez la découverte et sa dernière heure de détection
- confirmez séparément que l'ancien identifiant ne fonctionne plus dans le service émetteur
Le statut du scanner n'est pas un test de validité des identifiants. Vérifiez la révocation dans le service externe.
Étape 7 : Ajouter un modèle de détection personnalisé
Les propriétaires et administrateurs d'équipe peuvent créer des modèles personnalisés pour les formats de secret spécifiques à l'organisation.
- Ouvrez Secret Scanner > Modèles.
- Sélectionnez l'option pour créer un modèle personnalisé.
- Saisissez un nom clair.
- Ajoutez l'expression régulière et tout mot-clé utile.
- Testez avec une valeur fictive.
- Activez le modèle et enregistrez-le.
Les limites actuelles sont :
- jusqu'à 5 modèles personnalisés par équipe ;
- nom du modèle jusqu'à 128 caractères ;
- expression régulière jusqu'à 256 caractères dans l'interface utilisateur ;
- jusqu'à 10 mots-clés ;
- chaque mot-clé jusqu'à 64 caractères.
Les modèles intégrés sont en lecture seule. Leurs expressions régulières internes ne sont pas affichées et ils ne peuvent pas être modifiés, supprimés, activés ou désactivés.
Étape 8 : Examiner les analyses de l'équipe
Les propriétaires et administrateurs d'équipe peuvent ouvrir Analyses pour examiner où les découvertes sont concentrées.
Utilisez les analyses pour identifier les projets, les modèles et les types d'actifs qui nécessitent un examen supplémentaire.
Les analyses peuvent aider à prioriser le travail, mais chaque découverte nécessite toujours une enquête au niveau de la source.
Types d'actifs pris en charge
Secret Scanner analyse actuellement les actifs pris en charge, notamment :
- les API et les requêtes API
- les cas API
- les modules de projet et les variables de module de projet
- les exemples de réponse
- les documents Markdown et les schémas de données
- les variables d'environnement, globales et d'équipe
- les scripts communs et les paramètres communs
Le détail de la source disponible pour une occurrence dépend de son type de ressource et des autorisations de l'utilisateur.
Dépannage
| Problème | Que vérifier |
|---|---|
| Un changement récent n'a pas encore de résultat | Le balayage est asynchrone. Confirmez que la ressource a été enregistrée et vérifiez-la à nouveau plus tard. |
| Un membre de l'équipe ne peut pas voir une découverte | Confirmez que le membre a accès au projet associé. |
| Un utilisateur ne peut pas gérer les modèles ou les analyses | La gestion des modèles et les analyses nécessitent un accès Propriétaire ou Administrateur d'Équipe. |
| Une découverte résolue contient toujours un secret fonctionnel | Le statut de résolution ne modifie pas l'identifiant. Révoquez-le ou renouvelez-le dans le service émetteur. |
| Un dépôt externe n'est pas scanné | Secret Scanner ne scanne pas les dépôts externes GitHub ou GitLab. Utilisez également les contrôles de balayage du fournisseur de dépôt. |
Limitations importantes
Secret Scanner n'empêche pas les utilisateurs de saisir des secrets, ne bloque pas la publication de documentation, ne scanne pas les dépôts externes et ne garantit pas la détection de tous les formats de secret. Il ne supprime pas non plus automatiquement les valeurs source ni ne les remplace par des variables ou des références Vault.
Utilisez-le comme faisant partie d'un processus de gestion des identifiants qui inclut également l'émission avec le moins de privilèges, le stockage sécurisé, la rotation, la révocation et la surveillance de l'utilisation.
Tutoriels de gouvernance API associés :
Ces tutoriels couvrent des contrôles complémentaires pour la gouvernance d'un espace de travail API d'entreprise :
- Cadre de gouvernance des API — connecter la propriété, les contrôles, les preuves et les décisions de cycle de vie.
- Mappage de groupes SAML avec Microsoft Entra ID — attribuer l'accès aux équipes à partir des groupes du fournisseur d'identité.
- Secret Scanner — examiner les informations d'identification potentiellement exposées dans les actifs Apidog pris en charge.
- Journaux d'audit — enquêter et exporter l'activité administrative de l'organisation.
- Approvisionnement SCIM — gérer les utilisateurs de l'organisation tout au long du cycle de vie de l'identité.
- Politiques d'entreprise — configurer les contrôles d'informations d'identification, d'adhésion, de session SSO et d'invitation.
- Équipes API en libre-service — permettre la création d'équipes par les membres tout en conservant la surveillance de la propriété.
- Intégration GitHub Enterprise Cloud — connecter les dépôts GHE.com pris en charge pour les workflows OpenAPI.
Documentation officielle associée :
