IdentityServer3 - 在令牌内添加令牌以获取自定义授权类型(act-as schema)

时间:2016-10-27 00:45:19

标签: oauth-2.0 access-token identityserver3 openid-connect

我需要在令牌中添加一个令牌,用于" act-as" IdentityServer3中自定义授权类型的架构。 我尝试使用PreserveAccessToken,但它只是将令牌添加为当前ClaimsPrincipal中的声明,但是当获取另一个令牌传递给下一个服务/ api时,无法找到将其嵌套为声明的方法在链中。

这背后的想法是能够对从最终用户到最后一个服务/ api的所有跃点进行审计。

1 个答案:

答案 0 :(得分:1)

这可以使用自定义授权来实现。这允许使用自定义"操作"扩展令牌端点。 - 例如发布包含委托声明的令牌 - 例如一个令牌。

文档在这里:https://identityserver.github.io/Documentation/docsv2/advanced/customGrantTypes.html

此处还有一个接近您的方案的示例:https://github.com/IdentityServer/IdentityServer3.Samples/tree/master/source/Multi%20Hop%20Delegation%20(ActAsCustomGrant)

表示 - 这可能是在多个跃点上传达用户ID的最昂贵方式。

如果后端系统之间存在受信任的子系统,则只需将所需数据作为有效负载进行传输就会简单得多,速度也快得多。