我是靠谱客的博主 阳光电话,最近开发中收集的这篇文章主要介绍java权限管理框架jwt_SpringBoot 整合JWT分布式权限控制,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Token校验可以使用拦截器或过滤器

一、JWT

1. Maven依赖

com.auth0

java-jwt

3.2.0

2. JWT工具类

package com.ruhuanxingyun.utils;

import com.auth0.jwt.JWT;

import com.auth0.jwt.algorithms.Algorithm;

import com.auth0.jwt.interfaces.DecodedJWT;

import com.ruhaunxingyun.commons.CommonConstant;

import java.io.UnsupportedEncodingException;

import java.util.Date;

/**

* @description: JWT工具类

* @author: ruphie

* @date: Create in 2019/12/20 17:29

* @company: ruhuanxingyun

*/

public class JwtUtils {

private final static String USERNAME = "username";

/**

* 生成token

*

* @param secret 密钥

* @param username 用户名

* @return token

*/

public static String sign(String secret, String username) throws UnsupportedEncodingException {

Date date = new Date(System.currentTimeMillis() + CommonConstant.EXPIRE_TIME);

Algorithm algorithm = Algorithm.HMAC256(secret);

String token = JWT.create()

.withClaim(USERNAME, username)

.withExpiresAt(date)

.sign(algorithm);

return token;

}

/**

* 根据token获取用户名

*

* @param token 令牌

* @return username

*/

public static String getUsername(String token) {

DecodedJWT decodedJWT = JWT.decode(token);

String username = decodedJWT.getClaim(USERNAME).asString();

return username;

}

/**

* 校验token

*

* @param secret 密钥

* @param username 用户名

* @param token token

* @return 是否合法

*/

public static boolean verify(String secret, String username, String token) {

try {

Algorithm algorithm = Algorithm.HMAC256(secret);

JWT.require(algorithm)

.withClaim(USERNAME, username)

.build()

.verify(token);

return true;

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

return false;

}

}

二、JJWT

简介:为了更友好在JVM上使用JWT,它是基本于JWT, JWS, JWE, JWK框架的Java实现。

1. Maven依赖

io.jsonwebtoken

jjwt-api

0.11.2

io.jsonwebtoken

jjwt-impl

0.11.2

runtime

io.jsonwebtoken

jjwt-jackson

0.11.2

runtime

最后

以上就是阳光电话为你收集整理的java权限管理框架jwt_SpringBoot 整合JWT分布式权限控制的全部内容,希望文章能够帮你解决java权限管理框架jwt_SpringBoot 整合JWT分布式权限控制所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部