Архитектура почтовых систем Microsoft Exchange Server 2003 и Microsoft Exchange 2000 Server затрудняет следование требованиям законодательства и деловым процедурам.

Правила обработки Microsoft Exchange Server 2007 облегчают задачу соответствия законодательству и бизнес-правилам.

С помощью Microsoft Exchange 2007 Management Console (EMC) или команд Microsoft Exchange Management Shell (EMS) можно создавать правила обработки Microsoft Exchange Server 2007
.

После финансовых скандалов 2000 года (таких, как с компанией Enron) компаниям предписывается четко выполнять определенные законодательные требования. Многие предприятия должны выполнять требования акта Сарбейнса-Оксли (Sarbanes-Oxley), финансовые организации обязаны соблюдать требования комиссии по ценным бумагам Securities and Exchange Commission (SEC), правительство и местные органы власти должны исполнять законы, касающиеся распространения информации. Кроме того, разные правительства по всему миру разрабатывают свои требования. Например, в Евросоюзе принята директива, требующая включать информацию о компании во все исходящие сообщения. Прежде всего, конечно, нарастающие требования затрагивают системы электронной почты. Выполнять все требования для Microsoft Exchange Server 2003 или Exchange 2000 Server становится нелегко. Exchange Server 2007 предоставляет правила обработки для решения таких задач.

Проблема Exchange 2003 и 2000

Транспортная архитектура Exchange 2003 и Exchange 2000 не позволяет выполнять необходимые настройки, поскольку существует множество путей, по которым сообщения следуют через почтовый сервер. Можно написать модули обработки, которые будут иметь специализированный код и определенным образом интегрироваться с соответствующей службой Exchange. В этом случае транспортная служба будет контролировать содержимое, получателей и другие характеристики сообщений во время их перемещения между серверами. Модули обработки выполняют действия по добавлению информации в исходящие сообщения или предотвращают доставку для некоторых групп пользователей, которым запрещено по тем или иным причинам переписываться друг с другом.

Модули обработки иногда обходятся слишком дорого, поскольку немногие программисты могут написать корректный код работы с Exchange. Кроме того, такой код дорого поддерживать, так как администраторы должны каждый раз проверять корректность работы после установки нового пакета обновлений или новой версии Exchange. Хуже всего, что нельзя гарантировать для проверочного модуля обработку каждого сообщения, следующего через почтовую систему, поскольку службы хранилищ Exchange 2003 и Exchange 2000 доставляют локальную почту (сообщения, отправленные из одного почтового ящика в другой, находящийся на этом же сервере), не обращаясь к модулям обработки. Работа хранилища Exchange Store скрыта, программисты не могут интегрировать в него собственный код для согласованной работы. Администраторы вынуждены прибегать к различным уловкам, таким как размещение переписывающихся между собой пользователей на разных серверах (чтобы заставить сообщения проходить через транспортную подсистему) или разделение серверов по разным маршрутным группам (для отображения в журналах сообщений определенного типа). В результате получается слишком сложная задача при небогатой функциональности.

Единый маршрут в Exchange 2007

Разработчики Microsoft признали, что один маршрут сообщений через транспортную подсистему является фундаментальным вопросом для успешного решения различных задач. В Exchange 2007 этот вопрос решается двумя путями. Во-первых, Exchange 2007 имеет концепцию серверных ролей, одна из которых — сервер централизованной обработки Hub Transport. Все сообщения следуют через сервер централизованной обработки, включая сообщения, предназначенные для локальных почтовых ящиков. Кроме того, разработчики Microsoft изменили категоризатор сообщений службы транспортировки так, чтобы у него была возможность вызывать правила обработки и протоколирования. Категоризатор сообщений отвечает за подготовку сообщений к доставке, раскрывает списки рассылки, проверяет получателей и т. п. В завершение проверок категоризатора применяются правила обработки и протоколирования для фиксации всех необходимых данных в сообщениях. После того как классификатор обработает сообщение, оно готово к перемещению в очередь для доставки.

Правило протоколирования отвечает за копирование сообщений в хранилище. Это может быть просто почтовый ящик на сервере Exchange или адрес SMTP, который будет использоваться продуктами других компаний, разрабатывающих средства архивации, такие как Symantec Enterprise Vault или HP RISS. Концепция протоколирования предельно проста — захват копии сообщения. Правило обработки более сложное, поскольку предоставляет больше критериев контроля, которые использует Exchange для принятия решения по применению правила и определения того, что произойдет после его применения. Правила обработки могут предполагать целый ряд действий, от простых (например, добавление заявления об отказе от ответственности) до сложных (например, применение проверки этичности содержимого). Создать правило обработки или протоколирования можно с помощью Exchange 2007 Management Console (EMC) или через команды оболочки Exchange Management Shell (EMS). Если вы знакомы с мастером правил в Microsoft Office Outlook, мастер правил в Exchange 2007 покажется вам простым в использовании.

