实录分享 | 微服务访问安全设计方案全探索

我们首先从传统单体应用架构下的访问安全设计说起,然后分析现代微服务架构下,访问安全涉及的原则,接着讨论目前常用的几种微服务架构下的访问安全设计方案。最后,详析Spring Cloud微服务架构下如何解决访问安全的问题。一、传统单体应用的访问安全设计

上面的示意图展示了单体应用的访问逻辑。用户通过客户端发出http或者https请求,经过负载均衡后,单体应用收到请求。接着经过auth层,进行身份验证和权限批准,这里,一般会有跟后端数据库的交互。通过后,将请求分发到对应的功能逻辑层中去。完成相关操作后,返回结果给客户端。传统单体应用的访问安全设计——原则
从以上分析可以看到,传统单体应用的访问安全设计原则为:
第一,每次的用户请求都需要验证是否安全,这里可以分两种情况:
一种是没有session的请求,需要经过几个步骤完成session化。一般为验证当前用户的credential,获取当前用户的identity,这两步都需要访问数据库等持久化对象来完成,最后一步是为当前可用创建session,返回给客户端后,启用该session。
另一种是有session的请求,只需验证请求中当前session的有效性,即可继续请求。
第二,用户的操作请求都在后端单个进程中执行完成,完全依赖后端调用方法的可靠性。一旦出错,应用是无法再次重复请求。
原文链接:https://segmentfault.com/a/1190000006785852

0 个评论

要回复文章请先登录注册