• Login
  • Our WordPress Plugin
  • Blog Posting Services
  • In Twitter
  • In LinkedIn
J
HARAPHULA
OneStop Shop of Information

Updates

  • An Email Marketing Strategy that Works for B2B
    •
  • How can eCommerce Strategies improve Customer Relationships?
    •
  • What are the best Strategies for Social Media Marketing?
    •
  • Everything you Should know about Hiring an Online Printing Service
    •
  • Plagiarism Checkers are Solution for Learning in Universities
    •
  • 10 Must-Have Apps for Entrepreneurs to Stay Organized
    •
  • 4 ways Learning Management System Can Transform your Business
    •
  • Why you Should Consider Hiring an Advertising Agency for your Business?
    •
  • How to make a Simple Iphone App and upload it in the App Store?
    •
  • Data Visualization’s Positive impression on Decision Making
    •
  • Everything you need to know related to Mail Forwarding Service
    •
  • Use of Etiquette to Short Sentences your Guide to Email Writing
    •
  • Why are Content Writing Services top Trending Now?
    •
  • Useful Tips Wrap Up your Blog with an effective Conclusion
    •
  • 4 Pros and 4 Cons of hiring Technical Writing Services
    •

ASP.NET Login page example with Remember me Option

Microsoft Technologies
May 15, 2016
3.7 (3 votes)
ASP.NET Login page example with Remember me Option ASP.NET Login page example with Remember me Option
3 5 72
wlcm 2 Our Blog Posting Services with lifelong deep Links

During we develop a product its always wise to save user time. Think about a login page. Here for Consecutive logins it is much better if we will store user Login Credentials. Using which System will remember the user id and password for next login. In this demo app I am creating a ASP.NET login page with “Remember me” Option.

The logic behind is so simple “During a user login to the System I am storing his/her user id and password to a Cookie. Then under page load event checking is Cookie exists. If so taking user id and password from the Cookie”.

Login.aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Login.aspx.vb" Inherits="Login" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Demo Login App</title>
<style type="text/css">
#frmLogin { max-width: 300px; margin: 0 auto; padding-top: 120px; }
.formControl { font-family: Verdana; font-size: 12px; }
.loginDiv { width:300px; margin-top: 20px; padding: 20px 20px 20px 20px; background-color: #f7f7f7; -moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3); -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3); box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3); } 
.rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; }
</style>
</head>
<body>
<form id="frmLogin" runat="server">
<div class="loginDiv rounded">
<div class="formControl">
Email ID&nbsp;<span style="color: Red;">*</span>
</div>
<div class="formControl">
<asp:TextBox ID="txtEmailID" runat="server" Width="100%"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvEmailID" runat="server" ControlToValidate="txtEmailID"
Display="Dynamic" ErrorMessage="Email should not be blank.<br />"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="revEmailID" runat="server" ControlToValidate="txtEmailID"
Display="Dynamic" ErrorMessage="Enter a valid Email ID.<br />" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>
</div>
<div class="formControl">
Password&nbsp;<span style="color: Red;">*</span>
</div>
<div class="formControl">
<asp:TextBox ID="txtPassword" runat="server" TextMode="Password" Width="100%"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvPassword" runat="server" ControlToValidate="txtPassword"
Display="Dynamic" ErrorMessage="Password should not be blank."></asp:RequiredFieldValidator>
</div>
<asp:Button ID="btnVisitorLogin" runat="server" Text="Login" />
<asp:Label ID="lblMsg" runat="server"></asp:Label>
<asp:CheckBox ID="chkNextLogin" runat="server" />&nbsp;Remember me<a href="#" class="pull-right margin-gap">Need
help?</a>
</div>
</form>
</body>
</html>

For security reason in Code behind I added my EncryDecry.vb Class from app_code/vb. To execute vb code inside vb folder of app_code I Configured my web.config.

Login.aspx.vb

Imports System.Web.Security
Imports System.Data
Imports System.Data.SqlClient

Partial Class Login
Inherits System.Web.UI.Page

