Компания RSA Security (ныне RSA, The Security Division of EMC) уже много лет успешно предлагает собственное решение в области двухфакторной аутентификации. Технология RSA SecurID дает платформо-независимое, проверенное и простое в использовании решение, защищающее сегодня информационные системы ведущих мировых компаний с более чем десятью миллионами пользователей по всему миру.
Данное решение включает в себя 3 компонента:
- RSA Authentication Manager – серверная часть. Устанавливается на отдельный компьютер. Хранит базу пользователей, журнал событий. Обрабатывает информацию, присылаемую агентами.
- RSA Authentication Agents – агенты. Устанавливаются на ресурсы, которые необходимо защитить. Подменяют запрос на ввод логина и пароля, на запрос соответствующей SecurID информации (логин + пин-код + токен-код), проверку её с помощью центрального сервера, и на основании этой проверки, предоставление доступа или отказ в доступе.
- Hardware&Software Authenticators – токены и заменяющее их ПО. Находятся непосредственно у пользователя, отображают текущее значение одноразового пароля.
Описание процесса аутентификации
Пользователь запрашивает доступ к ресурсу, будь то Web-портал, рабочая станция, сетевое хранилище, VNP или Dial-up сервер. Вместо стандартного приглашения на ввод логина и пароля запрашивается логин и кодовая фраза (passcode). Кодовая фраза представляет собой комбинацию пин-кода (4 цифры, которые пользователь помнит) и токен-кода (6 цифр, которые в данный момент высвечиваются на токене). Пользователь просто последовательно вводит эти 2 числа.
Агент предоставленную пользователем информацию передаёт на сервер в зашифрованном виде. Сервер хранит пин-коды пользователей и программные копии всех зарегистрированных токенов, соответственно может проверить предоставленную пользователем информацию.
В зависимости от результата проверки агент либо предоставляет пользователю доступ к ресурсу, либо отказывает в доступе.
Видеопрезентацию с подробным описанием шагов можно посмотреть на сайте производителя (на английском языке) — http://www.rsa.com/node.aspx?id=1159.
Описание алгоритма получения токен-кода
Каждому токену соответствует 128ми битное случайное число – начальный вектор генерации, seed. Плюс к этому в каждый токен встроены часы.
Токен-код — результат работы запатентованного компанией RSA алгоритма, который в качестве параметров берёт текущее время, и начальный вектор генерации. При этом алгоритм работает в одну сторону, так что по токен-коду невозможно восстановить начальный вектор генерации.
Токен-код меняется раз в минуту, действителен в течение одной минуты, и только один раз.
Так как сервер хранит соответствующие токенам начальные вектора генерации, он в любой момент времени может по тому же самому алгоритму восстановить текущий токен-код. В случае, если часы у сервера и токена расходятся, предусмотрена автоматическая синхронизация. Т.е. если часы у токена, например, убежали вперёд, сервер заносит в базу величину сдвига соответствующую конкретному токену.
RSA Authentication Manager
Данное программное обеспечение устанавливается на отдельный компьютер. Выполняет следующие задачи:
- хранит базу пользователей;
- хранит журнал событий;
- хранит список зарегистрированных токенов;
- обрабатывает информацию, присылаемую агентами.
Один сервер может обрабатывать запросы от десятков агентов. Кроме того, можно построить систему из нескольких серверов таким образом, чтобы каждый сервер защищал свою зону, и в то же время мог взять на себя обработку запросов при выходе из строя своего собрата. Базовая лицензия предусматривает один центральный сервер и одну реплику, расширенная – девять реплик.
Поддерживаются следующие операционные системы: Microsoft Windows Server 2000\2003, Sun Solaris, Red Hat Linux, SuSE Linux Enterprise Server, HP-UX, IBM AIX. Более подробно можно посмотреть на сайте производителя — http://www.rsa.com/node.aspx?id=1171
RSA Authentication Agents
Данное программное обеспечение устанавливается на защищаемый ресурс. Основная задача – потребовать от пользователя ввод SecurID информации, отправить её на центральный сервер и, в зависимости от ответа, предоставить доступ или отказать в доступе.
Список ресурсов, которые могут быть защищены, огромен. В него входят Web-серверы, сетевые ресурсы, VPN и Dial-up серверы, почтовые серверы, рабочие станции, серверы удалённого доступа к приложениям. Полный список, а так же инструкции по интеграции можно найти на сайте производителя — http://rsasecurity.agora.com/rsasecured/
Если необходимого ресурса нет в списке, поддерживается аутентификация по RADIUS протоколу. Если этого недостаточно, существует API, который позволит написать необходимый агент самостоятельно.
Hardware&Software Authenticators
Данный компонент системы SecurID выполняется в виде брелока для ключей или программного обеспечения, отображает текущее значение токен-кода и всегда находится у пользователя.
Имеется широкий выбор типов электронных токенов. Каждый токен имеет встроенную батарею, рассчитанную на все время жизни — от двух до пяти лет, в зависимости от типа. В период эксплуатации устройство не нуждается в обслуживании и замене батареи.
На сегодняшний день доступны следующие модели аппаратных токенов:
- Токен в форме брелока для ключей RSA SecurID SID700.
- Токен RSA SecurID SD200. По форме аналогичен банковской пластиковой карте. Выполнен из металла, его толщина порядка 5 мм.
- Токен RSA SecurID SD520. По размерам аналогичен SD200, но имеет цифровую панель. Пользователь набирает пин-код на этой панели. В результате токен отображает не просто токен-код, а комбинацию пин-кода и токен-кода, которая вводится при аутентификации. Данное решение позволяет обеспечить сохранность пин-кода, даже если записываются нажатия клавиш.
- Токен RSA SecurID SID800. Данный токен совмещает в себе токен SID700 и usb смарт-карту. Это позволяет использовать данный токен как отторгаемое хранилище цифровых сертификатов.
На сегодняшний день доступны следующие модели программных токенов:
- ПО для рабочих станций под управлением Microsoft Windows;
- Панель для web-браузера Internet Explorer и Mozilla Firefox;
- ПО для КПК под управлением Windows Mobile 2003, PalmOS, BlackBerry;
- ПО для смартфонов: Ericsson R380, Nokia 9210.
Лицензирование
Данный продукт лицензируется по количеству активных пользователей, т.е. пользователей, которым назначены токены.
Для полного функционирования системы необходимо купить серверную лицензию и токены на необходимое количество пользователей. Так же настоятельно рекомендуется купить поддержку, хотя бы на первый год. Программное обеспечение, как серверное, так и агентское, предоставляется бесплатно.
Минимальное первоначальное количество – 25 пользователей.
Существует пробная версия, распространяемая бесплатно. В неё включена серверная лицензия с ограниченным сроком жизни на двух пользователей и два токена SID700. Данная версия обладает полным функционалом, что позволяет перейти к коммерческому использованию без каких-либо дополнительных настроек.