Nodyn. traws.: Mae'r erthygl wych hon gan Okta yn esbonio sut mae OAuth ac OIDC (OpenID Connect) yn gweithio mewn ffordd syml a chlir. Bydd y wybodaeth hon yn ddefnyddiol i ddatblygwyr, gweinyddwyr system, a hyd yn oed "defnyddwyr rheolaidd" o gymwysiadau gwe poblogaidd, sydd fwyaf tebygol hefyd yn cyfnewid data cyfrinachol â gwasanaethau eraill.
Yn Oes y Cerrig y Rhyngrwyd, roedd rhannu gwybodaeth rhwng gwasanaethau yn hawdd. Yn syml, fe wnaethoch chi roi eich mewngofnodi a'ch cyfrinair o un gwasanaeth i'r llall, fel ei fod yn mynd i mewn i'ch cyfrif ac yn derbyn unrhyw wybodaeth yr oedd ei hangen arno.

"Rhowch eich cyfrif banc i mi." “Rydyn ni’n addo y bydd popeth yn iawn gyda’r cyfrinair a’r arian. Mae hynny'n onest, onest!" *hee hee*
Arswyd! Ni ddylai neb fyth fynnu bod defnyddiwr yn rhannu enw defnyddiwr a chyfrinair, cymwysterau, gyda gwasanaeth arall. Nid oes unrhyw sicrwydd y bydd y sefydliad y tu ôl i’r gwasanaeth hwn yn cadw’r data’n ddiogel ac ni fydd yn casglu mwy o wybodaeth bersonol nag sydd angen. Efallai ei fod yn swnio'n wallgof, ond mae rhai apiau'n dal i ddefnyddio'r arfer hwn!
Heddiw mae un safon sy'n caniatáu i un gwasanaeth ddefnyddio data un arall yn ddiogel. Yn anffodus, mae safonau o'r fath yn defnyddio llawer o jargon a thermau, sy'n cymhlethu eu dealltwriaeth. Pwrpas y deunydd hwn yw esbonio sut maen nhw'n gweithio gan ddefnyddio darluniau syml (Ydych chi'n meddwl bod fy lluniau i'n debyg i dewi plant? O wel!).

Gyda llaw, mae'r canllaw hwn hefyd ar gael ar ffurf fideo:

Foneddigion a boneddigesau, croeso: OAuth 2.0
yn safon diogelwch sy'n caniatáu i un cais gael caniatâd i gael mynediad at wybodaeth mewn rhaglen arall. Dilyniant y camau ar gyfer rhoi trwydded [caniatâd] (Neu cydsyniad [cydsyniad]) galw yn aml awdurdodiad [awdurdod] neu hyd yn oed awdurdodi dirprwyedig [awdurdodiad dirprwyedig]. Gyda'r safon hon, rydych yn caniatáu i raglen ddarllen data neu ddefnyddio swyddogaethau rhaglen arall ar eich rhan heb roi eich cyfrinair iddo. Dosbarth!
Er enghraifft, gadewch i ni ddweud eich bod chi'n darganfod gwefan o'r enw "Pwnc Anlwcus y Dydd" [Pwnc Ofnadwy y Dydd] a phenderfynodd gofrestru arno er mwyn derbyn pigion dyddiol ar ffurf negeseuon testun ar y ffôn. Roeddech chi'n hoff iawn o'r wefan, ac fe wnaethoch chi benderfynu ei rannu gyda'ch ffrindiau i gyd. Wedi'r cyfan, mae pawb yn hoffi puns creepy, iawn?

“Pwnc anffodus y dydd: Wedi clywed am y boi gollodd hanner chwith ei gorff? Nawr mae bob amser yn iawn! ”… (cyfieithiad bras, oherwydd mae gan y gwreiddiol ei nodyn ei hun - tua. transl.)
Mae'n amlwg nad yw ysgrifennu at bob person o'r rhestr gyswllt yn opsiwn. Ac, os ydych chi hyd yn oed ychydig fel fi, yna byddwch chi'n mynd i unrhyw drafferth i osgoi gwaith diangen. Yn ffodus, gall Pwnc Ofnadwy y Dydd wahodd eich holl ffrindiau ar ei ben ei hun! I wneud hyn, does ond angen i chi agor mynediad i e-bost eich cysylltiadau - bydd y wefan ei hun yn anfon gwahoddiadau atynt (rheolau OAuth)!