Dim LoginSqlConn As New SqlConnection(ConfigurationManager.AppSettings.Get("DBKey").ToString())

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
txtEmailID.Focus()

'Check if the browser support cookies
If Request.Browser.Cookies Then
'Check if the cookies with name PBLOGIN exist on user's machine
If Request.Cookies("PBLOGIN") IsNot Nothing Then
'Pass the user name and password to the VerifyLogin method
Me.VerifyLogin(Request.Cookies("PBLOGIN")("UNAME").ToString(), Request.Cookies("PBLOGIN")("UPASS").ToString())
End If
End If
End If
End Sub

Protected Sub btnVisitorLogin_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVisitorLogin.Click
'Decrypt the Password & UserID from Database
Dim EncrDecr As New EncryDecry

'Validation Checking Aginest Submission
If rfvPassword.IsValid And rfvEmailID.IsValid Then
'Clear Invalid login Message Label
lblMsg.Text = ""

'Temporary SecuredUniqueKey
Dim UniKey As String = "FCPH6-BPK27-2V4MR"

'Login Checking command in shape of a Stored Procedure that returns Record Count
Dim LoginCommand As New SqlCommand("USP_LoginCheck", LoginSqlConn)
LoginCommand.CommandType = CommandType.StoredProcedure

'Pass Parameter to Stored Procedure
LoginCommand.Parameters.Add("@UserID", SqlDbType.NVarChar, 256).Value = EncrDecr.TripleDESEncode(Trim(txtEmailID.Text), "RC2")
LoginCommand.Parameters.Add("@Passcode", SqlDbType.NVarChar, 256).Value = EncrDecr.TripleDESEncode(Trim(txtPassword.Text), "RC2")
LoginCommand.Parameters.Add("@SecuredUniqueKey", SqlDbType.NVarChar, 256).Value = UniKey
LoginCommand.Parameters.Add("@Status", SqlDbType.NVarChar, 20).Value = "Active"

Dim RecordCNT As Integer = 0

Try
Dim LoginDataReader As SqlDataReader
LoginSqlConn.Open()
LoginDataReader = LoginCommand.ExecuteReader
If LoginDataReader.Read Then
RecordCNT = Convert.ToInt32(LoginDataReader(0).ToString())
End If
Catch ex As Exception
Response.Write(ex.ToString())
Finally
LoginSqlConn.Close()
End Try

'Login Checking using the return int value of USP_LoginCheck stored procedure
If (RecordCNT = 1) Then
Me.VerifyLogin(EncrDecr.TripleDESEncode(Trim(txtEmailID.Text), "RC2"), EncrDecr.TripleDESEncode(Trim(txtPassword.Text), "RC2"))
ElseIf (RecordCNT > 1) Then
lblMsg.Text = "Invalid Login Credentials"
'Implement 5 Login Attempts of Account Lock
ElseIf (RecordCNT < 1) Then
lblMsg.Text = "Invalid Login Credentials"
'Implement 5 Login Attempts of Account Lock
End If
End If
End Sub

Private Sub VerifyLogin(ByVal UserID As String, ByVal Password As String)
Dim LoginDetailsCommand As New SqlCommand("USP_LoginDetails", LoginSqlConn)
LoginDetailsCommand.CommandType = CommandType.StoredProcedure

'Pass Parameter to Stored Procedure
LoginDetailsCommand.Parameters.Add("@UserID", SqlDbType.NVarChar, 256).Value = UserID
LoginDetailsCommand.Parameters.Add("@Passcode", SqlDbType.NVarChar, 256).Value = Password

Try
Dim LoginDetailsDR As SqlDataReader
LoginSqlConn.Open()
LoginDetailsDR = LoginDetailsCommand.ExecuteReader

If LoginDetailsDR.Read Then
Session("UserID") = LoginDetailsDR("PkUid")
Session("UserEmail") = UserID

Session("FirstName") = LoginDetailsDR("FirstName")
Session("LastName") = LoginDetailsDR("LastName")

