Question

J'ai ajouté le code suivant à mon masterpage (Page_Load) donc une fois qu'un utilisateur se déconnecte ils ne seront pas en mesure d'utiliser le bouton de retour pour voir la page qu'ils étaient auparavant à.

 Response.Buffer = true;
 Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
 Response.Expires = -1;
 Response.CacheControl = "no-cache";

Le problème est, mes utilisateurs veulent pouvoir utiliser le bouton de retour navigateur pendant qu'ils sont enregistrés dans l'application. Quand je commente le code à ne pas mettre en cache les pages qu'ils peuvent utiliser le bouton de retour, mais une fois qu'ils déconnectent ils peuvent utiliser le bouton de retour pour voir la page précédente, ils étaient sur ce qui provoque un risque de sécurité.

Quelqu'un at-il des suggestions afin qu'ils puissent utiliser le bouton de retour navigateur dans l'application, mais une fois qu'ils sont déconnectés, ils ne peuvent pas revenir dans l'application?

Était-ce utile?

La solution

L'objectif d'empêcher un utilisateur non authentifié de visiter subrepticement un ordinateur précédemment utilisé et de voir ce que faisait l'utilisateur authentifié? Dans ce dernier cas, vous devez rediriger l'utilisateur vers une page de fermeture de session qui a un window.close (); commande ainsi que la langue forte au sujet de ce qui est une exigence . Maintenant, ce n'est pas à toute épreuve: IE demander l'utilisateur s'ils sont prêts à laisser l'application fermer la fenêtre et les autres navigateurs ignorent la demande tout à fait. Cependant, dans le bon type d'environnement de sécurité, je pense qu'il ne fournit un ajout important à votre politique de sécurité -. Mais d'une variété essentiellement culturelle (elle aide les membres de la culture respectent les règles)

Si vous voulez « une seule fois à travers et vous avez terminé » type de sécurité alors je crains que le verrouillage le cache ou l'ajout de « window.forward () » à chaque page (qui empêche toute utilisation du bouton de retour ) est votre seule option.

Une autre chose: AJAX fournit des outils qui aident aussi bien. Vous pouvez mettre des informations sensibles sur un panneau de mise à jour et ont la charge de la page javascript déclencher un rafraîchissement du panneau de mise à jour. Étant donné que ce sera toujours revenir au serveur, les utilisateurs non authentifiés / expirées seront refusés. Ceci est une charge de travail assez important de prendre sur mais je pensais que je jette là-bas.

Autres conseils

YUI fournit un moyen de contrôler facilement l'histoire du navigateur pour poinçonner programme URL dans l'histoire. Jetez un coup d'oeil au gestionnaire Histoire Browser .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top