OAuth

Konfigurer sikker OAuth 2.0-godkendelse i Ideanote.

OAuth er et førende autorisationsframework, der er udviklet til at give brugere sikker adgang til ressourcer uden at dele deres loginoplysninger.

OAuth er bredt udbredt blandt store teknologivirksomheder og anvendes i mange forskellige applikationer. Det har revolutioneret den måde, brugere interagerer med web- og mobiltjenester på.

OAuth-godkendelse integreres problemfrit med tredjepartstjenester, samtidig med at følsomme oplysninger beskyttes.

Udnyt fleksibiliteten og den brugercentrerede tilgang i OAuth, hvor brugere nemt kan give adgang til deres data uden at kompromittere deres loginoplysninger.

Godkendelsesindstillinger med muligheder for logon, hvor OAuth 2.0 er fremhævet i menuen Tilføj.
Vælg OAuth under Indstillinger, og kom i gang
  1. Gå til Indstillinger i dit workspace, og vælg derefter Godkendelse
  2. Klik på Tilføj og vælg OAuth 2.0
  3. Følg konfigurationsdialogen, der vises

‍

OAuth-indstillingsside, der viser
Start konfigurationen af OAuth i dit Ideanote-workspace

‍

Godkend med OAuth

Implementeringsvejledning

OAuth-logo (sort/hvid cirkel med »A« og et gitter) og Auth0-logo (hvidt abstrakt symbol på mørk baggrund).

OAuth 2.0 er branchestandarden for autorisation. OAuth 2.0 fokuserer på at gøre det enkelt for klientudviklere og tilbyder samtidig specifikke autorisationsflows til applikationer som Ideanote.

Ideanote understøtter et OAuth 2.0-baseret Authorization Code Flow. Dette er den mest almindelige af OAuth 2.0-grant-typerne, og i forbindelse med Ideanote foregår flowet omtrent sådan her:

  1. Ideanote sender brugeren til en login-side, som du kontrollerer (eller integrerer med), og som brugeren allerede kender.
  2. Brugeren indtaster sine loginoplysninger og forsøger at godkende sig.
  3. Hvis loginoplysningerne er gyldige, omdirigeres brugeren tilbage til Ideanote med en autorisationskode som en forespørgselsparameter i URL-adressen.
  4. Ideanote udveksler derefter denne autorisationskode med et adgangstoken ved at kommunikere med din API.
  5. Med dette adgangstoken som autorisation henter Ideanote brugeroplysninger fra din API, f.eks. e-mailadresse, id (eller sub), avatar, foretrukket sprog og navn.

Hvis du vil dykke mere detaljeret ned i emnet, er dette en fremragende ressource om emnet.

‍

Fordele

  • En nem måde at sikre stærk godkendelse på.
  • Dine brugere logger ind via et system, de allerede har tillid til, og de deler aldrig deres loginoplysninger direkte med Ideanote.
  • Da dine brugere godkendes direkte via dit system (eller et system, du kontrollerer), bevarer du fuld kontrol over, hvem der har adgang til dit Ideanote-workspace.
  • OAuth 2.0 er en branchestandard, som du kan bruge til godkendelse med ikke bare Ideanote, men tusindvis af softwareløsninger.

‍

Forudsætninger

Du skal enten:

  1. Bruger du allerede en logonudbyder til dit eget system, der understøtter OAuth 2.0, f.eks. Okta, Facebook, Google, Github og mange andre? Eller
  2. Kør selv en OAuth 2-godkendelsesserver, der overholder OAuth 2.0-specifikationen

‍

Vigtig bemærkning:

Hvis du vil komme i gang med OAuth 2.0-baseret godkendelse, skal du først læse dokumentationen fra den logonudbyder, du bruger til dit system, så du kan oprette en OAuth-integration eller -applikation via udbyderens grænseflade.

Du skal kopiere nogle oplysninger derfra til konfigurationen i dit Ideanote-workspace og omvendt. Vi gennemgår detaljerne om lidt.

For nemheds skyld har vi nedenfor samlet en kort liste med direkte links til relevant dokumentation for nogle populære logonudbydere, der understøtter OAuth 2.0:

