2010-12-03 45 views
1

En raison de contraintes de sécurité, il est impératif que la page visitée ne figure pas dans l'historique du navigateur.Comment sauter l'historique de la page vistée dans le navigateur

Ainsi, les pages n'a pas besoin d'être montré dans l'histoire du tout.

J'ai essayé les méthodes suivantes, mais j'ai échoué.

Solution 1:

1. <% 
2. session.invalidate(); 
3. response.setHeader("Cache-Control","no-cache"); 
4. response.setHeader("Cache-Control","no-store"); 
5. response.setDateHeader("Expires", 0); 
6. response.sendRedirect("home.jsp"); 
7. %> 

Solution 2:

<% 
Response.Cache.SetExpires(DateTime.Parse(DateTime.Now.ToString())) 
Response.Cache.SetCacheability(HttpCacheability.Private) 
Response.Cache.SetNoStore() 
Response.AppendHeader("Pragma", "no-cache") 
%> 

Solution 3:

<body onload="history.forward()"> 

Solution 4:

<% 
response.setDateHeader("Last-Modified", System.currentTimeMillis()); 
%> 

Comme dans Firefox, il y a Outils fonctionnalités -> Démarrer la navigation privée qui ne stocke aucune donnée de session. Y at-il quelque chose qui peut être fait par JavaScript pour y parvenir.

Répondre

3

Vous ne pouvez pas compter sur le côté client lorsque la sécurité est importante. Tous les navigateurs ont une implémentation différente pour l'historique. Vous devriez compter sur une solution côté serveur.

2

Vous ne pouvez pas le faire en utilisant tous les quatre moyens ci-dessus.

La seule chose que vous pouvez le faire mettre votre URL telle que son unique et ne peut pas être revisitée selon vos besoins.

1

Ce comportement est sous le contrôle du navigateur et non le serveur, vos options sont très limitées.

Une façon d'y parvenir est de créer une page sur le site A qui contient juste un iframe qui charge le contenu du site que vous ne voulez pas voir dans l'historique du navigateur.

Mais il sera encore fragile. Les utilisateurs peuvent utiliser "Ouvrir un lien dans une nouvelle fenêtre/onglet" pour sortir de votre shell. Si vous avez accès aux clients, une solution consiste à installer les navigateurs dont l'historique est désactivé dans les paramètres et à restreindre l'accès aux préférences du navigateur afin que les utilisateurs ne puissent pas modifier cette option.

0

Cela sent la "sécurité par l'obscurité". Vous devriez aborder le vrai problème (les données sensibles dans les URL) au lieu de brouiller votre chemin autour de lui. Il suffit de faire en sorte que les URL ne contiennent aucune information sensible (et ne le faites pas en enveloppant la page entière dans un iframe - ce n'est encore qu'un peu d'obfuscation).