【问题标题】:How to migrate users from user service database to spring boot auth server database?如何将用户从用户服务数据库迁移到spring boot auth server数据库?
【发布时间】:2020-06-01 19:14:41
【问题描述】:
我正在构建一个基于微服务的 Spring Boot 应用程序。为了保护我的其余 API,我实现了 Spring Boot 授权服务器以向用户提供 oauth2 令牌。目前我在用户表下的主数据库中有用户。授权服务器正在其用户表下的授权数据库中对用户进行身份验证。我需要将所有用户从我的主数据库迁移到授权服务器数据库吗?还是我应该调用一个 API 来提供用户服务并对用户进行身份验证?
【问题讨论】:
标签:
spring-boot
oauth-2.0
microservices
access-token
spring-security-oauth2
【解决方案1】:
这取决于你的整体架构,但一般你不需要迁移用户,你可以通过调用存储这些用户的服务的API来检查用户的权限。
在我看来,这是将微服务划分为认证/授权微服务和用户信息存储微服务的首选方式,因为用户信息与认证/授权无关且连通性低,因此您可以轻松更改认证未来的 /authorization 微服务。
但也有相反的观点,赞成将身份验证/授权微服务和用户存储结合起来。这种方法的主要优点是管理和支持单个微服务的简单性。