Автор работы: Пользователь скрыл имя, 26 Ноября 2014 в 06:20, доклад
Многие новые функции Windows 2000 имеют прямое отношение к системе безопасности. Учитывая наличие в составе этой ОС таких компонентов, как Kerberos, Active Directory (AD) и встроенной поддержки шифрования по открытому ключу (Public Key Infrastructure, PKI), можно подумать, что разработчики Microsoft кардинально переделали архитектуру системы безопасности Windows NT. В действительности же, несмотря на столь существенные обновления, ядро системы безопасности Windows 2000 по-прежнему базируется на инфраструктуре Windows NT 4.0.
Особенности системы защиты Windows 2000
Многие новые функции Windows 2000 имеют прямое отношение к системе безопасности. Учитывая наличие в составе этой ОС таких компонентов, как Kerberos, Active Directory (AD) и встроенной поддержки шифрования по открытому ключу (Public Key Infrastructure, PKI), можно подумать, что разработчики Microsoft кардинально переделали архитектуру системы безопасности Windows NT. В действительности же, несмотря на столь существенные обновления, ядро системы безопасности Windows 2000 по-прежнему базируется на инфраструктуре Windows NT 4.0.
Разрабатывая архитектуру системы безопасности Windows NT 4.0, специалисты Microsoft заложили в нее возможность дальнейшего расширения. Архитектура построена на базе четко разграниченных модулей и включает несколько прикладных программных интерфейсов (API), обеспечивающих возможность добавления служб (например, шифрования и аутентификации), причем совершенно безболезненно для операционной системы.
Читателей наверняка интересует вопрос, в чем, собственно, заключается новизна архитектуры системы безопасности Windows 2000? Отвечая на него, сначала я расскажу о тех возможностях, которые демонстрирует система безопасности Windows 2000 по сравнению с аналогичной системой версии 4.0, а также о том, какие недостатки были устранены в процессе работы над ней. Затем я поясню, на основании каких новых функций Windows 2000 разработчики Microsoft намерены представить ее как операционную систему для решения задач электронной коммерции, и наконец, отдельно остановлюсь на каждом архитектурном компоненте и его функциях.
Чтобы понять защитную архитектуру Windows 2000, нужно вспомнить особенности архитектуры Windows NT 4.0, которая разрабатывалась для решения ряда общих проблем, возникающих при работе в локальной сети. Так, она обеспечила возможность однократного входа в сеть (по крайней мере, для всех Windows-систем) и, в определенной степени, централизованное администрирование с помощью организации доменов.
Кроме того, в Microsoft были разработаны модуль идентификации и аутентификации (Graphical Identification and Authentication, GINA), модули уведомлений о смене пароля (notification packages) и модуль Cryptographic Service Provider (CSP), что обеспечило расширяемость системы NT. Модуль GINA отвечает за авторизацию пользователей в ходе начальной регистрации. Для выполнения дополнительных функций службы регистрации, например отображения времени последнего входа в сеть или поддержки однократного входа в сеть (Single Sign-On, SSO), допускается создание собственных вариантов GINA. В частности, в компании Novell такой модуль реализован для Windows NT-клиента операционной системы IntranetWare.
Модули уведомлений о смене пароля представляют собой встраиваемые DLL, которые позволяют определять изменение пароля и синхронизировать эту информацию с другими службами для проверки пароля на соответствие принятым правилам. Впервые библиотеки уведомлений были реализованы в службе File and Print Services for NetWare (FPNW) из состава Windows NT.
Модуль CSP позволяет приложениям перекладывать тяжесть решения задач шифрования на операционную среду. По мере появления новых стандартов шифрования или при использовании прикладной системы за пределами США, приложение может задействовать соответствующий метод шифрования безо всякой модификации. Благодаря четко определенным интерфейсам взаимодействия возможна даже замена компонентов ядра, таких, как SAM. Так, разработчики Novell замещают части ядра службами Novell Directory Services (NDS) for NT, что обеспечивает тесную интеграцию службы каталогов NDS с Windows NT.
Хотя в Windows NT 4.0 система безопасности была достаточно надежной, те администраторы, которые устанавливали NT как систему уровня предприятия, обнаружили ряд недостатков. Например, без подключения неуклюжих программных надстроек нельзя реализовать распределенную систему поддержки однократного входа в сеть (SSO). Кроме того, уязвимым местом в системе защиты NT стала обратная совместимость с LAN Manager. Возможности делегирования прав (т. е. присвоения пользователю ограниченных административных привилегий управления некоторым набором учетных записей) оказались удручающе слабыми. Так, невозможно предоставить сотрудникам службы технической поддержки право смены паролей пользователей, не наделив их правами администратора в полном объеме.
Нельзя также надлежащим образом смоделировать существующую организационную иерархию и административную структуру компании на основе плоской доменной модели Windows NT. Кроме того, NT 4.0 имеет ряд недостатков в плане масштабирования, например число пользователей в домене ограничено. Операционная система не позволяет хранить специфичную для приложений информацию в учетных записях пользователей. Функциональные возможности PKI, и без того весьма скромные, ограничены работой в Web-окружении и поддержкой соединений в Exchange Server, а функции NT PKI интегрированы в операционную систему не полностью.
Поскольку при создании Windows 2000 разработчики Microsoft стремились устранить недостатки NT, руководство корпорации рассматривает новую ОС как наиболее подходящую для электронной коммерции.
Во-первых, в Windows 2000 заметно усовершенствована система безопасности. Для замены уязвимой системы сетевой аутентификации NT LAN Manager (NTLM) добавлен протокол Kerberos; для снижения уровня риска, связанного с парольной защитой, можно применять PKI и смарт-карты при использовании закрытого ключа. Защита от физического доступа к жесткому диску вырастала в проблему, учитывая возможность кражи ноутбука. Для ее решения в Microsoft была реализована технология шифрования данных на диске Encrypting File System (EFS).
Во-вторых, Windows 2000 базируется исключительно на промышленных стандартах и протоколах. Разработчикам Microsoft пришлось смириться с тем, что компании не могут и не будут поддерживать нестандартные технологии и что иногда лучшее решение уже реализовано другими. Так, в каждой области взаимодействия между частями системы применяются общепринятые стандарты или протоколы. В Windows 2000 реализованы LDAP, Kerberos, Public Key Cryptography Standards (PKCS), PC/CS, DNS и IPSec вместо собственных NTLM, SAM, WINS и PPTP (кое-что поддерживается для обратной совместимости). Такой подход к использованию стандартов позволяет при необходимости заменять компоненты производства Microsoft лучшими из имеющихся на рынке и расширяет возможности системы в плане взаимодействия.
В-третьих, компании потребовалась платформа, способная обеспечить снижение стоимости разработки приложений. Процесс создания такой платформы начался в NT с реализации Security Support Provider Interface (SSPI) и CryptoAPI. В Windows 2000 разработчики могут использовать предоставляемые операционной системой службы (например, службу криптографии). Независимость от поставщика услуг защищает приложения от устаревания. Компоненты, предоставляющие приложению услуги, можно модернизировать по мере развития технологий, не оказывая при этом влияния на само приложение. Например, приложение, использующее CSP, легко сможет работать с другим новым алгоритмом шифрования.
Парадигма API способствует также развертыванию приложений других разработчиков, что позволяет расширить сферу применения Windows 2000 в тех областях, которые пока не охвачены Microsoft. Кроме того, специалисты корпорации пытаются сделать свои серверные продукты более отказоустойчивыми и пригодными к работе в корпоративных сетях. Так, служба каталогов AD отличается повышенной масштабируемостью и надежностью за счет поддержки разделов каталогов и мультисерверной репликации (multimaster replication). В свою очередь, иерархическая структура каталога и редактор политик групп (Group Policy Editor, GPE) способны облегчить работу с учетными записями пользователей и настройками системы не только в рамках подразделения.
Наконец, в целях решения задач электронной коммерции, все компоненты Windows 2000 поддерживают инфраструктуру PKI, в том числе регистрацию посредством смарт-карт, базирующийся на PKI доступ к Web-серверам, технологию виртуальных частных сетей (Virtual Private Networking — VPN), систему EFS, электронную почту и Authenticode. Это осуществляется с помощью распределенных служб безопасности Windows 2000: Active Directory, служб шифрования, Certificate Services, служб аутентификации, защищенных транспортных протоколов, EFS и смарт-карт. Рассмотрим эти компоненты более подробно.
Active
Directory (AD) — это ключевой компонент
Windows 2000, позволяющий решить
Служба AD существенно расширяет возможности администрирования. Теперь можно объединять пользователей и компьютеры в иерархию, соответствующую организационной структуре компании. Формирование такой структуры внутри домена обеспечивается с помощью организационных единиц (Organizational Unit, OU). Домены могут иметь родительские и дочерние домены (за исключением корневого, который не имеет родительского домена). Также разрешается назначать индивидуальные административные привилегии на любом уровне иерархии.
Windows 2000 позволяет заменить механизмы разрешения имен WINS и широковещательного NetBIOS динамическим DNS (DDNS). Базу данных DNS можно хранить в AD, увязывая ее с доменной иерархией Active Directory. Как известно, расширяемость Windows NT 4.0 не распространялась на службу каталога. Поэтому разработчики должны были самостоятельно заниматься атрибутами пользователей, специфичными для приложения, и размещать прикладные службы.
Благодаря AD разработчики могут формировать новые объекты, а также добавлять дополнительные свойства в уже существующие объекты, не занимаясь обслуживанием специального каталога приложений. (Однако AD не подходит для хранения часто изменяющихся данных.) Active Directory даже позволяет публиковать ресурсы, например общие папки, таким образом, что пользователям не нужно выяснять, где именно расположен сервер. Кроме того, в Windows 2000 предусмотрен незаметный для пользователей перенос приложений с одного сервера на другой. Дифференцированное управление и поддержка транзитивных доверительных отношений между доменами Windows 2000 (если домен А доверяет домену В, а домен В доверяет домену С, то домен А доверяет домену С) избавляют от необходимости использовать типовые доменные модели Windows NT 4.0 (в частности, модели с полностью доверительными отношениями или с одним главным доменом).
|
Рисунок 1. Взаимодействие Active Directory с операционной системой. |
Методы доступа к данным в Active Directory, LDAP и Active Directory Service Interfaces (ADSI) и их иерархическая структура позволяют говорить о службе AD как об открытой архитектуре. Таким образом закладывается интеграция с операционными системами и приложениями, поддерживающими службы каталогов. Как показано на Рисунке 1, между AD и остальными компонентами операционной системы имеет место своеобразный симбиоз. В частности, Windows 2000 использует AD в качестве хранилища данных учетных записей и политик, а также управляет процессом наследования политик с помощью иерархической структуры службы каталогов. AD же доверяет операционной системе аутентификацию и контроль доступа к своим объектам.
|
Рисунок 2. CryptoAPI: комплексное решение для поддержки служб шифрования. |
CryptoAPI —
такой же базовый компонент
защитной архитектуры Windows 2000, как
и Active Directory. Задача CryptoAPI состоит в
универсализации работы с
CryptoAPI позволяет снизить затраты на создание приложений Windows 2000 по трем направлениям. Во-первых, разработчикам не приходится изобретать системы шифрования. Во-вторых, они могут сразу выпустить приложение, способное поддерживать различные протоколы и стандарты шифрования. В-третьих, при изменении системы шифрования нет необходимости перерабатывать приложение.
Хотя CryptoAPI был реализован еще в Windows NT 4.0, теперь в него включен ряд важных дополнений в части поддержки PKI. Например, он позволяет запрашивать и публиковать сертификаты, списки недействительных сертификатов (Certificate Revocation Lists, CRL), а также дает возможность проследить историю сертификата, когда серверному приложению необходимо проверить его подлинность. Поскольку CryptoAPI работает со стандартами PKCS и X.509 версии 3, его можно использовать для управления сертификатами, размещаемыми в хранилище сертификатов Windows 2000, в Active Directory, а также в независимых сертификационных центрах (Certificate Authorities, CA).
Приложение Certificate Server, также впервые реализованное в Windows NT 4.0, формирует базовые функции сертификационного центра в части запроса, выпуска, публикации и управления сертификатами. Certificate Server предоставлял средства аутентификации по Authenticode и обеспечивал возможность интеграции с Exchange Server через протокол Secure MIME (S/MIME). Вместе с тем он разрабатывался лишь как инструмент аутентификации клиентов с помощью открытого ключа в Internet Information Server (IIS). При этом управление настройками Cetrtificate Server производилось ручным редактированием текстовых файлов. Данному продукту явно не хватало функций управления, важных для применения PKI в корпорации, например средств настройки типов сертификата и параметров политик. Кроме того, он поддерживает только двухуровневые иерархии сертификационных центров (чего явно недостаточно для крупномасштабных систем).
В Windows 2000 название Certificate Server заменено на Certificate Services. При этом приложение стало более мощным и тесно интегрированным с операционной системой. Модули расширения в составе Microsoft Management Console (MMC) предоставляют графические инструменты настройки как на стороне клиента, так и на стороне сервера. Certificate Services может работать с собственным автономным хранилищем данных. Однако, в целях оптимального решения корпоративных задач, для хранения и публикаций сертификатов приложение использует Active Directory. С помощью AD можно связывать сертификаты и пользователей, а также посредством GPE контролировать, кому, от чьего имени и для каких целей Certificate Services выдала сертификаты. Наконец, данная служба теперь поддерживает многоуровневые иерархии.