我正在“学习”有关OAUTH2和OpenId提供的安全性的ASP.NET Web API的开发。所以我开始使用Web API模板。 Web API模板具有自己的“个人帐户”用户管理机制,可以通过/ Token发出令牌。但是,使用此机制获取Refresh Tokens有点棘手。
这让我想到,我是否真的希望通过使用IdentityServer来提供此功能。如果是这样,据我所知,因为我使用的是ASP.NET 4.7 / MVC5,而不是ASP.Core,那么我应该使用IdentityServer3而不是版本4。
此外,还有访问令牌和刷新令牌过期时所需的所有登录功能。
任何人都不可能明确地告诉您是否使用Identity Server。您需要自己做出决定,因为您最了解问题域。
如果您决定将身份验证卸载到中央权威提供程序(如Identity Server),那么我可以告诉您,没有硬依赖会强制您使用Identity Server 3或4,因为它们最终都符合oauth2 / oidc协议。如果您有能力托管.Net Core应用程序,那么我建议您使用Identity Server 4,因为该实现具有更高的可扩展性并提供极大的灵活性。