На главную страницу
 
  Главная 
  Новости 
  Статьи  RSS
  Программное обеспечение 
  Форум 
  Опросы 
  Полезные ссылки 
MSExchange.ru ISADocs.ru WinSecurity.ru NetDocs.ru

Exchange 5.5
Exchange 2000
Exchange 2003
Exchange 2007
Общее
Exchange 2010

Поиск по сайту


Авторизация

Запомнить меня на этом компьютере
  Забыли свой пароль?
  Регистрация

Подписка

Изменение параметров

Статистика

Hits 2748757
13450
Hosts 1649572
480
Visitors 229677
556

13

Главная / Статьи / Exchange 2003 / Внедрение Captcha-проверки на OWA 2003 с аутентификацией с помощью форм


SurfCop

Внедрение Captcha-проверки на OWA 2003 с аутентификацией с помощью форм

Версия для печати Версия для печати

Эта статья переведена силами и средствами компании Red Line Software. Размещение данного переведенного материала на других сайтах без разрешения компании Red Line Software запрещается.

В данной статье я дам пример внедрения Captcha-проверки на Outlook Web Access 2003 с помощью изменения файла аутентификации с помощью форм logon.asp.

Вступление

Слово “Captcha” означает Completely Automated Public Turing test to tell Computers and Humans Apart (Полностью автоматизированный тест Тьюринга для разделения человека и компьютера) (см. ссылки в конце статьи). Большинство пользователей Интернета встречают такой тест в форме слова на рисунке (обычно искаженного), которое пользователь должен ввести в соответствующее поле для доказательства того, что он настоящий человек, а не робот для спама или иная программа для поиска уязвимостей в сети. На Рисунке 1 изображен пример. Надеюсь, что вы смогли распознать на рисунке слово “summer”.

Рисунок 1: Типичный рисунок Captcha-теста

Аутентификация с помощью форм для Exchange 2003 Outlook Web Access обычно сокращенно называемая FBA (Forms-based Authentication) достаточно защищена (в любом случае, роботу нужны верные учетные данные, чтобы пройти ее), но некоторые интересуются, можно ли добавить в этот механизм возможность Captcha-теста. В данной статье я расскажу, как это сделать с помощью изменения файла аутентификации с помощью форм logon.asp. Существует несколько решений для Captcha, но я выбрал свободно доступный сценарий, написанный Джонатаном Фистером, который можно скачать здесь. Данный сценарий имеет преимуществом то, что он не требует второй страницы для получения введенных в форму данных (что невозможно в OWA 2003): все процедуры выполняются на стороне клиента до того, как страница будет отправлена на сервер.

Следует заметить, что данный пример разработан для сервера Exchange 2003 с пакетом обновлений Service Pack 2. Будущие пакеты обновлений могут повлиять на содержимое файла logon.asp, но базовые принципы останутся теми же.

Процедура

Вначале установим скачанные и разархивированные файлы в подходящее место на сервере. Используется два .js-файла и папке с именем cimg с рисунками, которые будут показаны пользователю. Поместите эти файлы в папку C:\Program Files\Exchsrvr\exchweb (Рисунок 2):

Рисунок 2: Скачанные файлы в папке exchweb

Далее, найдите в Проводнике файл logon.asp, который ваш сервер отсылает браузеру при регистрации в OWA с помощью FBA. Найдите папку C:\Program Files\Exchsrvr\exchweb\bin\auth\. В ней и хранится файл(ы) logon.asp, используемый(ые) пользователями OWA. Выберите папку с именем, соответствующим языку, который используется клиентами OWA. Например, для англо-говорящих пользователей используется файл logon.asp, содержащийся в папке C:\Program Files\Exchsrvr\exchweb\bin\auth\usa\. Если вы используете несколько языков, вам придется изменить все соответствующие файлы.

Прежде, чем что-либо делать, сохраните копию файла logon.asp. Щелкните по файлу правой кнопкой и выберите Copy (Копировать), затем щелкните правой кнопкой в любом месте папки и выберите Paste (Вставить). Создастся копия файла logon.asp с именем 'Copy of logon.asp'. Не выполняйте никаких действий до того, как вы сделайте эту копию. Если изменения файла будут неверными, регистрация с помощью форм будет невозможна. Далее, откройте файл logon.asp в Блокноте. Нажмите CTRL-F или F3 для начала поиска и выполните поиск текста . Он должен находиться примерно в трех четвертях от начала файла. Прямо перед тегом вставьте следующий текст (обратите внимание, что JavaScript учитывает регистр клавиатуры):




function doJcap()
{
if (jcap() == true)
{ document.forms[0].action = "/exchweb/bin/auth/owaauth.dll"; return true; }
else
{ return false; }
}

В моей версии OWA (и помните, что это может измениться в следующих пакетах обновлений) это выглядит так (Рисунок 3):

Рисунок 3: Изменение файла logon.asp

Далее, нажмите CTRL-F и выполните поиск строки

onsubmit="return doJcap();"

Затем удалите определение действия в теге

путем удаления строки action="/exchweb/bin/auth/owaauth.dll" (будет восстановлено после успешного ввода слова на рисунке). Несколькими строками ниже вы увидите еще один тег
. Измените строки с параметрами onsubmit и action. Эта часть файла должна выглядеть примерно так (Рисунок 4):
Рисунок 4: Изменение тегов FORM

Сразу после второго тега

вы видите такую строку:

Сразу после нее вставьте следующий текст:





Enter the code as it is shown above:


(См. Рисунок 5). Это поместит рисунок в верхней части страницы, а сразу под ним будет находиться поле для ввода. Если вы знакомы с HTML, вы можете поэкспериментировать для того, чтобы добиться более интересного расположения.

Рисунок 5: Изменения в файле logon.asp

Вот и все, что касается файла logon.asp. Можете сохранить его и закрыть Блокнот. Теперь необходимо сделать небольшое изменение в файле jcap.js, который был сохранен в папке C:\Program Files\Exchsrvr\exchweb. Щелкните правой кнопкой по файлу jcap.js и выберите Edit (Редактировать). Откроется Блокнот. В строке, начинающейся var imgdir, следует изменить путь к папке внутри папки exchweb. Измените ее таким образом:

var imgdir = "/exchweb/cimg/";

Вся строка должна выглядеть так (Рисунок 6):

Рисунок 6: Определение пути к файлам рисунков

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

Рисунок 7: Измененная страница регистрации FBA

Учтите, что версии файла logon.asp могут отличаться от того, что показано в статье, но основные принципы остаются одинаковыми. Ссылки на внешние сценарии располагаются между тегами

и ; изменения требуют два тега
(один для версии Premium и один для версии Basic клиента OWA); рисунок и поле ввода могут находиться в любом месте между открывающими (
) и закрывающим (
) тегами.

Ссылки

Проект CAPTCHA: http://www.captcha.net/





Рейтинг:  
4.0 (голосов 1)  
 1   2   3   4   5    

Автор: Ли Дербишир (Lee Derbyshire)
  Ли Дербишир (Lee Derbyshire) BSc (Hons), MVP MCSE является штатным IT Специалистом в Великобритании. Вы можете посетить эго домашнюю страницу по адресу www.leederbyshire.com.
Эта статья переведена и опубликована с разрешения http://www.msexchange.org

Эта статья переведена силами и средствами компании Red Line Software. Размещение данного переведенного материала на других сайтах без разрешения компании Red Line Software запрещается.





Работает на «Битрикс: Управление сайтом»
Работает на «Битрикс:
 Управление сайтом»
© MSExchange.ru, 2005-2010