“Mae pawb yn caru puns! - Wedi mewngofnodi yn barod? “A hoffech chi ganiatáu i wefan Punt Ofnadwy y Dydd gael mynediad i'ch rhestr gyswllt? - Diolch! O hyn ymlaen, byddwn yn anfon nodiadau atgoffa bob dydd at bawb rydych chi'n eu hadnabod, tan ddiwedd amser! Ti yw'r ffrind gorau!"
- Dewiswch eich gwasanaeth e-bost.
- Os oes angen, ewch i'r safle post a mewngofnodwch i'ch cyfrif.
- Rhowch ganiatâd Punt Ofnadwy y Dydd i gael mynediad i'ch cysylltiadau.
- Dychwelyd i safle Ofnadwy Punt y Dydd.
Rhag ofn i chi newid eich meddwl, mae cymwysiadau sy'n defnyddio OAuth hefyd yn darparu ffordd i ddirymu mynediad. Unwaith y byddwch yn penderfynu nad ydych yn dymuno rhannu cysylltiadau â Pun Ofnadwy y Dydd mwyach, gallwch fynd i'r wefan bostio a thynnu'r wefan ffug oddi ar y rhestr o geisiadau awdurdodedig.
Llif OAuth
Rydym newydd fynd trwy'r hyn a elwir fel arfer llif [llif] OAuth. Yn ein hesiampl, mae'r llif hwn yn cynnwys camau gweladwy, yn ogystal â sawl cam anweledig, lle mae dau wasanaeth yn cytuno ar gyfnewid gwybodaeth yn ddiogel. Mae enghraifft flaenorol Terrible Pun of the Day yn defnyddio'r llif OAuth 2.0 mwyaf cyffredin, a elwir yn llif "cod awdurdodi". [llif "cod awdurdodi"].
Cyn plymio i fanylion sut mae OAuth yn gweithio, gadewch i ni siarad am ystyr rhai termau:
- Perchennog Adnoddau:

Chi yw e! Chi sy'n berchen ar eich tystlythyrau, eich data, ac yn rheoli'r holl weithgareddau y gellir eu cyflawni ar eich cyfrifon. - Cwsmeriaid:

Cais (er enghraifft, gwasanaeth Punt Ofnadwy y Dydd) sydd eisiau cyrchu neu gyflawni rhai gweithredoedd ar ran Perchennog Adnoddau' а. - Gweinydd Awdurdodi:

Yr app sy'n gwybod Perchennog Adnoddau'a ac y mae u Perchennog Adnoddau'a sydd â chyfrif eisoes. - gweinydd adnoddau:

Rhyngwyneb rhaglennu cymhwysiad (API) neu wasanaeth hynny Cwsmeriaid eisiau defnyddio ar ran Perchennog Adnoddau' а. - Ailgyfeirio URI:

Mae'r cyswllt hwnnw Gweinydd Awdurdodi bydd ailgyfeirio Perchennog Adnoddau' ac ar ol rhoddi caniatad Cwsmeriaid'yn. Cyfeirir ato weithiau fel yr "URL Galw'n Ôl". - math o ymateb:

Y math o wybodaeth y disgwylir ei derbyn Cwsmeriaid. Y mwyaf cyffredin math o ymateb'ohm yw'r cod, hynny yw Cwsmeriaid yn disgwyl derbyn Cod Awdurdodi. - Cwmpas:

Mae hwn yn ddisgrifiad manwl o'r caniatadau sydd eu hangen Cwsmeriaid'y, megis cyrchu data neu gyflawni rhai gweithredoedd. - Caniatâd:

Gweinydd Awdurdodi yn cymryd Scopesgofyn Cwsmeriaid'om, ac yn gofyn Perchennog Adnoddau'a, a ydyw efe yn barod i ddarparu Cwsmeriaid'cael y caniatâd priodol. - ID y cleient:

Defnyddir yr ID hwn i adnabod Cwsmeriaid'a ar Gweinydd Awdurdodi' e. - Cyfrinach Cleient:

