OAuth2 ja OpenID Connect perusteellisesti · Oppitunti

Istuntojen hallinta

Tutustukaa erilaisiin OIDC-istuntojen hallintatekniikoihin, kuten front-channel- ja back-channel-uloskirjautumiseen, jotta käyttäjäistunnot pysyvät synkronoituina.

Oppitunti 3/412 vaihetta

Istuntojen hallinta on ilmainen OAuth2 ja OpenID Connect perusteellisesti-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu OAuth2 ja OpenID Connect perusteellisesti-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. OAuth2 ja OpenID Connect perusteellisesti-kurssilla on yhteensä 4 oppituntia.

Istuntojen pitäminen synkronoituina

OpenID Connectissa (OIDC) käyttäjät käyttävät usein useita sovelluksia (Relying Partyja) yhden identiteetintarjoajan (OP) kautta.

Kun käyttäjä kirjautuu ulos yhdestä palvelusta, hän yleensä odottaa kirjautuvansa ulos kaikista yhdistetyistä palveluista. Tätä varten OIDC tarjoaa OIDC-istunnonhallinnan!

Hajautettujen istuntojen haaste

Kuvitelkaa, että kirjaudutte Googleen ja käytätte sitten Google-kirjautumista YouTubessa ja Gmailissa. Jos kirjaudutte ulos YouTubesta, pitäisikö teidän silti olla kirjautuneena Gmailiin?

Istunnon tilan synkronointi eri sovellusten ja identiteetintarjoajan välillä on hajautettujen järjestelmien monimutkainen haaste.

OIDC-istunnon tila

OIDC esittelee session_state-parametrin, jonka avulla RP:t voivat seurata käyttäjän istuntoa OP:ssa.

Tämän arvon ja iss- (issuer) URL-osoitteen avulla RP:t voivat tarkkailla käyttäjän OpenID Providerissa olevan istunnon muutoksia.

Front-channel-uloskirjautuminen selitettynä

Front-channel-uloskirjautuminen on yksi tapa toteuttaa Single Logout (SLO).

Siinä käyttäjän selain välittää uloskirjautumispyynnöt kaikille aktiivisille Relying Partyille (RP).

Miten front-channel toimii

Kun käyttäjä kirjautuu ulos OP:sta, OP ohjaa käyttäjän selaimen erityiseen uloskirjautumisen päätepisteeseen.

Tämä päätepiste lataa sitten piilotettujen iframe-kehysten tai kuvapyyntöjen avulla kunkin rekisteröidyn RP:n erityiset "logout URL" -osoitteet ja ilmoittaa niille, että niiden paikallinen istunto on päätettävä.

Front-channelin kompromissit

Front-channel-uloskirjautuminen on RP:ille helppo toteuttaa, koska se ei edellytä monimutkaista palvelinpuolen logiikkaa.

  • Hyödyt: Helppo käyttöönotto, hyödyntää selainta.
  • Haitat: Voi olla epäluotettava. Selaimen rajoitukset, kuten kolmannen osapuolen evästeiden estäminen, tai verkkoyhteyden ongelmat voivat estää RP:itä vastaanottamasta uloskirjautumissignaalia.

Back-channel-uloskirjautuminen selitettynä

Back-channel-uloskirjautuminen tarjoaa vankemman ja luotettavamman tavan toteuttaa Single Logout.

Selaimeen tukeutumisen sijaan siinä käytetään suoraa palvelinten välistä viestintää OpenID Providerin ja Relying Partyjen välillä.

Miten back-channel toimii

Kun käyttäjä kirjautuu ulos, OP lähettää erityisen Logout Tokenin suoraan RP:n ennalta rekisteröityyn back-channel-uloskirjautumisen URI-osoitteeseen.

Vastaanotettuaan tokenin RP validoi sen ja päättää sitten käyttäjän paikallisen istunnon.

Logout Tokenien ymmärtäminen

Logout Token on OP:n myöntämä JSON Web Token (JWT).

Se sisältää esimerkiksi claimit iss (issuer), sub (subject) ja aud (audience) sekä erityisen events-claimin, joka ilmaisee back-channel-uloskirjautumistapahtuman. Lisäksi se sisältää sid-arvon (session ID), joka yksilöi päätettävän istunnon.

Front-channel ja back-channel

Front-channelin ja back-channelin välillä valitaan tarpeiden mukaan:

  • Front-channel: Yksinkertaisempi, selaimesta riippuvainen ja kriittisissä sovelluksissa vähemmän luotettava.
  • Back-channel: Vankempi, palvelinten välinen, edellyttää erillistä RP-päätepistettä ja sopii paremmin tietoturvan kannalta herkkiin tilanteisiin.

Uloskirjautumisprosessin tarkistus

Olette oppineet OIDC-istunnonhallinnan kaksi tärkeintä tekniikkaa. Testataan seuraavaksi ymmärrystänne.

Istuntojen synkronoinnin yhteenveto

Hienoa työtä! Olette tutustuneet siihen, miten OpenID Connect käsittelee istuntojen hallintaa.

Käsittelimme istuntojen synkronoinnin merkitystä, selainpohjaista front-channel-uloskirjautumista sekä vankempaa palvelinten välistä back-channel-uloskirjautumista, jossa käytetään Logout Tokeneita.

Näiden mekanismien ymmärtäminen on keskeistä turvallisten ja käyttäjäystävällisten OIDC-sovellusten rakentamisessa.

Aloita maksutta

Opi OAuth2 ja OpenID Connect perusteellisesti tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
48

Usein kysytyt kysymykset

Onko oppitunti ”Istuntojen hallinta” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa OAuth2 ja OpenID Connect perusteellisesti-oppimispolun 3 oppituntia, myös oppitunnin “Istuntojen hallinta”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. OAuth2 ja OpenID Connect perusteellisesti-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Istuntojen hallinta”?

Tutustukaa erilaisiin OIDC-istuntojen hallintatekniikoihin, kuten front-channel- ja back-channel-uloskirjautumiseen, jotta käyttäjäistunnot pysyvät synkronoituina. Harjoittelet OAuth2 ja OpenID Connect perusteellisesti-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni OAuth2 ja OpenID Connect perusteellisesti-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin OAuth2 ja OpenID Connect perusteellisesti-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.

Kuinka kauan ”Istuntojen hallinta”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä OAuth2 ja OpenID Connect perusteellisesti-oppitunnilla?

Kyllä. Jokainen OAuth2 ja OpenID Connect perusteellisesti-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Dynaaminen client-rekisteröinti
  2. OIDC Discovery -endpoint
  3. Istuntojen hallinta
  4. Claims-pyyntö ja yhdistetyt claims-tiedot
← Takaisin: OAuth2 ja OpenID Connect perusteellisesti