我们知道Jwt是实现登陆认证的一个标准化的Api,它是基于token实现的,那么让我们先来看看token的原理:
通俗点来讲,token其实就是一个令牌(也可以理解成一个钥匙),那么token的基本工作流程是什么呢,如下图所示:
下面用文字叙述一下其主要过程:
- 客户端向API网关发起认证请求,请求中一般会携带终端用户的用户名和密码;
- API网关将请求直接转发给后端服务;
- 后端服务读取请求中的验证信息(比如用户名、密码)进行验证,验证通过后使用私钥生成标准的token,返回给API网关;
- API网关将携带token的应答返回给客户端,客户端需要将这个token缓存到本地;
- 客户端向API网关发送业务请求,请求中携带token;
- API网关使用用户设定的公钥对请求中的token进行验证,验证通过后,将请求透传给后端服务;
- 后端服务进行业务处理后应答;
- API网关将业务应答返回给客户端。、
以上就是整个token的工作流程。