OAuth2 og OpenID Connect i dybden · leksjon

Sikring av omdirigerings-URI-er

Lær hvorfor validering av omdirigerings-URI-er er selve grunnpilaren i OAuth2-sikkerhet, og hvordan du hindrer angrep med åpne omdirigeringer og kodeavlytting.

Leksjon 4 av 413 trinn

Sikring av omdirigerings-URI-er er en gratis leksjon i OAuth2 og OpenID Connect i dybden på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i OAuth2 og OpenID Connect i dybden, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i OAuth2 og OpenID Connect i dybden inneholder totalt 4 leksjoner.

redirect_uri er avgjørende

Etter at brukeren har godkjent, sender autorisasjonsserveren code (eller tokenet) tilbake til klienten ved å omdirigere nettleseren til redirect_uri. Hvis en angriper kan påvirke denne URI-en, kan angriperen stjele koden.

Validering av redirect URI er derfor et av sikkerhetstiltakene med størst effekt i OAuth2.

Nøyaktig samsvar

Den viktigste regelen er at autorisasjonsserveren må sammenligne den oppgitte redirect_uri med forhåndsregistrerte verdier ved hjelp av nøyaktig strengsamsvar, ikke samsvar basert på mønster eller prefiks.

Registered: https://app.example.com/callback
Request:    https://app.example.com/callback   (OK)
Request:    https://app.example.com/callback/x (REJECT)

Misbruk av åpne omdirigeringer

Løs samsvarskontroll muliggjør angrep via åpne omdirigeringer. Hvis https://app.example.com/* er tillatt, kan en angriper målrette mot en side som videresender til en ondsinnet vert, og dermed smugle autorisasjonskoden ut.

Jokertegn er farlige

Unngå jokertegn i underdomener og porter. Noe som https://*.example.com/cb gjør det mulig for en angriper som kontrollerer et hvilket som helst underdomene (inkludert underdomener med brukerinnhold), å motta koder.

Krev alltid HTTPS

Redirect-URI-er må bruke https, bortsett fra native loopback (http://127.0.0.1) under lokal utvikling. Vanlig http over nettverket gjør koden sårbar for avlytting.

Fragmenter og triks med spørringer

Angripere legger til fragmenter (#) eller ekstra spørringsparametere for å forvirre parsere. Normaliser og sammenlign hele den registrerte URI-en, og avvis forespørsler der redirect_uri inneholder uventede komponenter.

Skjemaer for native apper

Native apper bruker ofte egendefinerte skjemaer som myapp://callback, men disse kan kapres av en annen app som registrerer det samme skjemaet. Foretrekk HTTPS-omdirigeringer med eierskapsbekreftelse (Universal Links / App Links), som operativsystemet verifiserer mot domenet Deres.

Valider i begge forespørslene

Hvis en redirect_uri ble sendt i autorisasjonsforespørselen, må den samme verdien sendes i tokenforespørselen, og serveren må bekrefte at de samsvarer. Dette knytter koden til den opprinnelige klienten og omdirigeringen.

POST /token
grant_type=authorization_code
&code=SplxlOBeZ
&redirect_uri=https://app.example.com/callback   <-- must equal the one used earlier

En valideringshjelper

Sjekk av nøyaktig samsvar på serversiden, uten snarveier for normalisering:

function isAllowed(requested, registeredList) {
  return registeredList.includes(requested);
}
// Reject anything not an exact, literal match.

Kombiner med PKCE og state

Streng validering av omdirigeringer bør kombineres med PKCE (slik at en stjålet kode er ubrukelig uten verifikatoren) og parameteren state (for å knytte svaret til økten). Dybdeforsvar holder kodene sikre selv om ett av tiltakene svikter.

Operasjonelle tips

Hold listen over registrerte omdirigeringer kort og gjennomgått. Fjern staging-URL-er fra produksjonsklienter, revider listen jevnlig, og la aldri brukere legge til vilkårlige redirect-URI-er dynamisk.

Rask kontroll

Test kunnskapen Deres om sikkerhet for redirect-URI-er.

Oppsummering

Sikring av redirect-URI-er er grunnleggende:

  • Bruk registrering med nøyaktig samsvar; unngå jokertegn og prefikssamsvar.
  • Krev HTTPS (med unntak for loopback), og avvis uvanlige fragmenter eller parametere.
  • Valider redirect_uri på nytt i tokenforespørselen.
  • Kombiner med PKCE og state for dybdeforsvar.
Gratis å komme i gang

Lær deg OAuth2 og OpenID Connect i dybden med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
12
Leksjoner
48

Ofte stilte spørsmål

Er leksjonen «Sikring av omdirigerings-URI-er» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien OAuth2 og OpenID Connect i dybden, inkludert «Sikring av omdirigerings-URI-er», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i OAuth2 og OpenID Connect i dybden inneholder totalt 4 leksjoner.

Hva lærer jeg i «Sikring av omdirigerings-URI-er»?

Lær hvorfor validering av omdirigerings-URI-er er selve grunnpilaren i OAuth2-sikkerhet, og hvordan du hindrer angrep med åpne omdirigeringer og kodeavlytting. Du øver på OAuth2 og OpenID Connect i dybden med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med OAuth2 og OpenID Connect i dybden?

Ingen tidligere erfaring er nødvendig. OAuth2 og OpenID Connect i dybden på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.

Hvor lang tid tar leksjonen «Sikring av omdirigerings-URI-er»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne OAuth2 og OpenID Connect i dybden-leksjonen?

Ja. Alle OAuth2 og OpenID Connect i dybden-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Tokensikkerhet (access/refresh)
  2. State-parameteren og CSRF
  3. Beste praksis for grant-typer
  4. Sikring av omdirigerings-URI-er
← Tilbake til OAuth2 og OpenID Connect i dybden