ASP.NET 2.0 includes membership services, which is a built-in mechanism for validating and storing user credentials, as well as storing and managing user profile information.  ASP.NET Membership uses a service provider model to allow "any backing store" to act as the membership data store.  Built-in to ASP.NET 2.0, Microsoft ships a SQL Server provider, as well as an ActiveDirectory (or ADAM) provider. What this means is, out of the box, you can manage members and logins of an ASP.NET web site using those backing stores. 

What if you have something different?  The service provider model enables other third-party implementations.  Microsoft hoped this would encourage people to just go build what they want, and in fact, that has happened. 

Here are some resources on third party ASP.NET membership providers: 

With all those resources, it's clear the extensibility model works.  Well, you need a custom provider, go get it. You want to write your own?  Get to it.

You can also look for more providers.