Реферат: Active Directory for Application Mode

Выполнить этот скрипт можно с помощью утилиты LDIFDE.EXE, как показано ниже.

c:\windows\adam\ldifde.exe -i -f config.ldf -s localhost.ldf -j . -c "CN=Configuration,DC=X" #configurationNamingContext -k

Особенности использования ADAM в многопользовательских распределенных приложениях

Работа с ADAM из многопользовательских приложений имеет один нюанс, который необходимо учитывать на этапе проектирования системы. Нюанс этот касается возможности идентификации (authentication) пользователя ADAM. По какой-то причине подключение к ADAM, как и к AD, возможно только при наличии первичного контекста безопасности (primary security token) в процессе, обращающемся к ADAM. Рассмотрим два случая: первый – когда приложение работает от имени пользователя, информация о котором хранится в ADAM, и второй – когда приложение работает от имени текущего пользователя Windows. В первом случае идентификатор пользователя и пароль вводятся при запуске приложения. Обладая этой информацией, приложение может подключиться к ADAM под первичным контекстом безопасности в любой свой части (очень важно для распределенных приложений). Сложности возникают во втором случае. Заключаются они в том, что получить первичный контекст безопасности можно только на том компьютере, где запущено клиентское приложение, с которым работает пользователь. Этим приложением может быть как Windows-клиент, работающий с сервером приложений, так и Internet Explorer в случае Web-приложений. В обоих случаях приложению неизвестен пароль пользователя. Из-за этого возникает необходимость в передаче контекста безопасности с клиента на сервер. Сделать это можно с помощью функций WinAPI InitializeSecurityContext и AcceptSecurityContext, которые позволяют зашифровать данные о контексте безопасности пользователя, передать их в процесс сервера (возможно, на другом компьютере) и восстановить контекст безопасности в процессе сервера. В этом случае для передачи контекста безопасности необходимо использовать механизм идентификации Kerberos, что не всегда возможно из-за сложности настройки и прочих причин, таких, как соединение клиента и сервера через Proxy-сервер. Использовать именно Kerberos нужно потому, что этот механизм, в отличие от NTLM и Digest, позволяет передавать по сети первичный идентификатор безопасности.

Рассмотрим для примера ASP.NET-приложение. Здесь существует возможность использовать интегрированную систему безопасности Windows для идентификации пользователя на сайте. После идентификации серверный код можно запустить под опознанным пользователем – так называемое имитирование (impersonation) контекста безопасности пользователя. Однако добиться таким образом желаемого результата – подключения к ADAM под пользователем приложения – не удастся. Подключение к ADAM из-под сымитированного контекста безопасности пользователя не возможно – необходим первичный контекст безопасности. В англоязычной литературе данная проблема носит название double-hop issue, что можно перевести как проблема двойного скачка. Она возникает всякий раз, когда необходимо передать контекст безопасности от одного процесса другому через процесс-посредник. В случае с ASP.NET-приложением процессом-источником является Internet Explorer, процессом-приемником – ADAM-а, а посредником является процесс ASP.NET.

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

Заключение

Из всего выше сказанного можно сделать вывод, что ADAM является мощным инструментом, позволяющим использовать в приложении возможности Active Directory. Отчасти это так – ADAM позволяет расширять схему, создавать объекты этих классов, организовывать их в иерархии, а также выполнять поиск этих объектов. Гибкая система управления пользователями и контролем доступа предоставляет большие возможности для использования ADAM в приложениях, оперирующих конфиденциальной информацией. Механизмы архивирования и репликации позволяют создавать надежные отказоустойчивые системы.

Слабая эргономичность средств администрирования и некоторые трудности применения в многопользовательских приложениях несколько портят картину. Однако при грамотном проектировании использование ADAM может стать отличным выбором для широкого спектра программных систем.

К-во Просмотров: 531
Бесплатно скачать Реферат: Active Directory for Application Mode