Istuntojen hallinta
Tutustukaa erilaisiin OIDC-istuntojen hallintatekniikoihin, kuten front-channel- ja back-channel-uloskirjautumiseen, jotta käyttäjäistunnot pysyvät synkronoituina.
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.
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
- Dynaaminen client-rekisteröinti
- OIDC Discovery -endpoint
- Istuntojen hallinta
- Claims-pyyntö ja yhdistetyt claims-tiedot