Authentication VS. Authorization | Asp.Net
Authentication and authorization are two essential concepts in ASP.NET and play distinct roles in the security of an application.
Authentication
Authentication refers to the process of verifying the identity of a user or entity. It ensures that the user is who they claim to be. In ASP.NET, authentication is typically performed by validating credentials, such as a username and password, provided by the user. The authentication process establishes the identity of the user, allowing them to access protected resources or perform certain actions within the application.
ASP.Net Authentication
The ASP.NET authentication scheme that is used to identify users who view an ASP.NET application. An ASP.net application has two separate authentication levels because all requests coming through IIS before it handled by ASP.NET. After IIS authentication schemes ASP.NET implements additional authentication schemes. They are :
- Windows Authentication
- Forms Authentication
- Passport Authentication
The mode attribute specifies the authentication scheme.
None Authentication
You can specify "None" as the authentication provider when requests are not authenticated at all or if you plan to develop custom authentication code.
When you need "None" authentication, use the following Web.config configuration:
Authorization
Authorization, on the other hand, deals with granting or denying access to specific resources or functionality based on the authenticated user's privileges. Once a user's identity is established through authentication, authorization determines what the user is allowed to do within the application. It involves checking whether the authenticated user has the necessary permissions or roles to access certain pages, perform specific operations, or view confidential data. Authorization helps ensure that users can only access the resources they are entitled to based on their assigned roles or privileges.
Asp.Net Authorization
ASP.NET allows two ways to authorize access to a given resources, they are URL authorization and File authorization
URL authorization
URL authorization maps users and roles to URLs in ASP.NET applications
File authorization
File authorization validate the ACL (access control list) of the .aspx or .asmx handler file to determine whether a user should have access to the file.
How to implement Authorization ?
The following example shows a sample implementation of Authorization logic in web.config file.
Conclusion
Authentication focuses on verifying the identity of users, while authorization controls access to resources based on the authenticated user's permissions. Both authentication and authorization are crucial components of a secure ASP.NET application, working together to protect sensitive data and restrict unauthorized access.
- Asp.Net Interview Questions (Part-1)
- Asp.Net Interview Questions (Part-2)
- Advantages of ASP.NET Web Development
- What is IIS - Internet Information Server
- What is Virtual Directory
- What is HttpHandler
- Page Directives in Asp.Net
- What is a postback
- What is IsPostBack
- What is global.asax
- Difference between Machine.config and web.config
- Difference between HTML control and Web Server control
- What is Query String
- How to secure Connection Strings
- What is ASP.Net tracing
- Passing values between Asp.Net pages
- Differentiate between client side validation and server side validation
- How to Get host domain from URL
- Adding a Favicon To Your Website
- Asp.Net Textbox value in Javascript
- AutoEventWireup attribute in ASP.NET
- Can I use multiple programming languages in a ASP.net Web Application?
- Difference: Response.Write and Response.Output.Write
- How many web.config files can I have in an application?
- What is Protected Configuration in asp.net?
- Static variablesin .Net , what is their life span?
- Difference between ASP Session and ASP.NET Session?
- What does mean Stateless in Asp.Net?
- What is the Difference between session and caching?
- What are different types of caching using cache object of ASP.NET?
- Which method is used to remove the cache object?
- How many types of Cookies are available in ASP.NET?
- What is Page Life Cycle in ASP.net?
- What is the code behind and Inline Code in Asp.Net?
- What is master page in ASP.NET?
- Can you change a Master Page dynamically at runtime?
- What is cross-page posting in ASP.NET?
- How to redirect a page in asp.net without performing a round trip ?
- How to register custom server control on ASP.NET page?
- How do you validate Input data in Asp.Net?
- What's the difference between ViewData and ViewBag?
- Difference between Response.Redirect and Server.Transfer
- What is the function of the CustomValidator control?
- Define RequiredFieldValidator?
- Difference between custom control and user control
- Difference between Label and Literal control in ASP.Net
- What are the major events in Global.Asax file?
- What is Event Bubbling in asp.net ?
- What is Delay signing?
- What is the difference between in-proc and out-of-proc?
- What is the difference between POST and GET?
- A potentially dangerous Request.Form value was detected from the client