Поколение PDF с PHP, включая срок годности - PullRequest
0 голосов
/ 30 мая 2011

Я должен отправить пользователям текстовую информацию с веб-сервера. К сожалению, этот текст должен быть уничтожен (что означает, что доступ к информации должен быть запрещен) через 7 дней. Поэтому одна идея состоит в том, чтобы создать PDF-файл с «датой истечения срока действия» внутри, чтобы получить файл, который не может быть открыт после 7. дня. Возможно ли это с помощью PHP?

а с чего начать?

Мне не нужно решение, которое на 100% безопасно. Ответственность будет передана пользователю, если он пойдет запрещенным путем, чтобы сохранить, скопировать или манипулировать этим документом. Я надеюсь найти способ сделать контент нечитаемым (даже это (только) первое впечатление). Но, похоже, пути не будет.

Ответы [ 3 ]

4 голосов
/ 30 мая 2011

После того, как PDF создан, его нельзя «уничтожить».В PDF нет поддержки для «не открывать через 7 дней», и такая поддержка ПОЛНОСТЬЮ зависит от приложения для просмотра PDF, которое его поддерживает.Ничто не говорит о том, что пользователь не может сбросить свои системные часы обратно на дату / время, которые в любом случае попадают под лимит просмотра PDF.

Флажки безопасности PDF (in) ограничены шифрованием документа, поэтому он не можетбыть отредактирован, и некоторые флаги SUGGEST для средства просмотра pd о том, что печать, чтение экрана или очистка текста должны быть запрещены.Но они просто ПРЕДЛОЖЕНИЯ, и средство просмотра PDF может свободно интерпретировать / игнорировать их так, как захочет.

В конечном счете, эта «система» безопасности будет бесполезна и тривиально обойдена.А поскольку он основан на браузере, вы абсолютно ничего не можете сделать для управления компьютером удаленного пользователя, чтобы предотвратить загрузку / кэширование / сохранение данных в той или иной форме.

1 голос
/ 31 мая 2011

Вы можете поместить содержимое в скрытое поле формы.Затем вы можете добавить действие JavaScript PDF для события открытия документа, чтобы скрипт Javascript проверил дату и отобразил поле формы.Это будет работать, только если конечный пользователь использует Adobe Reader.Я не уверен, есть ли другие программы для просмотра PDF, которые поддерживают Adobe PDF Javascript.

Этот тип безопасности немного любительский.Как упомянуто другим респондентом, конечный пользователь может изменить системную дату и обойти меры безопасности.

Если JavaScript может получить от веб-сервера https с цифровым сертификатом, то, возможно, это будет работать.

1 голос
/ 30 мая 2011

Срок действия контента действительно невозможная проблема.Вы можете создать страницу, которая будет очищена через 7 дней, но не может помешать людям копировать содержимое в другое место.

Все существующие «решения» этой проблемы зависят от Безопасность через Obscurity.Это означает, что люди не смогут обойти вашу «безопасность», потому что они не знают, как она работает, а не потому, что она безопасна по своей природе.

...