Statistiques d’utilisation des licences sur les appareils machine et périphérique

Effectué

Dans cette unité, vous allez découvrir comment les comptes de machine et les services périphériques ont un impact sur l’utilisation des licences GitHub Enterprise. Vous allez explorer les méthodes permettant de suivre leur consommation, d’identifier les inefficacités et d’appliquer les meilleures pratiques pour améliorer le contrôle des coûts et la sécurité.

Le suivi de l’utilisation des licences est essentiel pour l’optimisation des coûts et la conformité de la sécurité. Les comptes de machine (utilisés pour l’automatisation) et les services périphériques (tels que CI/CD, intégrations et consommateurs d’API) peuvent consommer des licences, impactant les coûts d’entreprise et la gestion des ressources.

Présentation des comptes d’ordinateur et des services périphériques

Comptes d’ordinateur

Les comptes de machine sont des comptes GitHub utilisés pour l’automatisation, l’exécution de scripts ou l’intégration à des outils tiers.

Caractéristiques : - Elles agissent indépendamment des utilisateurs humains. - Souvent utilisé par les outils CI/CD (par exemple, GitHub Actions, Jenkins, CircleCI).- Chaque compte d’ordinateur utilise une licence GitHub, comme un utilisateur standard.

Services périphériques

Les services périphériques sont des intégrations externes qui interagissent avec GitHub via des requêtes d’API.

Exemples : - Pipelines CI/CD (par exemple, GitHub Actions, GitHub Runners, Jenkins).- Outils d’analyse de sécurité (par exemple, Dependabot, Snyk, CodeQL).- Intégrations tierces (par exemple, Slack, Jira, Datadog).- Exécuteurs GitHub auto-hébergés.

Pourquoi suivre ces opérations ?

  • Pour identifier les licences inutilisées ou excessives.
  • Pour optimiser les coûts et éviter les dépenses inutiles.
  • Pour surveiller les risques de sécurité liés aux comptes Automation inactifs ou mal configurés.

Recherche des statistiques d’utilisation des licences pour les comptes d’ordinateur

Méthode 1 : GitHub Enterprise Admin Console

  1. Accédez aux paramètres d’entreprise.
  2. Sélectionnez Facturation & Gestion des licences.
  3. Recherchez une section Comptes de machine (le cas échéant).
  4. Identifier:
    • Nombre de comptes d’ordinateur actifs.
    • Consommation de licence par compte d’ordinateur.
    • Dernière date active.

Méthode 2 : Requête d’API GraphQL pour les comptes d’ordinateur

Pour récupérer les statistiques d’utilisation du compte d’ordinateur, utilisez l’API GraphQL :

{
  enterprise(slug: "enterprise-name") {
    organizations(first: 50) {
      nodes {
        name
        machineAccounts {
          totalCount
          nodes {
            login
            createdAt
            lastActiveAt
          }
        }
      }
    }
  }
}

Pourquoi suivre ces opérations ?

  • Pour identifier les comptes d’ordinateur inactifs.
  • Pour effectuer le suivi de la dernière activité de chaque compte d’ordinateur.
  • Pour réduire l’allocation de licence inutile.

Recherche de l’utilisation des licences pour les services périphériques

Méthode 1 : Métriques d’utilisation GitHub Actions & Runners

  1. Accédez à Paramètres d’entreprise** → Actions.
  2. Affichage :
    • Nombre total de minutes d'exécution utilisées sur GitHub.
    • Utilisation des exécuteurs auto-hébergés
    • Facturation des minutes supplémentaires pour les exécuteurs.

Méthode 2 : API REST pour les exécuteurs auto-hébergés

Pour suivre les exécuteurs auto-hébergés et l’utilisation de leurs licences :

curl -H "Authorization: token YOUR-TOKEN" \
"https://api.github.com/enterprises/YOUR-ENTERPRISE/actions/runners"

Informations clés :

  • Identifie le nombre d’exécuteurs qui consomment des licences.
  • Effectue le suivi des exécuteurs inactifs susceptibles de gaspiller des ressources.
  • Permet d’optimiser la facturation pour les minutes d’exécuteur hébergées par GitHub.

Méthode 3 : Suivi de l’utilisation des API Des services périphériques

Surveillez les intégrations basées sur des API à l’aide de :

curl -H "Authorization: token YOUR-TOKEN" \
"https://api.github.com/enterprises/YOUR-ENTERPRISE/audit-log"

Cela vous aide à :

  • Détecter les services inactifs : recherchez les services qui ne sont plus utilisés.
  • Auditer les outils tiers : vérifiez que les outils externes sont nécessaires et correctement configurés.
  • Réduire les coûts : désactiver les services qui ne fournissent pas de valeur. »

4. Meilleures pratiques pour la gestion des comptes de machine et des licences des services périphériques

Les bonnes pratiques suivantes vous aideront à auditer l’utilisation, à appliquer des stratégies et à simplifier votre empreinte automation :

  • Auditer régulièrement les comptes d’ordinateur : identifiez et désactivez les comptes d’ordinateur inutilisés.
    • Au fil du temps, les organisations accumulent des comptes d’ordinateur inutilisés ou obsolètes qui peuvent toujours avoir accès aux référentiels et aux systèmes.
    • Les comptes inutilisés augmentent les risques de sécurité, car ils peuvent être exploités en cas de compromission.
    • Les audits réguliers garantissent que seuls les comptes d’ordinateur actifs et nécessaires existent, ce qui réduit l’exposition à un accès non autorisé.
  • Surveiller l’utilisation de l’API : effectuez le suivi des outils tiers consommant des licences d’entreprise.
    • De nombreuses applications tierces, pipelines CI/CD et intégrations consomment des ressources d’API GitHub et des licences d’entreprise.
    • Des appels d’API excessifs peuvent entraîner des limites de débit, ce qui affecte les flux de travail des développeurs.
    • L’utilisation non autorisée ou inconnue de l’API peut exposer des données sensibles et des vulnérabilités de sécurité.
  • Optimiser l’utilisation de l’exécuteur : identifiez les exécuteurs auto-hébergés inactifs et réduisez les coûts d’exécuteur hébergés par GitHub.
    • Les exécuteurs auto-hébergés et les exécuteurs hébergés par GitHub exécutent des flux de travail CI/CD. L’utilisation inefficace entraîne des coûts inutiles.
    • Les exécuteurs auto-hébergés inactifs gaspillent les ressources informatiques et peuvent exposer les organisations aux risques de sécurité s’ils sont laissés sans surveillance.
    • Les exécuteurs hébergés par GitHub fonctionnent sur une base de facturation à l'utilisation, et l'optimisation de l'utilisation peut réduire considérablement les coûts.
  • Restreindre les comptes d’ordinateur : limitez leurs autorisations et appliquez des stratégies de sécurité.
    • Les comptes d’ordinateur ne doivent pas avoir un accès inutile aux référentiels, ce qui réduit le risque d’escalade des privilèges.
    • En cas de compromission, les comptes d’ordinateur peuvent être exploités pour manipuler le code source, déployer des modifications malveillantes ou exposer des secrets.
    • L’application de stratégies de sécurité permet de garantir la conformité et de réduire les violations potentielles.

Le suivi de l’utilisation des licences pour les comptes de machine et les services périphériques est essentiel pour l’optimisation des coûts, la sécurité et la conformité dans GitHub Enterprise. Les administrateurs doivent tirer parti de l’interface utilisateur GitHub, de GraphQL et des API REST pour identifier les comptes inactifs, optimiser l’utilisation et empêcher les dépenses inutiles.