Хранение правил

Exchange хранит правила обработки и протоколирования в контейнере Exchange в контексте конфигурации Active Directory (AD). Соответственно, AD реплицирует обновления правил и новые правила на все контроллеры домена (DC) в лесу. При условии, что репликация AD работает нормально, можно быстро применить правила во всей организации. Microsoft рекомендует ограничиться тысячей правил. Это не жесткое ограничение, и оно накладывается из-за размера памяти, необходимого для кэша правил. Это ограничение не коснется большинства компаний, поскольку чаще всего вполне достаточно и 20 правил. Но компании, которые используют Exchange в качестве почтового сервера для хостинга других фирм, могут использовать множество правил для каждой фирмы и поэтому вполне могут превысить указанное ограничение.

Пограничные серверы Exchange 2007, Edge Transport, также используют правила, но эти правила хранятся в базе Active Directory Application Mode (ADAM) на самом сервере пограничной обработки. Пограничные серверы не являются частью организации Exchange и поэтому не имеют общих конфигурационных данных, включая правила, с другими почтовыми серверами. Если в компании развернуты серверы пограничной обработки для защиты организации от спама и вирусов, потребуется выполнить настройку правил на каждом сервере Edge Transport отдельно.

Добавление заявления об отказе от ответственности

Создать и применить правило, добавляющее к тексту заявление об отказе от ответственности, чрезвычайно просто. Но перед созданием такого правила надо решить, какую вы преследуете цель. Всегда пишите примечания, включающие имя правила, его цель, пользователей или группы, к которым оно должно быть применено, условия применения правила, действия Exchange при применении правила и исключения, если они есть. В случае применения заявления об отказе от ответственности к исходящим сообщениям нужно отметить, что правило применяется ко всем сообщениям, покидающим организацию, Exchange добавляет некоторый текст к исходящим сообщениям (это касается всех типов сообщений, кроме подписанных сообщений Secure MIME-S/MIME, поскольку Exchange не может изменить текст сообщения, не нарушая его целостности) и список исключений отсутствует. Следует иметь в виду, что прикрепляемый текст необходимо согласовать с юридическим департаментом, чтобы он соответствовал корпоративным требованиям.

Все серверы централизованной обработки в организации применяют общие правила. Для добавления заявления об отказе от ответственности к исходящим сообщениям нужно открыть EMC и выделить узел Hub Transport под Organization Configuration. Укажите пункт New Transport Rule контекстного меню для запуска мастера New Transport Rule, показанного на экране 1. Введите уникальное имя для правила. Введите подробности о правиле в секцию для комментария. Это не обязательно, но поможет другим администраторам, когда они будут разбираться с правилами. Флажок включения правила выбран по умолчанию.

Экран 1. Мастер New Transport Rule 

Далее следует определить критерии, которые Exchange должен использовать при обработке свойств сообщений. По отношению к правилу заявления об отказе от ответственности сделать это очень просто, поскольку такое правило применяется ко всем отправляемым сообщениям. Как показано на экране 2, можно просто отметить флажками некоторые критерии в качестве определенных условий.

Экран 2. Настройка условий для правил пересылки

Можно сказать, что мастер правил ограничен в вариантах действий, поскольку приходится выбирать из списка, расширить который нельзя. Но предлагаемые мастером варианты покрывают огромное разнообразие действий и ситуаций, которые могут потребоваться для обработки при создании правила обработки. Если все же стандартного набора не хватает, можно воспользоваться набором разработчика SDK для Exchange 2007, чтобы написать свой код для решения задачи.

Для создания условия к правилу заявления об отказе от ответственности необходимо выбрать критерий для сообщений, отправляемых из организации, как показано на экране 2. По мере выбора критериев мастер строит общий текст правила в нижней части экрана, чтобы можно было видеть результат. Можно щелкнуть на условии (т.е. подчеркнутых словах в правиле) для его изменения. Например, если щелкнуть на критерии from users inside or outside the organization, мастер отобразит диалоговое окно, которое позволяет выбрать рамки действия правила — внутри или снаружи организации (показано на экране 2). Outside будет требовать от Exchange обработки входящих сообщений.

