Обзор компонентов Windows 2000
Протокол Kerberos
Протокол Kerberos версии 5 по умолчанию используется в ОС Windows 2000 для проверки подлинности. Протокол Kerberos был разработан в Массачусетском технологическом институте (Massachusetts Institute of Technology, MIT) в конце 80-х для использования в проекте "Athena", сейчас же его версия 5 описана в документе IETF RFC 1510.
Kerberos версии 5 является протоколом аутентификации. Он позволяет компьютерам осуществлять взаимную аутентификацию. Другими словами, он позволяет компьютерам идентифицировать друг друга. Он также является основой для всех систем безопасности. До тех пор, пока сервер не будет полностью уверен в том, что Вы являетесь тем, за кого себя выдаете, как он не сможет обеспечить надежный доступ к своим ресурсам? Как только сервер идентифицирует Вас, он сможет определить, имеются ли у Вас соответствующие полномочия на доступ к его ресурсам.
Хотя в действительности протокол Kerberos и не предполагалось использовать для авторизации пользователей с целью доступа к ресурсам, тем не менее, реализация протокола Kerberos V5 Microsoft позволяет осуществлять безопасную передачу учетных данных пользователей. Для получения сведений о задействованных для этого полях данных, обратитесь к веб-узлу http://www.microsoft.com/technet/archive/interopmigration/mgmt/kerberos.mspx (EN).
Существует шесть первичных сообщений Kerberos. Эти шесть сообщений в действительности представляют собой три типа действия, каждое из которых содержит запрос клиента и ответ центра распространения ключей (Key Distribution Center, KDC). Первое действие заключается во вводе клиентом пароля. Клиент Kerberos рабочей станции отсылает запрос "AS" в службу проверки подлинности (Authentication Service) центра KDC, запрашивая у службы проверки подлинности билет в качестве ответа для того, чтобы подтвердить, что пользователи являются теми, за кого себя выдают. Служба проверки подлинности проверяет учетные данные пользователей и отсылает назад билет предоставления билета (Ticket Granting Ticket, TGT).
Второе действие заключается в том, что клиент запрашивает доступ к службе или ресурсу, отсылая TGS-запрос в службу Ticket Granting Service (TGS) центра KDC. Служба TGS возвращает клиенту индивидуальный билет, который он может использовать для получения доступа к запрашиваемой службе на любом сервере, на котором она работает.
Третье действие заключается в том, что клиент Kerberos предъявляет серверу билет на доступ к службе и запрашивает разрешение на доступ к необходимой ему службе или ресурсу. Эти сообщения называются "AP". В реализации Microsoft идентификаторы безопасности (Security ID, SID) содержатся в поле PAC, которое является частью билета, отсылаемого на сервер. Это третье действие не требует ответа от сервера, если только клиент не запросил выполнить взаимную аутентификацию. Если же клиент запросил взаимную аутентификацию, то сервер возвращает клиенту сообщение, содержащее метку времени аутентификации (authenticator timestamp). В случае обычного входа в домен все эти три действия происходят перед тем, как пользователь получит доступ к рабочей станции.
Для получения дополнительной информации по использованию Kerberos в Windows 2000 обратитесь к веб-узлу http://www.microsoft.com/windows2000/techinfo/howitworks/security/kerberos.asp (EN).
Протокол LDAP
Протокол LDAP (Lightweight Directory Access Protocol) является разновидностью протокола DAP (Directory Access Protocol). Он создан специально для того, чтобы клиенты могли подавать запросы, создавать, обновлять и удалять информацию, хранящуюся в каталоге. Изначально он применялся для доступа к каталогам X.500, но он также может использоваться для доступа к изолированным серверам каталогов. Windows 2000 поддерживает протокол LDAP как версии 3, так и версии 2.
Работа по протоколу LDAP
Принятая в LDAP общая модель предполагает, что все операции клиента, связанные с протоколом, выполняются на сервере. Клиент передает серверу запрос, в котором указана та операция, которую должен выполнить сервер. С этого момента вся ответственность за выполнение необходимых операций в каталоге ложится на сервер. По завершению выполнения необходимых операций сервер возвращает клиенту либо результат операции, либо сообщение об ошибке.
Информационная модель LDAP основана на записи, в которой содержится информация о каком-то объекте (например, человеке). Записи состоят из атрибутов, имеющих одно или несколько значений. Каждый атрибут имеет определенный синтаксис написания, определяющий допустимые значения атрибута и то, каким образом эти значения задействованы при выполнении операций с каталогом. Атрибутами могут выступать: строковые значения IA5 (ASCII), URL-ссылки и открытые ключи.
Возможности протокола LDAP
Windows 2000 обеспечивает поддержку протокола LDAPv3 в соответствии с тем, как это описано в документе RFC 2251. Ключевой особенностью протокола является то, что:
- Поддерживаются все элементы протокола LDAPv2 (протокол описан в документе RFC 1777).
- Протокол работает прямо поверх TCP или другого транспортного протокола, обходя большинство задержек, связанных с необходимостью преобразований на сеансовом уровне/уровне представления данных, которые использовались в DAP X.500.
- Большинство элементов данных протокола могут быть представлены в виде обычных строковых записей (например, различающихся имен).
- Могут быть возвращены ссылки на другие серверы (это описывается в следующем разделе).
- Можно использовать механизм SASL (Simple Authentication and Security Layer) совместно с протоколом LDAP для предоставления зависимых служб безопасности.
- Теперь можно использовать национальные символы для значений атрибутов и различающихся имен, поскольку был использован набор символов ISO (International Standards Organization) 10646.
- В протокол могут быть добавлены расширения для поддержки новых операций, а также могут использоваться средства управления, расширяющие возможности имеющихся операций.