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.
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:
Kun aloitat kirjautumisen:
- Valtuutuspyyntö: Sovelluksesi ohjaa käyttäjän OIDC-palveluntarjoajan valtuutuspäätepisteeseen, mukaan lukien parametrit kuten
client_id
,response_type
,scope
jaredirect_uri
. - Käyttäjän todennus: Käyttäjä todentaa itsensä OIDC-palveluntarjoajalle.
- 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:
-
Ota valtuutuskoodi: Hae koodiparametri ohjaus URI:n kyselystä.
-
Vaihda valtuutuskoodi tokeneihin: Koosta POST-pyyntö OIDC-palveluntarjoajan token-päätepisteeseen, mukaan lukien:
client_id
: Sovelluksesi tunniste OIDC-palveluntarjoajassacode
: Valtuutuskoodi, joka saatiin ohjaus URI:stacode_verifier
: Satunnainen merkkijono, joka generoidaan asiakkaallaredirect_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.