login登录web配置

在webconfig中有一个重要节点 <system.web> 其中包括了一个身份验证配置节点

 authentication 是节点名,mode是模式,代码表示 采用windows身份验证,那么此时身份验证将交给iis处理,而iis中默认设
<authentication mode="Windows"/>
1、使mode为 Forms 则表示是用Forms身份验证
2、defaultUrl ="default.aspx" 表示默认页面是default.aspx
3、loginUrl="login.aspx" 表示登陆页面是login.aspx
4、protection="All" 表示 保护所有页面,但不能保护html页面,只能保护aspx页面。
5、<authorization> 节点中 deny users="?" 表示拒绝所有匿名用户,必须通过验证的用户才可以跳转到默认页或由程序指定一个跳转页,其中 "?" 表示匿名用户,也可以设置为 "*" 表示所有用户,或则指定一个用户名。
6、timeout 表示有效时间。


<authentication mode="Forms" >
      <forms defaultUrl="default.aspx" loginUrl="login.aspx" protection="All" timeout="60" name=".forms" ></forms>
</authentication>
   
    <authorization>
      <deny users="?"/>
    </authorization>

在登陆页面中,登陆按钮事件必须使用如下代码才能跳转
FormsAuthentication.RedirectfromLoginPage("值", false);
命名空间: System.Web.Security;

RedirectfromLoginPage表示将经过身份验证的用户重定向到最初请求的页面,第一参数表示名称,此名称今后在本站点的任何页面都可以用

User.Identity.Name 来获取到,第二个参数表示是否要持久化cookie,也就是说是否下次不需要输入密码验证就可以自动登陆,直到用户主动退出。
退出按钮必须使用
FormsAuthentication.SignOut();

命名空间: System.Web.Security;

案例:

web.config页:

        <authentication mode="Forms" >
            <forms name="wjy" loginUrl="login.aspx">
                <credentials passwordFormat="Clear">
                    <user name="admin" password="admin"/>
                    <user name="wjy" password="wjy"/>
                </credentials>
            </forms>
        </authentication>
        <authorization>
            <deny users="?"/>
        </authorization>

login.aspx页面:

using System.Web.Security; //这个命名空间是下面类FormsAuthentication


public partial class login : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        if (FormsAuthentication.Authenticate(TextBox1.Text, TextBox2.Text))
        {
            FormsAuthentication.RedirectFromLoginPage(TextBox1.Text, false);//上面有讲解
            Response.Redirect("Default2.aspx");
        }
        else
            Response.Write("登陆失败");
    }
}

Default2.aspx页:

using System.Web.Security;

public partial class Default2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string name = string.Format("你输入的名字为{0}", User.Identity.Name);//可以传过来用户名
        Response.Write(name);
    }
    protected void logout_Click(object sender, EventArgs e) //注销代码
    {
        FormsAuthentication.SignOut();
        Response.Redirect("Default.aspx");
    }
}

链接数据库登录 

  string uname = this.txt_name.Text;
            string pwd = this.txt_pwd.Text;
            
            
          
            if (ddl_user.SelectedValue == "管理员")
            {
                Administrator admin = AdministratorBLL.A_login(uname, pwd);
                if (admin != null)
                {
                       FormsAuthentication.RedirectFromLoginPage(Convert.ToString(admin.Aid), false);
                       Response.Redirect("Admin/Admin.aspx");
                }
                else
                {
                    Response.Write("<script>alert('账号或密码不正确')</script>");
                }
            }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值