Suomi
  • ohjaus uri
  • paluu
  • valtuutuskoodi
  • koodin kulku
  • oidc
  • pkce

Ymmärtäminen ohjaus URI ja valtuutus koodin kulku OpenID Connectissä (OIDC)

Katsotaanpa tarkemmin ohjaus URI:ta, sillä se on keskeinen tietoturvakomponentti OIDC:n todennusprosessissa.

Charles
Charles
Developer

Mikä on ohjaus URI?

Ohjaus URI, joka tunnetaan myös nimellä Vastaus URL, on keskeinen tietoturvakomponentti OIDC:n todennusprosessissa. Se määrittää URL-osoitteen, johon käyttäjät lähetetään onnistuneen kirjautumisen jälkeen OIDC-palveluntarjoajan kautta. Vielä tärkeämpää on, että sovelluksesi vastaanottaa valtuutuskoodin, joka tarvitaan tokenien saamiseksi.

Tutustu ohjaus URI -wikiin saadaksesi lisätietoja.

Mikä on valtuutuskoodin kulku?

Valtuutuskoodin kulku (määritelty OAuth 2.0 RFC 6749, osa 4.1) on perustavanlaatuinen todennusmenetelmä OIDC:ssä. Siinä vaihdetaan valtuutuskoodi käyttöoikeustokeniin ja tarvittaessa virkistystokeniin. Tämä kulku sopii sovelluksille, jotka voivat varmistaa asiakassalaisuuden turvallisesti, kuten palvelinpuolen verkkosovellukset.

Tutustu valtuutuskoodin kulun wikiin saadaksesi lisätietoja.

Miten ohjaus URI toimii valtuutuskoodin kulussa?

Valtuutuskoodin kulussa ohjaus URI on määränpää, johon OIDC-palveluntarjoaja lähettää valtuutuskoodin käyttäjän onnistuneen todentamisen jälkeen. Se on rekisteröitävä ennakkoon OIDC-palveluntarjoajan kanssa tietoturvan varmistamiseksi ja luvattomien uudelleenohjausten estämiseksi.

Näin voit rekisteröidä ohjaus URI:n Logto Console -palvelussa: redirect-uri

Kun aloitat kirjautumisen:

  1. Valtuutuspyyntö: Sovelluksesi ohjaa käyttäjän OIDC-palveluntarjoajan valtuutuspäätepisteeseen, mukaan lukien parametrit kuten client_id, response_type, scope ja redirect_uri.
  2. Käyttäjän todennus: Käyttäjä todentaa itsensä OIDC-palveluntarjoajalle.
  3. Valtuutuskoodin toimitus: Onnistuneen todentamisen jälkeen OIDC-palveluntarjoaja uudelleenohjaa käyttäjän määriteltyyn redirect_uri:hun, mukaan lukien valtuutuskoodin kyselyparametrina.

OIDC-palveluntarjoaja vahvistaa redirect_uri:n ennakkoon rekisteröityjen URI-osoitteiden listaa vastaan. Jos on ristiriita, palautetaan invalid_redirect_uri -virhe, mikä parantaa turvallisuutta estämällä luvattomia päätepisteitä vastaanottamasta tokenia.

Parhaat käytännöt ohjaus URI:lle

Reaaliaikaisissa käyttötapauksissa yleinen paras käytäntö on määrittää dedikoitu "Callback"-sivu ja liittää reititin / syvä linkki, joka mahdollistaa suoran pääsyn ulkopuolelta. Tätä linkkiä tulisi käyttää ohjaus URI:na.

Jos sinulla on yksisivuisia verkkosovelluksia, jotka pyörivät osoitteessa https://my-app.com, niin yleensä ohjaus URI määritellään https://my-app.com/callback

Tai jos kyseessä on natiivi mobiilisovellus, niin ohjaus URI alkaa yleensä mukautetulla skeemalla, esim. com.company://myapp/callback

Muita parhaita käytäntöjä ovat:

  • Vältä jokerimerkkejä: Älä käytä jokerikuvioita ohjaus URI:issa. Listaa kaikki sallitut URI:t eksplisiittisesti estääksesi luvattoman pääsyn.
  • Tarkka vastaavuus: Varmista, että ohjaus URI vastaa täsmälleen OIDC-palveluntarjoajassa rekisteröityä. Jopa perässä oleva kauttaviiva voi aiheuttaa ristiriidan.

Käsittele kirjautumisen paluuaikaa

Käsitelläksesi valtuutuskoodin, joka palautetaan redirect_uri:llesi, noudata näitä vaiheita:

  1. Ota valtuutuskoodi: Hae koodiparametri ohjaus URI:n kyselystä.

  2. Vaihda valtuutuskoodi tokeneihin: Koosta POST-pyyntö OIDC-palveluntarjoajan token-päätepisteeseen, mukaan lukien:

    • client_id: Sovelluksesi tunniste OIDC-palveluntarjoajassa
    • code: Valtuutuskoodi, joka saatiin ohjaus URI:sta
    • code_verifier: Satunnainen merkkijono, joka generoidaan asiakkaalla
    • redirect_uri: Sama URI, jota käytettiin valtuutuspyynnössä
    • grant_type: Grant-tyyppi, yleensä authorization_code

Esimerkki tokenin vaihtopyynnöstä JavaScriptillä

Yksinkertaista koodinvaihtoprosessia Logtossa hyödyntämällä Logton SDK:ita

Logton SDK:t ovat kehityspaketti, joka on kirjoitettu tietyllä ohjelmointikielellä tai -kehyksellä, kuten Logto React SDK, Next.js SDK ja Swift SDK. SDK:n käyttö voi yksinkertaistaa asioita suuresti kutsumalla vain yhtä tai kahta funktiota.

Tässä on esimerkki React "Callback" -komponentista, joka käyttää Logton virallista React SDK:ta:

SDK-integraatio-oppaat löytyvät Logton pika-aloitusdokumenteista.

Yhteenveto: miksi on tärkeää hallita ohjaus URI:t OIDC:ssä

Ohjaus URI:iden ymmärtäminen OIDC:ssä valtuutuskoodin kulun kanssa on ratkaisevan tärkeää tietoturvan varmistamiseksi ja todennusprosessiesi optimoinniksi. Rekisteröimällä luotettuja ohjaus URI:a ja käsittelemällä kirjautumisen paluukanavat tehokkaasti, voit varmistaa saumattoman ja turvallisen käyttökokemuksen käyttäjillesi samalla yksinkertaistaen kehitystoimiasi Logton SDK:illa.