1 思路分析
1.用户进入网关到网关过滤器 判断是否是登录 如果是登录就进入路由
2.登录成功,后台管理微服务签发JWT token信息返回给用户
3.用户再次进入网关开始访问,网关过滤器接受用户携带的token
4.网关过滤解析token,判断是否有权限,有则放行,如果没有返回未认证错误
2 系统微服务签发token
2.1 导入依赖:
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.9.0</version>
</dependency>
2.2 JwtUtil类(工具类直接copy拿去用)
package com.changgou.system.util;
import io.jsonwebtoken.JwtBuilder;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import java.util.Base64;
import java.util.Date;
/**
* JWT工具类
*/
public class JwtUtil {
//有效期为
public static final Long JWT_TTL = 3600000L;// 60 * 60 *1000 一个小时
//设置秘钥明文
public static final String JWT_KEY = "itcast";
/**
* 创建token
* @param id
* @param subject
* @param ttlMillis
* @return
*/
public static String createJWT(String id, String subject, Long ttlMillis) {
SignatureAl