Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 1|Vastaus: 0

PKCE:n code_challenge ja code_vertifier ymmärtäminen OIDC:ssä

[Kopioi linkki]
Julkaistu19 sekuntia sitten | | | |
OAuth 2.0 tarjoaa useita valtuutustiloja, joista Authorization Code Grant on yleisimmin käytetty ja turvallisin. code_challenge on tämän tilan tietoturvaa parantava ominaisuus, jota käytetään pääasiassa PKCE (Proof Key for Code Exchange) -mekanismissa.

Mikä on PKCE?

PKCE (Proof Key for Code Exchange) on laajennus, joka on suunniteltu parantamaan OAuth 2.0 -valtuutuskoodimallin turvallisuutta, erityisesti julkisissa asiakkaissa, kuten JavaScript-sovelluksissa tai selaimissa ajetuissa mobiilisovelluksissa. PKCE estää valtuutuskoodien sieppauksen ja väärinkäytön lisäämällä valtuutuspyyntöihin uuden todennusvaiheen.

code_challenge Rooli

code_challenge on osa PKCE-mekanismia, joka luodaan ja lähetetään valtuutuspyynnön vaiheessa. Se perustuu salaiseen arvoon (nimeltään code_verifier), joka muunnetaan hajautusalgoritmilla, kuten S256. code_challenge:n tarkoituksena on tarjota validointipohja myöhemmille token-pyynnöille paljastamatta suoraan code_verifier.

code_challenge ja code_verifier generointi ja käyttö

Sukupolvi code_verifier:
code_verifier on korkean entropian satunnaisesti generoitu merkkijono,Merkkien pituus (välillä 43–128). Oletusarvo on 43。

Sukupolvi code_challenge:
code_verifier:n avulla code_challenge generoidaan hajautusalgoritmilla (kuten S256). S256:ssa code_challenge on Base64-URL-koodaus code_verifier SHA-256:n hajautusarvolle, mutta = täytemerkki on poistettava koodauksesta, ja tulostuspituuden on oltava 43 merkkiä (koska Base64-URL-koodauksen jälkeen jokainen 4 merkkiä edustaa 3 tavua, mutta viimeinen merkkilohko voi olla alle 4 merkkiä, joten pituus voi vaihdella hieman = merkin poistamisen jälkeen).

Käytä code_challenge valtuutuspyynnöissä:
Valtuutuspyyntöä käynnistettäessä code_challenge lähetetään yhtenä pyyntöparametreista valtuutuspalvelimelle.

code_verifier käyttö token-pyynnöissä:
Kun valtuutuspalvelin palauttaa valtuutuskoodin, asiakas käyttää tätä koodia yhdessä aiemmin luodun code_verifier kanssa pyytääkseen pääsyä token-päätepisteelle. Valtuutuspalvelin varmistaa, täsmäävätkö code_challenge ja code_verifier, varmistaen, että pyyntö käynnistetään alkuperäisen asiakkaan toimesta.

PKCE-tuotanto

Verkossa toimivat PKCE-generointityökalut:Hyperlinkin kirjautuminen on näkyvissä.

C#-koodi generoidaan seuraavasti:
Kuten alla on esitetty:



Viittaus:

Hyperlinkin kirjautuminen on näkyvissä.
Hyperlinkin kirjautuminen on näkyvissä.




Edellinen:.NET/C# Kaksi menetelmää JWT-token-allekirjoituksen pätevyyden varmistamiseksi
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com