在旧的 .net 4.6.2 项目中使用 IdentityServer4.AccessTokenValidation

Posted

技术标签:

【中文标题】在旧的 .net 4.6.2 项目中使用 IdentityServer4.AccessTokenValidation【英文标题】:using IdentityServer4.AccessTokenValidation in a legacy .net 4.6.2 project 【发布时间】:2018-11-10 14:40:28 【问题描述】:

我正在尝试设置 IdentityServer4 来验证针对 .net 框架 => 4.6.2 运行的 webforms 项目,这是一个带有 XML SOAP WCF 服务的单页 WCF REST 应用程序(也是 => 4.6.2)。

单页应用程序使用来自客户端的不记名令牌。这在使用 nuget 包 IdentityServer3.AccessTokenValidation 时有效,但将 IdentityModel 的版本限制为

如果是这样,将来无法将 IdentityModel 包更新到版本 2 及更高版本会有多大问题?

我一直在寻找这个找不到明显的解决方案。我是否错过了一些简单的事情或误解了我应该如何在 OWIN 中使用来自 oidc js 客户端的不记名令牌?

我能找到的唯一答案是使用 IdentityServer3.AccessTokenValidation 而不是 4,但我担心对 IdentityModel 类的限制可能会在未来引起问题。

任何帮助将不胜感激。

谢谢

保罗

【问题讨论】:

【参考方案1】:

您可以使用社区维护的IdentityServer3.Contrib.AccessTokenValidation NuGet 包。这个包将使用 IdentityModel > 3 这应该可以解决您的问题。

【讨论】:

以上是关于在旧的 .net 4.6.2 项目中使用 IdentityServer4.AccessTokenValidation的主要内容,如果未能解决你的问题,请参考以下文章

如何在旧的 AFNetworking 中使用 AFNetworking 2.0+?

在旧的 Ant 项目中添加 Ivy

防止软件包安装在旧的 Python 版本上

如何在旧的反应组件中使用上下文?

如何在旧的 MinMaxScaler 上重新调整新数据库? [复制]

在旧版 ASP.NET 网站项目中,我应该在哪里定义 MembershipValidatePasswordEventHandler?