向 ASP.NET WebApi 2.2 添加身份验证

Posted

技术标签:

【中文标题】向 ASP.NET WebApi 2.2 添加身份验证【英文标题】:Add Authentication to ASP.NET WebApi 2.2 【发布时间】:2014-11-28 12:12:17 【问题描述】:

我创建了一个 WebApi 2.2 项目(来自一个空的新 ASP.NET 项目)来证明一些实现概念,现在我想向它添加身份验证。

我注意到在新的 WebApi 应用上添加身份验证的唯一方法是使用其中一个(在我的例子中是 VS 2013)模板。

是否有一种可靠的方法可以将身份验证添加到已经存在的 WebApi 2.2 应用程序?

我只想使用不记名令牌,如果这对我可能收到的任何答案有影响的话。

【问题讨论】:

有几种方法可以将身份验证添加到现有项目。例如,您可以使用过滤器,可能与属性结合使用,可以是内置的也可以是自定义的。您也可以使用 DelegatingHandler,尽管这可能不是一个好主意。 【参考方案1】:

是的,您可以从头开始添加不记名身份验证,我不是 VS 2013 模板的忠实粉丝,因为它们混合了 cookie 和令牌身份验证。您可以查看我的detailed blog post,了解如何仅将不记名令牌添加到新的或现有的 Web API 项目。如果您需要进一步的帮助,请告诉我。

【讨论】:

那是一篇很棒的帖子,但为了后代,您能否在您的答案中添加一个快速摘要? meta.stackexchange.com/a/8259 确实——如果你不使用 Angular,只使用普通的 javascript 怎么办?

以上是关于向 ASP.NET WebApi 2.2 添加身份验证的主要内容,如果未能解决你的问题,请参考以下文章

选择 webApi 模板时如何将 ASP.Net 身份添加到 Asp.Net Core?

向经典 ASP.NET Web 窗体应用和 Web API 应用添加共享身份验证

如何将 AzureAD 和 AzureADBearer 添加到 asp.net core 2.2 web api

具有混合身份验证 JWT 和 SAML 的 ASP.NET Web API 2.2 OWIN

ASP.NET Core 2.2 JWT 身份验证

ASP.NET Core 2.2 中的 Azure AD 身份验证