Mega Code Archive

 
Categories / ASP.Net / Development
 

Form and database based authentication (C#)

<%-- login.aspx <%@ Page Language="C#" %> <%@ Import Namespace="System.Web.Security " %> <%@ Import Namespace="System.Data.OleDb" %>  <html> <head> <script language="C#" runat=server>   void Login_Click(Object Src, EventArgs E)   {     if (Page.IsValid)     {   String strConn ="PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" + Server.MapPath("DBAuth.mdb") + ";";   OleDbConnection Conn = new OleDbConnection(strConn) ;   Conn.Open();    String strSQL = "SELECT Pwd FROM Tbl_MA_Users WHERE Email = '" + txtEmail.Text + "'";   OleDbCommand Cmd = new OleDbCommand(strSQL,Conn);   //Create a datareader, connection object   OleDbDataReader Dr = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);   //Get the first row and check the password.   if (Dr.Read())   {     if (Dr["Pwd"].ToString() == txtPwd.Text)       FormsAuthentication.RedirectFromLoginPage(txtEmail.Text, false);     else       lblLoginMsg.Text = "Invalid password.";   }   else     lblLoginMsg.Text = "Login name not found.";   Dr.Close();     }   } </script> </head> <body> <form runat="server"> <h1>Using Form based Authentication</h1><hr> Users Name:<br /> <asp:textbox id="txtEmail" runat=server />&nbsp; <FONT SIZE=2 COLOR="RED">*</FONT> <asp:RequiredFieldValidator    ControlToValidate="txtEmail"   Display="Dynamic"    ErrorMessage="Login name can't be empty."    runat=server/> <br />Password:<br /> <asp:textbox TextMode="Password" id="txtPwd" runat=server />   &nbsp;<FONT SIZE=2 COLOR="RED">*</FONT>   <asp:RequiredFieldValidator      ControlToValidate="txtPwd"      Display="Dynamic"      ErrorMessage="Password can't be left empty."      runat=server/> <br /> <asp:Label    id="lblLoginMsg"    ForeColor="Red"    Font-Name="Verdana";      Font-Size="10"    runat=server /> <b /> <asp:button    id="btnLogin"    Text="Login"   OnClick="Login_Click"    runat=Server /> </form> </body> </html> --%> <%-- default.aspx <%@ Import Namespace="System.Web.Security " %> <html> <head> <script language="C#" runat=server>   void Page_Load(Object S, EventArgs E)   {     lblUser.Text = User.Identity.Name;     lblType.Text = User.Identity.AuthenticationType;   }   void Logout_Click(Object S, EventArgs E)   {     FormsAuthentication.SignOut();     Server.Transfer("login.aspx");   } </script> </head> <body> <form runat="server">     <font face="Verdana" size="4" color="navy">     <b>Forms Authentication With a Database</b></font><hr>     <table border=1 bordercolor="#FFFFFF" bgcolor="Silver"      cellspacing=0 cellpadding=4>       <tr>         <td><b>Current Users Name</b></td>         <td><asp:label id=lblUser runat=server/></td>       </tr>       <tr>         <td><b>Current Authentication Type</b></td>         <TD><asp:label id=lblType runat=server/></TD>       </tr>     </table>   <asp:button text="Logout" OnClick="Logout_Click" runat=server/> </form> </body> </html> --%> <%-- web.config <configuration>      <system.web>     <authentication mode="Forms">                <forms name=".MyDemo" loginUrl="login.aspx"        protection="All" timeout="20" />     </authentication>     <authorization>                <deny users="?" />     </authorization>   </system.web> </configuration> --%>                     AuthenticationFormsDB.zip( 10 k)