认证:验证这个用户是谁
鉴权:用户有哪些资源权限(页面、按钮、超链接、接口、接口字段)
授权:为用户添加资源权限
方案:客户端Token(JWT)
流程:
1、用户登录发起认证请求,认证服务执行认证流程,返回用户token,token中包含用户信息和授权信息即资源权限;
2、客户端存储用户token,并向资源服务器发起请求,请求头携带token;
3、网关层校验Token的有效性,以及token中的授权是否授权此次请求(鉴权),鉴权通过转发请求到资源服务器;
授权:为用户添加资源权限(自己做页面),资源=url+响应字段 ,资源可以从请求的链接和返回的字段两个维度控制;
思考点:三方程序权限控制,需要再引入一个token,即客户端/渠道Token,为渠道分配clientKey/clientSecret,通过clientKey为渠道分配API接口的权限
网关的功能:认证鉴权、客户端授权、数据加密、签名校验、api mock、api限流、日志