Ich verwende Formularauthentifizierung und sende eine Aajx-Anfrage an den Server zur Authentifizierung. Basierend auf dem Json-Ergebnis entscheidet der Kunde, wohin er gehen und was zu tun ist. Das ist der Grund, warum ich FormsAuthentication.RedirectFromLoginPage nicht verwende, um die AJAX/JSON-Antwort nicht zu stören.Wie wird Request.IsAuthenticated auf "True" festgelegt, wenn FormsAuthentication.RedirectFromLoginPage nicht verwendet wird?
In diesem Fall gibt Request.IsAuthenticated false zurück, auch nachdem der Benutzer mit Membership.ValidateUser validiert wurde. Dann habe ich das Cookie mit
FormsAuthentication.SetAuthCookie(username, false);
Obwohl der zweite Parameter, dauerhaftes Cookie, falsch ist, das Cookie über Browser-Sitzungen noch gültig ist.
Gibt es eine Idee, wie Request.IsAuthenticated funktioniert, ohne FormsAuthentication.RedirectFromLoginPage zu verwenden?
Es ist möglich, Sie sind nicht das Cookie korrekt mit Hilfe eines AJAX-Request Einstellung ... – Jason
Haben Sie die Msdn Anweisungen unter http zu folgen versucht: //msdn.microsoft.com/en-us/library/bb398896.aspx? –
Dies ist besonders problematisch, wenn Sie versuchen, ein fälschungssicheres Token in Ihrer Ajax-Authentifizierungsanforderung (z. B. einem SPA) zu generieren und zurückzugeben. Asp.Net wird das Token für einen "" Benutzer generieren, da es annimmt, dass niemand gerade authentifiziert ist. – SeeNoWeevil