With the release of ASP.NET 2.0, Microsoft introduced Web developers to the
"provider" model that addresses common application infrastructure needs using
a system of pluggable modules adhering to common interfaces.
ASP.NET shipped with modules to cover Membership (authentication), Roles
(authorization), Sitemap (navigation), and others. These modules work with
each other, and with many of the controls included in Visual Studio, to
drastically reduce the amount of code needed to perform the functions that
nearly every Web application requires.
Each provider shipped with multiple implementations to cover the most common
development and deployment scenarios. More importantly, the providers were
built in a way that lets developers customize key elements of functionality
wit... (more)