JWT-luoja
Luo allekirjoitettuja JWT-tokeneita mukautetulla otsikolla, hyötykuormalla ja avaimella. Tukee HS256, RS256, ES256.
Mikä on JWT?
JWT (JSON Web Token, RFC 7519) on avoin standardi tiedon turvalliseen siirtoon kompaktina JSON-objektina. Koostuu kolmesta pisteillä erotetusta osasta: Header.Payload.Signature.
Mitkä ovat JWT:n yleiset käyttötarkoitukset?
JWT:tä käytetään laajasti todennukseen (kertakirjautuminen), API-valtuutukseen ja turvalliseen tietojenvaihtoon. Kirjautumisen jälkeen palvelin myöntää JWT:n, jonka asiakas sisällyttää myöhempiin pyyntöihin.
Miten valitsen HS256, RS256 ja ES256 välillä?
HS256 käyttää jaettua salaisuutta ja on nopein, sopii yksittäisille palveluille. RS256 käyttää RSA-avainpareja, parempi monipalveluarkkitehtuureille. ES256 käyttää elliptisen käyrän avaimia lyhyemmillä allekirjoituksilla ja korkealla turvallisuudella.
Mitä ovat JWT claims?
Claims ovat väittämiä hyötykuormassa. Rekisteröidyt claims sisältävät iss (myöntäjä), sub (aihe), exp (vanheneminen), aud (vastaanottaja). Julkiset claims voidaan rekisteröidä IANA:han. Yksityiset claims ovat mukautettuja kenttiä.
Miten varmennan JWT:n?
Pura header saadaksesi algoritmin, käytä sitten sopivaa avainta (jaettu salaisuus HMAC:lle, julkinen avain RSA/ECDSA:lle) allekirjoituksen varaamiseksi. Tarkista myös exp, iss ja aud.
Onko JWT:n luominen selaimessa turvallista?
Kyllä, tämä työkalu käyttää Web Crypto API:a. Avaimesi ja tokenisi eivät koskaan poistu selaimesta. Dataa ei lähetetä palvelimille.
Mikä on ero koodauksen ja allekirjoituksen välillä?
Koodaus (Base64) muuntaa tiedon vain siirrettävään muotoon ja kuka tahansa voi purkaa sen. Allekirjoitus luo kryptografisen tiivisteen, joka todistaa tokenia ei ole muutettu.
Voiko JWT:n salata?
Kyllä, JWE (JSON Web Encryption) salaa hyötykuorman sisällön. Standardi JWT (JWS) takaa vain eheyden, mutta hyötykuorma on kenen tahansa tokenin haltijan luettavissa.
Mitkä ovat JWT:n parhaat turvallisuuskäytännöt?
Aseta aina lyhyet vanhenemisajat. Käytä vahvoja satunnaisia salaisuuksia HMAC:lle. Säilytä yksityiset avaimet turvallisesti. Älä laita arkaluonteisia tietoja hyötykuormaan. Käytä HTTPS:ää tuotannossa.
Miten JWT vertautuu istuntopohjaiseen todennukseen?
JWT on tilaton — palvelin ei tallenna istuntotietoja, ihanteellinen mikropalveluille ja cross-domain-skenaarioille. Istunnot vaativat palvelinpuolen tallennuksen mutta mahdollistavat välittömän peruuttamisen.
Onko JWT sopiva uloskirjautumiseen ja istunnonhallintaan?
JWT on tilaton luonteeltaan, joten uloskirjautuminen vaatii lisämekanismeja kuten estolistoja tai lyhytikäisiä tokeneita refresh tokenien kanssa. Käytä lyhytikäisiä käyttötokeneita (esim. 15 minuuttia).
Miten refresh token -malli toimii JWT:n kanssa?
Käytä lyhytikäistä käyttötokenia (JWT) API-kutsuihin ja pidempää refresh tokenia uusien käyttötokenien hankkimiseen. Kun käyttötoken vanhenee, asiakas lähettää refresh tokenin saadakseen uuden JWT:n.
Mikä on "none"-algoritmi?
"None"-algoritmi tarkoittaa, että JWT:tä ei ole allekirjoitettu. Käytä vain testaukseen. Monet kirjastot poistavat sen käytöstä oletuksena.
Onko JWT:llä kokorajoituksia?
JWT:llä ei ole kiinteää kokorajoitusta, mutta koska se lähetetään HTTP-otsikoissa, sen pitäisi pysyä alle 4KB. Pidä hyötykuorma minimaalisena.