基于用户的授权不能使用ASP.net

时间:2015-07-14 04:29:35

标签: c# asp.net authentication

亲爱的StackExchange高级会员

我正在尝试向某些网址提供基于用户的授权。 我在根目录下配置了web.config,如下所示

<authentication mode="Forms">
  <forms
      name="MyAuth"
      loginUrl="ABC/Login.aspx"
      protection="All"
      path="/"
    />
</authentication>

ABC目录中的另一个web.config,如下所示

<?xml version="1.0"?>
<configuration>
<system.web>
  <authorization>
    <deny users="?" />
  </authorization>
</system.web>
</configuration>

除登录外,每件事情都很好 当我访问目录时,即使给出正确的用户名和密码,也会显示ABC登录页面,页面将被重定向到登录页面本身。

我是C#和ASP.net的新手

请帮帮我 我在aspx.cs的代码如下

protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
    {

        string selectString = "SELECT * FROM users " + "WHERE Username = '" + Login1.UserName + "' AND Password = '" + Login1.Password + "'";

        MySqlCommand mySqlCommand = new MySqlCommand(selectString,con);
        con.Open();
        String strResult = String.Empty;
        strResult = mySqlCommand.ExecuteScalar().ToString();
        con.Close();

        if (strResult.Length > 0)
        {
            e.Authenticated = true;
            Response.Redirect("up.aspx");
        }

        else
        {
            MsgBox("Wrong username or password!.", this.Page, this);
            return;
        }
    }

请帮帮我 谢谢 Santosh Sharma

1 个答案:

答案 0 :(得分:0)

在您的代码中使用以下代码:

 if (strResult.Length > 0)
    {
       FormsAuthentication.RedirectFromLoginPage 
         (Login1.UserName, true);
        Response.Redirect("up.aspx");
    }