如何将值从Querystring传递给asp.net登录控件

时间:2021-12-20 15:25:13
 if (Request.QueryString["Username"] != null)
    {
        Login1.UserName =Request.QueryString["Username"];
        Login1.Password = Request.QueryString["Password"];
     if (FormsAuthentication.Authenticate(Login1.UserName, Login1.Password))
        {
            FormsAuthentication.RedirectFromLoginPage(Login1.UserName, true);

        }

    }
     else{

        if (FormsAuthentication.Authenticate(Login1.UserName, Login1.Password))
        {
            FormsAuthentication.RedirectFromLoginPage(Login1.UserName, true);

        }
        }

How can i pass querystring password into Login1.Password.I am using FormsAuthentication methode for login.But Login1.Password doesnot accept value from querystring.Is Login1.Password give typeast error? Please help

如何将querystring密码传递给Login1.Password.I我正在使用FormsAuthentication方法登录。但是Login1.Password不接受来自querystring的值.Is Login1.Password会给出打字错误吗?请帮忙

2 个解决方案

#1


1  

You don't need Login control for Authenticate, give the user name and password as parameters

您不需要登录控件进行身份验证,请将用户名和密码作为参数

string username= Request.QueryString["Username"];
string password = Request.QueryString["Password"];

if (FormsAuthentication.Authenticate(username, password))
{
    FormsAuthentication.RedirectFromLoginPage(username, true);
}

But sending Password as Query String is not recommended, You better read How to safely include password in query string

但不建议将密码作为查询字符串发送,最好阅读如何在查询字符串中安全地包含密码

#2


1  

You can directly pass query string parameters to Forms Authentication Authenticate function like following

您可以直接将查询字符串参数传递给Forms Authentication Authenticate函数,如下所示

if (Request.QueryString["Username"] != null && Request.QueryString["Password"] != null)
{

    if (FormsAuthentication.Authenticate(Request.QueryString["Username"].ToString(), Request.QueryString["Password"].ToString()))
    {
        // Authentication successful code

        FormsAuthentication.RedirectFromLoginPage(Request.QueryString["Username"].ToString(), true);
    }
    else
    {
        // Authentication unsuccessful code
    }
}
else
{
    // Parameter invalid or missing code
}

#1


1  

You don't need Login control for Authenticate, give the user name and password as parameters

您不需要登录控件进行身份验证,请将用户名和密码作为参数

string username= Request.QueryString["Username"];
string password = Request.QueryString["Password"];

if (FormsAuthentication.Authenticate(username, password))
{
    FormsAuthentication.RedirectFromLoginPage(username, true);
}

But sending Password as Query String is not recommended, You better read How to safely include password in query string

但不建议将密码作为查询字符串发送,最好阅读如何在查询字符串中安全地包含密码

#2


1  

You can directly pass query string parameters to Forms Authentication Authenticate function like following

您可以直接将查询字符串参数传递给Forms Authentication Authenticate函数,如下所示

if (Request.QueryString["Username"] != null && Request.QueryString["Password"] != null)
{

    if (FormsAuthentication.Authenticate(Request.QueryString["Username"].ToString(), Request.QueryString["Password"].ToString()))
    {
        // Authentication successful code

        FormsAuthentication.RedirectFromLoginPage(Request.QueryString["Username"].ToString(), true);
    }
    else
    {
        // Authentication unsuccessful code
    }
}
else
{
    // Parameter invalid or missing code
}