Roles.CacheRolesInCookie Proprietà
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.
Ottiene un valore che indica se i ruoli dell'utente corrente sono memorizzati in un cookie.
public:
static property bool CacheRolesInCookie { bool get(); };
public static bool CacheRolesInCookie { get; }
static member CacheRolesInCookie : bool
Public Shared ReadOnly Property CacheRolesInCookie As Boolean
Valore della proprietà
true
se i ruoli dell'utente corrente sono memorizzati in un cookie; in caso contrario, false
. Il valore predefinito è true
.
Esempio
Nell'esempio seguente viene illustrato l'elemento roleManager nella system.web
sezione del file Web.config per un'applicazione ASP.NET. Specifica che l'applicazione usa un'istanza SqlRoleProvider e imposta l'attributo cacheRolesInCookie
su true
.
<roleManager defaultProvider="SqlProvider"
enabled="true"
cacheRolesInCookie="true"
cookieName=".ASPROLES"
cookieTimeout="30"
cookiePath="/"
cookieRequireSSL="false"
cookieSlidingExpiration="true"
cookieProtection="All" >
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlRoleProvider"
connectionStringName="SqlServices"
applicationName="MyApplication" />
</providers>
</roleManager>
Commenti
Quando la proprietà è impostata su true
nel file Web.config, le CacheRolesInCookie informazioni sul ruolo per ogni utente vengono archiviate in un cookie. Quando la gestione dei ruoli verifica se un utente si trova in un ruolo specifico, il cookie dei ruoli viene controllato prima che il provider di ruoli venga chiamato per controllare l'elenco dei ruoli nell'origine dati. Il cookie viene aggiornato dinamicamente per memorizzare nella cache i nomi dei ruoli convalidati più di recente.
È possibile migliorare l'affidabilità dei nomi dei ruoli memorizzati nella cache in un cookie specificando una CookieProtectionValue proprietà quando si configurano i ruoli di ASP.NET. Il valore predefinito CookieProtectionValue è All
, che crittografa i nomi dei ruoli nel cookie e verifica che il contenuto del cookie non sia stato modificato.
Nota
Poiché i nomi dei ruoli possono essere memorizzati nella cache oltre all'origine dati, è possibile che le modifiche apportate alla gestione dei ruoli all'origine dati non vengano riflesse nei valori memorizzati nella cache. In questo caso, l'utente deve chiudere e riaprire il browser per cancellare il valore del cookie memorizzato nella cache.