Управление доступом по схеме однократного входа с авторизацией
Большинство пользователей информационных средств и систем используют компьютеры для доступа к ряду сервисов, будь это несколько локальных приложений или сложные приложения, которые включают одну или более удаленных систем, к которым машина пользователя подсоединяется через сеть. В целях обеспечения безопасности многие приложения требуют проведения аутентификации пользователя, прежде чем ему дадут доступ к сервисам и данным, предоставляемым приложением.
Конечные пользователи обычно воспринимают такие требования системы безопасности как дополнительную нагрузку, которая заставляет поддерживать и помнить многочисленные входные идентификаторы и пароли и использовать их каждый день по несколько раз, чтобы иметь возможность выполнять свою обычную работу. Довольно обычна ситуация, когда один пользователь имеет 5 и более таких пользовательских accounts, все на различных платформах, с различными правилами для длин паролей, а также с различной частотой их замены. Пользователь должен либо заучивать их, либо записывать, подвергая тем самым безопасность серьезному риску, так как их и могут найти неавторизованные пользователи.
С увеличением числа требующих запоминания паролей, возрастает вероятность того, что эти пароли будут забываться, а это потребует от администраторов дополнительных усилий по их восстановлению. Эту проблему часто называют «проблемой многих входов». Ее позволяет решить схема однократного входа с авторизацией SSO (Single Sign-On).
Управление доступом по схеме SSO дает возможность пользователям корпоративной сети при их входе в сеть пройти одну аутентификацию, предъявив только один раз пароль (или иной требуемый аутентификатор), и затем без дополнительной аутентификации получить доступ ко всем авторизованным сетевым ресурсам, которые нужны для выполнения их работы. Такими сетевыми ресурсами могут быть принтеры, приложения, файлы и другие данные, размещаемые по всему предприятию на серверах различных типов, работающих на базе различных ОС. Управление доступом по схеме SSO позволяет повысить производительность труда пользователей сети, уменьшить стоимость сетевых операций и улучшить сетевую безопасность.
С функционированием схемы SSO непосредственно связаны процессы аутентификации и авторизации. С помощью аутентификации система проверяет подлинность пользователя, в то время как авторизация определяет, что именно разрешается делать пользователю (обычно основываясь на его роли в организации). Большинство подходов SSO централизованно осуществляют аутентификацию пользователя. Авторизацию обычно выполняют на ресурсах целевых объектов, хотя некоторые продвинутые SSO-решения централизованно осуществляют и авторизацию, при этом используются продукты централизованного администрирования безопасности, которые осуществляют администрирование полномочий пользователей.
Схему SSO поддерживают такие средства, как протокол LDAP (Lightweight Directory Access Protocol), протокол SSL (Secure Sockets Layer), система Kerberos и инфраструктура управления открытыми ключами PKI (Public KeyInfrastructure), а также средства интеграции сервисов каталогов и безопасности. Эти средства и технологии образуют вместе фундамент для применения схемы SSO при обработке данных системами, использующими различные комбинации клиентов, серверов, сервисов и приложений.
Существующие решения схемы SSO простираются от простых средств до SSO-сервисов на базе сетевых ОС NOS (Network Operating System), многофункциональных приложений и SSO уровня предприятия.
Простые средства SSO включают кэш паролей Windows и кэш паролей, встроенный в продукты, подобные Internet Explorer и другие пакеты.
NOS-based SSO-сервисы дают возможность пользователю входить в такие сетевые ОС, как Windows NT/2000/XP, NetWare или Solaris, и таким образом получать доступ ко многим или ко всем приложениям, работающим на базеNOS.
Продукты SSO уровня предприятия, такие как IBM’s Global Sign-On и др., обычно применяют комбинированные подходы к sign-on, основанные на использовании клиентов и proxy, технологии и стандарты кратной аутентификации, включая ввод ID пользователя и пароля.
Простая система однократного входа SSO
Простое SSO-решение состоит в том, чтобы просто автоматизировать процесс предъявления пароля. Для многих из продуктов SSO информация входа (т. е. имя пользователя и пароль) и любые необходимые записи хранятся в специальном сервере аутентификации. Используя клиентское ПО, пользователь предъявляет серверу аутентификации пароль, и этот сервер сообщает клиентскому ПО, к каким ресурсам может получить доступ пользователь.
Клиентское ПО представляет пользователю допустимые опции. Когда пользователь выберет ресурс, клиентское ПО использует мандат входа и scripts, предоставленные сервером аутентификации, чтобы установить от имени пользователя соединение с соответствующим ресурсом целевого объекта (сервера, хоста, домена или приложения).
При автоматизации процедуры входа выполняются следующие шаги.
1. Пользователь предъявляет серверу аутентификации пароль, используя специальное клиентское ПО на своем персональном компьютере.
2. Сервер аутентификации проверяет, к каким ресурсам может получить доступ этот пользователь и отправляет эту информацию обратно на клиентское SSO-приложение совместно с необходимым мандатом входа и scripts для соединения с каждым разрешенным ресурсом.
3. Клиентское SSO-приложение представляет пользователю доступные ресурсы и входит от имени пользователя в выбранные приложения.
Автоматизация процедуры входа позволяет получить простую схему SSO, но при этом еще больше децентрализуется администрирование безопасностью. Ряд поставщиков предлагает дополнительные средства централизованного администрирования безопасностью. Эти средства используют агентов в целевых системах и обеспечивают основанное на ролях (role-based) централизованное администрирование учетных записей пользователей и информации об их полномочиях. В некоторых случаях эти средства администрирования полностью отделены от схемы SSO; в других — интегрированы с SSO.
Первоначальной целью SSO было сокращение числа используемых многоразовых паролей для получения пользователями доступа к сетевым ресурсам. При формировании современного решения SSO применяются также такие средства аутентификации пользователя, как токены, цифровые сертификаты PKI, смарт-карты и биометрические устройства. Более совершенный подход к аутентификации обычно основан на использовании то-кенов. Наиболее известной системой аутентификации является Kerberos.
Продвинутые SSO-решения предоставляют больше контроля над полномочиями пользователя, поддерживаемыми обычно на прикладном уровне. В продуктах SSO могут быть также поддержаны нетокенные механизмы аутентификации, основанные на сертификатах PKI (в частности, RSA ClearTrust поддерживает PKI).
SSO-продукты уровня предприятия
SSO-продукты уровня предприятия проектируются для больших компаний с гетерогенной распределенной компьютерной средой, состоящей из многих систем и приложений.
Характерным представителем SSO-продуктов уровня предприятия является продукт IBM Global Sign-On for Multiplatforms (далее называемый GSO). Продукт GSO представляет безопасное, простое решение, позволяющее получать доступ к сетевым компьютерным ресурсам, используя однократный вход в систему. GSO освобождает пользователя от необходимости вводить различные идентификаторы и пароли для всех его целевых объектов, которые включают ОС, программные средства коллективного пользования, БД или приложения другого вида.
Было бы идеально, если бы GSO мог действовать как универсальный безопасный, надежный механизм аутентификации для любого целевого объекта. К сожалению, такое решение унифицированной аутентификации создать невозможно, потому что большинство продуктов, которым требуется сервис аутентификации, выполняют процедуру аутентификации различными способами. Чтобы сделать реальностью такой идеальный подход, поставщики должны модифицировать свои продукты таким образом, чтобы обеспечить выполнение требований общего стандарта X/Open Single Sign-On (XSSO).
Поэтому GSO придерживается реального подхода, основанного на том факте, что продукты поставщиков не поддерживают доверенную внешнюю аутентификацию. Для аутентификации эти продукты чаще всего требуют идентификатор ID и пароль каждого пользователя. GSO осуществляет безопасное хранение пользовательских идентификаторов IDs и паролей, а также обеспечение ими целевых объектов, когда пользователю нужно предъявить пароль при входе. Это освобождает пользователя от необходимости помнить и вводить IDs и пароль каждый день для каждого целевого объекта.
Ячейка GSO содержит, по крайней мере, сервер GSO и одну рабочую станцию пользователя, называемую также клиентом GSO. В ячейке GSO может быть более одного сервера GSO и множество клиентов.
Пользователь взаимодействует со своей рабочей станцией и некоторыми целевыми объектами (приложениями), которые могут выполняться на этой рабочей станции или на каком-либо другом компьютере, например сервере департамента или серверах приложений.
Перед тем как начать работу, пользователь должен войти в свою рабочую станцию. Он предъявляет пароль именно GSO, а не приложению или другим серверам. GSO выполняет аутентификацию, основанную на идентификатореID и пароле пользователя (иногда поддерживаемых смарт-картой или считывателем отпечатков пальцев). Сервер GSO включается в процесс аутентификации, для того чтобы проверить пароль пользователя и извлечь его мандат (credentials).
Затем GSO вводит пользователя в целевые объекты (приложения или серверы), с которыми этот пользователь должен работать. GSO использует для входа пользователя методы, предоставляемые целевыми объектами. В большинстве случаев GSO имитирует вход пользователя, передавая целевому объекту ID и пароль пользователя, как будто вводит их сам пользователь. Важное различие, очевидно, состоит в том, что теперь пользователю не нужно запоминать эти идентификаторы ID и пароли, поскольку заботу о них принимает на себя GSO.
GSO является клиент/серверным приложением. В дополнение к серверу GSO существует программа клиента (сегмент программного кода), выполняемая на рабочей станции пользователя, которая взаимодействует с сервером GSO.
SSO-продукты уровня предприятия обладают следующими достоинствами:
• допускают использование многих целевых платформ со своими собственными механизмами аутентификации;
• безопасно хранят в БД учетную информацию пользователей (такую как идентификатор ID, пароль и некоторую дополнительную информацию) на каждую целевую платформу и каждого пользователя;
• радикально уменьшают долю забываемых паролей, поскольку пароли пользователей хранятся безопасно и надежно;
• используют методы и средства безопасной аутентификации и коммуникации; чувствительная пользовательская информация хранится и передается по сети только в зашифрованном виде.
Недостатками SSO-продуктов уровня предприятия является их относительно большая стоимость и высокие требования к квалификации обслуживающего персонала.
Эта статья была опубликована Пятница, 10 сентября, 2010 at 18:48 в рубрике Инфраструктура защиты на прикладном уровне. Вы можете следить за ответами через RSS 2.0 feed.