Frage

Ich implementiere eine benutzerdefinierte Identitätsklasse für eine ASP.NET 4.0 -Site mit Formsauthentifizierung basierend auf diesem Tutorial:
Formulare Authentifizierungskonfiguration und erweiterte Themen

Ich möchte im Authookie zusätzliche Benutzerinformationen (First/Nachname, Geschlecht, Geografische Region, Profilbild -Miniaturagname usw.) speichern. Es gibt eine Warnung auf msdn.microsoft.com Über die Größe der Benutzerdata -Eigenschaft einzuschränken.

Ich konnte keine endgültige Zeichengrenze für die UserData -Eigenschaft finden. Nur das das gesamte verschlüsselt Cookie sollte unter 4096 Bytes sein.

Kennt jemand eine maximale Zeichengrenze, die ich in meinem Code annehmen sollte? Oder haben Sie eine bessere Vorstellung davon, wie Sie diese häufig benötigten Benutzerinformationen speichern können?

Vielen Dank

War es hilfreich?

Lösung

Es gibt keine explizite Grenze - die maximale Größe hängt beispielsweise von der Länge des Benutzernamens ab. Auch die maximale Größe eines Keks (oder einer URL, wenn Sie Cookieless-Tickets verwenden) ist Browser-abhängig.

Sie können diese Art von Informationsserver (z. B. Sitzung) speichern, möglicherweise mit einer Art Schlüssel / ID im Cookie. Eine Möglichkeit, dies zu tun Implementieren Sie einen Brauch ProfileProvider.

Ein Nachteil des Speicherns anwendungsspezifischer Informationen, wie Sie im Formsauthentication Cookie beschreiben, besteht darin, dass Sie eine Neugestaltung benötigen, wenn Ihre Anwendung jemals von FormsAuthentication zu einer anderen Authentifizierungsmethode (z. B. WindowsAuthentication) wechseln muss.

Persönlich würde ich nur Informationen speichern, die für die Authentifizierung und möglicherweise die Autorisierung im Formsauthentifizierungs -Cookie relevant sind, wie alles andere tun würde Erhöhen Sie die Kopplung.

Andere Tipps

Es hängt von der Max -Kekslänge des Browsers ab. Dieser Artikel kann helfen: Browser Cookie Limit

Und dieser Artikel hilft Ihnen auch, Ihre aktuelle Authentifizierungs -Ticketgröße zu überprüfen:ASP.NET -Authentifizierungs -Ticketprüfung

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top