Aller au contenu principal

Intégrer JFrog Package Registries

Sécurisez votre chaîne d'approvisionnement logicielle en surveillant JFrog Package Registries à la recherche de secrets exposés dans les artefacts de packages à travers plusieurs écosystèmes.

Pourquoi surveiller JFrog Package Registries ?

JFrog Artifactory sert de solution universelle de gestion des packages pour votre organisation, en hébergeant des packages à travers plusieurs écosystèmes tels que Maven, npm, PyPI, NuGet, Go, Gradle, et plus. Ces packages contiennent souvent des identifiants de bases de données de production, des clés API d'entreprise, des tokens de services internes et d'autres configurations sensibles qui, lorsqu'elles sont exposées, peuvent compromettre des applications métier critiques et fournir un accès non autorisé à des systèmes propriétaires et à des données clients sensibles.

Fonctionnalités

FonctionnalitéSupportDétails
Scan historique✅ (Supporté)Analysez les packages existants et leur contenu
Scan incrémental✅ (Supporté)Scan planifié régulier pour les nouveaux contenus
Périmètre surveillé✅ (Supporté)Surveillance granulaire de vos dépôts
Périmètre d'équipe✅ (Supporté)Contrôle d'accès basé sur les équipes
Vérification de présence❌ (Non supporté)Toutes les occurrences sont considérées comme présentes
Visibilité des sources❌ (Non supporté)Toutes les sources sont considérées comme privées
Pièces jointesN/ANon applicable pour les package registries

Ce que nous scannons :

  • Artefacts Maven
  • Packages npm
  • Packages PyPI
  • Artefacts Gradle
  • Modules Go
  • Packages Swift
  • Crates Cargo
  • RubyGems
  • Packages NuGet
  • Packages Composer
  • Packages Pub
  • Dépôts génériques
info

Cette intégration scanne automatiquement vos dépôts surveillés, en téléchargeant les artefacts de packages, ce qui peut entraîner des coûts de bande passante. Pour optimiser les coûts et réduire les faux positifs, sélectionnez soigneusement les sources à surveiller et utilisez notre fonctionnalité d'exclusion de chemins de fichiers.

info

Prérequis de plan : Disponible pour le plan GitGuardian Enterprise. Essayez-le gratuitement avec une période d'essai de 30 jours - tous les incidents détectés restent accessibles après la fin de l'essai.
Couverture des détecteurs : Pour minimiser les faux positifs, Generic High Entropy Secret et Generic Password sont désactivés. Tous les autres détecteurs sont activés.

Comprendre les capacités de scan

Scan historique

Découvrez votre dette de secrets : lors de votre première intégration de cette source, GitGuardian effectue un scan complet de l'intégralité de l'historique de votre contenu, en fonction de votre périmètre personnalisé. Cela révèle des secrets qui ont pu être exposés il y a des semaines, des mois, voire des années — vous aidant ainsi à traiter votre dette de sécurité existante.

Comment déclencher un scan historique : rendez-vous sur votre page de périmètre, sélectionnez les sources que vous souhaitez scanner, puis cliquez sur Scan dans la barre d'actions groupées. Consultez Gérer votre périmètre surveillé pour connaître les limites de taille selon votre plan, la gestion des erreurs et tous les détails.

Scan incrémental

Restez protégé grâce à une surveillance régulière : une fois intégrée, GitGuardian assure une protection continue grâce à des scans automatisés planifiés de votre contenu. Le contenu nouveau et modifié est surveillé de manière systématique à intervalles réguliers, garantissant une couverture complète et une détection rapide de toute exposition de secret. Votre source reste sous la protection de GitGuardian, vous donnant l'assurance qu'aucun secret ne passera inaperçu.

Configurer votre intégration JFrog Package Registries

Prérequis :

  • Compte Owner ou Manager sur votre Dashboard GitGuardian
  • Permissions d'administrateur JFrog pour créer des Access Tokens dans votre instance JFrog
  • Connectivité réseau entre GitGuardian et vos services self-hosted. Découvrez GitGuardian Bridge pour permettre des connexions sécurisées entre GitGuardian SaaS et vos services self-hosted dans des réseaux privés.

GitGuardian s'intègre à JFrog Package Registries via un Access Token avec un scope admin sur votre instance JFrog. Le scope admin est requis pour énumérer les dépôts et télécharger les artefacts de packages à travers tous les types de packages.

