我在我的环境中部署了3个不同的应用程序(Resource Server),我的一个客户端需要访问所有这三个应用程序。什么是理想的做法?我应该单独向每个资源服务器注册我的客户端还是应该在所有资源服务器上注册相同的客户端?
如果我单独注册,那么我需要维护三个ClientId和Secret,但对于第二种情况,我只需要一个客户端凭证。
处理这种情况的理想方式是什么?是否有任何OAuth标准,他们已经保留了所有这些细节?
答案 0 :(得分:0)
假设资源服务器都与同一个授权服务器关联,您应该向该授权服务器注册一个客户端。
如果资源服务器都是同一安全域的一部分(即由同一方操作),那么单个访问令牌就足以访问所有3个资源服务器。
如果资源服务器以某种方式由不同方控制并且您希望避免泄漏它们之间的访问令牌,那么您应该为每个资源服务器使用1个访问令牌,将不同的范围关联到每个这些资源服务器并让您的客户端请求特别是通过"范围"请求参数。