加入收藏
联系我们
关于我们
 您现在的位置: 亿聪 >> 网络学院 >> 网络编程 >> ASP >> 正文  
  asp.net中的身份验证         
asp.net中的身份验证
[ 作者:onlytiancai    转贴自:CSDN    点击数:2702    更新时间:2004/8/20    文章录入:亿聪 ]
我用的是基于窗体的验证,这也是最常用的,我只写一下摘要,源代码太长,但应该不影响理解代码.

web.config的修改:
<authentication  mode="Forms"  />  
用户的登陆验证方法,:
这里有两个输入控件的,一个是user_tb,用来输入用户,一个是psw_tb,用来输入密码
private  void  Button1_Click(object  sender,  System.EventArgs  e)
{
//用户登陆验证
string  ip=  System.Web.HttpContext.Current.Request.UserHostAddress  ;  
string  user_name=user_tb.Text;
string  user_psw=psw_tb.Text;
user_name=user_name.Replace("<","<").Replace(">",">").Replace("  ","  ").Replace("'","‘");
user_psw=user_psw.Replace("<","<").Replace(">",">").Replace("  ","  ").Replace("'","‘");
if(user_name!=""||user_psw!="")
{
SqlConnection  myconn=new  SqlConnection((string)ConfigurationSettings.AppSettings["connstring"]);//连接数据库
myconn.Open();//打开
string  validate_Sql="select  *  from  Web_User  where  User_Name='"+user_name+"'and  User_Psw='"+user_psw+"'";
SqlCommand  validate_com=new  SqlCommand(validate_Sql,myconn);
SqlDataReader  validate=validate_com.ExecuteReader();
string  temp="";
while(validate.Read())
{
Session["user_name"]=user_name;
Session["user_flag"]=validate["User_Flag"].ToString();
temp="yes";
}
validate.Close();
if(temp=="yes")
{
user_tb.Text="";
psw_tb.Text="";
System.Web.Security.FormsAuthentication.RedirectFromLoginPage(user_name,false);
Response.Redirect("manage_index.aspx");

}
else
{
Response.Write("<script>alert('您的用户名或密码错误!');</script>");  
return  ;
}
user_tb.Text="";
psw_tb.Text="";
myconn.Close();
}

}
判断用户是否已经登陆:
private  void  Page_Load(object  sender,  System.EventArgs  e)
{  
//在这里判断用户是否已经登陆
if(!System.Web.HttpContext.Current.User.Identity.IsAuthenticated)
{
Response.Write("<script>alert('您没有登陆!');history.back()</script>");    
}
string  strUsername;
strUsername=System.Web.HttpContext.Current.User.Identity.Name+"<br>+System.Web.HttpContext.Current.User.Identity.IsAuthenticated";
lbIUsername.Text=strUsername;
//  在此处放置用户代码以初始化页面
}
用户的退出:
private  void  LinkButton1_Click(object  sender,  System.EventArgs  e)
{  //退出
Session["user_name"]=null;
Session["user_flag"]=null;
Session.Clear();
System.Web.Security.FormsAuthentication.SignOut();
Response.Redirect("default.aspx");
}
  • 上一篇文章: 一个简单的E-mail地址判断函数(通用)

  • 下一篇文章: 利用代码实现对IP的访问限制
  • 发表评论】【告诉好友】【打印此文】【关闭窗口
     最新5篇热点文章
  • Knoppix 4.0.2 免硬盘免安…[15797]

  • 通过ASP记录进行分页[20012]

  • ASP开发准则[11932]

  • ASP组件指南[11943]

  • ASP指南[11967]

  •  
     最新5篇推荐文章
  • Knoppix 4.0.2 免硬盘免安…[15797]

  • 如何让Win 2003系统更加安…[13301]

  • Nero超刻简明教程[34139]

  • PS商业实战-来杯茶,行吗?…[7255]

  • ASP深度揭密(下)[12554]

  •  
     相 关 文 章
    没有相关文章

      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
        没有任何评论
    设为首页 | 加入收藏 | 关于我们 | 联系我们 | 友情链接 | 版权声明 | 管理登录
    Copyright © 2000-2022 Yicong.com.All Rights Reserved.
    亿聪 版权所有 E-mail: