IdentityServer4 客户端范围和基于用户声明的授权
IdentityServer4 Client Scopes and User Claims based authorization
我有一个用于 authentication/authorization 的 IdentityServer4,我对如何实现以下目标有点困惑:
如果我让我们说 2 个客户端,他们正在尝试访问 2 个 API(每个客户端可以访问其中一个),但是我有不同权限的用户(用户 1 可以首先访问 API, user2 可以访问第二个 API, user3 可以访问两个)
当应该有权访问两个 APIs 的用户 3 使用第一个客户端登录时(客户端只请求 api1 范围),我将如何向他提供一个令牌,允许他访问两个 APIs(范围),所以他不应该在使用第二个客户端时再次登录?
我已经阅读了很多关于用户声明和客户范围的讨论,但对于如何使用它们来验证上述案例,我仍然没有明确的答案。
客户端需要请求两个范围,或者您需要一个可以访问两个 api 的范围。
范围已授予客户端,除非客户端请求两个范围,否则您的 ID 无法知道 user3 应该可以访问这两个范围。
我有一个用于 authentication/authorization 的 IdentityServer4,我对如何实现以下目标有点困惑:
如果我让我们说 2 个客户端,他们正在尝试访问 2 个 API(每个客户端可以访问其中一个),但是我有不同权限的用户(用户 1 可以首先访问 API, user2 可以访问第二个 API, user3 可以访问两个)
当应该有权访问两个 APIs 的用户 3 使用第一个客户端登录时(客户端只请求 api1 范围),我将如何向他提供一个令牌,允许他访问两个 APIs(范围),所以他不应该在使用第二个客户端时再次登录?
我已经阅读了很多关于用户声明和客户范围的讨论,但对于如何使用它们来验证上述案例,我仍然没有明确的答案。
客户端需要请求两个范围,或者您需要一个可以访问两个 api 的范围。
范围已授予客户端,除非客户端请求两个范围,否则您的 ID 无法知道 user3 应该可以访问这两个范围。