Google

Slack

Discord

Dropbox

Github

Facebook

Disse fungerer typisk på en af følgende måder: Du opretter en OAuth-applikation eller -integration. Her finder du et klient-id og en klienthemmelighed samt en liste over OAuth-scopes, som den understøtter. Du kan også indtaste en eller flere omdirigerings-URL'er. Til sidst bør du se en liste over relevante API-endepunkter, f.eks. autoriseringsendepunktet og tokenendepunktet.

OAuth-integrationsindstillinger med klient-id, hemmeligheder, omdirigerings-URI'er, programoplysninger og Meta for Developers
Github

Disse billeder er eksempler på OAuth 2.0-integrationer. Det første er fra Github, og det andet er fra Facebook/Meta.

Når du har oprettet en OAuth-applikation/-integration, eller hvis du selv hoster en OAuth 2.0-autorisationserver, er du klar til at konfigurere den i dit Ideanote-workspace.

Konfiguration af dit Ideanote-workspace

‍

Trin 1

  1. Gå til Indstillinger i dit workspace, og vælg derefter Godkendelse
  2. Klik på Tilføj og vælg OAuth 2.0
  3. Vælg din loginudbyder
OAuth-indstillingsside, der viser
Trin 1 – Start konfigurationen af OAuth i dit Ideanote-workspace

‍

Trin 2

  1. Gå til Grundlæggende
  2. Konfigurer og tilpas de generelle indstillinger
OAuth-indstillinger, afsnittet Grundlæggende med felt til brugerdefineret tekst på loginknappen og muligheder for tilpasning af ikon.
Trin 2 – Tilpas de generelle OAuth 2.0-indstillinger

‍

Trin 3

  1. Gå til Kopiér omdirigerings-URL
  2. Kopiér URL'en til udklipsholderen. Denne URL skal indsættes i OAuth 2.0-konfigurationen for din applikation/integration i næste trin (Trin 4)
Skærmbillede af OAuth-indstillinger, der viser trinnet »Kopiér omdirigerings-URL«, hvor omdirigerings-URL'en vises.
Trin 3 – URL-omdirigering

‍

Trin 4

Før vi går videre til trin 4, lad os hurtigt gennemgå OAuth 2.0 Authorization Code Flows overordnede funktion:

  1. Når en bruger logger ind via loginskærmen i din loginapplikation, bliver vedkommende omdirigeret til en URL med en autorisationskode som forespørgselsparameter i URL'en. Denne URL skal være Ideanotes OAuth-omdirigerings-URL.
  2. Når en bruger logger ind via loginskærmen i din loginapplikation, bliver vedkommende omdirigeret til en URL med en autorisationskode som forespørgselsparameter i URL'en. Denne URL skal være Ideanotes OAuth-omdirigerings-URL.
  3. Som nævnt i afsnittet Trin 3 skal du kopiere Ideanotes omdirigerings-URL ind i OAuth 2.0-konfigurationen for din applikation/integration.
  4. Når du er sikker på, at vores Redirect URL er blevet tilføjet korrekt, skal du klikke på Tilføj konfiguration, så vi kan fortsætte.

‍

Så går vi videre til trin 4

OAuth-indstillinger, formularen »Tilføj konfiguration« med felterne Klient-id og Klienthemmelighed samt en knap til at gemme.

