我们正在考虑在我们的微服务之间使用oauth身份验证。 即使身份验证服务器已关闭,这些服务仍将继续工作非常重要。
在我的方案中,AuthorizationServer不应该是多余的吗?
我们正在使用自己的AuthorizationServer(基于https://github.com/spring-cloud-samples/authserver.git) (并使用最新稳定的弹簧云/弹簧启动apis)
我找不到任何关于使用第二个AuthorizationServer的文档,因此当第一个AuthorizationServer关闭时,微服务会继续工作。谁能解释一下如何做到这一点?
答案 0 :(得分:1)
您的问题并非特定于OAuth或授权服务器,而是适用于所有需要高可用性的应用程序。
常见的解决方案是在授权服务器前部署负载均衡器。它将接受所有传入的请求,并使用例如任何可用的服务器发送它。循环负载均衡算法。
答案 1 :(得分:0)
您可以使用像Keycloak服务器这样的产品,它可以为您提供高可用性。创建的令牌存储在中央数据库中,如果一个Auth服务器关闭,另一个Auth服务器可以为客户端提供服务。这也可以为您提供SSO功能。