Before we understand the provider model we need to know
about the Factory Method design pattern. As factory method is out of scope for
this article, we will only cover it in brief.
We have an abstract creator class that is responsible for
creating a product. The concrete implementation for this class creates a
concrete product. The creator class has a method "Factory Method."
This method decides what product the creator creates (based on some parameters).
Provider model extends/implements the factory method
pattern. ProviderBase Class is the base class for all the providers that
implement all the basic methods and properties that are common to all the
providers. In ASP.NET applications we simply give the type of the class that
needs to be loaded. For specifying the type of the class the contract for the
base class type is the ProviderBase class, we specify the type of the class
name in the web.config file. Let us see how we configure an application with
different security providers.