.
Отличие EAS от IMAP и POP — в объединении протокола доступа к почте с управлением и контролем устройств. В спецификации протокола EAS объясняется, как получать и отправлять почту, выполнять поиск, извлекать и применять политики и т.д. Любопытный факт: если выполнить в Интернете поиск с ключевыми словами EAS protocol, можно получить массу сведений о системе экстренного оповещения правительства США — Emergency Alert System.
В основе решения лежат три относящиеся к EAS концепции.
- В спецификации протокола объясняется, как происходит обмен данными между устройствами и серверами Exchange: какие команды они могут выдавать, какие отклики допустимы для каждой команды и т.д.
- В Exchange протокол EAS реализован на серверной стороне. Помимо программного кода, который собственно отправляет и принимает данные с использованием EAS, имеется код, с помощью которого администраторы могут просматривать и назначать политики EAS через консоль Exchange Management Console (EMC) и оболочку Exchange Management Shell (EMS), код для протоколирования и код для управления устройствами, которым разрешено подключение, и их действиями после подключения.
- EAS реализован и на клиентах. Им разрешается отправлять и принимать почтовые сообщения, управлять существующими элементами электронной почты (такие операции, как удаление или назначение меток сообщениям) и принимать или устанавливать настройки политики, поступающие с сервера.
В Exchange Server 2010 Service Pack 2 (SP2) реализована версия EAS 14.2. Однако свойства клиентов могут быть разными. EAS используется в очень многих мобильных устройствах, поэтому нельзя исходить из того, что определенное семейство устройств поддерживает ту или иную версию EAS или даже все функции этой версии. Компания Microsoft организовала Wiki-страницу (http://en.wikipedia.org/wiki/Comparison_of_Exchange_ActiveSync_clients), на которой документированы функции EAS, поддерживаемые различными сочетаниями устройств и операционных систем. Это ценный источник справочной информации, позволяющий узнать, будет ли данное устройство поддерживать нужную политику или функцию EAS. Например, версии Apple iOS 5 и Google Android Ice Cream Sandwich обеспечивают отключение камеры через параметр EAS, но в других версиях сделать этого нельзя. Эти элементы политики управления полезны, но как сохранить устройства, в которых нужные политики отсутствуют? Для решения этой задачи предназначена функция Allow/Block/Quarantine (ABQ).
Политики EAS
Прежде чем рассказать об ABQ, необходимо подробнее остановиться на нескольких концепциях политики EAS. При установке Exchange 2010 вступает в действие политика EAS по умолчанию, которая не предусматривает никаких мер безопасности. Назначение ее просто в том, чтобы предоставить какую-то политику новым устройствам, выполняющим синхронизацию с сервером.
Во многих протоколах предоставляются некоторые средства для согласования метода обмена данными между клиентом и сервером. EAS к таким протоколам не относится. В ходе первой синхронизации устройства сервер и клиент согласовывают версию EAS; результат — высшая версия, поддерживаемая обоими устройствами. Это происходит, когда клиент направляет запрос на подготовку серверу, который в ответ предоставляет временный ключ синхронизации и политику. Клиент должен ответить, что готов применить предоставленную сервером политику. Затем клиент получает постоянный ключ синхронизации, и в дальнейшем любые проверки или ограничения на отклик клиента отсутствуют. В диалоге EAS сервер Exchange направляет политику клиенту, и предполагается, что клиент будет ее выполнять.
Существует механизм, с помощью которого клиент сообщает о невозможности применить части политики. Сделать это можно одним из двух способов: клиент может указать, что часть политики неприменима (например, отключение Bluetooth в устройстве, не имеющем этой функции) или не может использоваться в данный момент (например, невыполнимое требование шифрования устройства). Помимо этого в сервере нет механизма проверки, что от клиента поступает достоверная информация. Например, от некоторых версий Apple iOS поступает ложная информация о возможности выполнить шифрование, когда этого требует политика EAS. Поэтому может оказаться, что подготовленная политика выполняется только частью устройств, с которыми синхронизируется сервер, и выяснить это можно, лишь отслеживая имеющиеся устройства и поддерживаемые ими элементы политики.
Самый простой способ применить определенный набор параметров EAS — изменить настройки политики по умолчанию в соответствии с желаниями пользователя. Можно создать дополнительные политики, назначаемые пользователям или группам; с каждым почтовым ящиком пользователя может быть связано не более одной политики EAS. Дополнительные сведения об управлении политиками EAS приведены в статье «Управление политиками Exchange ActiveSync в Exchange 2010», опубликованной в этом же номере журнала.
Результатом стал существующий набор функций ABQ в Exchange 2010. Не полагаясь на безупречную честность всех клиентов, компания Microsoft предоставила нам инструментарий для отсева клиентов, чья реализация EAS не соответствует требованиям данной политики.
Исключения, правила и состояния доступа для устройства
Особенность Exchange 2010, которая может ввести в заблуждение, — возможность в некоторых случаях применять один режим разными способами. Это в первую очередь относится к доступу к мобильным устройствам. Разрешить или запретить мобильный доступ пользователей к их почтовым ящикам можно тремя способами.
Во-первых, можно задействовать команду Set-CASMailbox с параметром -ActiveSyncEnabled, чтобы отключить доступ EAS к почтовому ящику пользователя. Конечно, если отключить EAS, пользователь не сможет синхронизировать какие-либо устройства (возможно, этого и добивается администратор). В качестве меры безопасности многие компании отключают EAS для всех почтовых ящиков, а затем включают его только для пользователей, имеющих разрешение синхронизировать свои устройства.
Во-вторых, можно создать явные персональные исключения, которые разрешают или блокируют устройства для данного почтового ящика. Например, можно настроить почтовый ящик директора для синхронизации iPad и iPhone, но не других устройств. Эти исключения назначаются с помощью команды Set-CASMailbox с ключами -ActiveSyncAllowedDeviceIDs и -ActiveSyncBlockedDeviceIDs для разрешения и блокирования устройств, соответственно. Идентификатор устройства для данного устройства уникален; его можно уподобить идентификатору GUID для отдельного гаджета. Самый простой способ получить эти идентификаторы — разрешить устройству выполнять синхронизацию, а затем ввести команду Get-CASMailbox, например:
Get-CASMailbox | select name, ActiveSyncAllowedDeviceIDs
Этот конвейер предоставляет таблицу, содержащую все подключенные устройства и их идентификаторы. Если нужно просто связать идентификаторы устройств с одним почтовым ящиком, можно применить команду -ActiveSyncDeviceStatistics, как показано в следующем примере:
Get-ActiveSyncDeviceStatistics -mailbox «paulr»
Третий способ разрешить или запретить доступ заключается в создании правил доступа для устройств. Это название немного неточное; думая о правилах Exchange, большинство из нас вспоминает о таких вещах, как правила Outlook или транспортные правила, которые обычно содержат условие, действие и набор исключений. Правила ABQ для EAS указывают семейство устройств и модель устройства. Заранее определены такие семейства, как iPhone, iPad, iPod, Android и Windows Phone. После того, как пользователь синхронизировал устройство, которое должно послужить основой для правила доступа для устройств, можно создать правило, выполнив следующие действия.
- Откройте панель управления Exchange (ECP) и запустите страницу Manage My Organization («Управление организацией»).
- Выберите Users and Groups («Пользователи и группы»), найдите пользователя с целевым устройством и откройте свойства пользователя.
- Разверните элемент Phone & Voice Features, выберите Exchange ActiveSync и щелкните Edit.
- Выберите устройство, для которого нужно создать правило доступа, а затем щелкните Create a rule for similar devices («Создать правило для схожих устройств»), как показано на экране 1.
Экран 1. Выбор устройства для формирования правила |
Управлять правилами доступа для устройств можно и из EMS с помощью команды *-ActiveSyncDeviceAccessRule. Этот способ пригоден для устройств, для которых еще не создано семейство или строки устройства. Описание метода приводится в документации по New-ActiveSyncDeviceAccessRule: нужно указать имя устройства, строку UserAgent, которую устройство выдает при формировании запросов HTTP, модель устройства и т.д. Но помните, что вводимые значения должны точно соответствовать тем, которые сообщает устройство. Чтобы узнать их, нужно выполнить синхронизацию тестового устройства и посмотреть значения модели, UserAgent и т.д.
В механизме ABQ также используется то обстоятельство, что каждое устройство EAS, связанное с сервером, находится в одном из пяти возможных состояний.
- В состоянии восстановления устройство подключено и запросило синхронизацию. В действительности устройство ничего не синхронизирует; сервер рассматривает его как находящееся в карантине.
- В состоянии разрешения доступа устройству разрешены доступ и синхронизация с почтовым ящиком.
- В состоянии блокирования доступа устройство получает сообщение об ошибке HTTP 403 Forbidden. Пользователь может получить по электронной почте сообщение, указывающее, что устройство блокировано, если блокировка вызвана явным параметром ABQ. Если устройство блокировано из-за неправильно примененных политик или это не подлежащее подготовке устройство, пользователь не получает извещения.
- В состоянии карантина доступа устройство не может читать данные из почтового ящика, но может публиковать новые назначения календаря, контакты, задачи и заметки в почтовом ящике. После первой попытки синхронизации устройства, находящегося в карантине, пользователь получает по электронной почте одно сообщение, указывающее, что устройство в карантине. Это сообщение появляется как в устройстве, так и у пользователя в почтовом ящике «Входящие». Можно назначить круг администраторов, которые получают уведомление по электронной почте, когда новое устройство переходит в это состояние.
- Состояние обновления почтового ящика используется, когда почтовый ящик перемещается со старых версий Exchange на Exchange 2010. Устройство, связанное с перемещенным почтовым ящиком, может синхронизироваться в течение 7 дней. Если за это время устройство не переходит в состояние разрешения, блокировки или карантина, то оно лишается любого доступа.
Как устройства переключаются между состояниями? Все новые устройства (то есть никогда прежде не пытавшиеся выполнить синхронизацию с почтовым ящиком в организации) находятся в состоянии обнаружения устройства. Но это состояние продолжается недолго, не более 14 минут (на 1 минуту меньше стандартного тайм-аута EAS). После этого EAS с помощью простого алгоритма определяет, какое состояние следует использовать. Технически действие этого алгоритма начинается с проверки подлинности устройства. Устройство, не прошедшее проверку подлинности, не может войти ни в одно из состояний, так как сервер Client Access не устанавливает с ним связь. После проверки подлинности устройства выполняются следующие действия:
- если EAS не включен для почтового ящика пользователя, то сервер Client Access возвращает устройству ошибку, и синхронизация не выполняется;
- если устройство не соответствует критерию для применения политики, оно блокируется, и синхронизация завершается отказом;
- если устройство блокировано на основании явного персонального исключения, синхронизация завершается отказом;
- если устройство явно разрешено на основании явного персонального исключения, ему предоставляется полный доступ;
- если устройство блокировано или отправлено в карантин на основании правила доступа для устройства, его состояние изменяется соответствующим образом и синхронизация останавливается. Термин «отказ» (fails) в данной ситуации неверен, так как устройству не передается сообщение об ошибке.
- если устройство явно разрешено правилом доступа для устройства, ему предоставляется полный доступ;
- если состояние устройства не изменилось ни на одном из предшествующих шагов, то применяется состояние доступа по умолчанию, заданное организационными параметрами EAS.
Важнейший среди организационных параметров тот, что управляет событиями, происходящими при подключении устройства, не имеющего настроек ABQ. По умолчанию таким устройствам разрешается подключаться; то есть устройство разрешено, если нет явного запрещения. Изменить такое поведение можно с помощью настроек, показанных на экране 2.
Экран 2. Изменение стандартных настроек устройства |
Это диалоговое окно выводится на экран, если щелкнуть Edit на вкладке ActiveSync Access панели Phone & Voice в ECP. Если разрешения для синхронизации не указаны, то дальнейшее взаимодействие с устройством определяется кнопками Let me decide to block or allow later («Отложить выбор блокирования или разрешения») — разрешить доступ, блокировать доступ или карантин. В списке Quarantine notification e-mails («Сообщения электронной почты с карантинным уведомлением») показано, кто из администраторов будет получать почтовые уведомления, когда устройство направляется в карантин. В текстовом поле в нижней части диалогового окна можно ввести текст, отображаемый в стандартном сообщении для владельцев направленных в карантин устройств.
Блокирование, карантин и разрешение устройств
Выяснив, как реализован механизм ABQ в EAS, можно задать вопрос: как его настроить, чтобы указывать, каким устройствам разрешено выполнить подключение. Интерес представляют лишь несколько вариантов.
- Если нужно блокировать всех, независимо от использованных устройств, с несколькими точно указанными исключениями, назначьте организационную политику EAS для блокировки устройств, а затем укажите личные исключения для пользователей и устройств, которые нужно синхронизировать.
- Если нужно получать уведомление, прежде чем пользователь синхронизирует любое устройство, примените политику карантина, которая предназначена именно для таких ситуаций. Включите карантин в организационной политике EAS, и каждый пользователь, выполняющий подключение устройства, будет направлен в карантин до особого разрешения администратора.
- Если нужно разрешить некоторым (или всем) пользователям работать только с определенными устройствами, подготовьте организационную политику EAS для блокировки или карантина устройств, а затем создайте правило доступа для устройства, разрешив соответствующие устройства и семейства. Если нужно исключить некоторых пользователей, просто отключите EAS для определенных почтовых ящиков.
- Если нужно разрешить некоторым (или всем) пользователям выполнять синхронизацию любых типов устройств, но потребовать разрешений от других пользователей, организуйте карантин. Устройство, которое ранее не выполняло синхронизацию, но пытается установить связь, будет направлено в карантин, если не предусмотрено персонального исключения.
Будущее ABQ
Корпоративный мир охвачен лихорадкой мобильных устройств. Большинство компаний не хочет оплачивать мобильные устройства сотрудников, и акцент перенесен на методы управления доступом этих устройств к ресурсам компании, в том числе серверам Exchange. Поэтому существующая инфраструктура ABQ весьма полезна: она предоставляет инструментарий для разрешения или блокировки устройств на основе их владельца или типа устройства.
Встроенное приложение Windows Mail в Windows 8 использует EAS и может применять политики EAS. Пока рано говорить, будет ли EAS способствовать усилению этой тенденции, но главный недостаток Outlook Anywhere — в отсутствии удобного способа контроля устройств, с которых могут подключаться пользователи. Наличие механизма на основе EAS для применения политики безопасности к компьютерам с Outlook будет значительным шагом вперед, как и усовершенствованные функции Exchange для определения критериев разрешения, блокировки или карантина устройств.
Многочисленные потенциальные улучшения заманчивы, но и существующие функции ABQ в EAS Exchange 2010 достаточно полезны. Эта функциональность будет надежным фундаментом для управления устройствами, которые владельцы смогут использовать для синхронизации с данными почтовых ящиков.