Nederlands
  • GitHub
  • Geheime kluis
  • Tokenopslag
  • OAuth
  • Sociale login

# 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.

Ran
Ran
Product & Design

Stop met weken verspillen aan gebruikersauthenticatie
Lanceer veilige apps sneller met Logto. Integreer gebruikersauthenticatie in minuten en focus op je kernproduct.
Aan de slag
Product screenshot

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 repo geeft 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

  1. Ga naar "GitHub-instellingen > Ontwikkelaar-instellingen > GitHub-apps"

  2. Klik op "Nieuwe GitHub-app"

  3. 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
  4. Genereer een clientgeheim (zelfde als bij OAuth-app)

integrate-github-apps.png

Configureren in Logto

De configuratie van de Logto-connector is vrijwel identiek:

  1. Voer de Client-ID van je GitHub-app in
  2. Voeg het Clientgeheim toe
  3. Zet "Tokens opslaan voor aanhoudende API-toegang" aan als je GitHub-APIs wilt gebruiken
  4. 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
  5. Verversingstoken aanvragen (optioneel)
    • Voeg offline_access toe 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_access is daar niet van toepassing. Dit werkt dus anders bij GitHub-app-integratie.

integrate-github-connector-in-logto.png

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.

Aanvullende bronnen