如何快速接入统一的认证鉴权体系

1. 异构系统带来的认证鉴权问题

如上图,无论是对于商业、自研、开源的软件,我们都可以通过七层网关统一认证鉴权。下面是访问流程:

  • 四层网关卸载证书。首先是 ELB 卸载 HTTPS 证书,统一接管用户的域名流量。当然,如果想限制访问来源,你还可以进行 IP 白名单限制。
  • 七层网关路由。七层网关会对每一个 http 进行鉴权,获取用于认证的字段,这些字段可以是 Header 中的 JWT Token,也可以是整个 Cookie。对于没有通过 forward-auth 认证检测的请求,将会直接被拒绝。
  • 进入业务系统。此时的用户已经完成了认证,但是缺少鉴权。如果是商业或者开源软件,可以通过 LDAP、Basic 二次认证之后,再获取角色权限。如果是自研的系统,可以在中间件中写鉴权逻辑,拿到用户 ID,请求统一的鉴权中心进行鉴权。