Session("RootPath") = Server.MapPath("../")

'Using form authentication redirect the page to the Default.aspx
FormsAuthentication.RedirectFromLoginPage(Trim(txtEmailID.Text), True)

'check if remember me checkbox is checked on login
If (chkNextLogin.Checked) Then
'Check if the browser support cookies
If (Request.Browser.Cookies) Then
'Check if the cookie with name PBLOGIN exist on user's machine
If (Request.Cookies("PBLOGIN") Is Nothing) Then
'Create a cookie with expiry of 30 days
Response.Cookies("PBLOGIN").Expires = DateTime.Now.AddDays(30)
'Write username to the cookie
Response.Cookies("PBLOGIN").Item("UNAME") = UserID
'Write password to the cookie
Response.Cookies("PBLOGIN").Item("UPASS") = Password
Else
'If the cookie already exist then wirte the user name and password on the cookie
Response.Cookies("PBLOGIN").Item("UNAME") = UserID
Response.Cookies("PBLOGIN").Item("UPASS") = Password
End If
End If
End If
Else
lblMsg.Text = "Invalid Login Credentials"
End If
Catch ex As Exception
Response.Write(ex.ToString())
Finally
LoginSqlConn.Close()
End Try
End Sub
End Class

web.config

<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="DBKey" value="Data Source=VIJAYSHANTI; uid=sa; pwd=tiger; database=CodeRND;"/>
</appSettings>
<connectionStrings/>
<system.web>
<compilation debug="true" strict="false" explicit="true">
<codeSubDirectories>
<add directoryName="VB"/>
</codeSubDirectories>
</compilation>
<authentication mode="Windows"/>
</system.web>
</configuration>

EncryDecry is the class which helps to convert user id and password to RC2 format. In-case an other user find out the cookie in client machine he or she can’t able to hack the original user.

EncryDecry.vb

Imports System.Security.Cryptography
Imports Microsoft.VisualBasic

Public Class EncryDecry

Public Function TripleDESEncode(ByVal value As String, ByVal key As String) As String
Dim des As New System.Security.Cryptography.TripleDESCryptoServiceProvider
des.IV = New Byte(7) {}
Dim pdb As New System.Security.Cryptography.PasswordDeriveBytes(key, New Byte(-1) {})
des.Key = pdb.CryptDeriveKey("RC2", "MD5", 128, New Byte(7) {})
Dim ms As New IO.MemoryStream((value.Length * 2) - 1)
Dim encStream As New System.Security.Cryptography.CryptoStream(ms, des.CreateEncryptor(), System.Security.Cryptography.CryptoStreamMode.Write)
Dim plainBytes As Byte() = Text.Encoding.UTF8.GetBytes(value)
encStream.Write(plainBytes, 0, plainBytes.Length)
encStream.FlushFinalBlock()
Dim encryptedBytes(CInt(ms.Length - 1)) As Byte
ms.Position = 0
ms.Read(encryptedBytes, 0, CInt(ms.Length))
encStream.Close()
Return Convert.ToBase64String(encryptedBytes)
End Function

Public Function TripleDESDecode(ByVal value As String, ByVal key As String) As String
Dim des As New System.Security.Cryptography.TripleDESCryptoServiceProvider
des.IV = New Byte(7) {}
Dim pdb As New System.Security.Cryptography.PasswordDeriveBytes(key, New Byte(-1) {})
des.Key = pdb.CryptDeriveKey("RC2", "MD5", 128, New Byte(7) {})
Dim encryptedBytes As Byte() = Convert.FromBase64String(value)
Dim ms As New IO.MemoryStream(value.Length)
Dim decStream As New System.Security.Cryptography.CryptoStream(ms, des.CreateDecryptor(), System.Security.Cryptography.CryptoStreamMode.Write)
decStream.Write(encryptedBytes, 0, encryptedBytes.Length)
decStream.FlushFinalBlock()
Dim plainBytes(CInt(ms.Length - 1)) As Byte
ms.Position = 0
ms.Read(plainBytes, 0, CInt(ms.Length))
decStream.Close()
Return Text.Encoding.UTF8.GetString(plainBytes)
End Function

