Comment éviter le stockage d'1 page html dans les temporary file

Fermé
Peter - 16 févr. 2015 à 18:13
codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018 - 20 févr. 2015 à 15:03
Bonjour,
Pour préserver la confidentialité, je souhaite qu'une page HTML ne soit relisible en allant fouiller dans les tempory files.
Pour cela, il ne faut pas quelle soit stockée sur le PC.
Ce qu'arrive très bien à faire les banques, mais je ne trouve par leur astuce.

Je précise, c'est sur le PC sur lequel s'affiche la page et nonlemien.

Merci de votre réponse.
A voir également:

3 réponses

codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018 123
17 févr. 2015 à 02:48
bonsoir,

Il faut utiliser la navigation privée. Cette pratique est disponible sur tous les navigateurs dont par exemple firefox qui explique très bien ici:
https://support.mozilla.org/fr/kb/navigation-privee-naviguer-avec-firefox-sans-enregistrer-historique?redirectlocale=fr&redirectslug=navigation-privee-naviguer-sans-conserver-infos-sites
0
Bonjour,
Merci pour ta réponse, ce n'est exactement ce que je recherche.
Comme, je l'ai précisé, mais ce n'était peut-être pas assez clair.
Ce n'est pas sur mon PC mais sur celui de tous ceux qui vont consulter ma page mise à disposition sur un mon site. Et je ne peux pas forcer la navigation privée sur leur PC.
Par exemple, quand je consulte mon compte bancaire, il n'y a rien en cache (heureusement), alors les banques savent le faire, mais comment ?
Il y a peut-être un script de décryptage ?
0
codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018 123
Modifié par codeurh24 le 17/02/2015 à 14:07
Même les banques on leurs pages mis en cache dans le navigateur car le principe d'une requête http (url get) c'est de paramétré le cache du client mais il n'existe rien pour que le client ne garde pas le cache. Il peut donc ne pas l'utiliser, c'est a dire ne pas s'occuper de réutiliser des ressources html, css, js, images mais seulement de les lires.

Le html, css, js sont des langages informatique en clair. N'importe qui ouvrant un des fichier avec bloc-note ou une visionneuse d'images peut les lires. Si celui qui accédés a ces données, a les connaissance suffisante pour les réutiliser, il peut le faire. Mais un code javascript complexe générant du html et offusqué limite énormément sa réutilisation.


En faite si tu as des données sensible a ne pas partager avec le client, il suffit de les crypter (données utilisable / réutilisable au sein du serveur) ou d'utiliser un langage protéger comme le PHP qui reste sur le serveur. Comme par exemple la connexion au site web.

Pour bien vérifier que ta banque a bien laisser des traces lors de sa consultation par ton navigateur tu peut avec chrome par exemple:

- te connecter a ta banque
- ensuite dans un autre onglet déjà ouvert, taper dans l'url: about:cache

et tu trouvera les fichiers brut utiliser par chrome.


Le cache client peut donc etre gérer que par le client.
Le serveur n'as que des options limiter vis a vis du client.
Le navigateur a besoin de données pour lires les pages web et les plus grand navigateur les exploites de maniéré a ne pas saturer le réseaux sauf en navigation privée qui prévois de ne pas permettre une utilisation des cache a consulté par le client mais comme tu dit c'est pas le client que tu veut mais le serveur donc voila.
ce n'est pas possible.
0
Peter > codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018
17 févr. 2015 à 15:52
Je te remercie de d'intéressé à mon cas.
Le test avec ma banque, je l'avais déjà fait avec I.E.
Je l'ai refait avec chrome.
Je peux t'assurer qu'il n'y aucun fichier dans le cache concernant ce qui s'affiche de confidentiel sur mon écran
Il n'y a que des fichiers, jpg, pgn, gif, css, js et un popup html sans intérêt ...

