蛙蛙推荐:asp.net中的身份验证

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

蛙蛙推荐:asp.net中的身份验证

我用的是基于窗体的验证,这也是最常用的,我只写一下摘要,源代码太长,但应该不影响理解代码.

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");

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航