Introduction

Authentication is a major concern for both application architects and developers. Applications that store sensitive information need to be protected from malicious attacks and from competitors attempting to steal information or intellectual property. When designing a security model for your application, you need to be aware of Authentication requirements from a business perspective and the implications that a chosen security model can have on performance, scalability, and deployment.

Authentication Methods

ASP. NET provides different methods to authenticate a user:

Overview of Anonymous Authentication

Typical Usage Scenarios

Consider Anonymous authentication when:

Do not use Anonymous authentication when:

Other considerations

Good choice for sites containing personalized content only

-Impersonation cannot be used

-Gives highest performance, but lowest security

Implementation

  1. <!-- web.config file -->
  2. <system.web>
  3. <authentication mode="None" />
  4. </system.web>

Overview of Basic Authentication

IIS instructs the browser to send the user's credentials over HTTP

Most browsers support Basic authentication

Usage scenarios Typical

Consider Basic authentication when you require:

Do not use Basic authentication when you require:

Other considerations

Implementation

  1. <!-- web.config file -->
  2. <system.web>
  3. <authentication mode="Windows" />
  4. </system.web>

Overview of Digest Authentication

Typical usage scenarios

Consider Digest authentication when:

Do not use Digest authentication when:

Other considerations

Security

Platform requirements for Digest authentication Implementation
  1. <!-- web.config file -->
  2. <system.web>
  3. <authentication mode="Windows" />
  4. </system.web>
Overview of Integrated Windows Authentication
Typical usage scenarios
Consider Integrated Windows authentication when: Do not use Integrated Windows authentication when: Other considerations
Implementation
Clients and servers must be running Windows 2000 in a Windows 2000 domain Configure IIS for Integrated Windows authentication

Configure the ASP.NET Web.config file
  1. <!-- web.config file -->
  2. <system.web>
  3. <authentication mode="Windows" />
  4. </system.web>
Overview of Certificate Authentication
certificate.gif
Typical usage scenarios
Consider Certificate authentication when: Do not use Certificate authentication when:
Other considerations
Client certificates must be deployed to the client workstations

Map certificates to: Implementation
  1. <!-- web.config file -->
  2. <system.web>
  3. <authentication mode="Windows" />
  4. </system.web>
Overview of port Authentication
Typical usage scenarios
Consider port authentication when: Do not use port authentication when: Other considerations Implementation
  1. <!-- web.config file -->
  2. <system.web>
  3. <authentication mode="port" />
  4. </system.web>
Overview of Forms Authentication
form.gif
Typical usage scenarios
Consider Forms authentication when: Do not use Forms authentication when: Other considerations Implementation

  1. <!-- web.config file -->
  2. <system.web>
  3. <authentication mode="Forms"
  4. <forms loginUrl="login.aspx"/>
  5. />
  6. </system.web>

Summary

This article discusses the importance of authentication method when designing a server application. Both Microsoft Internet Information Services (IIS) and ASP.NET provide authentication method that will allow you to authenticate your users appropriately and obtain the correct security context within your application.