Для многих пользователей и администраторов пароли — это неизбежное зло. Пароль — не связанное с большими затратами средство защиты доступа к ИТ-инфраструктуре и ее ресурсам, но неудачно выбранные или плохо управляемые пароли могут сделать уязвимыми корпоративные данные и ресурсы. Кроме того, из-за различных требований к паролям в разных приложениях и средах большинству пользователей в конечном итоге приходится обзаводиться несколькими паролями. Пользователи, вынужденные запоминать пароли, часто применяют в этом качестве одинаковые или простые для запоминания наборы символов. Если пароль трудно запомнить, пользователь может записать его в блокноте, который будет всегда под рукой. В результате резко возрастает опасность разглашения паролей.

Существует несколько способов повысить надежность паролей и упростить управление ими. В частности, можно ввести в компании политику надежных паролей, применить решения для согласования учетных данных и синхронизировать пароли.

Политики надежных паролей обеспечивают смену паролей через регулярные промежутки времени и соответствие определенным требованиям по сложности; эти условия снижают вероятность успешного отгадывания пароля и атак против хеша пароля путем простого перебора. Средства согласования учетных данных сопоставляют учетные данные пользователя, необходимые для доступа к различным ресурсам, с набором первичных учетных данных пользователя. Успешная проверка подлинности с использованием первичных учетных данных разблокирует другие учетные данные пользователя и открывает этому пользователю единую процедуру входа (SSO) для других ресурсов.

Цель третьего подхода — синхронизации паролей — помочь администраторам и пользователям работать с различными паролями. Благодаря синхронизации паролей задача пользователей и администраторов существенно упрощается, так как процесс управления и обслуживания многих паролей сводится к обработке одного. В этой статье речь пойдет о решениях Microsoft для синхронизации паролей между Active Directory (AD) и другими репозитариями. Сначала мы рассмотрим проблемы, которые могут возникнуть при построении решения для синхронизации паролей.

Определение и проблемы

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

Существует два вида средств синхронизации паролей: односторонние и двунаправленные. В таблице приведены четыре решения синхронизации паролей Microsoft и их характеристики (в том числе отмечены односторонние и двунаправленные решения). Более полные сведения об этих решениях приведены в материалах врезки «Дополнительные ресурсы». Односторонние решения для синхронизации паролей принудительно распространяют изменения паролей из центрального хранилища в набор связанных хранилищ — эти решения также называются «проталкиванием пароля». При двунаправленной синхронизации изменения паролей могут производиться в любом из связанных хранилищ. Оба решения производят впечатление простых операций копирования, но при их применении возникают определенные проблемы.

Одна из трудностей заключается в том, что пароли хранятся в безопасном формате. Например, пароли в AD всегда хранятся в хешированном формате. Функции хеширования — односторонние шифраторы: нельзя извлечь исходный пароль из хеша пароля. В результате доступ к простому текстовому паролю пользователя в условиях обычного функционирования AD невозможен. Простой текстовый пароль будет доступен только после того, как пароль назначен (т.е. создана связанная с ним учетная запись пользователя), отменен администратором или изменен пользователем. Кроме того, пароли могут (в отличие от других атрибутов пользователя) синхронизироваться, только когда происходят события назначения, сброса или изменения пароля. Если пользователи обращаются к решению синхронизации паролей не только при назначении и изменении паролей, то решению требуется специальная логика для перехвата открытых текстовых паролей, когда пользователи назначают или меняют пароль на контроллере домена (DC) AD или сервере каталогов Novell NetWare.

Еще одна проблема — требования к сложности пароля. Обычно в различных хранилищах применяются разные требования к сложности пароля. Готовясь к синхронизации паролей между хранилищами, необходимо определить минимальный общий набор требований к сложности пароля для каждого из связанных хранилищ. Если не согласовать требования к сложности паролей, то попытка синхронизации завершится неудачей. Согласование требований к сложности паролей дает специалистам по безопасности основания сомневаться в надежности решений синхронизации паролей. Более того, специалисты по безопасности обычно настроены скептически, так как не доверяют процессу синхронизации паролей между базами данных различных центров проверки подлинности. Их возражения основаны на доводе о «ключе от королевства»: зная пароль пользователя, можно обращаться к другим ресурсам, защищенным тем же паролем (если известна учетная запись пользователя на целевом компьютере). Однако не следует придавать этим опасениям слишком большого значения. Даже при синхронизации паролей существует серьезное препятствие для злоумышленника, желающего получить доступ к информации, защищенной по схеме имя пользователя/пароль. Пользователь должен знать единый синхронизированный пароль и имя пользователя на целевом компьютере. Тем не менее при синхронизации необходимо объяснить пользователям важнейшую роль единого синхронизированного пароля. Кроме того, важно постоянно напоминать пользователям об опасности передачи пароля другим лицам.