Листинг. Код для установки свойств заявления об отказе от ответственности

Затем следует указать серверу Exchange, что надо делать при соответствии сообщения заданным условиям. Снова предоставляется выбор из широкого диапазона действий, таких как отбрасывание сообщения без уведомления, отправка обратно отправителю, добавление к сообщению некоторого текста. На экране 3 показан ввод текста заявления об отказе от ответственности. Здесь можно определять шрифт, цвет и размер символов для текста. После нажатия Next EMC создаст правило и выведет код для PowerShell, используемый при создании правила. Можно скопировать текст кода для дальнейшего применения в сценариях.

Экран 3. Настройка заявления об отказе от ответственности

На экране 4 показано новое правило в EMC. Каждое правило обработки имеет приоритет, в соответствии с которым Exchange обрабатывает сообщения. Диапазон приоритетов варьируется от нуля (высший приоритет) до цифры, равной количеству правил организации минус 1.

Экран 4. Новое правило в EMC

После того как правило будет создано, AD реплицирует его. В зависимости от быстроты репликации правило будет применяться вскоре после его создания ко всем исходящим сообщениям. Результат показан на экране 5.

Экран 5. Заявление об отказе от ответственности добавляется правилом транспорта

Проверки на этичность

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

Группы важны для правил обработки, так как это облегчает идентификацию сообщений от определенных пользователей во время обработки правила. Exchange считывает членство в группах в кэш для быстрого доступа к информации, что увеличивает скорость выполнения проверок сервером Exchange. Для нашего правила создадим две группы, называемые Business Analysts и Stock Brokers и введем в эти группы пользователей, между которыми хотим прекратить переписку.

Следующим шагом является создание правила. Дадим правилу имя, краткое описание и назначим условия для правила. Для предотвращения доставки сообщений между группами Business Analysts и Stock Brokers выделим условие between members of distribution list and distribution list, затем выберем имена групп для проверки. Обратите внимание, что это правило контролирует переписку в обоих направлениях между двумя группами.

Далее выберем пункт для возврата уведомления о доставке отправителю с информацией о том, что правилами не предусмотрена отправка этого сообщения члену другой группы. Также выделим пункт записи в журнал приложений, как показано на экране 6. На экране 7 показана запись о событии в журнале приложений. Простота регистрации в системном журнале не гарантирует того, что администраторы будут своевременно замечать нарушение. Также можно копировать сообщение о событии в отдельный почтовый ящик для проверки администраторами.

Экран 6. Создание правила для брандмауэра предназначения

Экран 7. Сообщение в журналео попытке нарушения

Exchange Management Shell

Те, кто предпочитает командный режим, могут использовать EMS для создания, редактирования и удаления правил обработки. Например, команда Get-TransportRule покажет два созданных нами правила. Можно выбрать правило для просмотра набора свойств.

Проблема управления правилами с помощью EMS заключается в том, что манипуляции с такими свойствами, как условия и действия, выполняются не напрямую. Например, предположим, что надо изменить текст заявления об отказе от ответственности для исходящих сообщений. Сначала требуется создать контекст для необходимого действия, затем описать детали действия и в завершение использовать команду Set-TransportRule для применения нового правила с заявлением об отказе от ответственности. Нужно установить свойства для текста, шрифта, цвета и размера сообщения, как показано в листинге, прежде чем можно будет применить новое правило.

Использовать EMC для управления правилами проще, чем EMS, но командная среда удобнее для применения сценариев в рабочей среде, с проверкой в лабораторных условиях. Необходимо выполнить полномасштабное тестирование, прежде чем применять новые правила обработки сообщений в реальной жизни.

Простой и мощный инструмент

В системах обработки сообщений Exchange 2003 и Exchange 2000 сложно организовать безопасные соединения, удовлетворяющие всем требованиям. Exchange 2007 использует единый маршрут для сообщений и правила обработки для решения данной проблемы. Вместо того чтобы писать сложный код, теперь можно создать и применить правила с помощью простого в использовании мастера. Несколько простых шагов мастера позволяют применять правила обработки для решения реальных бизнес-задач. Правила обработки — это мощное дополнение к административным инструментам Exchange и одна из лучших новых возможностей Exchange 2007.


Тони Редмонд (exchguru@windowitpro.com ) — редактор журнала Windows IT Pro, старший технический редактор Exchange & Outlook Administrator, вице-президент и главный технолог HP Services