索赔流程中的 OpenId Connect Permission/Authorization

OpenId Connect Permission/Authorization in Claims Flow

我们正在为我们的少数 SPA 和 WebAPI(我们拥有所有)使用隐式流的 SSO、身份验证和授权实现带有 MS.Identity 的 IdentityServer4。

对于隐式流,Id_Token 是我们放置额外 'claims.' Spec here.

的地方

access_token 不包含根据 this.

的自定义权限声明

Implicit Flow Spec is here.

问题:授予和删除权限的流程是什么?

Id_token 的撤销不符合规范。根据我对 OpenID Conenct 的理解,知道权限的令牌声明的效用似乎不再适用。

我是否遗漏了一个明显的内置规范解决方案,或者当权限发生变化时我们是否实施了某种重新发布Id_Token?

谢谢..

令牌不包含权限。它们包含有关客户和用户的身份数据。

https://leastprivilege.com/2016/12/16/identity-vs-permissions/

根据多米尼克的回答。

我将实施 Permission/Authorization 服务器和端点。

SPA 和 WebAPI 客户端可以通过身份验证调用它以获得权限。现在我们可以 return 我们需要的任何自定义权限对象。

在 access_token 中,我们将添加自定义 'Permission ETAG',这样如果用户的权限发生变化,每个客户端都知道获取新权限。

欢迎建设性批评..