И наконец, для решений двунаправленной синхронизации паролей требуется механизм обнаружения цикла синхронизации. Без обнаружения цикла процесс синхронизации пароля между различными хранилищами будет продолжаться бесконечно. При односторонней синхронизации паролей этой проблемы не возникает.

ILM или IIFP?

Диспетчер Microsoft Identity Lifecycle Manager (ILM, ранее известный как Microsoft Identity Integration Server, MINS) — это программа управления циклом существования сертификатов. Наряду с синхронизацией каталогов, подготовкой учетных записей и отменой сертификатов, ILM может предоставлять функции синхронизации и управления паролями. ILM обеспечивает выполнение этих функций между разнообразными связанными хранилищами, в том числе AD, Active Directory Application Mode (ADAM), Exchange 2000 Server или Exchange Server 2003 и Windows NT 4.0, а также Lotus Notes, Sun ONE Directory Server и Novell eDirectory. Самая свежая версия — ILM 2007. Дополнительные сведения об ILM можно найти на сайте Microsoft Identity Lifecycle Manager 2007 по адресу http://www.microsoft.com/windowsserver/ilm2007/default.mspx.

Пакет расширений Microsoft Identity Integration Feature Pack (IIFP) обеспечивает синхронизацию сертификатов каталогов, предоставление и отмену учетных записей, а также синхронизацию паролей, но только между экземплярами AD, ADAM и Exchange 2000 или Exchange 2003. Бесплатный программный пакет можно загрузить по адресу http://www.microsoft.com/downloads/details.aspx?familyid=d9143610-c04d-41c4b7ea-6f56819769d5&displaylang=en.

Связь ILM и IIFP с другими хранилищами основана на наборе коннекторов или агентов управления (Management Agent, MA), по терминологии Microsoft, устанавливаемых на сервере ILM или IIFP. Синхронизация пароля ILM и IIFP не требует установки специальных агентов на целевых компьютерах. Поэтому пользователи и администраторы должны всегда взаимодействовать напрямую с ILM или IIFP при назначении или изменении паролей. Два примечательных исключения из этого правила, которые не требуют явного взаимодействия между пользователем и ILM при назначении паролей, — использование службы оповещения об изменениях пароля (PCNS) и создание диспетчером ILM новой учетной записи пользователя. В первом случае пользователи могут напрямую взаимодействовать с Windows DC, чтобы назначать и изменять пароли. Далее в статье приводится более подробное описание PCNS. В последнем случае ILM назначает паролю пользователя заранее определенное значение, создавая учетную запись в процессе формирования учетной записи пользователя ILM.

Назначать и менять пароли можно с использованием агентов управления AD, ADAM и NT 4.0. Агенты управления Lotus Notes, Sun ONE Directory Server и eDirectory могут только назначать пароли. ILM и IIFP можно расширить, чтобы предоставить службы синхронизации для других хранилищ путем создания специальных расширений для обработки паролей. Если администратора не пугает перспектива заняться программированием, то в справочном пособии по разработке, поставляемом вместе с ILM и IIFP, дано подробное описание методов создания расширений для паролей.

Как отмечалось выше, пароли можно синхронизировать, только когда они представлены в открытом текстовом формате (т.е. в ходе операций назначения, сброса или изменения). ILM и IIFP поддерживают следующие интерфейсы для перехвата сведений о назначении и изменении паролей, а также запуске синхронизации паролей в группе связанных хранилищ: Web-приложения Helpdesk Password Reset и Self-Service Password Reset и режим Change Password в диалоговом окне Windows, вызываемом нажатием клавиш Ctrl+Alt+Del.

При использовании Web-приложений Helpdesk Password Reset и Self-Service Password Reset пользователи и администраторы взаимодействуют напрямую с сервером ILM или IIFP через Web-интерфейс. Оба Web-приложения — бесплатные модули расширения для ILM и IIFP, входящие в сценарии MINS 2003. Эти сценарии, вместе с необходимым исходным текстом и инструкциями по развертыванию, можно загрузить по адресу http://www.microsoft.com/downloads/details.aspx?familyid=15032653-d78e-4d9d-9e486cf0ae0c369c&displaylang=en.  Web-приложение Self-Service Password Reset описано в руководстве «User-Based, Self-Service Password Change Solution Guide for MINS 2003» компании Microsoft (http://www.microsoft.com/downloads/details.aspx?familyid=7e90b216-6cfd-4ccd-bdb9-2cc6be004bc4&displaylang=en ).

