Как обеспечить аутентификацию на мобильных устройствах

Как обеспечить аутентификацию на мобильных устройствах

Активное развитие мобильных технологий ставит перед организациями вопрос обеспечения безопасности их использования в корпоративной сети. Существующие сегодня SSO-технологии являются удачным компромиссом между безопасностью доступа к приложениям и удобством работы пользователя.

Мобильные технологии в корпоративном сегменте активно развиваются уже достаточно давно, хотя пока не получили массового распространения, но преимущества использования мобильных устройств для решения бизнес-задач ни у кого не вызывают сомнений. За исключением, наверное, специалистов по информационной безопасности, которые традиционно скептически относятся к безопасности всех ИТ-новинок.

Тема безопасности мобильных технологий далеко не нова. Много копий сломано вокруг концепции BYOD (bring your own device) и контроля мобильных устройств, популярна тема шифрования данных и удаленного управления, а также безопасного доступа к информационным ресурсам компании. Доступ должен быть обеспечен для любой платформы, используемой как на рабочей станции пользователя, так и на мобильном телефоне или планшете. Усиленная аутентификация, в том числе с использованием дополнительных факторов, должна происходить на компьютере и мобильном устройстве, иначе мобильность будет слабым звеном в контуре безопасности организации. При этом меры обеспечения ИБ не должны создавать неудобства для пользователей. В противном случае новые технологии не найдут у них поддержки, и организация не достигнет запланированных показателей повышения эффективности работы за счет их использования.

На сегодняшний день одной из современных тенденций в области аутентификации является использование SSO. Это удачный компромисс между безопасностью доступа к приложениям и удобством работы пользователя. Идея этой технологии заключается в обеспечении единой аутентификации для всех информационных систем организации, которые с точки зрения доступа являются разнородными и никак не интегрированы между собой или с общей службой каталогов, например, Microsoft Active Directory. Т.е. вместо ввода логина и пароля для каждого приложения достаточно один раз пройти аутентификацию, например, при входе в домен. Это очень удобно для пользователя, которому не надо запоминать много разных и сложных паролей, а затем менять их хотя бы раз в полгода. Кроме того, подобное решение повышает уровень информационной безопасности в части парольной политики, так как пароли к приложениям могут быть более длинными и сложными и чаще меняться, что снижает риск брутфорсинга.

Аутентификация – одна для всех

Несмотря на общую идею SSO-технологии, существует несколько подходов в ее реализации. Первый из них заключается в организации общего сервиса аутентификации для всех приложений, который интегрируется с ними и обеспечивает единую и однократную аутентификацию. Ключевой момент такого подхода – это интеграция с приложениями на основе стандартных протоколов, например, Kerberos, SAML, OpenID, OAuth и т.п. Конечно, у каждого из этих протоколов есть своя специфика, но в целом они решают общую задачу – использование однократной аутентификации (SSO) для доступа во все приложения.

Наиболее распространенным вариантом такого подхода в ИТ-инфраструктурах, построенных на базовых продуктах Microsoft, является интеграция приложений со службой каталогов Microsoft Active Directory и использование стандартного протокола аутентификации Kerberos. Этот подход внедрения SSO c использованием стандартных протоколов аутентификации для интеграции приложений является, безусловно, более системным, но далеко не всегда реализуемым, так как процесс интеграции зачастую подразумевает доработки непосредственно в информационных системах. Поэтому, как правило, такой подход применим в развитых ИТ-инфраструктурах, где любое приложение изначально поддерживает внешнюю аутентификацию с использованием промышленных стандартов. К сожалению, в России это скорее исключение, чем правило, поэтому применимость этого подхода весьма ограничена.

Что касается мобильных платформ, то чаще всего такой подход применяется для web-приложений, где механизм аутентификации не зависит от устройства, с которого пользователь получает доступ. Т.е. SSO-аутентификация, организованная для web-приложений, будет работать на любом из этих устройств, и с точки зрения мобильных платформ специфика минимальна. В случае с нативными приложениями все не так однозначно, и организация SSO-аутентификации может потребовать их доработок. Хотя использование стандартных протоколов и отсутствие необходимости установки дополнительного ПО как на рабочую станцию, так и на мобильное устройство – несомненный плюс.

