# GitHub-apps vs. OAuth-apps: Kies de juiste GitHub-verbinding
Vergelijk GitHub-apps en OAuth-apps voor Logto-integratie. Leer de belangrijkste verschillen in beveiliging, machtigingen, tokenbeheer en kies de juiste GitHub-authenticatiemethode voor jouw applicatie.
Bij het integreren van GitHub-authenticatie in je Logto-applicatie heb je twee opties: GitHub-apps en GitHub OAuth-apps. Hoewel beide "Inloggen met GitHub" mogelijk maken, bieden ze fundamenteel verschillende ervaringen op het gebied van beveiliging, tokenbeheer en API-toegang. Deze gids helpt je om de belangrijkste verschillen te begrijpen en de juiste aanpak te kiezen voor jouw gebruikssituatie.
Achtergrond: Twee wegen naar GitHub-integratie
De huidige dokumentatie van Logto leidt je door het opzetten van een GitHub OAuth-app voor sociale login. Dit is de eenvoudigste en meest directe optie die uitstekend werkt voor basisbehoeften aan authenticatie. GitHub-apps vormen echter de moderne en door GitHub zelf aanbevolen aanpak, met verbeterde beveiligingsfuncties en meer gedetailleerde controle.
Zie het zo: OAuth-apps zijn als het geven van een hoofdsleutel van je huis aan iemand—ze krijgen na machtiging brede toegang. GitHub-apps zijn daarentegen als een slim sluitsysteem met specifieke toegangscodes voor verschillende kamers—gebruikers kunnen nauwkeurige machtigingen geven voor precies wat jouw app nodig heeft.
Belangrijkste verschillen in één oogopslag
Machtigingen: Breed vs. fijnmazig
- OAuth-apps gebruiken brede scopes—het aanvragen van
repogeeft volledige repositorycontrole. - GitHub-apps gebruiken fijnmazige machtigingen—je kunt bijvoorbeeld alleen "Issues: Lezen" aanvragen zonder de code aan te raken. Gebruikers kunnen tijdens de installatie ook specifieke repositories selecteren in plaats van overal toegang te geven.
Tokenbeveiliging: Permanent vs. vervallend
- OAuth-apps geven tokens uit die nooit verlopen (tot deze handmatig worden ingetrokken), zonder vernieuwingmechanisme.
- GitHub-apps gebruiken tokens die kort geldig zijn (1 uur) met automatische verversing—veel veiliger voor langlopende applicaties.
Identiteit: Gebruiker vs. bot
- OAuth-apps handelen altijd namens de autoriserende gebruiker (bijv.
@octocat) en delen diens rate limit (5.000 verzoeken/uur). - GitHub-apps kunnen onafhankelijk opereren met een eigen bot-identiteit (bijv.
@my-app[bot]) en profiteren van schaalbare rate limits die toenemen met het gebruik—perfect voor automatisering.
Toegangscontrole: Alles-of-niets vs. selectief
- OAuth-apps vragen eenmalige toestemming voor alle toegankelijke resources.
- GitHub-apps laten gebruikers de app installeren, specifieke repositories kiezen en ontvangen webhookmeldingen over machtigingswijzigingen—wat voor meer transparantie en controle zorgt.
Persistentie: Gebruikersafhankelijk vs. onafhankelijk
- OAuth-apps zijn gekoppeld aan de autoriserende gebruiker—verliest die ontwikkelaar toegang of verlaat hij een organisatie, dan werkt de app niet meer.
- GitHub-apps blijven functioneren, ook als de ontwikkelaar die de app heeft geïnstalleerd je organisatie verlaat—dit zorgt voor ononderbroken service voor automatisering en integraties.
Welke moet je kiezen?
Zowel GitHub-apps als OAuth-apps werken naadloos met Logto's social connector. Logto's Secret Vault slaat tokens van beide integraties veilig op, maar elke optie levert een eigen ervaring:
Basis sociale login met OAuth-apps
Als je alleen gebruikers wilt authenticeren (Inloggen met GitHub) en later geen GitHub-APIs aanroept, is de OAuth-app-route het snelst:
- Simpele setup: gebruikers geven jouw OAuth-app toestemming en loggen in via GitHub.
- Tokens zijn lang geldig (geen vernieuwing): Logto kan het access token in Secret Vault opslaan, maar er is geen vernieuwingsflow — tokens blijven geldig tot ze worden ingetrokken.
- Ideaal als je alleen identiteit van de gebruiker nodig hebt (e-mail, naam, avatar) en geen geautomatiseerd API-werk uitvoert.
Waarom kiezen: het snelst te implementeren voor prototypes of apps die alleen login en af en toe een profielsync nodig hebben.
Geavanceerde integratie met GitHub-apps
Kies voor een GitHub-app als jouw applicatie doorlopend toegang tot GitHub-APIs nodig heeft, achtergrondautomatisering uitvoert of striktere beveiliging vereist:
- Fijnmazige machtigingen en reposelectie per installatie houden toegang minimaal en controleerbaar.
- Tokens zijn kort geldig (meestal 1 uur) en GitHub-apps kunnen verversingstokens leveren; indien ingeschakeld slaat Logto zowel access- als refreshtokens op in Secret Vault en verzorgt rotatie, zodat je backend blijft werken zonder dat gebruikers opnieuw hoeven in te loggen.
- App-identiteit (bot) verbeterd toewijzing en schaalbare rate limits maken het betrouwbaarder voor zware automatisering.
Het best voor:
- SaaS-platformen die GitHub-repositories beheren namens gebruikers
- AI-agenten die met code, issues of pull-requests werken
- Applicaties die langdurige API-toegang vereisen
- Tools die achtergrondautomatisering uitvoeren
Een GitHub-app instellen met Logto
Het instellen van een GitHub-app volgt een vergelijkbaar patroon als bij OAuth-apps, met een paar belangrijke verschillen. Overstappen van OAuth-app naar GitHub-app vereist minimale inspanning.
Een GitHub-app aanmaken
-
Ga naar "GitHub-instellingen > Ontwikkelaar-instellingen > GitHub-apps"
-
Klik op "Nieuwe GitHub-app"
-
Configureer:
- Naam van de GitHub-app: Unieke naam voor jouw app
- Homepage-URL: De website van jouw applicatie
- Callback-URL: Callback-URI van je Logto-connector (hetzelfde als bij OAuth-app)
- Vraag gebruikersmachtiging (OAuth) aan tijdens installatie: Zet dit aan
- Webhook: Optioneel, afhankelijk van je behoeften
- Machtigingen: Kies fijnmazige machtigingen (bijv. "Issues: Lezen")
- Gebruikersmachtigingen: Voeg accountmachtigingen toe als je namens gebruikers handelt
-
Genereer een clientgeheim (zelfde als bij OAuth-app)

