<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1400237102112274324</id><updated>2011-11-27T15:42:48.067-08:00</updated><title type='text'>Learn .NET</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://todotnetusers.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1400237102112274324/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://todotnetusers.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Chandana Pradeep</name><uri>http://www.blogger.com/profile/13428476829800476249</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1400237102112274324.post-2707274253167937167</id><published>2008-02-13T02:01:00.000-08:00</published><updated>2008-02-28T19:55:09.145-08:00</updated><title type='text'>Authenticating Users in an ASP.NET Application</title><content type='html'>&lt;p&gt;When a user enters a URL into their browser’s address window or clicks on a link, the browser makes a &lt;a href="http://en.wikipedia.org/wiki/HTTP"&gt;Hypertext Transfer Protocol (HTTP)&lt;/a&gt; request to the web server for the specified content, be it an ASP.NET page, an image, a JavaScript file, or any other type of content. The web server is tasked with returning the requested content. In doing so, it must determine a number of things about the request, including who made the request and whether the identity is authorized to retrieve the requested content.&lt;/p&gt;  &lt;p&gt;By default, browsers send HTTP requests that lack any sort of identification information. But if the browser does include authentication information then the web server starts the authentication workflow, which attempts to identify the client making the request. The steps of the authentication workflow depend on the type of authentication being used by the web application. ASP.NET supports three types of authentication: Windows, Passport, and forms. This tutorial series focuses on forms authentication, but let’s take a minute to compare and contrast Windows authentication user stores and workflow.&lt;/p&gt;  &lt;h3&gt;Authentication via Windows Authentication&lt;/h3&gt;  &lt;p&gt;The Windows authentication workflow uses one of the following authentication techniques:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;Basic authentication &lt;/li&gt;&lt;li&gt;Digest authentication &lt;/li&gt;&lt;li&gt;Windows Integrated Authentication &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;All three techniques work in roughly the same way: when an unauthorized, anonymous request arrives, the web server sends back an HTTP response that indicates that authorization is required to continue. The browser then displays a modal dialog box that prompts the user for their username and password (see Figure 1). This information is then sent back to the web server via an HTTP header. &lt;/p&gt; &lt;div class="photo_container"&gt;&lt;div class="photo_container_inner"&gt;&lt;div class="photo_border"&gt;&lt;img src="http://static.asp.net/asp.net/images/security/01/images/aspnet_tutorial01_Basics_cs_figure01.png" alt="A Modal Dialog Box Prompts the User for His Credentials" style="width: 326px; height: 304px;" /&gt;&lt;/div&gt;                     &lt;p class="caption"&gt;&lt;strong&gt;Figure 1&lt;/strong&gt;: A Modal Dialog Box Prompts the User for His Credentials&lt;/p&gt;                 &lt;/div&gt;&lt;/div&gt;  &lt;p&gt;The supplied credentials are validated against the web server’s Windows User Store. This means that each authenticated user in your web application must have a Windows account in your organization. This is commonplace in intranet scenarios. In fact, when using Windows Integrated Authentication in an intranet setting, the browser automatically provides the web server with the credentials used to log on to the network, thereby suppressing the dialog box shown in Figure 1. While Windows authentication is great for intranet applications, it is usually unfeasible for Internet applications since you do not want to create Windows accounts for each and every user who signs up at your site.&lt;/p&gt;All these information is based on the Article bublished by Mr &lt;a href="http://www.4guysfromrolla.com/ScottMitchell.shtml"&gt;Scott                         Mitchell&lt;/a&gt; in asp.net&lt;br /&gt;you can visit it http://www.asp.net/learn/security/tutorial-01-cs.aspx and download source code.&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a &lt;br /&gt;                href="http://linkpartners.dotnetforum.lk/default.aspx"&gt;&lt;img alt="Sri Lanka .NET &lt;br /&gt;                Forum Member" id="ref#" &lt;br /&gt;                src="http://linkpartners.dotnetforum.lk/images/banners/120x90.jpg" &lt;br /&gt;                style="border:0px; height: 90px; width: 120px" /&gt;&lt;/a&gt; &lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1400237102112274324-2707274253167937167?l=todotnetusers.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://todotnetusers.blogspot.com/feeds/2707274253167937167/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1400237102112274324&amp;postID=2707274253167937167' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1400237102112274324/posts/default/2707274253167937167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1400237102112274324/posts/default/2707274253167937167'/><link rel='alternate' type='text/html' href='http://todotnetusers.blogspot.com/2008/02/authenticating-users-in-aspnet.html' title='Authenticating Users in an ASP.NET Application'/><author><name>Chandana Pradeep</name><uri>http://www.blogger.com/profile/13428476829800476249</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1400237102112274324.post-994877775031466694</id><published>2008-02-07T00:27:00.000-08:00</published><updated>2008-02-28T19:54:10.850-08:00</updated><title type='text'>Authentication, Authorization, User Accounts, and Roles</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Introduction&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What is the one thing forums, eCommerce sites, online email websites, portal websites, and social network sites all have in common? They all offer user accounts. Sites that offer user accounts must provide a number of services. At a minimum, new visitors need to be able to create an account and returning visitors must be able to log in. Such web applications can make decisions based on the logged in user: some pages or actions might be restricted to only logged in users, or to a certain subset of users; other pages might show information specific to the logged in user, or might show more or less information, depending on what user is viewing the page.&lt;br /&gt;&lt;br /&gt;This is the first tutorial in a series of tutorials that will explore techniques for authenticating visitors through a web form, authorizing access to particular pages and functionality, and managing user accounts in an ASP.NET application. Over the course of these tutorials we will examine how to:&lt;br /&gt;&lt;br /&gt;* Identify and log users in to a website&lt;br /&gt;* Use ASP.NET’s Membership framework to manage user accounts&lt;br /&gt;* Create, update, and delete user accounts&lt;br /&gt;* Limit access to a web page, directory, or specific functionality based on the logged in user&lt;br /&gt;* Use ASP.NET’s Roles framework to associate user accounts with roles&lt;br /&gt;* Manage user roles&lt;br /&gt;* Limit access to a web page, directory, or specific functionality based on the logged in user’s role&lt;br /&gt;* Customize and extend ASP.NET’s security Web controls&lt;br /&gt;&lt;br /&gt;These tutorials are geared to be concise and provide step-by-step instructions with plenty of screen shots to walk you through the process visually. Each tutorial is available in C# and Visual Basic versions and includes a download of the complete code used. (This first tutorial focuses on security concepts from a high-level viewpoint and therefore does not contain any associated code.)&lt;br /&gt;&lt;br /&gt;In this tutorial we will discuss important security concepts and what facilities are available in ASP.NET to assist in implementing forms authentication, authorization, user accounts, and roles. Let’s get started!&lt;br /&gt;&lt;br /&gt;Note: Security is an important aspect of any application that spans physical, technological, and policy decisions and requires a high degree of planning and domain knowledge. This tutorial series is not intended as a guide for developing secure web applications. Rather, it focuses specifically on forms authentication, authorization, user accounts, and roles. While some security concepts revolving around these issues are discussed in this series, others are left unexplored.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Authentication, Authorization, User Accounts, and Roles&lt;/h2&gt;  &lt;p&gt;Authentication, authorization, user accounts, and roles are four terms that will be used very often throughout this tutorial series, so I’d like to take a quick moment to define these terms within the context of web security. In a client-server model, such as the Internet, there are many scenarios in which the server needs to identify the client making the request. &lt;i&gt;Authentication &lt;/i&gt;is the process of ascertaining the client’s identity. A client who has been successfully identified is said to be &lt;i&gt;authenticated&lt;/i&gt;. An unidentified client is said to be &lt;i&gt;unauthenticated&lt;/i&gt; or &lt;i&gt;anonymous&lt;/i&gt;. &lt;/p&gt;  &lt;p&gt;Secure authentication systems involve at least one of the following three facets: &lt;a href="http://www.cs.cornell.edu/Courses/cs513/2005fa/NNLauthPeople.html"&gt;something you know, something you have, or something you are&lt;/a&gt;. Most web applications rely on something the client knows, such as a password or a PIN. The information used to identify a user – her username and password, for example – are referred to as &lt;i&gt;credentials&lt;/i&gt;. This tutorial series focuses on &lt;i&gt;forms authentication&lt;/i&gt;, which is an authentication model where users log in to the site by providing their credentials in a web page form. We have all experienced this type of authentication before. Go to any eCommerce site. When you are ready to check out you are asked to log in by entering your username and password into textboxes on a web page.&lt;/p&gt;  &lt;p&gt;In addition to identifying clients, a server may need to limit what resources or functionalities are accessible depending on the client making the request. &lt;i&gt;Authorization&lt;/i&gt; is the process of determining whether a particular user has the authority to access a specific resource or functionality.&lt;/p&gt;  &lt;p&gt;A &lt;i&gt;user account&lt;/i&gt; is a store for persisting information about a particular user. User accounts must minimally include information that uniquely identifies the user, such as the user’s login name and password. Along with this essential information, user accounts may include things like: the user’s email address; the date and time the account was created; the date and time they last logged in; first and last name; phone number; and mailing address. When using forms authentication, user account information is typically stored in a relational database like Microsoft SQL Server.&lt;/p&gt;  &lt;p&gt;Web applications that support user accounts may optionally group users into &lt;i&gt;roles&lt;/i&gt;. A role is simply a label that is applied to a user and provides an abstraction for defining authorization rules and page-level functionality. For example, a website might include an “Administrator” role with authorization rules that prohibit anyone but an Administrator to access a particular set of web pages. Moreover, a variety of pages that are accessible to all users (including non-Administrators) might display additional data or offer extra functionality when visited by users in the Administrators role. Using roles, we can define these authorization rules on a role-by-role basis rather than user-by-user.&lt;/p&gt;All these information is based on the Article bublished by Mr &lt;a href="http://www.4guysfromrolla.com/ScottMitchell.shtml"&gt;Scott                         Mitchell&lt;/a&gt; in asp.net&lt;br /&gt;you can visit it http://www.asp.net/learn/security/tutorial-01-cs.aspx and download source code.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://linkpartners.dotnetforum.lk/default.aspx"&gt;&lt;img alt="Sri Lanka .NET                  Forum Member" id="ref#" src="http://linkpartners.dotnetforum.lk/images/banners/120x90.jpg" style="border: 0px none ; height: 90px; width: 120px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1400237102112274324-994877775031466694?l=todotnetusers.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://todotnetusers.blogspot.com/feeds/994877775031466694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1400237102112274324&amp;postID=994877775031466694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1400237102112274324/posts/default/994877775031466694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1400237102112274324/posts/default/994877775031466694'/><link rel='alternate' type='text/html' href='http://todotnetusers.blogspot.com/2008/02/authentication-authorization-user.html' title='Authentication, Authorization, User Accounts, and Roles'/><author><name>Chandana Pradeep</name><uri>http://www.blogger.com/profile/13428476829800476249</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
