Great Deal! Get Instant $10 FREE in Account on First Order + 10% Cashback on Every Order Order Now

Web Application Development with ASP.NET and C# XXXXXXXXXXCEIL-865 LAB #8 – ASP.NET Security Student: ______________________ Purpose: The purpose of this Lab assignment is to: Practice the use of...

1 answer below »
Web Application Development with ASP.NET and C# XXXXXXXXXXCEIL-865
LAB #8 – ASP.NET Security
Student: ______________________
Purpose:    The purpose of this Lab assignment is to:
Practice the use of Forms-Based authentication
References:
Textbook.
Lecture notes
This assignment may be completed individually by all the students. Submit the solution in a zip file using assignment link on blackboard. The file and project must be named as indicated in previous labs.
Exercise #1
In this exercise, you’ll implement a simple Forms-based authentication.
Create a new ASP.NET application (following the naming convention used so far).
Configuring the application for forms authentication
If the application has a Web.config file in the application root, open it.
If the application does not already have a Web.config file in the application root folder, create one.
Add the following elements to it within area:
authentication mode="Forms"
    

credentials
    
forms


authentication

authorization
    authorization
Save the Web.config file and close it.
Creating the Logon Page
When users request any page from the Web site and if they have not previously been authenticated, they are redirected to a page named Logon.aspx. You specified this file name earlier in the Web.config file.
The Logon.aspx page collects user credentials (e-mail address and password) and authenticates them. If the user is successfully authenticated, the logon page redirects the user to the page they originally requested. In the example, the valid credentials are hard-coded into the page code.
Create an ASP.NET page named Logon.aspx in your project.
Add the following web controls as shown in the picture:
Four label controls, two text box controls, one check box control, two requiredfieldvalidator controls, two button controls.
Set the text property of the label controls as shown in the picture. Name the text boxes UserMail and UserPass. Set the ControlToValidate property for validator controls respectively to UserMail and UserPass. Name the check box control Persist.
Name button controls respectively BtnLogon, BtnLogonWebConfig. Name the fourth label Message.
Here is the code behind for Logon.aspx page:
public partial class Logon : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void BtnLogon_Click(object sender, EventArgs e)
{
XXXXXXXXXXif ((UserEmail.Text == " XXXXXXXXXX") && (UserPass.Text == "ceil865"))
XXXXXXXXXXFormsAuthentication.RedirectFromLoginPage(UserEmail.Text, Persist.Checked);
XXXXXXXXXXelse
XXXXXXXXXXMsg.Text = "Invalid credentials. Please try again.";

}
protected void BtnLogonWebConfig_Click(object sender, EventArgs e)
{

Authenticating against values in Web.config
XXXXXXXXXXif( FormsAuthentication.Authenticate(UserEmail.Text, UserPass.Text) )
XXXXXXXXXXFormsAuthentication.RedirectFromLoginPage(UserEmail.Text, Persist.Checked);
XXXXXXXXXXelse
XXXXXXXXXXMsg.Text = "Invalid credentials. Please try again.";

}
}
The page contains ASP.NET server controls that collect user information and a check box that users can click to make their login credentials persistent. The Log On button's Click handler contains code that checks the user's e-mail address and password against hard-coded values. (The password is a strong password that contains various non-alphabetic characters and is at least eight characters long.) If the user's credentials are co
ect, the code calls the FormsAuthentication class's RedirectFromLoginPage method, passing the user's name and a Boolean value (derived from the check box) indicating whether to persist an authentication ticket as a cookie. The method redirects the user to the page originally requested. If the user's credentials do not match, an e
or message is displayed. Note that the page imports the System.Web.Security namespace, which contains the FormsAuthentication class.
Creating the Default Page
Because you specified in the configuration file that all unauthenticated users are denied access to the application's ASP.NET resources (which includes .aspx files, but not static files such as HTML files or multi-media files including images, music, and so on), when a user requests the page, forms authentication will check the user's credentials and redirect the user to the logon page if necessary. The page you create will also allow users to log out, which clears their persisted authentication ticket (cookie).
If you don’t have a default page, add a new web form and name it Default.aspx. Add a label control and a button control to the form as shown in the picture below:
Name the label Welcome and the button Sign_Out.
Here is the code behind the page:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
XXXXXXXXXXWelcome.Text = "Hello, " + Context.User.Identity.Name;
}
protected void Sign_Out_Click(object sender, EventArgs e)
{
    
emoves the forms authentication cookie
XXXXXXXXXXFormsAuthentication.SignOut();
    
Redirects the
owser to the login URL. Clears the cookie
XXXXXXXXXXFormsAuthentication.RedirectToLoginPage();
}
}
The page displays the user's authenticated identity, which was set by the FormsAuthentication class and is available in an ASP.NET page as the Context.User.Identity.Name property. The Sign Out button's Click handler contains code that calls the SignOut method to clear the user identity and remove the authentication ticket (cookie). It then redirects the user to the logon page:
References:
MSDN documentation
Lab #8 XXXXXXXXXXPage 4 of 4
Answered 2 days After Aug 03, 2021

Solution

Shweta answered on Aug 06 2021
146 Votes
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here