在 Identity Server 4 中使用引用令牌传递附加数据

2023-12-14

我在身份服务器上使用引用令牌,并希望将一些附加数据传递给客户端。

我知道如何通过在我的配置文件服务中设置声明来使用 JWT 执行此操作,但我找不到使用引用令牌执行类似操作的方法。理想情况下,我想将我的数据作为令牌 json 结果中的额外参数传递,如下所示:

{
    "access_token": "...",
    "expires_in": 3600,
    "token_type": "Bearer",
    "scope": "api1",
    "custom_property": "custom value"
}

您可以实施(并注册)ICustomTokenRequestValidator可以帮助添加自定义响应参数的接口:

public class DefaultClientClaimsAdder : ICustomTokenRequestValidator
{
    public Task ValidateAsync(CustomTokenRequestValidationContext context)
    {
        context.Result.CustomResponse = new Dictionary<string, object>
        {
            {"hello", "world" }
        };

        return Task.FromResult(0);
    }
}

将其注册在Startup.cs在身份服务器应用程序中:

services.AddTransient<ICustomTokenRequestValidator, DefaultClientClaimsAdder>();

自定义属性将包含在令牌响应中:

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Identity Server 4 中使用引用令牌传递附加数据 的相关文章

随机推荐

  • 意图自定义权限不起作用

    UPDATE 我迫在眉睫的问题按照我下面的回答得到了解决 我的环境 PC 设备 不允许在 DEBUG 版本中自定义权限 我确信几周前我能够正常运行 DEBUG 构建 因此描述了 间歇性 错误 UPDATE 2 代码在不同开发人员的机器上同步
  • 在Python中使用递归将整数转换为base-x系统

    我正在尝试编写一个递归代码 可以将数字转换为任何基本系统 例如 整数 10 转换为二进制将转换为 1010 到目前为止 我已经有了这个 但我的输出之间有 无 谁能帮我修改我的代码吗 def convert a b add a b if a
  • 如何在 U-SQL 中实现循环

    无需使用 C 即可在 U SQL 中实现循环 while for 如果没有 任何人都可以共享 c 语法来在 u sql 中实现循环 我正在提取从特定日期到某个日期的文件 但现在我通过手动写入文件路径来提取该文件 DROP VIEW IF E
  • 我想从 Windows MDI 子窗体中删除图标

    图标也存在同样的问题 我对你的回答感到满意 即 seticon 属性为 false 但我的窗体是 MDI 窗体的子窗体 那么这个问题仍然是图标未删除 你能帮助我吗 是的 这是 Windows MDI 实现的一个 功能 设计指南要求子窗体有一
  • 玩具图聚类中“ufactor”的解释

    我正在尝试通过 METIS 进行不平衡分区 我不需要每个簇中有相同数量的顶点 METIS 中默认这样做 我的图没有约束 它是一个无向未加权图 这是一个由 METIS 聚类的示例玩具图 没有ufactor范围 然后 我尝试用不同的ufacto
  • 如何在 Android 上的 ArrayList 中的每个元素末尾添加逗号

    在我的应用程序中我想使用这个Library用于表演ArrayList items 我来自服务器的 ArrayList genres Action Comedy Family 我为显示项目编写了以下代码 private String most
  • 如何在 C# 中将对象数组向上转换为另一种类型的对象数组?

    我想将对象数组向上转换为不同对象类型的不同数组 如下所示 对象 对象 假设它非空 CLassA newObjects 对象为 ClassA 假设 ClassA 的对象是有效的向上转型 除了单独向上转换每个元素之外 还有其他方法吗 As 这个
  • 如何使 django 表单验证动态化?

    我有一个表单需要有一个有效的 url 或一个有效的文件才能上传 class ResourceUpload ModelForm uploadedfile forms FileField file url address forms URLFi
  • 计算给定列中的增量差异

    我正在搜索网络和 stackoverflow 但没有找到答案 所以请帮助我 我仍在学习和阅读 但我还没有正确思考 没有 IF 和 FOR 循环来做事 我有表1 id date state on date year quantity 1 30
  • 在 VSCode 主题中自定义块引用颜色

    我在用诺德主题在 VScode 中 Markdown 文件中的块引号看起来像这样 非常难以辨认 如何更改文字背景 我已在 用户设置 中尝试了以下操作 但它不起作用 workbench colorCustomizations textBloc
  • C# Unicode 字符串输出

    我有一个将字符串转换为 Unicode 字符串的函数 private string UnicodeString string text return Encoding UTF8 GetString Encoding ASCII GetByt
  • C 问题 - 无法弄清楚如何将指针分配给列表的开头

    我有一个教授要我们做的简单作业 基本上是从文本文件中提取一些数字并加载到链接列表中 我不想谈太多细节 但我有一个基本问题 他为我们提供了这样的功能 INTLIST init intlist int n INTLIST lst lst INT
  • FXML 变量未绑定

    我的 FXML 注入出现问题 据我所知 我已经设置了我的程序 但似乎我遗漏了一些东西 我的代码如下 Main package application import javafx application Application import
  • .Net 将命名空间添加到 XML 文档作为默认值并带有前缀

    当使用 XMLSerializer 在 vb net 中创建类 oXML 的序列化 XML 字符串时 如下所示 Dim x As New Xml Serialization XmlSerializer oXML GetType urn oe
  • 如何为列设置列切换表小部件的默认值?

    我一直在研究 jQuery Mobile 的 Table Widget 有没有一种方法可以通过此小部件从表头名称设置列的显示隐藏状态 如果没有这样的方法 那么解决这个问题的最佳方案是什么 jQM 不提供盒子外面因此 你必须通过JS来解决这个
  • ASP.NET MVC 编辑操作中与 RowVersion 的并发

    我想为我们的问题跟踪应用程序做一个简单的编辑表单 为简单起见 HttpGet Edit 操作如下所示 Issues Edit 12 public ActionResult Edit int id var thisIssue edmx Iss
  • 在android中实现关键字

    在 Android 中我看到这样的代码 public class Now extends Activity implements View OnClickListener 这在java中合法吗 View OnClickListener 到底
  • 需要 #define 来包含安全字符串函数的 Visual Studio 版本(以避免 _CRT_SECURE_NO_DEPRECATE)

    不久前 我尝试使用 Visual Studio 2010 编译一个 MFC 程序 该程序使用了我在 Visual Studio 2003 中编写的库 毫不奇怪 我收到了一堆关于弃用和使用各种字符串函数的安全版本的警告 然后我更新了库中的相关
  • 获取对话框中的文本

    我可以使用什么 Windows API 函数来获取对话框中的文本 例如 如果我有handle错误消息对话框 如何获取显示的错误消息 如果我正确理解你的问题 你的问题就很简单了 打开Spy 来自视觉工作室Tools菜单 然后按Ctrl F接收
  • 在 Identity Server 4 中使用引用令牌传递附加数据

    我在身份服务器上使用引用令牌 并希望将一些附加数据传递给客户端 我知道如何通过在我的配置文件服务中设置声明来使用 JWT 执行此操作 但我找不到使用引用令牌执行类似操作的方法 理想情况下 我想将我的数据作为令牌 json 结果中的额外参数传