Dyma'r cyfrinair sy'n hysbys yn unig Cwsmeriaid'u a Gweinydd Awdurdodi'yn. Mae'n caniatáu iddynt rannu gwybodaeth yn breifat. - Cod Awdurdodi:

Cod dros dro gyda chyfnod byr o ddilysrwydd, sy'n Cwsmeriaid yn darparu Gweinydd Awdurdodi'y yn gyfnewid am Tocyn Mynediad. - Tocyn Mynediad:

Yr allwedd y bydd y cleient yn ei ddefnyddio i gyfathrebu ag ef gweinydd adnoddau'om. Math o fathodyn neu gerdyn allwedd sy'n darparu Cwsmeriaid'cael caniatâd i ofyn am ddata neu gyflawni gweithredoedd ar gweinydd adnoddau'e ar eich rhan.
Nodyn: Weithiau mae Gweinydd Awdurdodi a Gweinyddwr Adnoddau yr un gweinydd. Fodd bynnag, mewn rhai achosion, gall y rhain fod yn weinyddion gwahanol, hyd yn oed os nad ydynt yn perthyn i'r un sefydliad. Er enghraifft, gallai'r Gweinydd Awdurdodi fod yn wasanaeth trydydd parti y mae'r Gweinyddwr Adnoddau yn ymddiried ynddo.
Nawr ein bod wedi ymdrin â chysyniadau craidd OAuth 2.0, gadewch i ni fynd yn ôl at ein hesiampl ac edrych yn agosach ar yr hyn sy'n digwydd yn llif OAuth.

- ti, Perchennog Adnoddau, rydych chi am ddarparu gwasanaeth Punt Ofnadwy y Dydd (Cwsmeriaidy) mynediad at eich cysylltiadau fel y gallant anfon gwahoddiadau at eich holl ffrindiau.
- Cwsmeriaid yn ailgyfeirio'r porwr i'r dudalen Gweinydd Awdurdodi'a a chynnwys yn yr ymholiad ID y cleient, Ailgyfeirio URI, math o ymateb ac un neu fwy Scopes (caniatâd) sydd ei angen arno.
- Gweinydd Awdurdodi yn eich gwirio, gan ofyn am enw defnyddiwr a chyfrinair os oes angen.
- Gweinydd Awdurdodi yn arddangos ffurflen Caniatâd (cadarnhad) gyda rhestr o'r cyfan Scopesgofyn Cwsmeriaid'om. Rydych chi'n cytuno neu'n gwrthod.
- Gweinydd Awdurdodi yn eich ailgyfeirio i’r wefan Cwsmeriaid' a, gan ddefnyddio Ailgyfeirio URI ynghyd â Cod Awdurdodi (cod awdurdodi).
- Cwsmeriaid yn cyfathrebu'n uniongyrchol â Gweinydd Awdurdodi'ohm (gan osgoi'r porwr Perchennog Adnoddau'a) ac yn anfon yn ddiogel ID y cleient, Cyfrinach Cleient и Cod Awdurdodi.
- Gweinydd Awdurdodi yn gwirio'r data ac yn ymateb gyda Tocyn Mynediad'om (tocyn mynediad).
- Nawr Cwsmeriaid yn gallu defnyddio Tocyn Mynediad i anfon cais i gweinydd adnoddau i gael rhestr o gysylltiadau.
ID Cleient a Chyfrinach
Ymhell cyn i chi ganiatáu Terrible Pun of the Day i gael mynediad i'ch cysylltiadau, roedd y Gweinydd Cleient a'r Gweinydd Awdurdodi wedi sefydlu perthynas waith. Cynhyrchodd y Gweinydd Awdurdodi ID y Cleient a Chyfrinach y Cleient (a elwir weithiau ID App и Ap Cyfrinachol) a'u hanfon at y Cleient i ryngweithio ymhellach o fewn OAuth.

