Lyhyt johdanto OAuth 2.0 -laitteen tilaan
Tämä artikkeli tutkii OAuth 2.0 -laitetilaa, ratkaisua tunnistautumiseen laitteilla, joista puuttuu selain suorittamaan käyttäjäagenttiin perustuvaa valtuutusta tai joiden syöttö on rajoitettua, esitellen sen tarkoitusta ja käyttäjän vuorovaikutusprosessia.
OAuth 2.0 on valtuutuskehys, jota käytetään laajalti eri tilanteissa. OAuthin tarjoamista kirjautumisvaiheista yleisin on valtuutuskoodivaihe. Kun käyttäjä todentaa identiteettinsä sovelluksessa käyttäen Valtuutuskoodivaihetta, sovellus avaa selaimen laitteesta valtuutuspisteelle ja sitten käyttäjä syöttää tunnisteensa (käyttäjänimi, sähköposti jne.) ja kirjautumistietonsa (salasana, vahvistuskoodi jne.) autentikaation suorittamiseksi.
Kuitenkin, kun käyttäjä yrittää käyttää sovellusta laitteella, josta puuttuu selain tai jopa kyky syöttää tilitietojaan, kuinka voimme suorittaa identiteetin todentamisen OAuth 2.0:n kautta? Ja tässä tulee “laitteen tila“ mukaan kuvaan.
Mikä on OAuth 2.0 -laitetila
OAuth 2.0 -laitetila on OAuth 2.0 -protokollan toteutus, joka on suunniteltu tukemaan laitteita, joilla on rajalliset syöttömahdollisuudet tai joilta puuttuu sopiva selain. Näitä laitteita ovat muun muassa älytelevisiot, IoT-laitteet, tulostimet jne.
Laitetila mahdollistaa käyttäjien aloittaa valtuutuspyynnöt mainituilla laitteilla, ja sen jälkeen käyttäjä voi tarkastella valtuutuspyyntöä ja suorittaa käyttäjän valtuutuksen toisella laitteella, jossa on selaintoiminto ja syöttömahdollisuus, kuten älypuhelimella tai henkilökohtaisella tietokoneella.
Myös laitetilaa käytetään usein CLI-työkaluissa (kuten niiden, jotka ovat tarjolla Stripesin, Githubin, Cloudflaren kautta), koska CLI-työkalut toimivat usein käyttöjärjestelmissä, joilla ei ole graafista käyttöliittymää.
Käyttäjän vuorovaikutusprosessi käytettäessä laitetilaa
Kun käyttäjä käyttää laitetilaa autentikaatiota varten, se sisältää pääasiassa seuraavat vaiheet:
- Laitteen asiakaspyynnöt valtuutetaan auth-palvelimen kanssa käyttäen asiakastunnistetta (yleensä asiakas-id auth-palvelimen alustalla).
- Auth-palvelin vastaa laiteasiakkaalle laitekoodilla, käyttäjäkoodilla ja vahvistus-URI:lla.
- Laitteen asiakas näyttää vahvistus-URI:n ja käyttäjäkoodin käyttäjälle tekstinä (tai QR-koodina jne.) ohjeistaen käyttäjää käymään URI:ssa ja syöttämään koodin.
- Samaan aikaan vaiheessa 3, laiteasiakas aloittaa käytönoikeustunnusten kyselemisen laitekoodin ja asiakastunnisteen avulla auth-palvelimelta ja aloittaa käyttäjän valtuutuspyynnön tarkastamisen ja suorittaa käyttäjän valtuutuksen odottamisen.
- Käyttäjä käy auth-palvelimen isännöimässä vahvistus-URI:ssa, toisen laitteen selaimen kautta, ja syöttää käyttäjäkoodin.
- Auth-palvelin uudelleenohjaa käyttäjän kirjautumissivulle ja ohjeistaa käyttäjää suorittamaan sisäänkirjautumisen loppuun.
- Käyttäjä suorittaa kirjautumisprosessin loppuun ja kirjautuu onnistuneesti.
- Auth-palvelin uudelleenohjaa käyttäjän kirjautumisen onnistumissivulle ja ohjeistaa käyttäjää sulkemaan selaimen.
- Samaan aikaan vaiheessa 8, auth-palvelin palauttaa käyttöoikeustunnukset laiteasiakkaalle, koska asiakas on kysellyt siitä vaiheesta 4 lähtien.
Näiden prosessien jälkeen laiteasiakas kykenee hankkimaan käyttöoikeustunnuksen myöhempiä palveluita varten!
Yhteenveto
Kuten olet huomannut, OAuth 2.0 laitetila tarjoaa käyttäjäystävällisen sisäänkirjautumismenetelmän laitteille, joilta puuttuu helppo syöttömahdollisuus tai selain. Tämä on ratkaisevan tärkeää laitteille, kuten älytelevisiot, IoT-laitteet ja CLI-työkalut, jotka toimivat laitteissa, joilla ei ole graafisia käyttöliittymiä.
Jännittäviä uutisia on tulossa, sillä Logto on prosessissa tukemaan laitetilaominaisuutta. Pysy kuulolla, niin pidämme sinut ajan tasalla uusimmista päivityksistä.