Немногим ранее я писал статью, в которой рассказывал о том, как добавлять поле ввода CAPTCHA образа и текста в форму входа аутентификации на основе форм в Outlook Web Access 2003. Теперь, когда Exchange 2007 занял свое место на рынке, я получил множество запросов на написание статьи о том, как сделать это в Exchange 2007. Хотя процедура в основном схожа с процедурой для OWA 2003 версии, есть несколько важных различий.
CAPTCHA - это аббревиатура для Completely Automated Public Turing test to tell Computers and Humans Apart (Полностью автоматизированный открытый тест Тьюринга по распознаванию людей и машин). Нет сомнений в том, что вам приходилось видеть применение этой технологии на различных веб страницах в виде образа визуально искаженного слова, которое нужно вписать в поле, доказывая тем самым, что вы являетесь реальным лицом. Это стало необходимо для предотвращения действий агентов-роботов, блуждающих сети и ищущих возможности вставить рекламные сообщения и т.д. Пример такого образа приведен на рисунке 1. Идея заключается в том, что пользователь-человек распознает слово 'part', в то время как агент-робот нет.

Аутентификация на основе форм в OWA сама по себе очень надежна и безопасна, поскольку вам необходимо предоставить действительные мандаты, чтобы войти, однако добавление к ней подтверждения CAPTCHA представляет не меньший интерес. В этой статье я покажу вам, как это сделать путем изменения logon.aspx файла в Exchange. Я решил использовать бесплатный сценарий CAPTCHA, написанный Джонатаном Фистером, который можно скачать с Archreality . Этот сценарий использует JavaScript, и в отличие от прочих решений не требует второй страницы.aspx для обработки вводимой формы; подтверждение осуществляется обозревателем пользователя, прежде чем мандаты будут отправлены на OWA сервер. Любые сценарии CAPTCHA, требующие второй страницы, не будут работать с FBA, поскольку нет возможности вставить что-либо между страницей входа и пользовательским интерфейсом OWA.
Процедура
Сначала извлеките файлы в подходящее место на сервере. Здесь есть два .js файла и папка с названием cimg, содержащая образы слов, которые будут отображаться на странице регистрации. Разместите извлеченную папку jcap в папку C:\Program Files\Microsoft\Exchange Server\ClientAccess\Owa\auth, как показано на рисунке 2:

Далее используйте Explorer, чтобы найти logon.aspx файл, который создает страницы регистрации FBA. Он включает ту же папку auth, а которую вы разместили папку jcap. Прежде чем делать что-либо еще, создайте резервную копию logon.aspx файла. Нажмите на нем правой клавишей, выберите «Копировать», затем на папке нажмите правой клавишей и выберите «Вставить». Это создаст копию вашего logon.aspx файла под названием 'Копия logon.aspx' . Если ваши изменения окажутся безуспешными, вам нужно будет вернуть этот оригинальный файл, чтобы восстановить функциональность FBA. Теперь откройте logon.aspx с помощью блокнота. Я собираюсь вставить образ над кнопкой 'Public Computer', поэтому нажимаю F3 и ищу текст rdoPblc. Предположив, что вам удалось найти текст, вставляем следующее прямо перед
function doJcap(){if (jcap() == true){document.forms[0].action = "owaauth.dll"; return true;}elsereturn false} Enter the code as it is shown below
В результате у вас должно получиться то, что показано на рисунке 3:

Далее нажимаем CTRL-HOME, чтобы вернуться в самый верх файла, а затем нажимаем CTRL-F и находим текст
onsubmit="return doJcap();"
Эта часть страницы теперь должна выглядеть, как показано на рисунке 4:

Теперь сохраните файл обратно на диск и закройте блокнот. Все, что теперь требуется, это маленькое изменение в jcap.js файле, который был сохранен в C:\Program Files\Microsoft\Exchange Server\ClientAccess\Owa\auth\jcap . Нажмите правой клавишей на файле jcap.js и выберите «Изменить». Он должен открыться в блокноте. В строке, начинающейся с var imgdir, вам нужно изменить путь, чтобы указать текущее расположение cimg папки. Измените его так, чтобы начало строки выглядело следующим образом:
var imgdir = "/owa/auth/jcap/cimg/";
Полностью строка выглядит так:

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

Пожалуйста помните, что в силу обновлений в пакетах обновлений и патчах для Exchange последующие версии logon.aspx файла могут отличаться от показанной здесь. Однако основные принципы должны остаться такими же.
Ссылки
- CAPTCHA described at Wikipedia
- Turing test discussed at Wikipedia
- The CAPTCHA Project
Рейтинг: |
|
Автор: | Ли Дербишир (Lee Derbyshire) |
Ли Дербишир (Lee Derbyshire) BSc (Hons), MVP MCSE является штатным IT Специалистом в Великобритании. Вы можете посетить эго домашнюю страницу по адресу www.leederbyshire.com. | |
Эта статья переведена и опубликована с разрешения
www.msexchange.org
Эта статья переведена силами и средствами компании Red Line Software. Размещение данного переведенного материала на других сайтах без разрешения компании Red Line Software запрещается. |