Vous pouvez installer GitGuardian sur plusieurs instances JFrog pour surveiller vos dépôts de packages.

  1. Assurez-vous d'être connecté en tant qu'administrateur sur votre JFrog Platform

  2. Allez dans Administration > User Management > Access Tokens

  3. Cliquez sur Generate Token JFrog Platform Access Tokens page

  4. Saisissez une description (par exemple : GitGuardian)

  5. Sélectionnez Admin comme Token scope

  6. Décochez All et sélectionnez Artifactory comme Service

  7. Cliquez sur Generate JFrog Platform Generate Token modal

  8. Récupérez le Username et copiez le Token JFrog Platform Token value modal

  9. Sur la plateforme GitGuardian, naviguez vers la page Sources integration

  10. Cliquez sur Install à côté de JFrog Package Registries dans la section Package registries JFrog Package Registry install button

  11. Cliquez sur Install sur la page d'intégration JFrog Package Registries

  12. Saisissez l'URL de votre instance JFrog (par exemple : https://acme.jfrog.io/)

  13. Collez votre Personal access token

  14. Cliquez sur Add JFrog Package Registry integration

  15. Personnalisez votre périmètre surveillé :

    • Surveiller des dépôts JFrog spécifiques (Recommandé)
      • Aucun dépôt n'est surveillé par défaut, vous devrez les sélectionner manuellement.
      • Les dépôts nouvellement créés ne seront pas surveillés par défaut. Vous pouvez ajuster ce paramètre à tout moment.
      • Recommandé pour optimiser vos coûts de bande passante.
    • Surveiller l'ensemble de l'instance JFrog
      • Tous les dépôts sont surveillés par défaut avec un scan historique complet déclenché automatiquement.
      • Les dépôts nouvellement créés seront surveillés par défaut. Vous pouvez ajuster ce paramètre à tout moment.

C'est terminé ! Votre instance JFrog est maintenant installée, et GitGuardian surveille tous les packages de vos dépôts sélectionnés à la recherche de secrets.

Personnaliser votre périmètre surveillé

Pour personnaliser les dépôts surveillés, naviguez vers vos paramètres JFrog Package Registries depuis la page Sources integration.

  1. Sélectionnez/désélectionnez les dépôts pour les inclure ou les exclure de la surveillance
  2. Confirmez en cliquant sur Update monitored perimeter

Surveillance automatique des dépôts

Vous pouvez activer ou désactiver l'ajout automatique des dépôts nouvellement créés à votre périmètre surveillé en changeant l'option dans vos paramètres JFrog Package Registries.

Gérer votre intégration

Surveillance de la santé et maintenance

Si vous devez modifier les paramètres de votre intégration ou résoudre des problèmes de connectivité, accédez à l'interface de gestion via Sources integration.

Désinstaller l'intégration

Bien que notre objectif soit de vous aider à maintenir une couverture de sécurité complète, vous pouvez désinstaller l'intégration chaque fois que nécessaire :

  1. Naviguez vers Sources integration
  2. Cliquez sur Edit à côté du nom de l'intégration
  3. Cliquez sur Configure
  4. Cliquez sur l'icône delete à côté de votre ressource
  5. Confirmez la suppression

Note : la suppression de l'intégration préserve votre historique d'incidents, mais arrête les analyses futures et les vérifications de présence pour les intégrations qui le supportent.

Désinstaller votre instance JFrog Package Registries

Pour désinstaller une instance JFrog Package Registries :

  1. Sur la plateforme GitGuardian, naviguez vers la page Sources integration
  2. Cliquez sur Edit à côté de JFrog Package Registries dans la section Package registries
  3. Cliquez sur l'icône de corbeille à côté de l'instance JFrog Package Registries à désinstaller
  4. Confirmez en cliquant sur Yes, uninstall dans la fenêtre de confirmation

C'est terminé ! Votre instance JFrog Package Registries est maintenant désinstallée.

Chemins exclus

GitGuardian exclut automatiquement les fichiers de l'analyse si leurs chemins contiennent l'une de ces expressions régulières :

