这种微服务架构可以用 Spring Framework 实现吗?

问题描述 投票:0回答:1

我正在使用 Spring Boot,并且希望将多个应用程序架构为仅使用一个仅用于安全目的的微服务。

这种做法可行吗?如果是,spring security 是否有任何设置来使用第三方 spring-security 服务?

我有:

  • 1 个后端,与其他后端通信并可以使用安全微服务

    • 可以使用安全微服务功能(例如验证/创建令牌)

    • 可以询问使用backend2服务的用户列表

  • 1 个后端,与其他后端通信并可以使用安全微服务和数据库

    • 可以使用安全微服务功能(例如验证/创建令牌)

    • 可以查询数据库

  • 1 个安全微服务,可以与调用他的人进行对话并拥有有效的令牌

    • 将在执行任何工作之前验证调用该服务的人员的令牌

    • 可以按需验证/创建/失效代币

  • 1 个数据库

    • 是一个数据库

请参阅下图以了解解释的工作流程和我想要完成的任务

号码是通话顺序

左侧是经过身份验证的工作流程,右侧是未经身份验证的

spring spring-boot security spring-security architecture
1个回答
0
投票

是的,在 Spring Security 中这是可能的。 您可以创建微服务作为授权服务器,将其他服务创建为资源服务器。 创建资源服务器this将会很有帮助。 对于授权服务器,您可以将 spring 服务配置为授权服务器,也可以使用第三方 SSO,如 Keycloak 或 Okta。要将 spring 服务配置为授权服务器,您可以利用

spring-boot-starter-oauth2-authorization-server
库。 这个入门指南将有助于配置它。

© www.soinside.com 2019 - 2024. All rights reserved.