Spring Boot中微服务的安全性问题

戴夫:

我在春季启动(以及常规)中对微服务的安全性有误解。我想使用Spring框架和微服务来构建项目,但是在体系结构规划中我坚持了下来。微服务的安全性到底应该如何?我认为,在所有项目中,所有项目都应该是一个组件,将所有请求都扔给该组件并传播到其他组件。我能找到的是Spring Cloud Zuul,它是微服务中的api网关,我想到了一个项目,该项目是对网关的响应,同时也增加了组件的安全性。我的意思是,这将像一个包含Spring Cloud Zuul,Spring Security,Spring Data JPA依赖项的项目。您如何看待提供安全性的好方法?是否有可能建立类似的东西?

因陀罗·巴萨克(Indra Basak):

在我参与的项目中,我们在两个不同级别使用了安全性:

  • 安全在个别航线水平Zuul
  • 每个内部服务的安全性

这是我们的Spring Cloud项目中使用的安全模型的流程图,

  1. Zuul收到请求时,将检查该请求是否存在路由。
  2. 如果存在路由,请根据自定义配置检查路由是否安全。
  3. 如果路由是安全的,则对请求进行身份验证。
  4. 在Zuul对请求进行身份验证后,Zuul会再次根据配置检查是否将请求路由到的内部服务安全。
  5. 如果内部服务受保护,则在将服务路由到内部服务之前,基于用户凭据(存储在自定义配置中)创建一个新的Authentication标头。
  6. 内部服务一旦收到来自Zuul的请求,就会检查是否需要对请求进行身份验证。
  7. 身份验证后,将处理请求并将响应发送回去。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章