/__pypackages__/
/\.venv/
/\.tox/
/site-packages/
/venv/
distutils/command/register\.py
python.*/awscli/examples/
python.*/dulwich/(tests|contrib/test_)
python.*/hgext/bugzilla\.py
python.*/mercurial/util\.py
python.*/test/certdata/
python.*/urllib/request\.py
python.*/pygments/lexers/
/cryptography.+/tests/.+(fixtures|test)_.+\.py
/python.+pygpgme.+/tests/
botocore/data/.+/(examples|service)-.+\.json
usr(/local)?/lib/python.+/dist-packages
/libevent.+/info/test/test/
/conda-.+-py.+/info/test/tests.+/test_.+\.py
/python[^/]+/test/
/man/man5/kdc\.conf\.5
erlang.*(inets|ssl).*/examples/
/gems/.*httpclient.*/(test|sample)/
/gems/.*faraday.*/
/vendor/bundle/
/\.gem/
ruby-[^/]+/test/openssl/
/(g|G)o/src/cmd/go/internal/.*_test\.go
/(g|G)o/src/cmd/go/internal/.*/testdata/
/(g|G)o/src/cmd/go/testdata/
/(g|G)o/src/crypto/x509/platform_root_key\.pem
/(G|g)o/src/crypto/(tls|x509)/.*_test\.go
/(g|G)o/src/net/(url|http)/.*_test\.go
src/github.com/DataDog/datadog-agent/.*test.*\.go
google/internal/.*_test\.go
golang.org.*oauth2@.*/.*\.go
/flutter/.*/packages/flutter_tools/test/data/
/flutter/.*/examples/image_list/lib
/\.pub-cache
etc/ssl/private/ssl-cert-snakeoil\.key
perl.*Cwd\.pm
ansible/.*/tests/(integration|unit)/
ansible/.*/test/awx
ansible/collections/ansible_collections/.*/plugins/
/curl/.*/(tests|docs|lib/url\.c)
/doc/wget.+/NEWS
dist/awscli/examples/
usr(/local)?/lib/aws-cli/examples/
/google-cloud-sdk/(lib|platform)/
\.git/modules/third[-_]?party/
\.git/modules/external/
/\.npm/_cacache
/node_modules/
/\.parcel-cache/
/\.yarn/cache/
/\.m2/
/\.ivy2/cache/
/\.mix/
/\.hex/
/composer/cache/
/\.nuget/packages/
/libgpg-error/errorref\.txt
/Homebrew/Library/Taps/
/tcl[^/]+/http-.+\.tm
/tcl[^/]+/[^/]+/http-.+\.tm
usr/share/lua/[^/]+/posix/init\.lua
openssl/openssl-[^/]+/test/recipes/
usr/share/doc/libssl-doc/demos/
boringssl/src/third_party/[^/]+test[^/]+/[^/]+_test\.json

Considérations supplémentaires pour Self-Hosted

Pour les instances GitGuardian Self-Hosted :

  • Exigence de worker : Le scan de JFrog Package Registries nécessite des workers scanners-db-less dédiés. Assurez-vous que scanners-db-less.replicas est défini sur une valeur supérieure à 0 dans votre configuration Helm.
  • Cache : L'instance Redis commit-cache est utilisée pour le scan de JFrog Package Registries. Si l'instance Redis commit-cache n'est pas configurée, l'instance Redis principale sera utilisée à la place.
  • La fréquence de scan peut être configurée dans l'Admin Area :
    • Unité d'intervalle de temps : secondes
    • Valeur par défaut : 86400 (1 jour)
    • Valeur minimale : 1800 (30 minutes)

Exemple de configuration Helm :

celeryWorkers:
scanners-db-less:
replicas: 2

Confidentialité

Gestion des données

GitGuardian traite vos données uniquement pour détecter les secrets exposés :

  • Accès en lecture seule : nous ne demandons jamais l'accès en écriture sauf s'il est limité à la création de webhooks pour recevoir et traiter les événements en temps réel
  • Rétention minimale des données : nous ne stockons que les données et métadonnées nécessaires à la gestion des incidents
  • Chiffrement : toutes les données en transit et au repos sont chiffrées
  • Conformité : nous suivons les mêmes standards de protection des données que nos autres intégrations

Considérations régionales

GitGuardian héberge ses services dans deux régions AWS : eu-central-1 (Francfort) et us-west-2 (Oregon). Assurez-vous que votre région de déploiement GitGuardian s'aligne avec vos exigences de résidence des données. Contactez le support si vous avez besoin de conseils sur la conformité aux réglementations locales.

Les lois et réglementations propres à chaque pays peuvent vous obliger à informer vos utilisateurs que vos dépôts sont scannés à la recherche de secrets. Voici une suggestion de message que vous pouvez utiliser :

Dans le cadre de notre processus interne de sécurité de l'information, l'entreprise scanne ses dépôts à la recherche de fuites potentielles de secrets à l'aide de GitGuardian. Toutes les données collectées seront traitées dans le but de détecter d'éventuelles fuites. Pour en savoir plus sur la façon dont nous gérons vos données personnelles et exercer vos droits, veuillez vous référer à notre notice de confidentialité employé/partenaire. Veuillez noter que seuls les dépôts relatifs à l'activité et à l'entreprise peuvent être surveillés et que les utilisateurs doivent s'abstenir de partager des données personnelles ou sensibles non pertinentes pour l'objectif du dépôt.