Roles.CacheRolesInCookie Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene un valor que indica si los roles del usuario actual se almacenan provisionalmente en una cookie.
public:
static property bool CacheRolesInCookie { bool get(); };
public static bool CacheRolesInCookie { get; }
static member CacheRolesInCookie : bool
Public Shared ReadOnly Property CacheRolesInCookie As Boolean
Valor de propiedad
true
si los roles del usuario actual se almacenan en memoria caché en una cookie; de lo contrario, false
. De manera predeterminada, es true
.
Ejemplos
En el ejemplo siguiente se muestra el elemento roleManager en la system.web
sección del archivo Web.config para una aplicación de ASP.NET. Especifica que la aplicación usa una SqlRoleProvider instancia de y establece el cacheRolesInCookie
atributo true
en .
<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>
Comentarios
Cuando la CacheRolesInCookie propiedad se establece true
en en el archivo Web.config, la información de rol de cada usuario se almacena en una cookie. Cuando la administración de roles comprueba si un usuario está en un rol determinado, se comprueba la cookie de roles antes de llamar al proveedor de roles para comprobar la lista de roles en el origen de datos. La cookie se actualiza dinámicamente para almacenar en caché los nombres de rol validados más recientemente.
Puede mejorar la confiabilidad de los nombres de rol almacenados en caché en una cookie especificando una CookieProtectionValue propiedad al configurar ASP.NET roles. El valor predeterminado CookieProtectionValue es All
, que cifra los nombres de rol en la cookie y valida que el contenido de la cookie no se ha modificado.
Nota
Dado que los nombres de rol se pueden almacenar en caché aparte del origen de datos, es posible que los cambios en la administración de roles en el origen de datos no se reflejen en los valores almacenados en caché. En este caso, el usuario debe cerrar y volver a abrir su explorador para borrar el valor de la cookie almacenada en caché.