End Class

Tags:ASP.NET Login Page, Cleaver UI developer, Login page Example, Remember me Option, Windows Authentication
Simple string to image based free PHP Captcha Code
Simple PHP pagination Example using MySQL records

Related Posts

  • How to implement Forms Authentication in ASP.NET?
  • WordPress Tricks to keep your Website Secure from Hacking
  • Responsive mobile first BootStrap 5 User Login page Example
  • ASP.NET Login form Example validating user from SQL…
  • How to Check is Browser Cookie enabled or disabled…
  • How to Add Share button in WordPress blog?
  • IP Address Spoofing to DNS Spoofing Attacks in details
  • Project Estimation Techniques for Software…
  • Using HTML5 Application Cache for Offline Storage
  • How Followers Gallery helps for active Instagram…
  • Step-by-Step Guide to resetting Windows 7 password
  • Make Money with Google Adsense - Adsense Approval Trick
  • WordPress Tutorial for beginners - Learn the most…
  • How to install WordPress on XAMPP Web Server?
  • Simple JavaScript Captcha Example (Client Side Captcha)
  • A Multi Vendor B2C ECommerce Marketplace Website Design
  • How to use JavaScript function with ASP.NET CustomValidator?
  • Create, Remove or Read a PHP Cookie using Setcookie method
  • Has Instagram Blocked your Login for no Reasons? -…
  • Tricks to Draw CSS Triangle using DIV without Images
  • Random Password Generator Function using VB.NET
  • How to Start a WordPress blog with Hostgator & Godaddy?
  • Facebook for Business to drive massive visitors to your Blog
  • Optimize your WordPress Blog with these essential Plugins
  • How to Save image Offline using HTML5 Local Storage?
On-page SEO booster,
Google Friendly,
XML based
PHP/WP Sidebar
FREE Widgets
demo

Popular Categories

  • Miscellaneous591
  • Digitalization298
  • Career Guide243
  • Indian Blog207
  • Business Tricks177
  • Health & Wellness165
  • Travel & Tourism132
  • Your Financial Advisor116
  • Real Estate Consulting110
  • Shopping97
  • Blogging Techniques75
  • Digital Marketing70
  • Home Remedies70
  • SEO Techniques67
  • Programming62
  • Automobiles57

New Releases

The biggest Real Estate Investing Mistakes and How to Avoid them?
April 15, 2025

The biggest Real Estate Investing Mistakes and How to Avoid them?

Have you ever wondered if real estate investing is as straightforward as it sounds? Does the promise of steady rental income and rising property values…

Grow your Brand Empire with Elegant Custom Favor Boxes
April 11, 2025
Grow your Brand Empire with Elegant Custom Favor Boxes
How to Buy Facebook Likes and boost your Reach?
March 29, 2025
How to Buy Facebook Likes and boost your Reach?
Strategies for Reducing Pores - A Comprehensive Guide
March 28, 2025
Strategies for Reducing Pores – A Comprehensive Guide
The Ultimate Guide to Choosing the best Health Checkup Package for you
March 26, 2025
The Ultimate Guide to Choosing the best Health Checkup Package for you
Why my Organization or Our Products and Services need Guest Posting?
March 26, 2025
How paid Guest Posting Services helps Businesses to boost Sales?
How to use Multani Mitti? - Tips and Tricks for maximum Benefits
March 26, 2025
How to use Multani Mitti? – Tips and Tricks for maximum Benefits
Transform your Guest Room with a Multi-Functional Sofa Cum Bed
March 26, 2025
Transform your Guest Room with a Multi-Functional Sofa Cum Bed
CNC Machining in Model Making Dubai for Prototypes
March 21, 2025
CNC Machining in Model Making Dubai for Prototypes
How to Choose the Right Generator for your Home?
March 21, 2025
How to Choose the Right Generator for your Home?
How to Prepare for a Tummy Tuck in Islamabad?
March 19, 2025
How to Prepare for a Tummy Tuck in Islamabad?
Trump Towers 2 - Experience the Pinnacle of Luxury Living
March 15, 2025
Trump Towers 2 – Experience the Pinnacle of Luxury Living
Why Eye Cleaning is essential for your Health?
March 14, 2025
Why Eye Cleaning is essential for your Health?
From Local to Global - Digital Growth Strategies for Indian Brands
March 10, 2025
From Local to Global – Digital Growth Strategies for Indian Brands
Tattoo Booking App - Revolutionizing the Tattoo Industry
March 10, 2025
Tattoo Booking App – Revolutionizing the Tattoo Industry
Human Behavior in Men and Women Aged 18 to 35
March 10, 2025
Human Behavior in Men and Women Aged 18 to 35
explore us...

