【问题标题】:Suggestion for microservices security spring boot微服务安全spring boot的建议
【发布时间】:2022-01-03 18:37:42
【问题描述】:

我想用 spring boot 创建一个基于 微服务 的项目。我用 Zuul 实现了一个网关,现在不知道用什么来保证微服务之间的安全。我需要微服务在收到请求时了解用户的权限,而且它们可能相互通信,而不仅仅是网关。 我正在使用 spring boot 2.5.7 ,但似乎不推荐使用 oauth2,我还阅读了有关 spring 授权服务器的信息,但它是实验性的. 我应该用什么来保证安全,如果你有一些教程会很棒。

附: 这将有助于一个免费的解决方案,即使这意味着更多的实施。

谢谢。

【问题讨论】:

    标签: spring-boot oauth-2.0 microservices netflix-zuul


    【解决方案1】:

    一些精度:

    Spring Security OAuth2 已被弃用,因为 OAuth2 功能(授权服务器除外)已合并到 Spring Security 核心中。 关于 Spring 授权服务器,该项目不再是实验性的,请参阅发行说明:https://github.com/spring-projects/spring-authorization-server 您可以将其用作 oauth2 提供程序。

    这意味着,您可以使用 Spring Security Core 来保护您使用任何 OAuth2 提供程序(Google、Github、Keycloak 等)的微服务。选择权在你,现在你的需求如此普遍,找到解决方案并不难。

    【讨论】:

    • 但我读到 Spring 授权服务器将在 2022 年 5 月达到使用寿命,所以它会是一个长期的好解决方案吗?
    • 你在哪里读到的?如果你想要一个成熟的解决方案,你可以使用 Keycloak。
    • 在这里spring.io/blog/2021/11/08/… 但现在我明白我理解错了。意味着 2022 年 5 月之后我们应该迁移到 Spring 授权服务器。但我正在研究 keycloak 。谢谢你的回答。
    【解决方案2】:

    如果你只在网关层做你的安全呢?让你的微服务没有安全性?不确定是否符合您的要求。

    使用 AWS 网关 + cognito 检查这个例子,同样的想法:

    https://aws.amazon.com/blogs/startups/how-stacs-uses-cognito-and-api-gateway/

    【讨论】:

    • 感谢您的快速回答,这是一个有趣的观点,将对此进行研究。
    猜你喜欢
    • 2018-03-25
    • 2020-05-27
    • 2018-03-18
    • 2016-11-13
    • 2016-07-10
    • 2021-04-09
    • 2019-12-04
    • 2020-08-17
    • 2017-02-14
    相关资源
    最近更新 更多