Запускаем сценарий загрузки от имени администратора::Журнал СА 3.2009
www.samag.ru
     
Поиск  
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Сетевой агент
О журнале
Журнал «БИТ»
Информация для ВАК
Звезды «СА»
Подписка
Где купить
Авторам
Рекламодателям
Магазин
Архив номеров
Форум
Вакансии
Спроси юриста
Игры
Контакты
   
Слайд шоу  
Представляем работы Виктора Чумачева
Виктор Чумачев – известный московский художник, который сотрудничает с «Системным администратором» уже несколько лет. Именно его забавные и воздушные, как ИТ, иллюстрации украшают многие серьезные статьи в журнале. Работы Виктора Чумачева хорошо знакомы читателям в России («Комсомольская правда», «Известия», «Московские новости», Коммерсант и др.) и за рубежом (США, Германия). Каждый раз, получая новый рисунок Виктора, мы в редакции улыбаемся. А улыбка, как известно, смягчает душу. Поэтому смотрите на его рисунки – и пусть у вас будет хорошее настроение!
1001 и 1 книга  
22.11.2018г.
Просмотров: 163
Комментарии: 0
MySQL 8 для больших данных

 Читать далее...

22.11.2018г.
Просмотров: 111
Комментарии: 0
Осваиваем C++17 STL

 Читать далее...

22.11.2018г.
Просмотров: 145
Комментарии: 0
Решение задач на современном C++

 Читать далее...

22.11.2018г.
Просмотров: 107
Комментарии: 0
Программируй на Haskell

 Читать далее...

29.10.2018г.
Просмотров: 426
Комментарии: 0
Информатика. Учебник, 4-е издание, цветное, переработанное и дополненное

 Читать далее...

Дискуссии  
17.09.2014г.
Просмотров: 19922
Комментарии: 3
Красть или не красть? О пиратском ПО как о российском феномене

Тема контрафактного ПО и защиты авторских прав сегодня актуальна как никогда. Мы представляем ...

 Читать далее...

03.03.2014г.
Просмотров: 22086
Комментарии: 1
Жизнь под дамокловым мечом

Политические события как катализатор возникновения уязвимости Законодательная инициатива Государственной Думы и силовых структур, ...

 Читать далее...

23.01.2014г.
Просмотров: 30706
Комментарии: 3
ИТ-специалист будущего. Кто он?

Так уж устроен человек, что взгляд его обращен чаще всего в Будущее, ...

 Читать далее...


  Опросы

Друзья сайта  

Форум системных администраторов  

sysadmins.ru

 Запускаем сценарий загрузки от имени администратора

Архив номеров / 2009 / Выпуск №3 (76) / Запускаем сценарий загрузки от имени администратора

Рубрика: Администрирование /  Автоматизация

Иван Коробко

Запускаем сценарий загрузки от имени администратора

Во время регистрации пользователя в домене Windows отрабатывает сценарий, обеспечивающий решение задачи инвентаризации, подключения сетевых ресурсов и настройки рабочей среды пользователя. Однако последняя из перечисленных задач решается не полностью из-за урезанных прав. Рассмотрим, как расширить эти права, не давая пользователю дополнительных привилегий.

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

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

Существует много способов решения данной задачи, которые в итоге сводятся к копированию и регистрации какой-либо библиотеки, содержащий COM-объект с ее последующей регистрацией в сети. Реализация этого механизма также не позволяет избежать использования групповых политик. Другим возможным решением является вызов или запуск командного файла или сценария от имени администратора, пароль которого публикуется в открытом виде. Вердикт этому решению – небезопасно, а значит, от него придется отказаться.

Оптимальным решением, как показала практика, является использование трехзвенной системы, например сервер IIS, который позволяет обеспечить имперсонализацию, т.е. подстановку имени и пароля, хранящимся на сервере в зашифрованном виде. Рассмотрим подробнее устройство сценария.

Структура сценария

Любой сценарий регистрации пользователей в сети решает несколько задач:

  •  Инвентаризация. Включает в себя сбор информации о пользователе, регистрирующимся в сети и рабочей станции: ее программной и аппаратной конфигурации.
  •  Создание и настройка файловой системы обмена (требует административных прав). Динамическое управление файловыми ресурсами, построенными на основе DFS.
  • Автоматическое подключение сетевых ресурсов: принтеров и дисков на основе членства в группах безопасности в каталоге Active Directory.
  • Автоматическая настройка рабочих станций (часть выполняется от имени пользователя, часть требует административных привилегий). Унификация оформления рабочего стола, языковых предпочтений, управления ярлыками в папке «Мой Компьютер» и т. д.
  • Обеспечение интерактивности работы сценария. В ходе работы сценария на экране отображается различная информация о работе сценария.

Анализирую приведенный список задач, четко видно, что часть из них требует административных привилегий. Создав ASP.NET-страницу, хранящуюся на IIS-сервере, можно обеспечить удаленное управление реестром. Более того, таким образом реализуют удаленное управление DFS, параметрами безопасности файловой системы и т. д.

Реализация поставленной задачи состоит из двух крупных частей: обращение к сайту в «тихом» режиме и обеспечение работы имперсонализации на IIS-сервере.

Сценарий регистрации пользователей в сети

В качестве языка сценариев может быть использован любой встроенный скриптовый язык, например: VBScript (VBS), Jscript (JS) или пакетные файлы (CMD).

Модульный принцип сценария