i20 Sidebar Widgets

The Future of Digital Marketing - Trends to Watch
The Future of Digital Marketing – Trends to Watch
The digital marketing landscape is constantly evolving, and it’s crucial for businesses to stay ahead of the game. As technology advances and consumer behavior changes,...
Design an E-Commerce Website that Converts Visitors into Buyers
How to Design an E-Commerce Website that Converts Visitors into Buyers?
In the age of digitization, an e-com website is not a choice; it is a need. But a website alone? Not even close. In other words, your...
Your Complete Guide for hiring a Digital Marketing Agency
Your Complete Guide for hiring a Digital Marketing Agency
Are you looking to hire a digital marketing agency? With the rise of digital marketing, it can be difficult to decide which company to choose....
Enhancing Website Analytics with Regular Maintenance
Enhancing Website Analytics with Regular Maintenance
In today’s digital-driven world, businesses rely heavily on their online presence to capture, engage, and retain customers. Websites are the cornerstone of this presence, serving...
How to Enroll in Graphic Designing Course in Lahore?
How to Enroll in Graphic Designing Course in Lahore?
Graphic designing is a pivotal skill in today’s digital world, blending creativity and technology to produce compelling visuals. This field has gained immense popularity in...
How do Facebook Ads or Instagram Advertising Services work?
How do Facebook Ads or Instagram Advertising Services work?
Facebook Ads “Increase ROI and Experience Growth with our Facebook Ad Management Service.” Though Facebook Ad has the great potential to improve visibility, increase sales,...
The Complete Guide to Digital Advertising types and their benefits
The Complete Guide to Digital Advertising types and their benefits
Have you ever wanted to try advertising your business online but needed to know where to start? If so, then this is the article for...
Hiring an SEO Company for your Small Business to boost SERP
Hiring an SEO Company for your Small Business to boost SERP
Hiring an SEO company could be a daunting task for some small business possessors. The former statement is true especially when it’s their first time...
How to ensure Email Deliverability and enhance Campaign Success?
How to ensure Email Deliverability and enhance Campaign Success?
How can you ensure that your emails are delivered successfully and increase the effectiveness of your campaigns? In today’s changing world email marketing remains a tool...
Social Media Monetization - Where Can you Earn more?
Social Media Monetization – Where Can you Earn more?
Social media platforms have become one of the most significant sources of income for creators, influencers, and businesses alike. As these platforms continue to evolve,...

OUR FACILITIES

  • Login
  • Our Background
  • Privacy
  • WordPress.org

CONTACT INFO

  • Do WhatsApp
  • Reach us

SEO GUEST POSTING

Do you like to publish your Stories near Quality Audiences? If so, “OneStop Shop” is the best platform for you. We are one among the vastly growing Indian Blog. Reach us to publish your Stories with lifelong No-Follow links.

WHY ONESTOP?

We are here to bring high Quality Information. As a multi-niche platform we have spend several years for Collecting various useful Stories. Dream to establish a domain where from you can get all your day today required information. We covers Animals to Zoology.
©2014-2025 JHARAPHULA, ALL RIGHTS RESERVED.
Show Buttons