Lisensbruksstatistikk i maskin- og eksterne enheter
I denne enheten lærer du hvordan maskinkontoer og eksterne tjenester påvirker GitHub Enterprise-lisensbruk. Du skal utforske metoder for å spore forbruket, identifisere ineffektivitet og bruke anbefalte fremgangsmåter for å forbedre kostnadskontroll og sikkerhet.
Sporing av lisensbruk er avgjørende for kostnadsoptimalisering og sikkerhetssamsvar. Maskinkontoer (brukt til automatisering) og eksterne tjenester (for eksempel CI/CD, integreringer og API-forbrukere) kan bruke lisenser, noe som påvirker virksomhetskostnader og ressursadministrasjon.
Forstå maskinkontoer og eksterne tjenester
Maskinkontoer
Maskinkontoer er GitHub-kontoer som brukes til automatisering, kjøring av skript eller integrering med tredjepartsverktøy.
Egenskaper: - De handler uavhengig av menneskelige brukere. – Brukes ofte av CI/CD-verktøy (for eksempel GitHub Actions, Jenkins, CircleCI). - Hver maskinkonto bruker en GitHub-lisens, for eksempel en standardbruker.
Eksterne tjenester
Eksterne tjenester er eksterne integrasjoner som samhandler med GitHub via API-forespørsler.
Eksempler: - CI/CD Pipelines (f.eks. GitHub Actions, GitHub Runners, Jenkins). - Verktøy for sikkerhetsskanning (f.eks. Dependabot, Snyk, CodeQL). - Tredjepartsintegreringer (f.eks. Slack, Jira, Datadog). - Selvbetjente GitHub Runners.
Hvorfor spore disse?
- Identifisere ubrukte eller overflødige lisenser.
- For å optimalisere kostnader og forhindre unødvendige utgifter.
- Slik overvåker du sikkerhetsrisikoer fra inaktive eller feilkonfigurerte automatiseringskontoer .
Finne lisensbruksstatistikk for maskinkontoer
Metode 1: Administrasjonskonsoll for GitHub Enterprise
- Gå til Enterprise-innstillinger.
- Velg Fakturering og lisensbehandling.
- Se etter en maskinkontoinndeling (hvis tilgjengelig).
- Identifisere:
- Antall aktive maskinkontoer.
- Lisensforbruk per maskinkonto.
- Siste aktive dato.
Metode 2: GraphQL API-spørring for maskinkontoer
Hvis du vil hente statistikk for maskinkontobruk, bruker du GraphQL-API-en:
{
enterprise(slug: "enterprise-name") {
organizations(first: 50) {
nodes {
name
machineAccounts {
totalCount
nodes {
login
createdAt
lastActiveAt
}
}
}
}
}
}
Hvorfor spore disse?
- For å identifisere inaktive maskinkontoer.
- Slik sporer du når hver maskinkonto sist var aktiv.
- For å bidra til å redusere unødvendig lisenstildeling.
Finne lisensbruk for eksterne tjenester
Metode 1: GitHub Actions & Runners Usage Metrics
- Gå til Virksomhetsinnstillinger** → Handlinger.
- Utsikt:
- Totalt antall gitHub-vertsbaserte løperminutter som brukes.
- Selvvert løperbruk.
- Fakturering for ekstra løperminutter.
Metode 2: REST API for Self-Hosted Runners
Slik sporer du selvadrettede løpere og lisensbruk:
curl -H "Authorization: token YOUR-TOKEN" \
"https://api.github.com/enterprises/YOUR-ENTERPRISE/actions/runners"
Nøkkelinnsikter:
- Identifiserer hvor mange løpere som bruker lisenser.
- Sporer inaktive løpere som kan kaste bort ressurser.
- Bidrar til å optimalisere fakturering for GitHub-vertsbaserte løperminutter.
Metode 3: API-brukssporing for eksterne tjenester
Overvåk API-baserte integrasjoner ved hjelp av:
curl -H "Authorization: token YOUR-TOKEN" \
"https://api.github.com/enterprises/YOUR-ENTERPRISE/audit-log"
Dette hjelper deg:
- Finn inaktive tjenester: Finn tjenester som ikke lenger er i bruk.
- Overvåk tredjepartsverktøy: Sørg for at eksterne verktøy er nødvendige og riktig konfigurert.
- Reduser kostnader: Deaktiver tjenester som ikke gir verdi.»
4. Anbefalte fremgangsmåter for administrasjon av maskinkontoer og eksterne tjenestelisenser
Følgende anbefalte fremgangsmåter hjelper deg med å overvåke bruk, håndheve policyer og effektivisere automatiseringsavtrykket:
-
Overvåkingsmaskinkontoer regelmessig: Identifiser og deaktiver ubrukte maskinkontoer.
- Over tid akkumulerer organisasjoner ubrukte eller foreldede maskinkontoer som fortsatt kan ha tilgang til repositorier og systemer.
- Ubrukte kontoer øker sikkerhetsrisikoen, da de kan utnyttes hvis de blir kompromittert.
- Regelmessige revisjoner sikrer at det bare finnes aktive og nødvendige maskinkontoer, noe som reduserer eksponering for uautorisert tilgang.
-
Overvåk API-bruk: Spor tredjepartsverktøy som bruker bedriftslisenser.
- Mange tredjepartsprogrammer, CI/CD-datasamlebånd og integreringer bruker GitHub API-ressurser og bedriftslisenser.
- Overdreven API-kall kan føre til satsgrenser, noe som påvirker utviklernes arbeidsflyter.
- Uautorisert eller ukjent API-bruk kan vise sensitive data og sikkerhetsproblemer.
-
Optimaliser runner-bruk: Identifiser inaktive selvverte løpere og reduser gitHub-vertsbaserte løperkostnader.
- Selvbetjente og GitHub-vertsbaserte løpere utfører CI/CD-arbeidsflyter. Ineffektiv bruk fører til unødvendige kostnader.
- Inaktive selvbetjente løpere kaster bort databehandlingsressurser og kan utsette organisasjoner for sikkerhetsrisikoer hvis de ikke overvåkes.
- GitHub-vertsbaserte løpere opererer på betal-etter-bruk-basis , og optimalisering av bruk kan redusere kostnadene betydelig.
-
Begrens maskinkontoer: Begrens tillatelsene og fremtving sikkerhetspolicyer.
- Maskinkontoer bør ikke ha unødvendig tilgang til repositorier, noe som reduserer risikoen for eskalering av rettigheter.
- Hvis det er kompromittert, kan maskinkontoer utnyttes til å manipulere kildekode, distribuere skadelige endringer eller avsløre hemmeligheter.
- Å håndheve sikkerhetspolicyer bidrar til å sikre samsvar og minimerer potensielle brudd.
Sporing av lisensbruk for maskinkontoer og eksterne tjenester er avgjørende for kostnadsoptimalisering, sikkerhet og samsvar i GitHub Enterprise. Administratorer bør bruke GitHub UI, GraphQL og REST-API-er til å identifisere inaktive kontoer, optimalisere bruken og forhindre unødvendige utgifter.