GitHub personal access token: aanmaken, gebruiken met Git, intrekken | We.Inc
Kies fine-grained of classic met een snelle check, maak de token aan, gebruik hem voor git via HTTPS, bewaar hem in een credential helper en regel het verlopen en intrekken.
Een personal access token vervangt uw GitHub-wachtwoord wanneer git via HTTPS met GitHub praat of wanneer een script de API aanroept. Maak er een aan onder Settings, Developer settings, Personal access tokens, kies fine-grained tenzij u een functie van classic nodig hebt, en plak hem wanneer git om een wachtwoord vraagt.
Fine-grained en classic tokens vergeleken
Fine-grained
Classic
Bereik
Gekozen repositories met rechten per onderdeel
Brede scopes over elke repository waar u bij kunt
Aanbeveling van GitHub
Standaard gebruiken
Alleen als fine-grained het niet kan
Publieke repo's waarvan u geen lid bent
Kan niet bijdragen
Kan schrijven
Meerdere organisaties in één token
Nee
Ja
Packages en Checks API
Niet ondersteund
Ondersteund
Limiet per account
Geen limiet vermeld in de documentatie
GitHub accepteert geen accountwachtwoorden meer voor git via HTTPS, dus voor het clonen van een privérepository of pushen vanaf een server hebt u een token, een SSH-sleutel of een credential manager nodig. Deze pagina helpt u het tokentype te kiezen, laat zien waar u hem maakt en legt de veiligere manieren uit om hem op uw computer te bewaren in plaats van hem elke keer te plakken.
Beantwoord de vragen in de checker om te zien of een fine-grained token uw situatie dekt.
Open uw profielfoto, dan Settings, Developer settings, Personal access tokens, en kies het type dat de checker voorstelt.
Stel een vervaldatum in, kies repositories en rechten, genereer de token en kopieer hem meteen; GitHub toont hem alleen bij het aanmaken.
Gebruik hem als wachtwoord voor git via HTTPS, of beter: log één keer in met de GitHub CLI of Git Credential Manager, zodat hij voor u wordt bewaard.
Geef elke token één taak en zo weinig repositories en rechten als die taak nodig heeft, zodat een lek zo weinig mogelijk blootlegt.
Stel altijd een vervaldatum in. Een herinnering in uw agenda voordat hij verloopt is beter dan een kapotte deploy op vrijdag.
Zet een token nooit in een repository of een gist. GitHub trekt tokens in die het in publieke repo's vindt, en in privérepo's is het nog steeds een lek.
Gebruik voor servers en CI liever deploy keys of de eigen kortlevende credentials van het platform dan een persoonlijke token die aan uw account hangt.
Veelgestelde vragen
Waarom zegt git dat wachtwoordauthenticatie niet wordt ondersteund?
GitHub accepteert uw accountwachtwoord niet meer voor git via HTTPS. Plak een personal access token wanneer git om een wachtwoord vraagt, of stap over op SSH, de GitHub CLI of Git Credential Manager.
Welke rechten heeft een fine-grained token nodig om code te pushen?
Selecteer de repositories en zet onder de repositoryrechten Contents op lezen en schrijven. Voeg alleen andere rechten toe als een script ze nodig heeft, zoals Pull requests of Issues.
Verlopen personal access tokens?
U kiest een vervaldatum bij het aanmaken, en organisaties kunnen een maximum afdwingen. Daarnaast trekt GitHub automatisch een personal access token in die een jaar niet is gebruikt.
Hoe trek ik een token in?
Ga naar Settings, Developer settings, Personal access tokens, open de token en verwijder hem. Elke git-remote of elk script dat hem gebruikt, werkt direct niet meer, dus vervang hem overal waar hij bewaard was.
Moet ik een token of SSH gebruiken?
Beide werken voor git. SSH-sleutels verlopen nooit, tenzij u ze verwijdert, en passen bij uw eigen computer. Tokens passen bij netwerken die alleen HTTPS toestaan, scripts die ook de API aanroepen en situaties waarin u een automatische vervaldatum wilt.
De token bewaren in plaats van plakken
Het advies van GitHub zelf is om de GitHub CLI of Git Credential Manager de authenticatie te laten regelen. Voer gh auth login uit, kies HTTPS, en vanaf dan zijn git-commando's geauthenticeerd zonder token op uw klembord.
Git Credential Manager wordt meegeleverd met Git for Windows en kan op macOS en Linux worden geïnstalleerd. Het bewaart credentials in de beveiligde opslag van het systeem en regelt inloggen met tweestapsverificatie via de browser.
Organisaties moeten tokens soms goedkeuren
Een organisatie kan goedkeuring eisen voor fine-grained tokens, ze beperken of classic tokens blokkeren. Werkt uw token wel op persoonlijke repo's maar niet op die van het bedrijf, vraag dan een eigenaar van de organisatie wat het beleid is.
Een token gebruiken met git
Eén keer inloggen met de GitHub CLI
Kies GitHub.com, dan HTTPS, en log in via de browser. De CLI stelt git zo in dat het de bewaarde credential gebruikt.
De token plakken wanneer git om een wachtwoord vraagt
Typ uw GitHub-gebruikersnaam en plak dan de token als wachtwoord. Een credential helper kan hem daarna opslaan.
Een token in een script gebruiken zonder hem op schijf op te slaan
Lees de token uit een omgevingsvariabele, zodat hij nooit in het scriptbestand of in de remote-URL van de repository verschijnt.
Bijdragen aan een publieke repository waarvan ik geen lid ben
Als externe medewerker aan de repo's van een organisatie werken
Met één token bij repositories in meerdere organisaties komen
GitHub Packages gebruiken
De Checks API gebruiken
Welk tokentype heb ik nodig?
Vink alles aan wat de token moet kunnen:
Een fine-grained token dekt dit. GitHub raadt hem aan als standaard.
U hebt een classic token nodig voor: {v}. Geef hem de smalste scopes en een vervaldatum.
Waar u hem aanmaakt
Settings > Developer settings > Personal access tokens > Fine-grained tokens > Generate new token
Settings > Developer settings > Personal access tokens > Tokens (classic) > Generate new token