Svenska
  • GitHub
  • Secret vault
  • Tokenlagring
  • OAuth
  • Social inloggning

GitHub-appar vs. OAuth-appar: Välj rätt GitHub-anslutning

Jämför GitHub-appar och OAuth-appar för Logto-integrering. Lär dig viktiga skillnader vad gäller säkerhet, behörigheter, tokenhantering och välj rätt GitHub-autentiseringsmetod för din applikation.

Ran
Ran
Product & Design

Sluta slösa veckor på användarautentisering
Lansera säkra appar snabbare med Logto. Integrera användarautentisering på några minuter och fokusera på din kärnprodukt.
Kom igång
Product screenshot

När du integrerar GitHub-autentisering i din Logto-applikation har du två alternativ: GitHub-appar och GitHub OAuth-appar. Båda möjliggör funktionen "Logga in med GitHub", men de erbjuder grundläggande olika upplevelser vad gäller säkerhet, tokenhantering och API-åtkomst. Den här guiden hjälper dig att förstå de viktigaste skillnaderna och välja rätt lösning för ditt behov.

Bakgrund: Två vägar till GitHub-integrering

Logtos nuvarande dokumentation leder dig genom att sätta upp en GitHub OAuth-app för social inloggning. Detta är det enklare och mer raka alternativet som passar bra för grundläggande autentiseringsbehov. GitHub-appar representerar dock det moderna och av GitHub själva rekommenderade alternativet med förbättrad säkerhet och mer detaljerad kontroll.

Tänk så här: OAuth-appar är som att ge någon en huvudnyckel till ditt hus – de får bred åtkomst när de godkänts. GitHub-appar är däremot som ett smart låssystem med specifika koder till varje rum – användare kan ge exakt de behörigheter din app behöver.

Viktiga skillnader i korthet

Behörigheter: Breda vs. detaljerade

  • OAuth-appar använder breda scopes – att begära repo ger fullständig kontroll över alla repositories.
  • GitHub-appar använder detaljstyrda behörigheter – du kan t.ex. bara begära "Issues: Läs" utan att röra koden. Användare kan även välja vilka repositories som appen får tillgång till vid installation, inte ge generell åtkomst till allt.

Tokensäkerhet: Permanenta vs. utgående

  • OAuth-appar ger tokens som aldrig går ut (tills de återkallas manuellt) och har ingen uppdateringsmekanism.
  • GitHub-appar använder kortlivade tokens (1 timme) med stöd för automatisk uppdatering – betydligt säkrare för långvariga applikationer.

Identitet: Användare vs. bot

  • OAuth-appar agerar alltid som den godkännande användaren (t.ex. @octocat) och delar användarens gräns för API-förfrågningar (5 000/timme).
  • GitHub-appar kan agera självständigt med egen bot-identitet (t.ex. @my-app[bot]) och får skalbara förfrågningsgränser som växer med användningen – perfekt för automation.

Åtkomstkontroll: Allt eller inget vs. selektivt

  • OAuth-appar kräver engångsgodkännande till alla tillgängliga resurser.
  • GitHub-appar låter användare installera appen, välja specifika repositories och ta emot webhook-notiser om ändrade behörigheter – ger bättre insyn och kontroll.

Persistens: Användarberoende vs. oberoende

  • OAuth-appar är bundna till den godkännande användaren – om den användaren tappar tillgång eller lämnar en organisation, slutar appen fungera.
  • GitHub-appar fortsätter fungera även om utvecklaren som installerade appen lämnar din organisation – ger obruten tjänst för automation och integrationer.

Vilken ska du välja?

Båda GitHub-appar och OAuth-appar fungerar sömlöst med Logtos sociala connector. Logtos Secret Vault lagrar tokens från båda integrationerna på ett säkert sätt, men de ger varsin unik användarupplevelse:

Enkel social inloggning med OAuth-appar

Om du bara behöver autentisera användare (logga in med GitHub) och inte kommer använda GitHub:s API senare, är OAuth-app det snabbaste alternativet:

  • Enkel setup: användare godkänner din OAuth-app och loggar in via GitHub.
  • Tokens är långlivade (inget uppdateringsflöde): Logto kan lagra access-token i Secret Vault, men ingen uppfräschning sker – token gäller tills den återkallas.
  • Bäst när du enbart behöver användaridentitet (e-post, namn, avatar) och inte utför automatisk API-hantering.