"- Helo! Hoffwn i weithio gyda chi! - Yn sicr, nid problem! Dyma eich ID Cleient a Chyfrinach!”
Mae'r enw'n awgrymu bod yn rhaid cadw Cyfrinach y Cleient yn gyfrinachol fel mai dim ond y Cleient a'r Gweinydd Awdurdodi sy'n gwybod hynny. Wedi'r cyfan, gyda'i help ef y mae'r Gweinydd Awdurdodi yn cadarnhau gwirionedd y Cleient.
Ond nid dyna'r cyfan... Croeso i OpenID Connect!
Dim ond ar gyfer hyn y mae OAuth 2.0 wedi'i gynllunio awdurdodiad - darparu mynediad i ddata a swyddogaethau o un rhaglen i'r llall. (OIDC) yn haen denau ar ben OAuth 2.0 sy'n ychwanegu manylion mewngofnodi a phroffil y defnyddiwr sydd wedi'i lofnodi i'r cyfrif. Cyfeirir yn aml at drefniant sesiwn mewngofnodi fel dilysu [dilysu], a gwybodaeth am y defnyddiwr sydd wedi mewngofnodi i'r system (h.y. am Perchennog Adnoddau'e),— data personol [hunaniaeth]. Os yw'r Gweinydd Awdurdodi yn cefnogi OIDC, cyfeirir ato weithiau fel darparwr data personol [darparwr hunaniaeth]oherwydd ei fod yn darparu Cwsmeriaid'cael gwybodaeth am Perchennog Adnoddau' e.
Mae OpenID Connect yn eich galluogi i weithredu senarios lle gellir defnyddio mewngofnodi unigol mewn cymwysiadau lluosog - gelwir y dull hwn hefyd llofnodi sengl (SSO). Er enghraifft, gall rhaglen gefnogi integreiddio SSO â rhwydweithiau cymdeithasol fel Facebook neu Twitter, gan ganiatáu i ddefnyddwyr ddefnyddio cyfrif sydd ganddynt eisoes ac y mae'n well ganddynt ei ddefnyddio.

Mae'r llif (llif) OpenID Connect yn edrych yr un fath ag yn achos OAuth. Yr unig wahaniaeth yw mai'r cwmpas penodol a ddefnyddir yn y cais cynradd openid,- A Cwsmeriaid yn y pen draw yn cael fel Tocyn MynediadAc Tocyn ID.

Yn union fel yn y llif OAuth, Tocyn Mynediad yn OpenID Connect, dyma rywfaint o werth nad yw'n glir Cwsmeriaid'yn. O safbwynt Cwsmeriaid'A Tocyn Mynediad yn cynrychioli cyfres o nodau sy'n cael eu pasio ynghyd â phob cais i gweinydd adnoddau'y, sy'n penderfynu a yw'r tocyn yn ddilys. Tocyn ID cynrychioli peth hollol wahanol.
Mae ID Token yn JWT
Tocyn ID yn gyfres o nodau wedi'u fformatio'n arbennig o'r enw JSON Web Token neu JWT (weithiau mae tocynnau JWT yn cael eu ynganu fel "jots"). I arsyllwyr allanol, gall JWT ymddangos fel gibberish annealladwy, ond Cwsmeriaid yn gallu tynnu gwybodaeth amrywiol o'r JWT, megis ID, enw defnyddiwr, amser mewngofnodi, dyddiad dod i ben Tocyn ID'a, presenoldeb ymdrechion i ymyrryd â'r JWT. Data y tu mewn Tocyn ID'a yn cael eu galw ceisiadau [hawliadau].

Yn achos OIDC, mae yna ffordd safonol hefyd Cwsmeriaid gall ofyn am wybodaeth ychwanegol am yr unigolyn [hunaniaeth] o Gweinydd Awdurdodi'a, er enghraifft, cyfeiriad e-bost gan ddefnyddio Tocyn Mynediad.
Dysgwch fwy am OAuth ac OIDC
Felly, fe wnaethom adolygu'n fyr sut mae OAuth ac OIDC yn gweithio. Barod i gloddio'n ddyfnach? Dyma adnoddau ychwanegol i'ch helpu i ddysgu mwy am OAuth 2.0 ac OpenID Connect:
Fel bob amser, mae croeso i chi wneud sylwadau. I gael y newyddion diweddaraf, tanysgrifiwch i и Okta i ddatblygwyr!
PS gan y cyfieithydd
Darllenwch hefyd ar ein blog:
- «";
- «";
- «";
- «'.
Ffynhonnell: hab.com











