Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 1|Atbildi: 0

PKCE code_challenge un code_vertifier izpratne OIDC

[Kopēt saiti]
PublicētsPirms 19 sekundēm | | | |
OAuth 2.0 piedāvā vairākus autorizācijas režīmus, no kuriem visbiežāk izmantotais un drošākais ir Autorizācijas koda piešķīrums. code_challenge ir drošības uzlabota funkcija šajā režīmā, galvenokārt izmantota PKCE (Proof Key for Code Exchange) mehānismā.

Kas ir PKCE?

PKCE (Proof Key for Code Exchange) ir paplašinājums, kas izstrādāts, lai uzlabotu OAuth 2.0 autorizācijas koda modeļa drošību, īpaši publiskajos klientos, piemēram, JavaScript lietotnēs vai mobilajās lietotnēs, kas darbojas pārlūkprogrammās. PKCE novērš autorizācijas kodu pārtveršanu un ļaunprātīgu izmantošanu, pievienojot papildu autentifikācijas soli autorizācijas pieprasījumiem.

code_challenge Loma

code_challenge ir daļa no PKCE mehānisma, kas tiek ģenerēts un nosūtīts autorizācijas pieprasījuma fāzē. Tas balstās uz slepenu vērtību (saukta par code_verifier), kas pārveidota ar hašēšanas algoritmu, piemēram, S256. code_challenge mērķis ir nodrošināt validācijas pamatu turpmākiem tokenu pieprasījumiem, tieši neatklājot code_verifier.

code_challenge un code_verifier ģenerēšana un izmantošana

code_verifier. paaudze:
code_verifier ir augstas entropijas, nejauši ģenerēta virkne,Rakstzīmju garums (no 43 līdz 128). Noklusējuma vērtība ir 43。

code_challenge. paaudze:
Izmantojot code_verifier, code_challenge tiek ģenerēts ar hašēšanas algoritmu (piemēram, S256). S256 gadījumā code_challenge ir Base64 URL kodējums code_verifier SHA-256 haša vērtībai, bet = aizpildījuma rakstzīme no kodējuma ir jānoņem un izvades garumam jābūt 43 rakstzīmēm (jo pēc Base64 URL kodēšanas katras 4 rakstzīmes nozīmē 3 baitus, bet pēdējais rakstzīmju bloks var būt mazāks par 4 rakstzīmēm, tāpēc garums var nedaudz atšķirties pēc = rakstzīmju noņemšanas).

Izmantojiet code_challenge autorizācijas pieprasījumos:
Uzsākot autorizācijas pieprasījumu, code_challenge tiek nosūtīts kā viens no pieprasījuma parametriem autorizācijas serverim.

Izmantojot code_verifier tokenu pieprasījumos:
Kad autorizācijas serveris atgriež autorizācijas kodu, klients izmanto šo kodu kopā ar iepriekš ģenerēto code_verifier, lai pieprasītu piekļuvi tokena galapunktam. Autorizācijas serveris pārbauda, vai code_challenge un code_verifier sakrīt, nodrošinot, ka pieprasījumu iniciē oriģinālais klients.

PKCE ģenerācija

Tiešsaistes PKCE ģenerēšanas rīki:Hipersaites pieteikšanās ir redzama.

C# kods tiek ģenerēts šādi:
Kā parādīts zemāk:



Atsauce:

Hipersaites pieteikšanās ir redzama.
Hipersaites pieteikšanās ir redzama.




Iepriekšējo:.NET/C# Divas metodes JWT tokena paraksta derīguma pārbaudei
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com