Asp.net mvc Net MVC基本身份验证

Asp.net mvc Net MVC基本身份验证,asp.net-mvc,authentication,Asp.net Mvc,Authentication,我的应用程序需要两种登录机制,一种是在windows安全对话框中提供凭据的基本身份验证,另一种是伪造基本身份验证,即加密的用户名,密码在querystring中作为url的一部分发送 我创建了一个自定义模块,如下所示 public class mymodule:IhttpModule { public void OnApplicationAuthenticateRequest(object sender, EventArgs e) { var context = ((Htt

我的应用程序需要两种登录机制,一种是在windows安全对话框中提供凭据的基本身份验证,另一种是伪造基本身份验证,即加密的用户名,密码在querystring中作为url的一部分发送 我创建了一个自定义模块,如下所示

public class mymodule:IhttpModule
{

 public void OnApplicationAuthenticateRequest(object sender, EventArgs e)
 {
        var context = ((HttpApplication)sender).Context;
        if(context.Request.Querystring["username"]!=null)
        {
          //then write the cookie
          createcookie();
        }
        else
        {
            //Request user for Basic authentication
            context.Request.Headers["Authorization"])
        }

 }
}

1) 当我像这样调用URL时,第一个请求转到AuthenticateRequest并创建cookie,但是AuthenticateRequest被多次调用,并且在一次调用时,request.QueryString为null,它执行行context.request.Headers[“Authorization”]),并触发Windows安全对话框(基本身份验证),我如何达到我的要求。

你知道这两种方法都是多么不安全吗?除非您打算使用SSL。是的,它确实发生在SSL中