Чтение почты с использованием прямых адресов URL

chtenie pochty s ispolzovaniem pryamyh adresov url Сервер PyMailCGI

Одно исключение: поскольку любой сценарий CGI можно вызвать с явными параметрами в URL вместо значений полей формы, и так как модуль commonhtml пытается получить входные данные из объекта формы, прежде чем импортировать их из mailconfig, любой пользователь может проверить свою почту с помощью PyMailCGI, не устанавливая и не настраивая ее. Например, следующий адрес URL (без переноса строки, добавленного, чтобы уместить его на странице), если ввести его в адрес
ной строке броузера или отправить его с помощью такого инструмента, как urllib.request:

http://localhost:8000/cgibin/

onViewPswdSubmit.py?user=lutz&pswd=guess&site=pop.earthlink.net

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

Обратите внимание, что при такой организации взаимодействий пароль, отправляемый в URL такого вида, не шифруется. В последующих сценариях, однако, предполагается отправка введенного пароля в зашифрованном виде, что затрудняет их использование с явными URL (потребуется обеспечить соответствие с зашифрованной формой, создаваемой на сервере модулем secret). Пароли шифруются при добавлении их в ссылки из списка выбора страницы ответа и остаются зашифрованными в последующих URL и скрытых полях форм.

Не используйте URL такого типа, если только вам не безразлично, что ваш почтовый пароль окажется открытым. Одновременная пересылка незашифрованного имени пользователя и пароля через Сеть в таком URL крайне небезопасна и делает их открытыми для посторонних. Это все равно что выдать всю информацию о своей электронной почте — всякий, кто перехватит этот URL или подсмотрит его в файлах журналов на сервере, получит полный доступ к вашей почтовой учетной записи. Еще более ненадежными такие адреса URL делает тот факт, что формат URL опубликован в книге, которая будет широко распространяться по всему свету.

Если вас заботит безопасность, и вы хотите пользоваться программой PyMailCGI на удаленном сервере, установите ее на собственном сервере и настройте модули mailconfig и secret. Это должно, по крайней мере, гарантировать, что информация с вашим именем и паролем никогда не будет передаваться незашифрованной в одной операции. Эта схема все же не является абсолютно надежной, поэтому будьте осторожны. Без защищенных сокетов и HTTPS Интернет станет средой типа «используйте на свой страх и риск».

Использованная литература:

Марк Лутц — Программирование на Python, 4-е издание, II том, 2011

Каталог сайтов Всего.ру
Оцените статью
Секреты программирования
Добавить комментарий