Roles.CacheRolesInCookie Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen Wert ab, der angibt, ob die Rollen des aktuellen Benutzers in einem Cookie zwischengespeichert werden.
public:
static property bool CacheRolesInCookie { bool get(); };
public static bool CacheRolesInCookie { get; }
static member CacheRolesInCookie : bool
Public Shared ReadOnly Property CacheRolesInCookie As Boolean
Eigenschaftswert
true
, wenn die Rollen des aktuellen Benutzers in einem Cookie zwischengespeichert werden, andernfalls false
. Der Standardwert ist true
.
Beispiele
Das folgende Beispiel zeigt das roleManager-Element im system.web
Abschnitt der Web.config-Datei für eine ASP.NET-Anwendung. Es gibt an, dass die Anwendung eine SqlRoleProvider -Instanz verwendet, und legt das cacheRolesInCookie
-Attribut auf fest 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>
Hinweise
Wenn die CacheRolesInCookie -Eigenschaft in der Web.config-Datei auf true
festgelegt ist, werden Rolleninformationen für jeden Benutzer in einem Cookie gespeichert. Wenn die Rollenverwaltung überprüft, ob ein Benutzer in einer bestimmten Rolle ist, wird das Rollencooky überprüft, bevor der Rollenanbieter aufgerufen wird, um die Liste der Rollen in der Datenquelle zu überprüfen. Das Cookie wird dynamisch aktualisiert, um die zuletzt überprüften Rollennamen zwischenzuspeichern.
Sie können die Zuverlässigkeit der in einem Cookie zwischengespeicherten Rollennamen verbessern, indem Sie beim Konfigurieren ASP.NET Rollen eine CookieProtectionValue -Eigenschaft angeben. Der Standardwert CookieProtectionValue ist All
, wodurch Rollennamen im Cookie verschlüsselt und überprüft werden, ob der Cookieinhalt nicht geändert wurde.
Hinweis
Da Rollennamen außer der Datenquelle zwischengespeichert werden können, ist es möglich, dass Änderungen an der Rollenverwaltung in der Datenquelle nicht in den zwischengespeicherten Werten widerzuspiegeln sind. In diesem Fall muss der Benutzer seinen Browser schließen und erneut öffnen, um den zwischengespeicherten Cookiewert zu löschen.