Для повышения надежности и управляемости сценария лучше всего использовать модульный принцип. В соответствии с ним сценарий состоит из нескольких частей – модулей, которые выполняются в указанной последовательности. Оптимальное решение в данном случае – использовать командный файл (см. листинг 1), в котором перечислены выполняемые модули.

Создание такого файла имеет ряд особенностей:

  • Запускаемые модули, как и сам командный файл, находятся в каталоге \\DOMAIN\Netlogon. Если в командном файле указать просто имя файла с расширением, то модуль-сценарий не будет найден. Путь необходимо указывать целиком [1]: «%0\..\*.*».
  • Последовательного выполнения файлов добиваются использованием команды: «start /wait».

Листинг. 1. Пакетный файл LOGON.BAT

start /wait wscript.exe %0\..\inventory.vbs

start /wait wscript.exe %0\..\network.vbs

start /wait wscript.exe %0\..\admin.vbs

Запуск сценария

Выполнение сценария загрузки можно обеспечить двумя способами:

\\Domain\NetLogon.

Рисунок 1. Назначение сценария загрузки с помощью Active Directory Users and Computers

Рисунок 1. Назначение сценария загрузки с помощью Active Directory Users and Computers

Рисунок 2. Запуск сценария загрузки политикой безопасности

Рисунок 2. Запуск сценария загрузки политикой безопасности

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

Обращения к IIS-серверу

Все перечисленные в листинге 1 сценарии располагаются в каталоге NETLOGON контроллера домена. Не является исключением сценарий обращения к IIS-серверу, эмулирующего вызов Internet Explorer, по умолчанию установленного в любой операционной системе Windows, и сценарий вызова страницы по указанному адресу, например http://RemoteRegisty.

Сценарий вызова страницы работает по алгоритму, который рассмотрен в листинге 2. На первом этапе создают экземпляр объекта InternetExplorer.Application. Перед тем как управлять им, для предотвращения ошибки в работе сценария необходимо дождаться окончания загрузки браузера. Для этого используется свойство IE.Busy совместно с циклом Do While… Loop. При завершении загрузки страницы – IE.Busy=0. Затем, после того как объект стал доступен для управления, необходимо сделать окно браузера невидимым с помощью свойства Visible. Теперь с помощью метода Navigate() сценарий выполнит загрузку указанной в качестве свойства страницы. Дождавшись окончания работы сценариев на сайте, уничтожим созданный объект IE, вызвав функцию Quit.

Листинг 2. Обращение к интернет-ресурсу

Set IE=CreateObject("InternetExplorer.Application")

'Ожидание пока не загрузится браузер

Do While (IE.Busy)

WScript.Sleep 100

Loop

IE.Visible =0

IE.Navigate("http://RemoteRegistry")

'Ожидание пока не загрузится браузер

Do While (IE.Busy)

Wscript.Sleep 100

Loop

IE.Quit()

Управление имперсонализацией сайта

Существует как минимум два решения. Каждое из них имеет свои преимущества и недостатки. Первое решение – настроить пул для сайта, в котором прописать имя и пароль учетной записи пользователя, от имени которого будет выполняться страница на сервере. Второй вариант – сделать необходимые изменения в конфигурационном файле настроек web.config. Рассмотрим оба способа подробнее.

Настройка пула для сайта

Начиная с Windows 2003 в комплект дистрибутива Windows входит IIS 6. Одной из его отличительных особенностей является поддержка индивидуального пула безопасности для каждого веб-сайта. В связи с этим к разделам Web Site и Web Service Extension добавился раздел Application Pool.

Любой вновь созданный файл входит в DefaultAppPool, у которого взаимодействие между серверами осуществляется с помощью встроенной учетной записи Network Service. Для решения поставленной задачи необходимо создать новый пул, например Admin (см. рис. 3), и во вкладке Identity указать имя (Domain/Login) и пароль учетной записи, прав которой достаточно для решения поставленной задачи.

Рисунок 3. Создание пула для сайта

Рисунок 3. Создание пула для сайта

После того как пул создан, необходимо для сайта назначить новый пул. Для этого в свойствах сайта нужно во вкладке Home Directory изменить пул приложения (см. рис. 4). Этот способ самый безопасный, поскольку пароль пользователя хранится на сервере в зашифрованном виде.

Рисунок 4. Привязка сайта к пулу приложения

Рисунок 4. Привязка сайта к пулу приложения

Конфигурационный файл web.config

Файл web.config представляет собой текстовый файл в формате XML, с помощью которого осуществляется управление библиотеками FrameWork, параметрами безопасности и т. д. Имперсонализацией управляют тегом identity (см. листинг 3), который содержит три параметра:

  • Impersonate – принимает булево значение: true или false;
  • Username – учетная запись пользователя в формате Domain/Login;
  • Password – пароль в явном виде.

Листинг 3. Управление имперсонализацией в файле web.config

<?xml version="1.0"?>

<configuration>

<system.web>

<identity impersonate="true" userName="***\*****" password="****"/>

</system.web>

</configuration>

Управление файлом осуществляется как вручную, так и с помощью настроек FrameWork в свойствах сайта. Несмотря на то что при правильной настройке сайта пользователь не может увидеть ни файл web.config, ни его содержимое, все же хранение имени и пароля урезанной в правах административной учетной записи – не самое лучшее решение.

Заключение

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

  1. Use of the %0\..\ Syntax in the Smsls.bat File – http://support.microsoft.com/kb/121387.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru