是否可以使用在.net核心上运行的Identity Server 4和在.net 4.5.1上运行的WebApi应用程序?

And*_*ykh 4 .net c# identityserver4

请考虑以下情形.您有一个使用asp.net webapi实现api的应用程序.

您正在设置新的Identity Server 4以与基础结构一起使用.您需要api才能使用Identity Server.

如果是IdentityServer 3,则使用IdentityServer3.AccessTokenValidation.

如果您的api在.net核心上,您将使用IdentityServer4.AccessTokenValidation

但鉴于你的api使用旧式的asp.net webapi,甚至不是owin,而你的Identity Server基于.net核心,你有没有选择让它们一起工作?

Lut*_*ndo 6

是的,这很好.IdentityServer3和IdentityServer4只是符合相同协议的实现.同样适用于TokenValidation中间件.

您可以使用AspNetCore API IdentityServer4.AccessTokenValidation来验证来自IdentityServer3 WebApi项目的令牌.相反,您可以使用Asp.Net 4.x WebApi IdentityServer3.AccessTokenValidation来验证来自IdentityServer4 AspNetCore项目的令牌.实际上,只要提供程序按照规范实现OpenIDConnect,就可以对任何语言/框架中构建的任何API使用任何大多数OpenIDConnect提供程序.