Как я могу предотвратить несанкционированный просмотр контента (php / js) - PullRequest
0 голосов
/ 09 июня 2011

Как я могу запретить (неавторизованным) людям читать сообщения на веб-сайте (например, просматривая текст / изображения в кэше браузера)? **

  • Это ПУБЛИКАЦИЯ(!) site (означает: здесь нет логинов!)

Но:

  • (секретное) сообщение отображается только в течение определенного времени.

  • сообщение может отображаться, только если указан пароль.

Проблемы:

  • В Opera, например, страница (= содержимое страницы / текст) может быть проиндексирована браузером и найдена.

  • Одной из идей было создание изображения с сообщением ... но: такжеизображения - даже если заголовок "no cache" отправляется, можно получить из кэша FireFox.

  • Также: воссоздание сообщения из отдельных символов в качестве изображения не работает (по крайней мере, я так думаюв данный момент).Я попробовал этот метод, но он делает вывод довольно медленным (пишу так: я замечаю, что мне не нужно создавать изображения во время выполнения, но я могу создавать изображения (из отдельных букв) заранее и отображать / ссылаться на них не по-настоящему,но псевдослучайные имена в HTML)

  • У меня также была идея вывести закодированное сообщение (ROT13) (в HTML), но использовать JS .onload для немедленного декодирования сообщения.Проблема: если этот код находится в HTML, он может быть впоследствии восстановлен из кэша.По крайней мере, если кто-то ищет в кэше (Opera), он, вероятно, не подумает ввести закодированные поисковые термины.

Язык программирования - PHP.

Ответы [ 3 ]

1 голос
/ 09 июня 2011

Вы можете добавить секретный код на страницу с помощью javascript после загрузки страницы.Вы хотели бы получить секретный код с помощью AJAX, а затем записать его на страницу - таким образом, код не кэшируется в HTML-части исходного кода и не находится в javascript в исходном коде страницы..

Содержимое, переданное с помощью AJAX, довольно эфемерно, оно не будет кэшироваться или иным образом записываться.

Поскольку я ничего не знаю о вашем HTML или какой (если таковой имеется) инфраструктуре javascriptвы можете использовать, я не могу дать вам пример кода, но вы должны быть в состоянии работать с концепцией.

1 голос
/ 09 июня 2011

Реально, если оно отправлено клиенту и отображается на экране, вы не можете предотвратить сохранение или сохранение сообщения на клиентском компьютере.Что бы вы ни делали, чтобы предотвратить это сохранение, все еще можно обойти простым скриншотом.

Если вас не волнует человек, которому сообщение предназначено для сохранения указанного сообщения, то я думаю, что вашим лучшим вариантом действий будет использованиеFlash с Flash делает вызов на сервер, чтобы получить сообщение и отобразить его.Другим вариантом может быть использование javascript для выполнения некоторой формы вызова (AJAX) на сервер, который затем отправляет обратно сообщение, и вы изменяете DOM для отображения сообщения.Я не думаю, что это будет кэшировано, но если вы не используете SSL, он может быть сохранен промежуточными прокси.

1 голос
/ 09 июня 2011

Вы не можете. Что если кто-то сделает снимок экрана с этим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...