Identity Server 4 没有可用于令牌的安全令牌验证器
Posted
技术标签:
【中文标题】Identity Server 4 没有可用于令牌的安全令牌验证器【英文标题】:Identity Server 4 No Security Token Validator available for token 【发布时间】:2018-03-08 13:41:52 【问题描述】:有人可以帮我解决这个问题。在过去的几周里,我一直在学习如何使用 Identity Server 4 以及如何通过使用 Id4 作为单独的应用程序、angular 4 作为客户端(单独的应用程序)和 asp.net core api 作为第三个应用程序来实现隐式流。
我设法从 id4 服务器发出 id 和访问令牌,当我想调用 api 时将访问令牌添加到授权标头中。但是我收到 No SecurityTokenValidator available for token 作为错误。
那么我做错了什么?
我正在使用 In Memory 测试数据和 AddDeveloperSigningCredential:
在 api 方面,我得到了这个:
我在 api 端使用 UseJwtBearerAuthentication 中间件:
提前致谢。
【问题讨论】:
【参考方案1】:我最后解决了这个问题。我将 asp.net core 更新到第 2 版,并在 Api 项目的 Startup 类中添加了新的 AspNetCore Authentication JwtBearer 中间件,现在一切正常。
我将附上我的 api 项目的 Startup 类,也许它可以帮助某人。
【讨论】:
以上是关于Identity Server 4 没有可用于令牌的安全令牌验证器的主要内容,如果未能解决你的问题,请参考以下文章
JWT 不记名令牌不适用于 ASP.Net Core 3.1 + Identity Server 4
有没有办法撤销另一个用户的访问令牌并结束他们在 Identity Server 4 中的会话?
访问令牌不包括 Identity Server 4 中声明的范围
如何在 Thinktecture Identity Server 中加密 JWT 令牌?