AuthorizationStoreRoleProvider Classe

Definizione

Gestisce l'archiviazione delle informazioni sull'appartenenza ai ruoli per un'applicazione ASP.NET in un archivio criteri di gestione autorizzazioni, in un file XML, in un Active Directory o in un server in modalità applicazione Active Directory.

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à
AuthorizationStoreRoleProvider

Esempio

Nell'esempio di codice seguente viene illustrato un set di file Web.config 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 classi Roles e RolePrincipal per fornire servizi di gestione dei ruoli per un'applicazione ASP.NET usando 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 usando il Microsoft Management Console.

L'oggetto AuthorizationStoreRoleProvider funziona con le modalità di autenticazione autenticazione di Windows e form.

È possibile configurare l'oggetto AuthorizationStoreRoleProvider per utilizzare un file XML locale o un server Active Directory o Active Directory modalità applicazione (ADAM). Quando si usa un file locale, il stringa di connessione dovrebbe essere simile all'esempio seguente.

msxml://<path to xml file>

Se il file locale viene archiviato nell'albero della 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à un 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 directory App_Data. 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, il 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 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 dei 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 di attendibilità bassa predefinito concede solo un'autorizzazione di lettura dell'applicazione ASP.NET nella directory dell'applicazione. Inoltre, l'identità del processo con 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 interno AuthorizationStoreRoleProvider usa l'interoperabilità COM.

Quando si usa l'oggetto AuthorizationStoreRoleProvider all'esterno di ASP.NET, il codice chiamante necessita dell'autorizzazione non gestita.When using the AuthorizationStoreRoleProvider object outside of ASP.NET, the calling code needs unmanaged-code permission.

Costruttori

Nome Descrizione
AuthorizationStoreRoleProvider()

Inizializza una nuova istanza della classe AuthorizationStoreRoleProvider.

Proprietà

Nome Descrizione
ApplicationName

Ottiene o imposta il nome dell'applicazione dell'archivio di autorizzazioni per cui archiviare e recuperare le informazioni sul ruolo.

CacheRefreshInterval

Ottiene il numero di minuti tra gli aggiornamenti della cache dei dati dell'archivio criteri.

Description

Ottiene una breve descrizione descrittiva adatta per la visualizzazione negli strumenti di amministrazione o in altre interfacce utente.

(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 di autorizzazioni.

Metodi

Nome Descrizione
AddUsersToRoles(String[], String[])

Aggiunge i nomi utente specificati a ognuno dei ruoli specificati.

CreateRole(String)

Aggiunge un nuovo ruolo all'archivio criteri di gestione autorizzazioni del ruolo.

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 dei ruoli in cui si trova un utente.

GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
GetUsersInRole(String)

Ottiene un elenco di utenti nel 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 si trova nel ruolo specificato.

MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
RemoveUsersFromRoles(String[], String[])

Rimuove 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 authorization-manager.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a

Vedi anche