При использовании режима Change Password в диалоговом окне Ctrl+Alt+Del пользователи взаимодействуют с ILM или IIFP через контроллер домена Windows, выполняющий проверку подлинности. Этот механизм изменения пароля требует установки службы PCNS на всех DC в домене, где должны быть перехвачены изменения пароля пользователя. Логика PCNS реализована в ILM и IIFP1a. Службу PCNS можно установить на контроллерах домена Windows 2000 и Windows Server 2003.

PCNS — служба Windows, которая отслеживает изменения пароля AD и оповещает другие серверы (например, серверы ILM) об этих изменениях. PCNS состоит из трех программных компонентов: DLL фильтрации паролей, PCNS и утилиты настройки PCNS. DLL фильтрации паролей получает текстовую копию измененного пароля от службы Local Security Authority (LSA — lsass.exe) контроллера домена. PCNS получает оповещения об изменении пароля от фильтра паролей, устанавливает их в очередь и отправляет на целевые компьютеры. Утилита настройки PCNS позволяет задать данные конфигурации PCNS. Эта информация хранится в AD и содержит цели оповещения PCNS.

ILM и IIFP поддерживают только одностороннюю (с «проталкиванием») синхронизацию пароля в смешанной среде (т.е. с операционными системами Windows и отличными от Windows). Как ILM, так и IIFP могут реплицировать наборы паролей и изменения, исходящие из отличной от Windows стороны канала синхронизации, в сторону Windows.

Использование SFU или Windows 2003 R2

