Provider di appartenenze
Aggiornamento: novembre 2007
Un modello di provider consente di adattare facilmente il sistema di appartenenze per l'utilizzo di archivi dati differenti o archivi dati con schemi differenti. È inoltre possibile estendere il sistema di appartenenze creando un provider personalizzato, che consenta di implementare un'interfaccia tra il sistema stesso e un database di utenti esistente.
Un'importante caratteristica del modello di appartenenze a più livelli è data dal fatto che le applicazioni che utilizzano il sistema di appartenenze non sono associate a un archivio dati specifico. Se necessario, è possibile cambiare l'archivio dati delle appartenenze sottostante senza modificare il codice dell'applicazione, configurando quest'ultima per l'utilizzo di un provider di appartenenze differente e naturalmente eseguendo la migrazione di tutte le informazioni esistenti relative agli utenti. Se ad esempio esiste già un database contenente informazioni sugli utenti, è possibile creare un provider che sia in grado di utilizzare tali dati e che possa essere chiamato dalle apposite API per l'esecuzione di attività inerenti alle appartenenze.
ASP.NET viene fornito con due provider di appartenenze, che utilizzano rispettivamente Microsoft SQL Server e Active Directory di Windows come origine dati. Possono essere disponibili provider di appartenenze di terze parti per altri database, ad esempio Oracle, o per database di SQL Server con uno schema diverso da quello utilizzato dai provider ASP.NET.
È inoltre possibile configurare più provider di appartenenze, per consentire di selezionare in fase di esecuzione un provider specifico in base ai requisiti dell'applicazione. È ad esempio possibile che, per motivi di gestione aziendale, le informazioni sulle appartenenze siano archiviate in database separati per area geografica. Configurando più provider di appartenenze, ciascuno dei quali interagisce con un database differente, è possibile indirizzare le chiamate di appartenenza dei diversi utenti al provider appropriato.
Provider di appartenenze personalizzati
È anche possibile creare un provider di appartenenze personalizzato, che consenta di collegare il sistema di appartenenze a un database di utenti già esistente, di connettersi a un database non supportato dai provider inclusi in ASP.NET o di estendere il sistema di appartenenze in modo da esporre altre funzionalità.
Una volta creato un provider di appartenenze personalizzato, è possibile configurare l'applicazione per l'utilizzo di tale provider esattamente come per un provider ASP.NET. La classe Membership richiamerà automaticamente il provider personalizzato per comunicare con l'origine dati di autenticazione.
Per informazioni dettagliate sulla creazione di un provider di appartenenze personalizzato, vedere Implementazione di un provider di appartenenze e Implementazione di un provider di appartenenze di esempio.