Configureren in Logto
De configuratie van de Logto-connector is vrijwel identiek:
- Voer de Client-ID van je GitHub-app in
- Voeg het Clientgeheim toe
- Zet "Tokens opslaan voor aanhoudende API-toegang" aan als je GitHub-APIs wilt gebruiken
- Cruciaal verschil - Scopes:
- Anders dan bij OAuth-apps (waar je scopes toevoegt in Logto's scopeveld), worden machtigingen voor GitHub-apps ingesteld in de GitHub-app zelf.
- Laat het scopeveld leeg in Logto
- Verversingstoken aanvragen (optioneel)
- Voeg
offline_accesstoe aan het scopeveld in Logto om verversingstokens in te schakelen - GitHub reikt dan automatisch een verversingstoken uit, en Logto verzorgt de rotatie en slaat beide tokens op in Secret Vault
- Let op: OAuth-apps ondersteunen geen verversingstokens—hun access-tokens verlopen nooit, dus
offline_accessis daar niet van toepassing. Dit werkt dus anders bij GitHub-app-integratie.
- Voeg

Conclusie
Hoewel OAuth-apps een geldige optie blijven voor eenvoudige authenticatie, zijn GitHub-apps de toekomst van GitHub-integraties. Ze bieden superieure beveiliging dankzij token-verval, preciezere machtigingsmodellen en betere gebruikerscontrole over toegang.
Voor Logto-gebruikers werken beide opties met de social connector. De keuze hangt af van jouw specifieke behoeften:
- Begin eenvoudig met OAuth-apps als je alleen authenticatie nodig hebt
- Schakel over op GitHub-apps als je API-toegang, automatisering of extra beveiliging nodig hebt
En onthoud—Logto's Secret Vault en automatische tokenverversing maken het beheren van GitHub-app-tokens net zo eenvoudig als bij OAuth-apps, maar dan zonder in te leveren op veiligheid. Of je nu een AI-codeassistent, een projectmanagementplatform of een developer-productiviteitstool bouwt, nu weet je hoe je de juiste GitHub-integratie voor jouw Logto-applicatie kiest.
Klaar om te beginnen? Bekijk Logto's GitHub-connector om vandaag nog GitHub-authenticatie te integreren.

