在(仅)特定Web API控制器中支持多种类型的身份验证

时间:2015-02-24 18:49:49

标签: c# asp.net asp.net-web-api asp.net-web-api2 asp.net-web-api-routing

我对Web API很新,并且拥有一个现有的应用程序,默认情况下使用联合身份验证。

但是,我有一个特定的控制器,我想使用 默认的联合身份验证,或者第二种基本上使用HTTP头中发送的密码的方法。

我最初的谷歌搜索出现了这样的东西: http://blogs.msdn.com/b/hongmeig1/archive/2012/02/27/supporting-multiple-authentication-schemes-with-web-api.aspx

...但是这种方法(使用HTTP模块设置HttpContext.User)似乎对网站是通用的,而不是针对特定的控制器。

此外,我想知道自2012年撰写博客以来是否有更多现代方法可供使用。

任何人都可以帮我指出正确的方向吗?

编辑:在进一步挖掘中,似乎我想将OverrideAuthenticationAttribute与自定义身份验证过滤器结合使用: What OverrideAuthenticationAttribute is for?

...但是我试图找出最佳方法(保留默认值,同时还添加额外的auth选项)。

0 个答案:

没有答案