Аутентификация Single Sign-On в системе SecureLogin
Управление паролями — одна из насущных проблем современных ИТ-структур. Ситуация вполне понятная: пользователь имеет дело с несколькими приложениями или службами, у каждого из которых есть собственная система идентификации с использованием паролей. Самый простой, но далеко не самый надежный вариант — использовать один и тот же пароль. Недостаток тут очевиден: компрометация пароля (например, его утеря или кража) откроет посторонним лицам доступ сразу ко всем ресурсам. Так или иначе, но известный принцип безопасности гласит: пароли необходимо периодически менять. Более того, многие системы автоматически реализуют этот подход, ограничивая срок действия пароля.
Но как поменять пароли во всех приложениях? Для этого часто используют системы синхронизации паролей, которые изменяют пароли для всех приложений на одно и то же значение. Однако нетрудно видеть явные недостатки такого подхода. В частности, в таких системах безопасность понижается до уровня «наименьшего общего знаменателя». Например, если в процесс синхронизации включено приложение, пароль которого не длиннее четырех символов, это означает, что все приложения будут использовать пароль длиной максимум четыре символа. Возможна также несовместимость политик паролей: синхронизация не будет работать в том случае, если «синхронизируются» приложения с различными политиками сложности паролей. Отметим и риск, обусловленный тем, что пользователь знает свой пароль, так как система синхронизации предоставляет ему возможность задать пароль самостоятельно. Взлом защиты одного приложения и получение информации о паролях позволяет злоумышленникам получить доступ к другим ресурсам.
Кроме того, в описанном выше варианте синхронизируются только пароли, в то время как при аутентификации вводятся и другие данные: имя пользователя, IP-адрес, название базы данных и т. д. Все эти данные пользователь должен помнить и вводить. Простейший пример — RDP-аутентификация, при которой необходимо указать имя пользователя, пароль, IP-адрес, домен, причем все эти данные вводятся вручную. К тому же система синхронизации паролей требует установки специальных модулей — «надстроек» над теми ресурсами, которые синхронизируются. Это кардинальным образом ограничивает перечень приложений, которые можно включить в процесс синхронизации паролей.
Более здравую альтернативу варианту синхронизации паролей предоставляет технология однократной сквозной комплексной аутентификации — Single Sign-On. Именно такой подход реализован в продукте SecureLogin компании ActivIdentity (www.actividentity.com), который предоставляет пользователю автоматический доступ ко всем типам приложений после первичной аутентификации в доменной среде (например, Active Directory или Novell eDirectory), совместимой с LDAP v3. Используемая в нем технология основана на автоматической подстановке персональных данных аутентификации (имя, логин, пароль и т. п.) в авторизационное окно приложения.
Важное свойство продукта — возможность работы с Windows, Web-,и Java-приложениями, а также в терминальных эмуляторах и терминальных сессиях (Windows Terminal Server, Citrix presentation server и т. д.)
При работе с ActivIdentity SecureLogin служба каталога хранит персональные данные аутентификации (ПДА) пользователя для всех приложений, аутентификация в которых выполняется автоматически с помощью SecureLogin (далее будем называть их SSO-разрешенными приложениями). ПДА хранятся в зашифрованном виде, что гарантирует их доступность только прошедшему аутентификацию пользователю.
Когда запускается SSO-разрешенное приложение, входящее «в поле зрения» SecureLogin, система извлекает данные из службы каталогов и автоматически подставляет их в соответствующие поля окна аутентификации. Кроме того, SecureLogin автоматически определяет диалоги аутентификации в том случае, если они повторно возникают в течение работы приложения, и повторно подставляет соответствующие ПДА.
Существенно, что сами приложения не требуется настраивать на работу с SecureLogin, дописывать, дополнять модулем интеграции и т. д. Вся работа по интеграции выполняется в SecureLogin. Стоит отметить, что это можно делать с помощью специального мастера в интерактивном режиме или путем написания макросов на развитом и хорошо документированном языке. После установки SecureLogin будет автоматически определять все приложения, к которым пользователь имеет доступ.
В случае сквозной однократной аутентификации возникает ситуация, когда пользователь проходит первичную аутентификацию в системе и доступ ко всем приложениям становится фактически открытым, так как SecureLogin будет извлекать данные из службы каталогов и подставлять по требованию приложения. Чтобы предотвратить несанкционированный доступ, можно активировать повторную аутентификацию пользователя (реаутентификацию). В этом случае пользователь проходит первичную аутентификацию, используя любой из возможных методов: пароль, смарт-карту, отпечаток пальца, комбинацию методов и т. д. При запуске SSO-разрешенного приложения, для которого в SecureLogin активирована опция реаутентификации, SecureLogin требует повторно пройти аутентификацию, используя тот же метод, что и при первичной аутентификации (если использовался пароль, то каждый раз нужно будет использовать тот же самый системный пароль).
В конце прошлого года вышла новая версия ActivIdentity SecureLogin 6.1, в которую был внесен ряд дополнений. Теперь продукт поддерживает работу с версиями Windows Vista: Ultimate, Business и Enterprise, а персональные данные аутентификации, используемые SecureLogin, могут приниматься различными версиями Windows. Кроме того, реализована поддержка браузеров Mozilla Firefox, улучшена работа с опубликованными Citrix-приложениями (с использованием Citrix Presentation Server 4.5 и Citrix Presentation Server Client 10) b с Microsoft Group Policy, расширены возможности применения Java-приложений.