AuthorizationStoreRoleProvider Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Gestisce l'archiviazione delle informazioni relative all'appartenenza del ruolo per un'applicazione ASP.NET in un archivio criteri di gestione autorizzazioni, o in un file XML, in Active Directory o su un server Active Directory Application Mode.
public ref class AuthorizationStoreRoleProvider : System::Web::Security::RoleProvider
public class AuthorizationStoreRoleProvider : System.Web.Security.RoleProvider
type AuthorizationStoreRoleProvider = class
inherit RoleProvider
Public Class AuthorizationStoreRoleProvider
Inherits RoleProvider
- Ereditarietà
Esempio
Nell'esempio di codice seguente viene illustrato un Web.config set di file da usare per la gestione dei AuthorizationStoreRoleProvider ruoli.
<configuration>
<connectionStrings>
<add name="AuthorizationServices" connectionString="msxml://~\App_Data\SampleStore.xml" />
</connectionStrings>
<system.web>
<authentication mode="Windows" />
<identity impersonate="true" />
<roleManager defaultProvider="AuthorizationStoreRoleProvider"
enabled="true"
cacheRolesInCookie="true"
cookieName=".ASPROLES"
cookieTimeout="30"
cookiePath="/"
cookieRequireSSL="false"
cookieSlidingExpiration="true"
cookieProtection="All" >
<providers>
<clear />
<add
name="AuthorizationStoreRoleProvider"
type="System.Web.Security.AuthorizationStoreRoleProvider"
connectionStringName="AuthorizationServices"
applicationName="SampleApplication"
cacheRefreshInterval="60"
scopeName="" />
</providers>
</roleManager>
</system.web>
</configuration>
Commenti
Questa classe viene usata dalle Roles classi e RolePrincipal per fornire servizi di gestione dei ruoli per un'applicazione ASP.NET tramite un archivio di gestione autorizzazioni. È possibile usare la gestione dei ruoli per specificare diversi livelli di autorizzazione per l'applicazione. È possibile accedere al gestore autorizzazioni tramite Microsoft Management Console.
L'oggetto AuthorizationStoreRoleProvider funziona sia con l'autenticazione di Windows che con le modalità di autenticazione basata su form.
È possibile configurare l'oggetto AuthorizationStoreRoleProvider in modo che usi un file XML locale o un server Active Directory o active Directory Application Mode (ADAM). Quando si usa un file locale, la stringa di connessione dovrebbe essere simile all'esempio seguente.
msxml://<path to xml file>
Se il file locale viene archiviato nell'albero delle directory di un'applicazione Web ASP.NET, è possibile usare il carattere tilde ("~") per indicare la directory radice. Ad esempio, per indicare che il file locale viene archiviato nella directory dei dati dell'applicazione Web, si userà una stringa di connessione simile all'esempio seguente.
msxml://~\App_Data\datafilename.xml
Importante
L'archiviazione di un file di dati XML nella directory dell'applicazione Web è una potenziale minaccia per la sicurezza. Per impostazione predefinita, IIS gestisce i file di dati XML sul Web. Per migliorare la sicurezza quando si usa un file di dati locale in un'applicazione ASP.NET, è necessario archiviare il file di dati nella App_Data
directory . I file archiviati nella App_Data
directory non verranno serviti al Web.
Se si usa un server Active Directory o ADAM per l'archivio criteri, la stringa di connessione dovrebbe essere simile all'esempio seguente.
msldap://myserver/CN=MyAzManStore,OU=MyOU,DC=MyDomain,DC=MyDC,DC=Com
Le eccezioni elencate nella documentazione per AuthorizationStoreRoleProvider i metodi oggetto sono le eccezioni generate dall'oggetto AuthorizationStoreRoleProvider . Poiché il provider si basa sul runtime di Authentication Manager sottostante, può essere generata un'eccezione COMException ogni volta che l'oggetto AuthorizationStoreRoleProvider inoltra una chiamata al metodo al runtime di Authentication Manager.
Importante
L'oggetto AuthorizationStoreRoleProvider presenta i requisiti seguenti per l'esecuzione in ambienti parzialmente attendibili:
Quando si usa un archivio criteri basato su file in un'applicazione ASP.NET, le autorizzazioni di I/O del file concesse dal livello di attendibilità corrente determinano se le azioni di lettura e scrittura sono consentite dal provider. L'applicazione ASP.NET deve disporre dell'autorizzazione di lettura per il file per leggere i dati dall'archivio criteri e deve disporre dell'autorizzazione di scrittura per salvare nuove informazioni o aggiornare le informazioni esistenti nell'archivio criteri. Il file di criteri di attendibilità media predefinito fornisce un ASP.NET autorizzazioni di lettura/scrittura dell'applicazione nella directory dell'applicazione. Il file di criteri con attendibilità bassa predefinita concede solo un'autorizzazione di lettura dell'applicazione ASP.NET nella directory dell'applicazione. Inoltre, l'identità del processo in cui viene eseguita l'applicazione ASP.NET deve disporre delle autorizzazioni del file system per leggere e/o scrivere il file di criteri.
Quando si usa un server Active Directory o ADAM, l'applicazione ASP.NET richiede l'autorizzazione di codice non gestito perché il codice oggetto interno AuthorizationStoreRoleProvider usa l'interoperabilità COM.
Quando si usa l'oggetto all'esterno di ASP.NET, il codice chiamante richiede l'autorizzazione AuthorizationStoreRoleProvider codice non gestito.
Costruttori
AuthorizationStoreRoleProvider() |
Inizializza una nuova istanza della classe AuthorizationStoreRoleProvider. |
Proprietà
ApplicationName |
Ottiene o imposta il nome dell'applicazione dell'archivio autorizzazioni per cui archiviare e recuperare le informazioni sui ruoli. |
CacheRefreshInterval |
Ottiene il numero di minuti tra gli aggiornamenti della cache dei dati dell'archivio criteri. |
Description |
Ottiene una breve descrizione di facile comprensione che è possibile visualizzare in strumenti di amministrazione o in altre interfacce utente (UI, User Interface). (Ereditato da ProviderBase) |
Name |
Ottiene il nome descrittivo utilizzato per fare riferimento al provider durante la configurazione. (Ereditato da ProviderBase) |
ScopeName |
Ottiene o imposta il nome dell'ambito per l'archivio autorizzazioni. |
Metodi
AddUsersToRoles(String[], String[]) |
Aggiunge i nomi utente specificati a ognuno dei ruoli specificati. |
CreateRole(String) |
Aggiunge un nuovo ruolo all'archivio criteri di gestione autorizzazione. |
DeleteRole(String, Boolean) |
Rimuove un ruolo dall'archivio criteri di gestione autorizzazioni. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
FindUsersInRole(String, String) |
Questo metodo non è supportato dal provider di ruoli dell'archivio autorizzazioni. |
GetAllRoles() |
Ottiene un elenco di tutti i ruoli per l'applicazione. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetRolesForUser(String) |
Ottiene un elenco di ruoli a cui appartiene un utente. |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
GetUsersInRole(String) |
Ottiene un elenco di utenti appartenenti al ruolo specificato. |
Initialize(String, NameValueCollection) |
Inizializza il provider di ruoli di gestione autorizzazioni con i valori delle proprietà specificati nel file di configurazione dell'applicazione ASP.NET. Questo metodo non deve essere usato direttamente dal codice. |
IsUserInRole(String, String) |
Ottiene un valore che indica se l'utente specificato appartiene al ruolo specificato. |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
RemoveUsersFromRoles(String[], String[]) |
Consente di rimuovere i nomi utente specificati dai ruoli specificati. |
RoleExists(String) |
Ottiene un valore che indica se il nome del ruolo specificato esiste già nell'archivio criteri di gestione autorizzazioni. |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |