Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 58862|Svar: 3

[Kilde] Lær om forståelsen af JWT (JSON Web Tokens).

[Kopier link]
Opslået på 21/05/2018 15.56.52 | | | |
Introduktion til JWT: JSON Web Token (JWT) er en åben standard (RFC 7519), der definerer en kompakt og selvstændig måde at overføre information sikkert mellem parter i JSON-objekter. Disse oplysninger kan verificeres og betros gennem digitale signaturer. JWT'er kan signeres ved hjælp af hemmeligheder (ved hjælp af HMAC-algoritmen) eller ved hjælp af RSAs offentlige/private nøglepar.


Nogle scenarier, hvor JSON Web Tokens er nyttige:

Identitetsverifikation:Dette er det mest almindelige tilfælde af brug af JWT'er. Når brugeren logger ind, vil hver efterfølgende anmodning indeholde en JWT, der giver brugeren adgang til de ruter, tjenester og ressourcer, som tokenet har tilladt. Single sign-on er en funktion, der i dag er udbredt på grund af dens lave overhead og dens evne til nemt at kunne bruges på tværs af forskellige domæner.

Informationsudveksling:JSON Web Tokens er en fremragende måde at overføre information sikkert mellem parter. Fordi JWT'er kan underskrives – for eksempel ved brug af offentlige/private nøglepar – er det muligt at være sikker på, at afsenderen er den, de udgiver sig for at være. Derudover, da signaturen beregnes ved hjælp af headers og payloads, kan du også verificere, at indholdet ikke er blevet manipuleret.


Officiel hjemmeside:Hyperlink-login er synlig.

Parse JWT-information onlineHyperlink-login er synlig.



Analyser JWT-parametre online  Hyperlink-login er synlig.

Min forståelse af JWT nedenfor er forkert, giv mig venligst nogle råd

Først og fremmest, det her ting, det anbefales ikke at bruge det på MVC-hjemmesiden, du kan bruge det i webapi, placeringen af dette er API, ikke en session på erstatningswebsitet!

asp.net webapi-brugsvejledning:Hyperlink-login er synlig.Jeg vil ikke lave hjulet om igen, det er okay at se på, hvad denne artikel er skrevet.

Sammensætningen af JWT

JWT består af tre dele: Header, Payload og Signature, med priksymboler imellem for at danne formen xx.yy.zz.


Bemærk, at for signerede tokens kan denne information læses af alle, på trods af manipulationsbeskyttelse. Placer ikke følsomme oplysninger i gyldigt indhold eller header-elementer i JWT, medmindre de er krypteret.

For eksempel:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

{
alg: "HS256",
typ: "JWT"
}.
{
sub: "1234567890",
name: "John Doe",
iat: 1516239022
}.
[signatur]

På almindeligt dansk kan alle dekryptere dette token, men ægtheden af disse oplysninger kan ikke verificeres; kun den server, der har genereret tokenet, kan verificere ægthedet, så gem ikke følsomme oplysninger i det.


Der er et problem her, nemlig at hvis brugeren ændrer adgangskoden eller brugeren ikke må logge ind, hvordan kan JWT så løse tokenets gyldighed?

Min egen idé er at tilføje en guide-lignende streng i Payload-sektionen, og så eksistere i cachen, når brugerens identitet verificeres, ikke kun verificere jwt'en, men også payload-informationen i jwt'en, kan vi kontrollere gyldigheden ved at kontrollere cachen.







Tidligere:C# Open Source-rammeværk (Genoptryk)
Næste:Du bruger sikker opdateringstilstand, og du prøvede at opdatere en gang
Opslået på 22/08/2018 14.42.27 |
iss: jwt签发者
sub: jwt所面向的用户
aud: 接收jwt的一方
exp: jwt的过期时间,这个过期时间必须要大于签发时间
nbf: 定义在什么时间之前,该jwt都是不可用的.
iat: jwt的签发时间
jti: jwt的唯一身份标识,主要用来作为一次性token,从而回避重放攻击。


Disse er et sæt foruddefinerede deklarationer, som ikke er obligatoriske, men anbefales for at give et nyttigt, interoperabelt sæt af deklarationer. Nogle af dem er: iss (udsteder), exp (udløbstid), sub (tema), aud (publikum) osv.

https://jwt.io/introduction/


 Udlejer| Opslået på 27/04/2021 10.59.48 |
Header (efter base64)
Payload (efter base64)
hemmelighed

base64-strengen er mindre end et multiplum af 4, og du skal udfylde =
 Udlejer| Opslået på 21/01/2022 17.09.52 |
"iat" = > 1356999524, #token发布时间
"exp" = > 1556999524, #token过期时间
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com