Автоматическая подстановка

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

В целом с точки зрения пользователя процесс выглядит следующим образом. Пользователь при входе на компьютер осуществляет logon в операционной системе. Если рассматривать вариант инфраструктуры Microsoft, то он вводит доменный логин или пароль. Как правило, SSO-решения позволяют использовать различные факторы аутентификации, в том числе токен, смарт-карта, биометрия, одноразовые пароли и т.д., но для начала можно рассмотреть самый примитивный вариант – пару логин/пароль. После входа на компьютер пользователь запускает бизнес-приложение. Появляется окно аутентификации приложения, которое автоматически перехватывается специализированным программным SSO-агентом. SSO-агент подставляет в окно аутентификации из защищенного профиля пользователя его логин и пароль для данного приложения. Приложение осуществляет аутентификацию согласно своим стандартным протоколам.

Основная сложность такого подхода – автоматизация смены паролей и записи их в профиль пользователя. Необходимость самостоятельной смены паролей пользователями для каждого приложения и записи их в свой профиль снижает эффективность данной технологии, хотя такие реализации тоже встречаются.

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

Особенности SSO для мобильных устройств

В части применения данного подхода на мобильных устройствах есть свои плюсы и минусы. Сама схема такой SSO-реализации на мобильной платформе не сильно отличается от полноценных рабочих станций. Для ее работы нужен нативный SSO-агент, который обеспечит подстановку пары логин/пароль в окна аутентификации мобильных приложений. С точки зрения интеграции дополнительное появление мобильных приложений в готовой SSO-инфраструктуре для рабочих станций не обременит заказчика серьезными трудозатратами. Но далеко не всегда производители SSO-решений готовы предоставить полный набор готовых полнофункциональных SSO-агентов для всех популярных мобильных операционных систем, и здесь ограничения являются зачастую организационными.

Классическим примером этого является операционная система iOS компании Apple. Чтобы разработать приложение и легитимно устанавливать его на устройствах Apple, необходимую пройти соответствующую процедуру регистрации производителя и сертификации разрабатываемого программного обеспечения. Данная процедура далеко не однозначна, требует значительного времени и трудозатрат. В противном случае остается только один путь – это jailbreak, что не подходит большинству пользователей iPhone и iPad, для которых корректность работы устройства и поддержка его производителем превыше преимуществ корпоративной SSO.

В случае с Android и Windows все намного проще, и функциональность SSO ограничивается только фантазией, потребностями заказчиков и компетентностью разработчика. С учетом сопоставимой с iOS популярности этих платформ, это уже неплохой результат. По статистике топ-менеджмент предпочитает устройства Apple, и, стремясь достичь удобства использования личных гаджетов для корпоративных целей, можно столкнуться с описанными ранее трудностями.

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

Выходом из сложившейся ситуации во многом является использование «программных» факторов аутентификации, таких как одноразовый пароль и его последующие концепты. Справедливости ради стоит отметить, что для аутентификации стали применяться и беспроводные технологии, например, использование bluetooth-токенов c возможностью подключения и по USB. Т.е. комбинированный вариант, который можно использовать и для рабочих станций, и для мобильных телефонов и планшетов. Некоторые производители мобильных устройств уже встраивают в них биометрические сканеры, поэтому использование этого функционала для SSO-аутентификации в мобильных приложениях также не за горами.

В заключение хочется отметить, что на текущее время рынок информационной безопасности не может похвастаться сформированным сегментом мобильной SSO-аутентификации. Это связано не только с организационными и технологическими ограничениями, но, по большей части, – с недостаточным пока спросом российских корпоративных пользователей. Ведь сейчас далеко не каждая организация использует SSO-технологии даже в классической офисной ИТ-инфраструктуре. Но с ростом числа корпоративных мобильных приложений неминуемо встанет проблема комплексной аутентификации с обеспечением необходимого уровня безопасности и удобства для пользователя.

Олег Губка

Вернуться на главную страницу обзора