‍

  1. Gå til Tilføj konfiguration – Her kan du indsætte de relevante oplysninger fra din OAuth 2-applikation/integration som beskrevet i de foregående trin.
  2. Her skal Client ID indtastes. Du kan typisk nemt finde det et sted i din OAuth 2.0-applikation/integration, hvor det som regel kaldes Client ID eller App ID.
  3. Det er her, klienthemmeligheden skal indtastes. Den er typisk nem at finde et sted i din OAuth 2.0-applikation eller -integration og kaldes normalt klienthemmelighed eller apphemmelighed. Bemærk: Hvis du hoster din egen OAuth 2.0-autoriseringsserver, skal du sikre, at den er tilstrækkeligt tilfældig til, at den ikke kan gættes. Det kan du gøre ved at bruge et kryptografisk sikkert bibliotek til at generere en værdi på 256 bit og derefter konvertere den til en hexadecimal repræsentation.
  4. Det autorisationsendepunkt er det sted, Ideanote sender dine brugere hen, så de kan godkendes hos dig, før de sendes tilbage til os med en autorisationskode – hvis alt går som det skal. Hvis du ikke selv hoster en OAuth 2.0-autoriseringsserver, kan du finde oplysningerne i dokumentationen til din OAuth 2.0-applikation/integration.
  5. The Token Endpoint er det endpoint, som Ideanote sender den Authorization Code til, vi modtog fra Authorization Endpoint, med henblik på at udveksle den til et Access Token. Hvis vi modtager et access token, er vi blevet godkendt hos din applikation/integration på vegne af brugeren. Vi bruger dette access token én enkelt gang til at hente relevante brugeroplysninger, såsom brugerens id, e-mailadresse, navn, avatar og eventuelt andre oplysninger, som du giver os adgang til via de OAuth 2.0-scopes, du indtaster

‍

Yderligere indstillinger

Tilgængelige konfigurationsmuligheder i Tilføj konfiguration.

  1. Dette er det API-endpoint, som Ideanote kalder med det Access Token, der er hentet fra Token Endpoint, som godkendelse for at hente relevante brugeroplysninger. Det giver os mulighed for at hente nogle af de nødvendige samt valgfrie brugeroplysninger, herunder brugerens id (eller sub) og e-mailadresse (som begge er påkrævede) samt valgfrie data såsom navn, avatar, foretrukne landestandard og foretrukne alias. Du kan finde dette endpoint i API-dokumentationen til din OAuth 2.0-applikation eller -integration.
  2. Her kan du indtaste de(n) OAuth 2.0-scope(s), der skal anmodes om. Du skal sørge for at indtaste mindst ét scope, og at scopet giver Ideanote adgang til de to påkrævede datafelter: e-mail og id (eller sub). Se dokumentationen til din OAuth 2.0-applikation/-integration for at læse om de scopes, den understøtter, og for at sikre, at Ideanote anmoder om de korrekte scopes for at få adgang til brugeroplysninger, helst også navn og avatar.
  3. Ideanote forventer, at svaret fra det User Info Endpoint, du har konfigureret, er et JSON-objekt. Som standard forsøger Ideanote at analysere og knytte dets nøgle-værdi-par til brugeroplysninger baseret på kvalificerede gæt og heuristikker. Ved at udvide harmonikamenuen USER INFO ATTRIBUTES kan du hjælpe os ved at angive den nøjagtige sti i JSON-svaret med User Info, som vi skal slå op for de enkelte brugeroplysninger.
  4. Når du har udfyldt alle påkrævede felter og er tilfreds med konfigurationen, kan du klikke på knappen Gem for at gemme OAuth 2.0-loginudbyderen i dit Ideanote-workspace. Fremover vil dine brugere se en ny loginmulighed på loginsiden. Hvis den er konfigureret korrekt, fører et klik på den dem til den loginside, de allerede bruger til at logge ind på dit eget system. Når de er blevet godkendt, omdirigeres de til dit Ideanote-workspace. Afhængigt af de anmodede og accepterede scopes samt den type data, din OAuth-applikation/-integration understøtter, vil Ideanote allerede kende nogle oplysninger om brugeren, f.eks. navn, avatar, foretrukne landestandard osv.

‍

Nyttige oplysninger

OAuth 2.0 er en veldokumenteret og populær branchestandardprotokol til autorisation.

Der findes derfor mange gode ressourcer online, herunder dybdegående vejledninger og tjenester, der gør det nemt at integrere OAuth 2.0-baseret autentificering med din egen API.

Her er nogle få ressourcer, vi anbefaler:

OAuth 2.0-autoriseringsrammen

Hvad er OAuth 2.0 Authorization Code Grant-typen?

Sandkasse til OAuth 2 Authorization Code Flow

OAuth 2 forenklet

Hvis du har yderligere spørgsmål, er du velkommen til at kontakte os på support@ideanote.io.

‍