Notieren Sie sich die Einführung von JWT mithilfe der Java-Bibliothek.
――Der ganze Token sieht so aus
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhdXRoMCJ9.izVguZPRsBQ5Rqw6dhMvcIwy8_9lQnrO3vpxGwPCuzs
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9
--Wenn Sie den Header dekodieren
{"typ":"JWT","alg":"HS256"}
eyJpc3MiOiJhdXRoMCJ9
--Wenn Sie Payload dekodieren
{"iss":"auth0"}
--Umgebung - java8 --java-jwt (Java-Bibliothek, die JWT verarbeitet, die auch auf jwt.io veröffentlicht wird)
try {
Date expireTime = new Date();
expireTime.setTime(expireTime.getTime() + 600000l);
Algorithm algorithm = Algorithm.HMAC256("secret");
String token = JWT.create()
.withIssuer("auth0")
.withExpiresAt(expireTime)
.sign(algorithm);
} catch (JWTCreationException exception){
//Invalid Signing configuration / Couldn't convert Claims.
}
--Token Überprüfung
String token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhdXRoMCJ9.izVguZPRsBQ5Rqw6dhMvcIwy8_9lQnrO3vpxGwPCuzs";
try {
Algorithm algorithm = Algorithm.HMAC256("secret");
JWTVerifier verifier = JWT.require(algorithm)
.withIssuer("auth0")
.build(); //Reusable verifier instance
DecodedJWT jwt = verifier.verify(token);
} catch (JWTVerificationException exception){
//Invalid signature/claims
}
Recommended Posts