Службы Services for UNIX (SFU) 3.5 компании Microsoft — программный пакет, бесплатно предоставляемый пользователям Windows 2000 и Windows 2003. В него входят инструменты и службы для интеграции платформ Windows и UNIX/Linux. SFU также располагает службой синхронизации паролей. Часть служб SFU входит в Windows 2003 R2, в том числе служба синхронизации паролей. Дополнительные сведения о продукте SFU и его службах доступны на Web-узле Windows Services for UNIX компании Microsoft (http://www.microsoft.com/technet/interopmigration/unix/sfu/default.mspx ).

Служба синхронизации паролей SFU 3.5 и Windows 2003 R2 может синхронизировать пароли между платформами Windows 2003 R2, Windows 2003, Windows XP, Windows 2000 Server, Windows 2000 Pro, NT Server 4.0 и NT Workstation на стороне Windows, и платформами HP-UX 11, Red Hat Linux 7.0, Solaris 7 и AIX 4.3.3 на стороне UNIX. Служба обеспечивает синхронизацию паролей между доменами и автономными компьютерами на стороне Windows и между базами данных Network Information Service (NIS) и автономными компьютерами на стороне UNIX/Linux.

Синхронизацию паролей SFU и Windows 2003 R2 можно настроить на работу в обоих направлениях (т.е. от Windows к UNIX или от UNIX к Windows) для всех перечисленных платформ UNIX, за исключением AIX. Служба синхронизации паролей SFU 3.5 и Windows 2003 R2 запускает синхронизацию каждый раз, когда пользователь обновляет свой пароль на компьютере Windows (при синхронизации Windows-UNIX) или на компьютере UNIX/Linux (при синхронизации UNIX-Windows).

Для двунаправленной синхронизации паролей SFU и Windows 2003 R2 требуется развернуть специальную программу синхронизации. Если предстоит синхронизировать пароли между доменом Windows и средой UNIX/Linux, то служба синхронизации паролей SFU и Windows 2003 R2 должна быть установлена на всех контроллерах домена Windows. Это обязательное требование, так как в модели с несколькими главными контроллерами обновлять пароли можно на любом сервере. Службу синхронизации паролей также необходимо установить на автономном компьютере Windows, если пароли предстоит синхронизировать между автономным компьютером и UNIX/Linux. Для синхронизации паролей Windows-UNIX/Linux на платформе UNIX/Linux требуется демон ssod. Для синхронизации паролей UNIX/Linux-Windows необходим модуль pam_sso на стороне UNIX/Linux.

Использование HIS

Host Integration Server 2006 (HIS 2006; http://www.microsoft.com/hiserver ) — самая свежая версия программного шлюза компании Microsoft для больших ЭВМ.Прошлые версии Microsoft HIS выпускались под именем SNA Server. С помощью HIS 2006 компании могут интегрировать важнейшие производственные серверные приложения, источники данных, системы обработки сообщений и безопасности в архитектуре, ориентированной на Microsoft .NET, что позволяет продолжить использование данных и приложений, размещенных на больших и средних (IBM AS/400) компьютерах IBM в распределенной среде.

Дополнительный компонент HIS, Enterprise Single Sign-On (ENTSSO), обеспечивает службы однократной регистрации (single sign-on, SSO) между Windows и средой мини-компьютеров и мэйнфреймов. ENTSSO — хороший пример серверного решения SSO с кэшированием учетных данных. Наряду с SSO на основе кэширования учетных данных на сервере, ENTSSO может использоваться для двунаправленной синхронизации паролей между Windows и другими операционными системами. В ENTSSO есть интерфейсы синхронизации паролей и служба PCNS. Это та же служба PCNS, которая применяется в ILM и IIFP, описанных ранее. Служба PCNS также пересылает оповещения об изменении пароля на сервер HIS ENTSSO.

И наконец, в составе HIS имеется агент, с помощью которого можно сделать синхронизацию паролей ENTSSO двунаправленной при синхронизации с компьютерами AS/400. При работе с мэйнфреймами потребуется независимый программный агент, который позволит добиться полной двунаправленной синхронизации с системами безопасности Resource Access Control Facility (RACF) и ACF2 компании IBM, а также Top Secret компании CA. Один из поставщиков, выпускающий агент синхронизации паролей для HIS ENTSSO, — Proginet (http://eps.proginet.com ).

Использование Services for NetWare

Services for NetWare — программный пакет, бесплатно предоставляемый компанией Microsoft, который позволяет упростить интеграцию AD и Novell Directory Services (NDS), eDirectory или среды на основе базы данных bindery. Services for NetWare также обеспечивает одностороннюю синхронизацию из AD с Bindery, NDS или eDirectory. Новейшая версия — Services for NetWare 5.03; дополнительные сведения приведены на Web-узле Microsoft Windows Services for NetWare 5.03 Overview (http://www.microsoft.com/windowsserver2003/techinfo/overview/sfncd.mspx ).

Компонент Services for NetWare позволяет задействовать один из приведенных ниже методов синхронизации паролей.

  • После того как пользователи скопированы из bindery, NDS или eDirectory в AD, они получают приглашение изменить свои пароли при первой регистрации в AD. Затем новые пароли AD синхронизируются с соответствующими атрибутами пароля в bindery, NDS или eDirectory. Этот метод называется начальной обратной синхронизацией.
  • Когда учетные записи пользователей создаются в NDS или eDirectory, новые объекты пользователей копируются в AD. После успешной регистрации в AD новым пользователям предлагается сменить пароль. Затем новые пароли копируются в NDS или eDirectory.
  • Когда пользователи изменят пароли или администратор сбрасывает пароли в AD, старые пароли bindery, NDS или eDirectory меняются на новые.

О решениях независимых компаний

Решения синхронизации паролей, рассмотренные в данной статье, имеют уникальные особенности и ориентированы на конкретные применения. Существуют и другие решения для синхронизации паролей. Алгоритмы синхронизации паролей реализованы в современных программах подготовки сертификатов (например, IBM Tivoli Identity Manager, HP OpenView Select Identity). Кроме того, имеются специализированные продукты для синхронизации паролей (например, P-Synch компании и PasswordCourier компании Courion). Трудно сравнивать решения, предоставленные другими компаниями, с ILM; продукты располагают эквивалентными функциями, и их различия невелики. Однако специализированные средства синхронизации паролей выделяются благодаря совместимости с гораздо более широким набором репозитариев. Кроме того, эти решения располагают Web-узлом для самостоятельного сброса пароля (на котором пользователи могут сбросить свои пароли или разблокировать учетные записи), порталом службы поддержки для сброса паролей (сброс паролей и разблокирование учетных записей персоналом службы поддержки) и другими важными функциями, такими как телефонный интерфейс для сброса паролей, автоматизированные предупреждения об истечении пароля по электронной почте и оповещения об истечении пароля при работе сценария регистрации. Конечно, за дополнительные функции приходится платить, поэтому необходимо решить, будут ли затраты оправданными. Решения синхронизации паролей Microsoft вполне могут оказаться оптимальным выбором.

Таблица - Характеристики решений Microsoft для синхронизации паролей

Жан де Клерк (jan.declercq@hp.com ) — член Security Office корпорации HP. Специализируется на проблемах управления идентичностью и вопросах безопасности продуктов Microsoft