在MVC应用程序中结合ASP.NET Membership auth和HTTP auth

时间:2016-08-03 22:04:55

标签: c# asp.net asp.net-membership http-authentication

我有一个现有的ASP.NET MVC 4.5应用程序,它通过.NET Membership对用户进行身份验证。我还想允许可选的基本HTTP身份验证代替成员资格,以供使用浏览器无法登录的DevOps类型脚本(缓存预热,测试等)使用。

理想情况下,用于HTTP身份验证的凭据与成员身份中的凭据相同,但它并不重要。唯一重要的是网站用户如果没有提供HTTP凭据,则不会提示他们。

1 个答案:

答案 0 :(得分:1)

一种方法是覆盖OnAuthorize的{​​{1}}方法,检查是否存在Authorization标头,如果找到,则提取并验证凭据,然后创建{{1 }} 用手。否则,调用AuthorizeAttribute以便发生通常的.NET成员资格。

源:

IPrincipal