Par ailleurs, j'ai encore dû mal m'exprimer.
Je sais que tout ce qui part su serveur arrive en clair dans le navigateur (y compris d'ailleurs, ce qui est généré par du PHP par la commande echo ...).
Et donc, qu'il est possible de tout capturer, mais le but n'est pas de cacher les infos à celui qui est derrière l'écran mais à ceux qui viendront derrière.
Les seules possibilités sont donc de donner des directives au navigateur (à l'intérieur du Html) pour qu'il ne garde pas en la page en cache, ou de faire un script qui décrypte le contenu au moment de l'affichage.
Mais il y a peut-être d'autres possibilités comme inclure du texte ou autre dans un cadre. Enfin quelque chose qui compliquerait la tâche du cache.
J'ai vu qu'il y avait des meta balises "cache-control" et "pragma" je vais creuser de ce côté.
Si quelqu'un a déjà utilisé; est-ce que cela répond bien à ce que je voudrais faire ?

Pour moi, c'est possible, car la banque y arrive, je l'ai vérifié.

Merci.
0
Peter > Peter
18 févr. 2015 à 17:36
J'ai vaincu ma fainéantise, en allant regarder Ajax.
J'ai pris un exemple de script en ajoutant un ajaxsetup pour désactiver le cache.
J'ai mis un fichier ajax;info.txt sur le serveur qui doit être appeler par le script.
Ça fonctionne, sauf qu'on trouve le fichier txt dans le cache.
Ce cache a la peau dure.

Voici ma page html

<html>
<head>
<script>
$.ajaxSetup ({
// Disable caching of AJAX responses
cache: false
});

function loadXMLDoc()
{
var xmlhttp;
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
}
</script>
</head>
<body>

<div id="myDiv"><h2>Laissez AJAX changer ce text</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>

</body>
</html>
0
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 100
17 févr. 2015 à 14:08
Salut,

Je pense que si tu charges les parties sensibles de ta page en Ajax elle ne devrait pas apparaître dans les caches.
C'est juste une piste de recherche car je n'ai jamais utilisé Ajax dans ce but.
0
Je ne connaissais pas Ajax, j'ai regardé et cela semble être une solution.
Mais, il faudrait que j'apprenne encore un nouveau langage.
Merci de ton aide
0
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 100 > Peter
17 févr. 2015 à 15:58
Ce n'est pas un langage en soit, mais une technique utilisant javascript et html.
Pour faciliter son utilisation tu peux te tourner vers des librairies Javascript comme jquery.
Jquery (https://jquery.com/ embarque des fonctions toutes faites pour travaillez facilement avec Ajax
0
codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018 123
17 févr. 2015 à 16:06
ajax utilise http et une entête http permet de gérer le cache du client tout comme ce que jai dit plus haut.

Comment ça marche
L'objet ajax XMLHttpRequest est l'élément principal, il va vous permettre d'envoyer au serveur des données au format xml ou texte sous la forme d'une requête HTTP .
Le serveur interprète ces donnés via un langage serveur du type java, php, ....
Une fois le traitement fini, le serveur renvoie à l'objet ajax XMLHttpRequest une réponse au format xml ou texte.
Ce dialogue se fait de façon "asynchrone", c'est à dire sans rechargement de la page html.

source: http://www.aliasdmc.fr/coursjavas/cours_javascript167.html

donc la même chose qu'un chargement de page mais de façon invisible ou presque pour l'oeil d'un visiteur.


En cas ou ça ne serais pas encore clair, je suis développeur web depuis longtemps mais l'erreur reste humaine.
0
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 100 > codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018
17 févr. 2015 à 16:55
Personnellement je ne constate pas de trace de requêtes ajax json dans le cache.
Et même si c'est le cas, il est beaucoup plus difficile de recomposer la page vue par l'utilisateur d'après le cache pour quelqu'un de mal intentionné si elle est générée à partir de plusieurs requêtes ajax.
C'est juste une idée pas chère pour répondre à la problématique de sécurisation de Peter, même si il est certain que ça ne va pas faire de miracles et ne remplace pas une connexion sécurisée par exemple.

Moi aussi je suis développeur web depuis longtemps :-) mais on est pas là pour comparer nos CV.
0
Peter > Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015
18 févr. 2015 à 13:47
Merci pour ta réponse,
Mais, je ne suis pas webmaster, et à priori, il faudrait que j'apprenne un minimum de javascript,

Sur des forums, j'ai trouvé ça
<head>
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="pragma" content="no-cache" />

Ce qui est décrit omme faisant exactement ce que je voudrais, mais chez mois, en IE8, ça ne marche pas
0
codeurh24 Messages postés 760 Date d'inscription samedi 29 mars 2014 Statut Membre Dernière intervention 8 septembre 2018 123
20 févr. 2015 à 15:03
Re bonjour,

Je ne vois pas en quoi les url vont me servir a quelque chose a moins d'avoir un page complète et un fichier a récupérer par le tout les codes composant la page. Ici ça ne reproduit pas un cas concret. Le visiteur ne fera pas ça.

pour le cache tout est dit sur internet
https://fr.wikipedia.org/wiki/Cache-Control
Mais je te rassure il y en a plein d'autre que Wikipedia.

Regarde et test tout les cas de figure, tu remarque qu il y a aucune proposition de ne pas utiliser le cache mais seulement d'évité de le réutiliser( ce que j'ai déjà expliquer 100fois). voila donc en gros a quoi sert le cache contrôle.
Je ne vais pas me répéter j'ai déjà tout dit plus haut après, a part un cours particulier, je ne peut rien faire pour vous.

pour ce qui est de cache: false de ajax c'est juste pour dire que le cache ne sera pas réutilisé mais en aucun cas les données ne sont pas mis dans le cache.

jquery ne fait que de reprendre le ajax pure "XMLHttpRequest"
0