L'Authentification par formulaires Délai vs d'expiration de la Session
Dans mon asp.net site, je suis en utilisant asp.net formulaire d'authentification avec la configuration suivante
<authentication mode="Forms">
<forms loginUrl="~/Pages/Common/Login.aspx"
defaultUrl="~/Pages/index.aspx"
protection="All"
timeout="30"
name="MyAuthCookie"
path="/"
requireSSL="false"
cookieless="UseDeviceProfile"
enableCrossAppRedirects="false" >
</forms>
</authentication>
J'ai des questions suivantes
-
Ce que devrait être la valeur de délai d'expiration de session, car je suis à l'aide de glissement expiration forme à l'intérieur authention en raison de la session expirera avant la fin de formulaire d'authentification. Comment puis-je protéger?
-
Après formauthentication journal, je voudrais rediriger la page de déconnexion.aspx, mais il est automatiquement rediriger moi à loginpage.aspx. Comment est-il possible?
Vous devez vous connecter pour publier un commentaire.
Pour atteindre #2 vous pouvez vérifier manuellement le cookie et sa AuthenticationTicket pour la date d'expiration et les rediriger vers votre page personnalisée si ils ont expiré.
Vous pouvez le faire dans l'un des événements: AcquireRequestState, AuthenticateRequest.
Exemple de code dans l'événement peut ressembler à:
ticket.Expiration > DateTime.Now
correct? Je pense qu'elle doit être dans l'autre sens autour de sorte que la redirection se produit lorsque la Dateheure actuelle est supérieure à l'authentification de formulaires d'expiration du ticket.Pour les sites qui ont une session de dépendance, vous pouvez simplement le signe d'un état de l'authentification avec le début de la session de l'événement dans le monde.asax:
Ce qu'il fait en sorte que la nouvelle session = new authentification, période.