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

Skats: 2|Atbildi: 0

[Avots] .NET/C# Divas metodes JWT tokena paraksta derīguma pārbaudei

[Kopēt saiti]
Publicētspirms 1 minūtes | | | |
Prasības: Pieprasot API, tiks iekļauta JWT tokena autentifikācijas informācija. Aizmugures sistēmai jāpārbauda, vai tokena paraksts ir derīgs, pēc tam jāpārliecinās, vai tas ir beidzies, vai informācija par izsniegšanu utt.

JSON tīmekļa atslēgu kopas URI

jwks_uri (JSON Web Key Set URI) ir standarta konfigurācijas vienība OAuth 2.0 un OpenID Connect (OIDC) specifikācijās.

Vienkārši sakot, tā ir publiska URL adrese (vai galapunkts), kas norāda uz vietu, kur autentifikācijas serveris publicē savu "publisko atslēgu kopu". Standarta OIDC procesā autentifikācijas serveris nodrošina servisa atklāšanas galapunktu, kurā ir jwks_uri adrese.

Tās populārā metafora

Ja autentifikācijas servera izsniegtais JWT (vai ID tokens) tiek salīdzināts ar vēstuli, kas apzīmogota ar fizisku oficiālu zīmogu, tad:

• Privātā atslēga: "Fiziskais zīmogs", kas ir ieslēgts autentifikācijas servera seifā, ko izmanto zīmogošanai (parakstīšanai).
• jwks_uri: Šī ir "zīmoga parauga atklāšanas sadaļa", ko oficiālajā tīmekļa vietnē publicē autentifikācijas serveris.
• Trešās puses lietotne (klients vai resursu serveris): Pēc e-pasta saņemšanas lejupielādējiet zīmoga dizainu (publisko atslēgu) no šīs jwks_uri adreses un salīdziniet to ar zīmogu uz vēstules, lai pierādītu, ka vēstuli patiešām izdevis oficiālais uzņēmums un tā nav manipulēta.

Šeit atslēgu kolekcijā lietojuma nozīme ir:

"sig": Paraksts, ko izmanto parakstu pārbaudei vai ģenerēšanai, lai nodrošinātu datu integritāti un aizsardzību pret manipulācijām.
"enc": Šifrēšana, ko izmanto datu šifrēšanai vai atšifrēšanai, kā arī atslēgu pārvaldībai (atslēgu šifrēšana), lai nodrošinātu datu konfidencialitāti.

Kā parādīts zemāk:



Analīze par JWT

Vispirms instalējiet nuget pakotni:System.IdentityModel.Tokens.Jwt, nolasa prasību informāciju no jwt, kods ir šāds:

Rezultāts ir šāds:
Nēsātājs
1059ec2e-ffa8-4ff5-bc47-f25d7e37aa5a

Pārbaudīt JWT paraksta derīgumu

Jums joprojām vispirms jāatsaucas uz System.IdentityModel.Tokens.Jwt pakotni. Ir divi veidi, kā pārbaudīt paraksta derīgumu.

Risinājums 1: X.509 sertifikātu ķēde

Deserializācija tiek veikta saskaņā ar X.509 starptautisko standartu, iegūstot visu strukturēto informāciju no sertifikāta (piemēram, publisko atslēgu, izdevēju, derīguma termiņu, sērijas numuru utt.) un ģenerējot X509Certificate2 objektu. Visbeidzot, tiek iegūta slēptā RSA publiskā atslēga, lai pārbaudītu JWT tokenu. Kods ir šāds:
Kā parādīts zemāk:



Risinājums 2: JsonWebKey

Konvertēt uz drošības atslēgu: Tā automātiski identificē algoritma tipu iekšpusē. Pēc tam pārbaudiet tokena derīgumu. Kods ir šāds:
(Beigas)




Iepriekšējo:.NET/C# Iegūstiet objektu īpašības, laukus un komentārus, balstoties uz Roslyn
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