При закрытии подписчики были переданы в рассылку "Заметки Дизайнера" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Информационный Канал Subscribe.Ru |
Построй свой сайт на PHP! |
||
Здравствуйте, уважаемые читатели! Так получилось, что выход рассылки прервался на целый месяц. Вы, возможно, уже гневно бъете ложками по всему, что попадается под руку и кричите: "Ведущего на мыло!". Но на мыло мне еще рано, так что я снова с вами, а это значит, что вы читаете очередной выпуск рассылки "Построй свой сайт на PHP!". Дальше идет наглый пиар сайта http://phpdevelop.info/, так что если вы на дух не переносите пиара, можете дальше вступление не читать. Те же, кто против пиара не возражает, узнает, что сайт http://phpdevelop.info/ пополнился весьма полезными материалам. Во-первых, в разделе "Загрузка" вас ждет не только определенное количесвто книг по PHP (в том числе и на русском), но и ссылки на закачку PHP-редакторов, чтобы сразу, читая книги, отрабатывать технику на кошках. Также не мешает и скачать интерпритатор PHP, потому что без него, думаю, особенно попрактиковаться не получится. (Если вы не мастер Йода) Ну а если написать свое самое крутое решение с первого раза не получится, то там же вы найдете и ссылки на самые последние (нет, Апокалипсис на завтра не намечается) версии популярных систем управление содержимым. Что касается остального, хочется отметить статью Реализация Front Controller на PHP, запубликованную только вчера. В общем, вы это, заходите, не стесняйтесь писать всякую ерунду в форумах, чатбоксе. Я буду рад. :-) Сегодня я предлагаю вам небольшую статейку про пакет PEAR TEXT_CAPTCHA, которая, кстати, уже с неделю как опубликована на http://phpdevelop.info/ ;-) Защита веб-форм с PEAR Text_CAPTCHAАвтор: Маркус Уитни (Marcus Whitney)03/31/2005 Если у вас есть публично доступные веб-формы, вы в любой момент можете быть подвергнуты атакам со стороны людей, желающих использовать ваши приложения для собственных целей. Форумы, голосования, гостевые книги и блоги - все это популярные места для роботов, пытающихся сгенерировать неаутентичные сообщения на вашем сайте. Многие сайты, такие как Yahoo, в данный момент используют CAPTCHA. CAPTCHA или "completely automated public Turing test to tell computers and humans apart," ("полностью автоматизированный тест Тьюринга для разделения компьютеров и людей") является проектом Carnegie Mellon School of Computer Science, который предоставляет все необходимое для того, чтобы определить, человек или компьютер инициировал запрос. Технология CAPTCHA позволяет вам отличать человеческие запросы от запросов, сгенерированных компьютером, в вебе, где провести такое различие сложно. Заметьте: Соответсвенно Wikipedia, Тест Тьюринга - это тест возможности машины вести человекоподобные разговоры. Вы, возможно, уже видели проект CAPTCHA в действии в каких-нибудь точках свего веб-маршрута. Принцип работы инструмента состоит в генерации изображения, содержащего фразу, не упоминаемую нигде на странице в формате, читабельном для компьютера. Форма просит пользователя указать фразу. Если данные формы не содержат правильной фразы, вы можете предположить, либо что человек сделал пользовательскую ошибку, либо что это был вовсе не человек. Установка Text_CAPTCHAБлагодаря Кристиану Вензу (Christian Wenz), в PEAR есть пакет, полностью предназначеный для проведения этих тестов как инструментов безопасности на вашем сайте. Пакет Text_CAPTCHA использует функциональность PHP GD для создания динамических изображений со случайными фразами и предоставляет простой объектно-ориентированный интерфейс. Для того, чтобы использовать Text_CAPTCHA, вы должны иметь установленную GD с поддержкой JPEG, PNG и шрифтов TrueType. Для получения дополнительной информации смотрите PHP Image Functions. Text_CAPTCHA зависит от двух других PEAR пакетов: Image_Text и Text_Password. Он использует Text_Password для генерации случайной фразы, используемой в тесте CAPTCHA и Image_Text для генерации изображения с текстом. Процесс установки Text_CAPTCHA в командной строке следующий:
Представляем CAPTCHAПришло время применить этот пакет в деле. Простой и часто используемый интерфейс для введения этой новой меры безопасности - это форма комментариев в блоге. В этой форме вы обычно запрашиваете имя, e-mail и комментарий от персоны, посылающей сообщение в ваш блог. Форма может выглядеть следующим образом:
Чтобы применить технологию CAPTCHA, добавьте тэг изображения перед кнопкой отправки формы для проверки, является ли посетитель человеком:
Здесь Text_CAPTCHA входит в игру. Перед выводом формы инициализируйте Text_CAPTCHA с помощью кода вроде того, что приведен ниже:
Первая строка требует файл Text_CAPTCHA.php. Вторая строка использует фабрику класса Text_CAPTCHA для возврата объекта подкласса
Text_CAPTCHA. Дизайн Text_CAPTCHA позволяет создавать CAPTCHA с помощью разных драйверов. Вспомните, CAPTCHA - это технология для отличения людей от компьютеров, а не только для генерации изображений для этого. Аргумент для метода-фабрики Фазу инициализации мы обследуем более подробно. Для начала, она принимает два
параметра: ширину и высоту случайно сгенерированного изображения. Эти параметры опциональны и имеют значения по умолчанию 200 и 80 соответственно.
Массив
Как только
В PHP5 это намного более просто, используя функцию
Следующее, что необходимо сделать - это выделить фразу из текущего объекта и сохранить ее в переменной сессии. Если вы еще не создали сессию для данного пользователя, то самое время это сделать:
Теперь, используя метод доступа
Проверка CAPTCHAВот и все со стороны формы. Теперь время определить, является ли пользователь человеком или нет. При отправке формы, просто проверяйте, задана ли фраза и совпадает ли она с хранящейся в переменной сессии. Если они совпадают, вы можете продолжить с соответствующим действием
ЗавершениеCAPTCHA может быть хорошим способом ограничить количество успешных, но нежелательных HTTP
Об автореМаркус Уитни (Marcus Whitney) - главный архитектор Emma, приложения, на котором построена почта более 1000 организаций по всему свету с офисами в Нью-Йорк Сити (New York City) (откуда он родом) и Нэшвила (Nashville) (где он живет). Когда он не работает в Emma, о забавляется как евангелист и преподаватель профессиональной разработки на PHP. Он глава PHP Security Consortium, организатор Группы Пользователей PHP Нэшвила (Nashville PHP Users Group), и автор грядущей книги по профессиональному програмированию на PHP 5 от издательства Apress. |
Copyright © 2004-2005 Построй свой сайт на PHP! Перепечатка возможна только с сохранением авторства. |
Выпуск #9: 2005-06-02 |
Subscribe.Ru
Поддержка подписчиков Другие рассылки этой тематики Другие рассылки этого автора |
Подписан адрес:
Код этой рассылки: comp.soft.prog.phpdev |
Отписаться
Вспомнить пароль |
В избранное | ||