Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 58862|Svare: 3

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

[Kopier lenke]
Publisert på 21.05.2018 15:56:52 | | | |
Introduksjon til JWT: JSON Web Token (JWT) er en åpen standard (RFC 7519) som definerer en kompakt og selvstendig måte å overføre informasjon sikkert mellom parter i JSON-objekter. Denne informasjonen kan verifiseres og stoles på gjennom digitale signaturer. JWT-er kan signeres ved hjelp av hemmeligheter (ved bruk av HMAC-algoritmen) eller ved bruk av RSAs offentlige/private nøkkelpar.


Noen scenarioer hvor JSON Web Tokens er nyttige:

Identitetsverifisering:Dette er det vanligste tilfellet av bruk av JWT-er. Når brukeren logger inn, vil hver påfølgende forespørsel inneholde en JWT som lar brukeren få tilgang til rutene, tjenestene og ressursene som tokenet tillater. Single sign-on er en funksjon som er mye brukt i dag på grunn av lav overhead og muligheten til å enkelt brukes på tvers av ulike domener.

Informasjonsutveksling:JSON Web Tokens er en flott måte å overføre informasjon sikkert mellom partene på. Fordi JWT-er kan signeres – for eksempel ved bruk av offentlige/private nøkkelpar – er det mulig å være sikker på at avsenderen er den de utgir seg for å være. I tillegg, siden signaturen beregnes ved hjelp av headere og payloads, kan du også verifisere at innholdet ikke er tuklet med.


Offisiell nettside:Innloggingen med hyperkoblingen er synlig.

Parse JWT-informasjon på nettInnloggingen med hyperkoblingen er synlig.



Analyser JWT-parametere på nett  Innloggingen med hyperkoblingen er synlig.

Min forståelse av JWT nedenfor er feil, vær så snill å gi meg noen råd

Først og fremst, denne tingen, det anbefales ikke at du bruker den på MVC-nettsiden, du kan bruke den i webapi, plasseringen av denne tingen er API, ikke en økt på erstatningsnettstedet!

asp.net veiledning for bruk av webapi:Innloggingen med hyperkoblingen er synlig.Jeg kommer ikke til å lage hjulet på nytt, det er greit å se på hva denne artikkelen er skrevet.

Sammensetningen av JWT

JWT består av tre deler: Header, Payload og Signature, med prikksymboler imellom for å danne formen xx.yy.zz.


Merk at for signerte tokens kan denne informasjonen leses av hvem som helst, til tross for manipuleringsbeskyttelse. Ikke plasser sensitiv informasjon i gyldig innhold eller header-elementer i JWT med mindre det er kryptert.

For eksempel:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

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

Enkelt sagt kan hvem som helst dekryptere dette tokenet, men ektheten av informasjonen kan ikke verifiseres, kun serveren som genererte tokenet kan verifisere ektheten, så ikke lagre sensitiv informasjon i det.


Det er et problem her, nemlig at hvis brukeren endrer passordet eller brukeren ikke får lov til å logge inn, hvordan kan JWT løse gyldigheten av tokenet?

Min egen idé er å legge til en guide-lignende streng i Payload-seksjonen, og så eksistere i cachen, når man verifiserer brukerens identitet, ikke bare verifisere jwt-en, men også Payload-informasjonen i jwt-en, vi kan kontrollere gyldigheten ved å kontrollere cachen.







Foregående:C# Open Source-rammeverk (Gjenutgivelse)
Neste:Du bruker sikker oppdateringsmodus og prøvde å oppdatere en gang
Publisert på 22.08.2018 14:42:27 |
iss: jwt签发者
sub: jwt所面向的用户
aud: 接收jwt的一方
exp: jwt的过期时间,这个过期时间必须要大于签发时间
nbf: 定义在什么时间之前,该jwt都是不可用的.
iat: jwt的签发时间
jti: jwt的唯一身份标识,主要用来作为一次性token,从而回避重放攻击。


Dette er et sett med forhåndsdefinerte deklarasjoner som ikke er obligatoriske, men som anbefales for å gi et nyttig, interoperabelt sett med deklarasjoner. Noen av dem er: iss (utsteder), exp (utløpstid), sub (tema), aud (publikum), osv.

https://jwt.io/introduction/


 Vert| Publisert på 27.04.2021 10:59:48 |
Header (etter base64)
nyttelast (etter base64)
Hemmelighet

base64-strengen er mindre enn et multiplum av 4, og du må fylle =
 Vert| Publisert på 21.01.2022 17:09:52 |
"iat" = > 1356999524, #token发布时间
"exp" = > 1556999524, #token过期时间
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com