撤销 IdentityServer4 中特定会话的访问令牌(参考)

2024-02-27

我在用IdentityServer 4带有参考标记的隐式流程。 我自己做了一个实现IPersistedGrantStore https://github.com/IdentityServer/IdentityServer4/blob/release/src/IdentityServer4/Stores/IPersistedGrantStore.cs它将拨款存储在 MSSQL 数据库中,效果很好。

现在我想撤销用户从前端注销时的引用令牌。因为我不想从前端调用撤销端点,所以我想在AccountController.Logout(string logoutId)IdentityServer 中的方法(这也涵盖了从 swagger ui 注销)。

所以我注射了IIdentityServer交互服务 https://github.com/IdentityServer/IdentityServer4/blob/release/src/IdentityServer4/Services/Interfaces/IIdentityServerInteractionService.cs到 AccountController 中,但是当我打电话时

await _interaction.RevokeTokensForCurrentSessionAsync();

in the LogOut-Method它撤销当前 subjectid/user 和 clientid 的所有令牌(该方法IPersistedGrantStore.RemoveAllAsync(string subjectId, string clientId)叫做)。

但我只想撤销一个特定会话的令牌(该方法称为 RevokeTokensForCurrentSession毕竟异步)已被注销。

另一种方法是调用TokenRevocationClient.RevokeAsync为此我需要确切的令牌才能通过。但在AccountController.LogOut我 仅具有 logoutid 和 LogoutRequest (也不包含实际令牌)。

那么隐式撤销的最佳解决方案是什么specific用户注销时访问(引用)令牌?

提前致谢...


None

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

撤销 IdentityServer4 中特定会话的访问令牌(参考) 的相关文章

随机推荐

  • 骆驼工作单元

    我试图理解骆驼中的工作单元概念 我有一个简单的问题希望这里有人可以提供帮助 例如 如果路由交换涉及多个路由 from aws sqs Q1 to direct processMe route1 from direct processMe t
  • 如何指定网页的语言,以便 Google Chrome 不提供翻译功能

    我有一个 Google Chrome 坚持认为是法语的页面 这是它的快照 http yootles com outbox overcleverchrome html http yootles com outbox overcleverchr
  • 发送带有纯文本后备的 HTML 新闻通讯

    我目前正在使用一个脚本 该脚本使用 file get contents 来获取 php 文件的内容 然后将其通过电子邮件发送给客户列表 我想更改脚本以允许纯文本回退 以降低被标记为垃圾邮件的风险 这是我目前的脚本 function send
  • Create-React-App 中的启动屏幕

    我正在使用 create react app 来设计 PWA 应用程序提供的默认启动屏幕是一个图标 位于屏幕中间 以及该图标下方的应用程序名称 图标和名称必须在清单文件中提供 问题 有没有什么方法可以自定义启动画面而不是使用默认的启动画面
  • 为什么 scikit-learn 的最近邻似乎没有返回正确的余弦相似距离?

    我正在尝试使用 scikit 的最近邻实现从随机值矩阵中查找与给定列向量最接近的列向量 该代码应该找到第 21 列的最近邻居 然后检查这些邻居与第 21 列的实际余弦相似度 from sklearn neighbors import Nea
  • T-SQL 根据列值的变化递增计数器

    我有如下示例表 该表按未显示的另一列排序 我需要根据值列中的任何变化来增加计数器列值 请参阅下面的示例 如何在 T SQL SQL Server 2014 中完成此操作 ID Value 1 3 2 3 3 2 4 2 5 2 6 3 7
  • 数据触发器未触发

    我有以下 xaml
  • 如何在不同平台有不同的Header? [复制]

    这个问题在这里已经有答案了 我对 C 还很陌生 我有一个必须在 Linux 和 Windows 中构建的文件 我想知道是否有一种方法可以在 Windows 和 Linux 的同一个文件中拥有不同的 include 列表 但不知何故我告诉它这
  • 如何在一个布局中实现多个recyclerview?

    我想创建一个窗格 其中有两个RecyclerViews 假设 MyItems AllItems 我创建了垂直LinearLayout 其中有TextView作为标题和RecyclerView 像这样的东西
  • 在 Visual Studio Webtest 中插入 120 秒等待

    我想在两个 Web 请求的执行之间添加 120 秒的延迟 我尝试过使用思考时间 但它不会暂停执行 120 秒 谁能告诉我如何添加等待以暂停执行 120 秒 在执行 2 个 Web 请求之后 然后继续执行下一个请求 我正在使用 Visual
  • ImportError:无法导入名称 celery

    我正在尝试使用 Celery Redis Flask 运行一些后台作业 我的应用程序结构是 myapp celery worker py manage py myapp init py app py bot init py tasks py
  • 使无边框窗口具有较暗较大的阴影

    当无边框窗口中的窗口变为活动状态时 如何创建更暗和更大的阴影 我对 NSWindow 进行了子类化 我的窗口成为主窗口和关键窗口 但这没有帮助 阴影仍然很小 那么也许有人知道如何解决这个问题 我也尝试过使阴影无效 但这也没有帮助 NSWin
  • 使用 SQL 中的结果计算每天的总数

    我的订单表中有 50 行 条目 我有一个列 当订单被认领时保存 名为claimed at 该字段中的日期格式如下 2011 10 03 07 07 33 格式为 yy mm dd 时间 我还有一个专栏叫price this price是他们
  • Loopback.io 的 ACL 问题

    我目前正在评估用于开发新项目的 API 部分的 Loopback io 但在设置正确的 ACL 条目时遇到问题 我希望完成的是给定一个身份验证令牌 GET 端点应该只返回用户拥有的对象 例如 对 Shows access token xxx
  • 什么是“SQLiteDatabase 创建且从未关闭”错误?

    我已经在我的适配器类中关闭了数据库 那么为什么这个错误显示在 logcat 上 但我的应用程序不强制关闭 但只有错误显示在 log cat 上 我应该关闭数据库以忽略此错误 我的错误是 下面 我离开哪个类来关闭数据库 我从此链接获取帮助ht
  • C#,求一个数的最大素因数

    我是编程新手 正在练习我的 C 编程技能 我的应用程序旨在查找用户输入的数字的最大素因数 但我的应用程序没有返回正确的答案 我真的不知道问题出在哪里 你能帮我么 using System using System Collections G
  • 从 Action Script 到 C# 的 Rijndael 加密

    我正在尝试在 Action Script 和 C 之间共享加密 我的任务是在 C 中解密以下消息 f1ca22a365ba54c005c3eb599d84b19c354d26dcf475ab4be775b991ac97884791017b1
  • UUID 转换为无符号整数

    有没有地方可以将 UUID 压缩 转换 编码 加密为无符号整数 我从 sql 表中读取 UUID 历史记录很难看 我无法更改 我只有一个 unsigned int 来存储它 这是 C 以防产生影响 对此有什么想法吗 谢谢 礼萨 正如其他人所
  • 在两个容器之间共享/tmp

    我在用着docker compose生成两个容器 我想分享 tmp这两个容器之间的目录 但不与主机 tmp如果可能的话 这是因为我正在通过上传一些文件flask to tmp并想要处理这些文件celery flask build comma
  • 撤销 IdentityServer4 中特定会话的访问令牌(参考)

    我在用IdentityServer 4带有参考标记的隐式流程 我自己做了一个实现IPersistedGrantStore https github com IdentityServer IdentityServer4 blob releas