Varför välja detta: snabbast att implementera för prototyper eller appar som bara kräver inloggning och ibland behöver profilsynk.

Förbättrad integration med GitHub-appar

Välj en GitHub-app när din applikation behöver löpande tillgång till GitHub-API, bakgrundsautomation eller striktare säkerhet:

  • Detaljstyrda behörigheter och repo-urval per installation minimerar och gör åtkomsten lättspårad.
  • Tokens är kortlivade (vanligen 1 timme) och GitHub-appar kan ge refresh-tokens. Om de är aktiverade lagrar Logto både access- och refresh-tokens i Secret Vault och sköter rotationen, så att din backend fortsätter fungera utan att användaren måste logga in igen.
  • App-identitet (bot) förbättrar attributionen och ökade förfrågningsgränser gör det pålitligare för avancerad automation.

Bäst för:

  • SaaS-plattformar som hanterar GitHub-repositories åt användare
  • AI-agenter som arbetar med kod, ärenden eller pull requests
  • Applikationer som kräver varaktig API-åtkomst
  • Verktyg som automatiserar bakgrundsarbete

Så sätter du upp en GitHub-app med Logto

Att skapa en GitHub-app följer nästan samma mönster som OAuth-appar, med några viktiga skillnader. Att migrera från OAuth-app till GitHub-app kräver minimal insats.

Skapa en GitHub-app

  1. Gå till "GitHub Inställningar > Utvecklarinställningar > GitHub-appar"

  2. Klicka på "Ny GitHub-app"

  3. Konfigurera:

    • GitHub-app-namn: Din apps unika namn
    • Hemsidesadress: Din applikations hemsida
    • Callback-URL: Logtos connector callback-URI (samma som för OAuth-app)
    • Begär användarauktorisering (OAuth) vid installation: Aktivera detta
    • Webhook: Valfritt, beroende på behov
    • Behörigheter: Välj detaljerade behörigheter (t.ex. "Issues: Läs")
    • Användarbehörigheter: Lägg till kontobehörigheter om appen ska agera för användare
  4. Skapa en klienthemlighet (samma som med OAuth-app)

integrate-github-apps.png

Konfiguration i Logto

Logtos connector-konfiguration är nästan identisk:

  1. Ange Client ID från din GitHub-app
  2. Lägg till Klienthemlighet
  3. Aktivera "Lagra tokens för ihållande API-åtkomst" om du behöver anropa GitHub API:er
  4. Viktig skillnad - Scopes:
    • Till skillnad från OAuth-appar (där scope listas i Logto), väljs behörigheter för GitHub-app i GitHubs inställningar.
    • Lämna helt enkelt scope-fältet tomt i Logto
  5. Begär refresh token (valfritt)
    • Lägg till offline_access i scope-fältet i Logto för att aktivera refresh-tokens
    • GitHub utfärdar automatiskt en refresh-token, och Logto hanterar både rotation och lagring av access- och refresh-tokens i Secret Vault
    • Observera: OAuth-appar stöder inte refresh tokens – deras access-tokens löper aldrig ut, så offline_access gäller inte. Det skiljer sig när du använder GitHub-appar för integration.

integrate-github-connector-in-logto.png

Slutsats

OAuth-appar är fortfarande ett giltigt alternativ för grundläggande autentisering, men GitHub-appar representerar framtiden för GitHub-integrationer. De erbjuder bättre säkerhet tack vare utgående tokens, mer precisa behörighetsmodeller och bättre kontroll för användaren.

För Logto-användare fungerar båda alternativen med den sociala connectorn. Valet handlar om dina specifika behov:

  • Börja enkelt med OAuth-appar om du bara behöver autentisering
  • Byt upp dig till GitHub-appar när du behöver API-åtkomst, automation eller högre säkerhet

Och kom ihåg — Logtos Secret Vault och automatiska token-uppdateringar gör hanteringen av GitHub-app-tokens lika enkel som för OAuth-appar, utan att tumma på säkerheten. Oavsett om du bygger en AI-kodassistent, en projekthanteringsplattform eller ett produktivitetsverktyg för utvecklare har du nu kunskapen att välja rätt GitHub-integrering för din Logto-applikation.

Redo att komma igång? Kolla in Logtos GitHub-connector för att börja integrera GitHub-autentisering idag.

Ytterligare resurser