Что такое аутентификация и зачем она нужна
Несмотря на сложность и труднопроизносимость
терминов "идентификация" и "аутентификация",
каждый пользователь современных информационных систем сталкивается с процедурами,
скрывающимися за этими терминами, неоднократно в течение рабочего дня.
Не углубляясь в технические подробности, можно сказать, что эти процедуры
выполняются каждый раз, когда пользователь вводит пароль для доступа к компьютеру,
в сеть, к базе данных или при запуске прикладной программы. В результате их
выполнения он получает либо доступ к ресурсу, либо вежливый отказ в доступе.
Строго говоря, этот процесс состоит из двух частей – идентификации и аутентификации.
Идентификация – это предъявление пользователем какого-то уникального, присущего
только ему признака-идентификатора. Это может быть пароль, какая-то биометрическая
информация, например отпечаток пальца, персональный электронный ключ или смарт-карта
и т.д. Аутентификация – это процедура, проверяющая, имеет ли пользователь с
предъявленным идентификатором право на доступ к ресурсу.
Эти процедуры неразрывно связаны между собой, поскольку способ проверки определяет,
каким образом и что пользователь должен предъявить системе, чтобы получить
доступ.
Ниже мы рассмотрим ряд проблем, которые могут возникнуть при организации доступа
к информационным ресурсам, и как в связи с этим должны быть организованы идентификация
и аутентификация пользователей.
Как правило, в современных предприятиях информационная инфраструктура гетерогенна.
Это означает, что в одной сети совместно существуют сервера под управлением
разных операционных систем, например, Microsoft Windows, Novell NetWare, Linux
и т.д., и большое количество прикладных программ.В зависимости от рода деятельности
предприятия, это могут быть приложения электронной почты и групповой работы
(GroupWare), CRM- и ERP-системы, системы электронного документооборота, бухгалтерская
программа, корпоративный web-портал и т.д.
Если ИТ-департамент не предпринимает специальных усилий, то количество паролей,
которые необходимо помнить обычному пользователю, может достигать 5–6. Это
приводит либо к тому, что пользователи пишут пароли на бумажках и приклеивают
на видных местах, что сводит на нет все усилия по защите информации, либо к
постоянной путанице и забываниям паролей, что вызывает повышенную нагрузку
и регулярную головную боль службы поддержки.
Если к этому добавить, что каждый пароль должен состоять не менее чем из 6–8
произвольных букв, цифр и спецсимволов, и каждый пароль необходимо периодически
менять, то представить серьезность проблемы не составит труда.
Аутентификация для доступа в сеть
При рассмотрении вопросов аутентификации
для доступа в сеть будем предполагать, что клиентские рабочие станции функционируют
под управлением операционной
системы Windows 2000 или Windows XP. Понятно, что еще встречаются рудименты
типа Windows 95/98, однако прогресс неумолим и переход на современные операционные
системы – вопрос времени.
В рассматриваемых операционных системах за аутентификацию отвечает специальный
модуль операционной системы, который называется GINA DLL. GINA означает Graphic
Identification and Authentication – графическая DLL для идентификации и аутентификации.
Данный модуль вызывается из процесса Winlogon и отвечает за реагирование на
комбинацию Ctrl-Alt-Del, получение от пользователя его идентификатора (в классическом
варианте – имя пользователя и пароль), передачу его процессу Winlogon для аутентификации,
блокировку рабочей станции, переключение пользователей в Windows XP и другие
задачи подобного рода.
Интерфейс GINA DLL документирован, и любой желающий может реализовать свой
вариант этого модуля в соответствии с собственными потребностями.
В дистрибутив Windows входит GINA DLL, реализованная Microsoft, – так называемая
MSGINA, которая осуществляет аутентификацию с использованием пароля.
Парольная аутентификация
Самый распространенный, можно сказать, классический
способ аутентификации при доступе к сетевым ресурсам – пароль. Если аутентификация
осуществляется в
домен на базе Microsoft Active Directory, то процедура выглядит до смешного
просто – пользователь вводит свое имя и пароль, которые проверяются контроллером
домена. Если пароль правильный – пользователь получает доступ к ресурсам
домена, если нет – выдается сообщение об ошибке.
Надо сказать, что, начиная с Windows 2000, MSGINA также реализует возможность
аутентификации с использованием цифровых сертификатов X.509.
Теперь немного усложним ситуацию, допустим, что в сети есть еще сервер под
управлением Novell NetWare. Компания Novell продвигает свой вариант службы
каталогов – NDS (Novell Directory Services) или, как она стала называться позднее,
Novell eDirectory, в котором пользователь также должен пройти аутентификацию.
В связи с тем, что Novell и Microsoft – конкуренты на рынке серверных операционных
систем, их службы каталогов функционируют совершенно независимо и не хотят
ничего знать друг о друге. Это означает, что для каждого пользователя должна
существовать учетная запись как в Active Directory, так и в eDirectory, причем
каждая со своим паролем.
Как правило, если в сети присутствуют сервера под управлением NetWare, на
клиентские рабочие станции ставится программное обеспечение Novell Client.
В принципе, это не обязательно, поскольку c клиентских рабочих станций Windows "умеет" осуществлять
аутентификацию пользователей в каталоге Novell, однако без Novell Client недоступен
ряд возможностей, ради которых обычно и используют Novell.
Novell Client устанавливает свой вариант модуля GINA DLL, NWGINA, который
может запрашивать у пользователя два пароля – один для аутентификации в своем
каталоге, второй для аутентификации в каталоге Windows. Также в NWGINA присутствует
функциональность синхронизации паролей в каталогах Windows и Novell: в этом
случае можно обходиться одним паролем.
Однако все варианты предусмотреть невозможно, и возможны ситуации рассинхронизации
паролей. В таких ситуациях для восстановления статус-кво необходимо участие
пользователя, а в некоторых случаях и администратора.
Также из недостатков парольной аутентификации следует отметить невысокий уровень
безопасности – пароль можно подсмотреть, угадать, подобрать, сообщить посторонним
лицам и т.д.
Очевидные достоинства парольной аутентификации – отсутствие дополнительных
расходов, поскольку парольная аутентификация является составной частью всех
современных операционных систем.
Система Zlogin - аутентификация с использованием электронных ключей
Данный
метод аутентификации предполагает использование электронных ключей для хранения
учетных записей пользователей.
В этом варианте используется обычный метод аутентификации с использованием
паролей, однако пароли хранятс я не в голове пользователя, а в памяти электронного
ключа или смарт-карты, и вводятся не вручную с клавиатуры, а считываются из
электронного ключа при его подсоединении к компьютеру.
Для реализации такого метода аутентификации на клиентские компьютеры устанавливается
специальная GINA DLL, которая реагирует на подсоединение электронного ключа,
запрашивает PIN-код, считывает из памяти ключа профиль для входа в сеть, т.е.
имя пользователя, пароль, имя домена или дерева eDirectory и осуществляет вход
в сеть с использованием прочитанных данных.
Процесс выдачи ключа пользователю довольно прост: администратор должен создать
профиль доступа и записать его в память ключа. Для этого администратор выбирает
учетные записи пользователя в службах каталога Windows и NetWare, для них генерируются
новые пароли, записываются в ключ и меняются в соответствующих службах каталога.
Пароль при этом генерируется автоматически и сразу записывается в память ключа,
пользователь его даже не знает. Это дает возможность генерации «сильных» паролей,
представляющих собой произвольную комбинацию букв, цифр и спецсимволов.
Кроме этого, существует возможность автоматической смены паролей с любой периодичностью,
например при каждом входе в сеть. Этот процесс также происходит без участия
пользователя.
В одном профиле может храниться информация об одной учетной записи в Windows
и одной – в NetWare. В ключе может быть несколько профилей, в этом случае GINA
DLL при подсоединении ключа отобразит список профилей и предложит пользователю
выбрать один из них. Это удобно, если пользователь может осуществлять вход
в сеть под разными учетными записями с разными правами.
Такой метод аутентификации не поддерживается стандартными средствами операционных
систем. Тем не менее, некоторые производители электронных ключей поставляют
в комплекте SDK подсистему аутентификации, реализующую описанный функционал,
однако, как правило, такие реализации однобоки и носят в большей степени ознакомительный
характер.
Единственный вариант – воспользоваться специально разработанной системой аутентификации
с использованием электронных ключей, такой как Zlogin.
Основное преимущество системы Zlogin заключается в минимальной перестройке
ИТ-инфраструктуры организации, минимальные затраты на администрирование, одновременной
аутентификации в службах каталога Windows и NetWare, повышенной безопасность
сети за счет использования "сильных" паролей и хранения их в защищенной
памяти электронных ключей.
Кроме этого, существенно снижается "человеческий фактор", поскольку
пользователь просто не знает пароля, поэтому не может его никому передать или
записать на бумажке.
|