What are the various ways of authentication techniques in ASP.NET?
The Selection of an authentication provider is as simple as making an entry in the web.config file of the application. You can use one of the entries to select the corresponding built in the authentication provider:
4) The Custom authentication where you might install an ISAPI filter in IIS which compares incoming requests to the list of source IP addresses, & considers requests to be authenticated if they come from an acceptable address. In that situation, you would set the authentication mode to none to secure any of the .net authentication providers from being triggered.
Windows authentication and IIS
If you choose windows authentication for your ASP.NET application, you also have to configure authentication within the IIS. As the IIS provides Windows authentication. The IIS gives you a choice for four different authentication methods:
Anonymous, digest, basic & windows integrated.
If you choose anonymous authentication, The IIS doesn't perform any authentication, anyone is allowed to access the ASP.NET application.
If you choose basic authentication, users must provide a windows username and password to connect. However this information is sent over the network in the clear text that makes basic authentication very much insecure over the internet.
If you choose digest authentication, users should still provide a windows user name and password to connect. However password is hashed before it is sent across the network. The Digest authentication needs that all users be running Internet Explorer 5 or latest and that windows accounts to stored in active directory.
If you choose windows integrated authentication, the passwords never cross the network. The Users must still have a username and password, but the application uses either the Kerberos or challenge/response protocols authenticate the user. The Windows-integrated authentication requires that all users be running internet explorer 3.01 or latest Kerberos is a network authentication protocol. It is designed to provide a strong authentication for client/server applications by using the secret-key cryptography. The Kerberos is a solution to network security problems. It gives the strong cryptography & tools of authentication over the network to help to secure the information in systems across entire enterprises.
The Passport authentication lets you to use Microsoft's passport service to authenticate users of your application. If your users have signed up with the passport, & you configure the authentication mode of the application to the passport authentication, all the authentication duties are off-loaded to the passport servers.
The Passport uses an encrypted cookie process to indicate the authenticated users. If users have already signed into passport when they visit your site, they will be considered authenticated by the ASP.NET. Otherwise they will be redirected to the passport servers to log in. Whenever they successfully log in, they'll be redirected back to your site.
To use passport authentication you have to download the Passport Software Development Kit (SDK) and install it on your server. The SDK can be found at http:// msdn.microsoft.com/library/default.asp?url=/downloads/list/websrvpass.aps. It includes full details of implementing passport authentication in your own applications.
The Forms authentication process provides you with a way to handle authentication using your own custom logic within an ASP.NET application.
If you choose forms authentication the following applies.
1) Whenever a user requests a page for the application, the ASP.NET checks for the presence of a special session cookie. If the cookie is present, ASP.NET assumes that the user is authenticated and processes the request.
2) If the cookie is not present, the ASP.NET redirects the user to a web form you provide.
You can take out whatever authentication, it check's you like it checks your form. Whenever the user is authenticated, you indicate this to ASP.NET by fixing a property, which creates the special cookie to handle subsequent requests.