首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Spring的微服务的安全性问题

使用Spring的微服务的安全性问题
EN

Stack Overflow用户
提问于 2017-10-06 16:54:15
回答 3查看 1.9K关注 0票数 4

在spring (和一般的)微服务中,我误解了安全性。我想使用Spring框架和微服务构建一个项目,但是在架构规划中我坚持下来了。微服务的安全性应该是什么呢?在我看来,在所有项目中都应该是一个组件,所有请求都会抛出组件并扩展到其他组件。我能找到的是Spring,它是微服务中的api网关,我想要做一个针对网关的响应项目,并在组件中添加安全性。我的意思是,它将类似于一个包含Spring、Security、Spring依赖项的项目。你认为提供安全的好方法是什么?有可能建造这样的东西吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-10-06 21:14:58

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

  • 在单个路由级别Zuul上的安全性。
  • 每个内部服务的安全性

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

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

Stack Overflow用户

发布于 2017-10-06 20:16:17

我认为这里的答案可能会对您有所帮助,他们正在讨论使用防火墙来限制来自出站IP的访问,并且只允许zuul网关访问所有的微服务。

Don't allow direct calls to Microservices. Only allow through API Gateway

票数 2
EN

Stack Overflow用户

发布于 2017-10-06 21:21:56

我认为您可以考虑使用OAuth。它使用JWT(Jason令牌),它是与所有请求/响应一起传递的令牌。您可以在这里找到详细信息:https://nordicapis.com/api-security-oauth-openid-connect-depth/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46610519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档