Управляем объектами в Active Directory. Часть 4::Журнал СА 1.2009
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Событие  

В банке рассола ждет сисадмина с полей фрактал-кукумбер

Читайте впечатления о слете ДСА 2024, рассказанные волонтером и участником слета

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

Организация бесперебойной работы  

Бесперебойная работа ИТ-инфраструктуры в режиме 24/7 Как обеспечить ее в нынешних условиях?

Год назад ИТ-компания «Крок» провела исследование «Ключевые тренды сервисного рынка 2023». Результаты

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

Книжная полка  

Читайте и познавайте мир технологий!

Издательство «БХВ» продолжает радовать выпуском интересных и полезных, к тому же прекрасно

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

СУБД PostgreSQL  

СУБД Postgres Pro

Сертификация по новым требованиям ФСТЭК и роль администратора без доступа к данным

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

Критическая инфраструктура  

КИИ для оператора связи. Готовы ли компании к повышению уровня кибербезопасности?

Похоже, что провайдеры и операторы связи начали забывать о требованиях законодательства

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

Архитектура ПО  

Архитектурные метрики. Качество архитектуры и способность системы к эволюционированию

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

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

Как хорошо вы это знаете  

Что вам известно о разработках компании ARinteg?

Компания ARinteg (ООО «АРинтег») – системный интегратор на российском рынке ИБ –

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

Графические редакторы  

Рисование абстрактных гор в стиле Paper Cut

Векторный графический редактор Inkscape – яркий представитель той прослойки open source, с

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

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

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

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

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

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

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

Книжная полка  

Как стать креативным и востребованным

Издательский дом «Питер» предлагает новинки компьютерной литературы, а также книги по бизнесу

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

Книжная полка  

От создания сайтов до разработки и реализации API

В издательстве «БХВ» недавно вышли книги, которые будут интересны системным администраторам, создателям

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

Разбор полетов  

Ошибок опыт трудный

Как часто мы легко повторяем, что не надо бояться совершать ошибки, мол,

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

1001 и 1 книга  
19.03.2018г.
Просмотров: 6195
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

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

12.03.2018г.
Просмотров: 6903
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

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

12.03.2018г.
Просмотров: 4189
Комментарии: 0
Глубокое обучение с точки зрения практика

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

12.03.2018г.
Просмотров: 2989
Комментарии: 0
Изучаем pandas

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

12.03.2018г.
Просмотров: 3795
Комментарии: 0
Программирование на языке Rust (Цветное издание)

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

19.12.2017г.
Просмотров: 3805
Комментарии: 0
Глубокое обучение

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

19.12.2017г.
Просмотров: 6299
Комментарии: 0
Анализ социальных медиа на Python

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

19.12.2017г.
Просмотров: 3152
Комментарии: 0
Основы блокчейна

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

19.12.2017г.
Просмотров: 3446
Комментарии: 0
Java 9. Полный обзор нововведений

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

16.02.2017г.
Просмотров: 7263
Комментарии: 0
Опоздавших не бывает, или книга о стеке

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

17.05.2016г.
Просмотров: 10628
Комментарии: 0
Теория вычислений для программистов

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

30.03.2015г.
Просмотров: 12352
Комментарии: 0
От математики к обобщенному программированию

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

18.02.2014г.
Просмотров: 13983
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

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

13.02.2014г.
Просмотров: 9110
Комментарии: 0
Читайте, размышляйте, действуйте

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

12.02.2014г.
Просмотров: 7064
Комментарии: 0
Рисуем наши мысли

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

10.02.2014г.
Просмотров: 5375
Комментарии: 3
Страна в цифрах

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

18.12.2013г.
Просмотров: 4604
Комментарии: 0
Большие данные меняют нашу жизнь

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

18.12.2013г.
Просмотров: 3414
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

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

04.12.2013г.
Просмотров: 3145
Комментарии: 0
Паутина в облаках

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

03.12.2013г.
Просмотров: 3392
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

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

02.12.2013г.
Просмотров: 3013
Комментарии: 0
Не думай о минутах свысока

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

Друзья сайта  

 Управляем объектами в Active Directory. Часть 4

Архив номеров / 2009 / Выпуск №1 (74) / Управляем объектами в Active Directory. Часть 4

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

Иван Коробко ИВАН КОРОБКО

Управляем объектами в Active Directory
Часть 4

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

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

В этой статье, являющейся четвертой частью цикла статей о внутреннем устройстве Active Directory, рассмотрим анатомию группы Active Directory и принципы программного управления этим объектом.

Основные понятия

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

Группа безопасности (security group) – объект, в котором могут содержаться дочерние объекты: учетные записи групп и пользователей. Она используется для определения разрешений доступа к файлам и другим ресурсам. Любая группа безопасности характеризуется двумя параметрами: ее типом и областью действия (см. таблицу 1).

Таблица 1. Параметры группы

Параметр мастера Атрибут объекта в Active Directory Тип данных Описание
Group name cn, name String Название группы в домене
Group name (Pre-Windows 2000) sAMAccountname String Название группы, используемое для совместимости с доменом Windows NT
Group scope groupType Radio Button Суммарным значением параметра описывается область действия и тип создаваемой группы безопасности

Тип группы (group type) определяет, является ли группа – группой рассылки или же группой безопасности.

Существует два типа групп: Security (безопасности) и Distribution (распространения).

Вторая важная характеристика – область действия группы (Group scope). Областью действия определяют, каким образом может быть использована группа: как локальная, как глобальная или как универсальная. При наличии в лесу двух и более доменов область действия группы играет значение, однако при наличии в нем одного домена – область действия не имеет значения.

Создание группы

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

Создание группы с помощью мастера

Запуск мастера создания группы осуществляется из MMC-консоли Active Directory Users and Computers выбором пункта «New > Group» из контекстного меню папки, в которой необходимо создать учетную запись. Таким образом, определяется местоположение объекта, которому в Active Directory соответствует значение атрибута объекта distinguishedName.

Работа мастера состоит из одного шага (см. рис. 1). Во время создания группы безопасности необходимо назначить имя и тип группы, определить область действия и имя группы для совместимости (Pre-Windows 2000) с доменом Windows NT (см. таблицу 1).

Рисунок 1. Создание группы с помощью мастера

Рисунок 1. Создание группы с помощью мастера

Рассмотрим параметры, задаваемые мастером во время создания учетной записи. Первым из них является название группы (атрибут Group). В каталоге Active Directory ему соответствует атрибут cn. Значение атрибута name – отображаемое имя, назначается автоматически, идентично значению cn. Однако впоследствии оно может быть изменено в свойствах группы безопасности.

Одновременно с этим значением назначается имя группы, используемое для совместимости с доменами Windows NT – значение параметра Group name (Pre-Windows 2000). В каталоге Active Directory ему соответствует атрибут sAMAccountName.

Значения атрибута cn и sAMAccount-Name можно изменить, только переименовав объект. Изменяя имя объекта с помощью мастера, администратор изменяет только его отображаемое имя.

С помощью двух оставшихся блоков определяют тип и область действия группы. По умолчанию мастер предлагает создать глобальную группу безопасности (groupType = -2147483646). Каждому из выбранных значений соответствует цифровой эквивалент (см. таблицу 2). В каталог Active Directory записывается суммарное значение в числовое поле groupType.

Таблица 2. Расшифровка значений параметра groupType

Тип группы Значение Тип группы Значение
Global Security Group -2147483648 Global Distribution Group 2
Local Security Group -2147483644 Local Distribution Group 4
BuiltIn Group -2147483643 Universal Distribution Group 8
Universal Security Group -2147483640

Создание группы с помощью сценария

Для создания учетной записи группы программным способом (VBScript), как и при работе мастера, необходимо жестко задать несколько параметров. В листинге 1 приведен сценарий, позволяющий создать учетную запись группы. Исходные данные для его создания приведены в таблице 3.

Листинг 1. Создание учетной записи группы

set RootDSE = GetObject("LDAP://RootDSE")

Domain = rootDSE.Get("defaultNamingContext")

Set objUsers = GetObject("LDAP://OU=WorkGroup," & Domain)

Set objNewUser = objUsers.Create("group", "cn=Test")

objNewUser.Put "sAMAccountName", "Test"

objNewUser.Put "groupType", "-2147483646"

objNewUser.SetInfo

Обратите внимание! Если в листинге не указать тип и область действия группы с помощью параметра groupType, то система автоматически создаст этот параметр, присвоив этому параметру значение -2147483646, что эквивалентно глобальной группе безопасности.

Таблица 3. Параметры сценария для создания учетной записи пользователя

Параметр Описание Способ назначения
сn = Test Отображаемое имя Явный
sAMAccountName = Test Имя в сети для совместимости с доменами Windows NT Явный
groupType = -2147483646 Область действия и тип группы Явный
distinguishedName = CN=Test,OU=WorkSpace,DC=Island,DC=ru Путь к создаваемой учетной записи группы Неявный

Рассмотрим работу листинга. В первых двух строках сценария осуществляется определение RDN-имени (relative distinguished name, относительное составное имя) текущего домена с помощью виртуального объекта RootDSE. Затем в контейнере WorkSpace, находящемся в корне схемы Active Directory, создается группа безопасности с помощью функции Create(), имеющей два параметра. Первый параметр – тип объекта (последний элемент массива objectType), второй – имя объекта в формате «cn = …».

Замечание. RDN является одним из обязательных атрибутов объекта, значение которого характеризует его положение в иерархической структуре домена. Максимальная длина RDN-имени составляет 255 символов, однако схема Active Directory накладывает свои ограничения на его составные части. Например длина атрибута cn ограничивается 64 символами. Подробно о RDN см. [1].

Удаление группы

Аналогично описанию процесса создания группы рассмотрим удаление группы с двух ракурсов: работы мастера и сценария, их взаимосвязи.

Удаление группы с помощью мастера

Для запуска мастера удаления учетной записи какого-либо объекта, в том числе и группы, необходимо установить курсор на удаляемый объект (в данном случае – группа). Таким образом, определяют один из важнейших параметров – путь к объекту (поле distinguishedName). Вызвав контекстное меню объекта с помощью правой кнопки мыши, удаляют объект, выбрав пункт меню delete (см. рис. 2).

Рисунок 2. Удаление учетной записи группы с помощью мастера

Рисунок 2. Удаление учетной записи группы с помощью мастера

Удаление объекта с помощью сценария

В сценарии удаления объекта необходимо указать тип удаляемого объекта и путь к этому объекту в каталоге Active Directory. Оба параметра в сумме составляют значение distinguishedName. Например, если требуется удалить группу Test, то необходимо определить значение параметра distinguishedName. Затем – имя объекта (значение cn) и папку, в которой он находится.

Листинг 2. Удаление учетной записи группы

set RootDSE = GetObject("LDAP://RootDSE")

Domain = rootDSE.Get("defaultNamingContext")

Set objUsers = GetObject("LDAP://OU=WorkGroup," & Domain)

objUsers.delete "group", "cn=Test"

Set objUsers = nothing

Членство в группах

В группах безопасности можно производить операции:

  •  получать список объектов;
  •  добавлять объекты;
  • удалять объекты.

Каждый из этих способов можно реализовать как программно, так и с помощью мастера ММС-консоли, открыв вкладку Members учетной записи в свойствах группы (см. рис. 3).

Рисунок 3. Вкладка Members свойств группы безопасности

Рисунок 3. Вкладка Members свойств группы безопасности

Получение списка членов группы

Членами группы безопасности могут быть группы или пользователи. Список членов группы хранится в массиве Member, который хранится в виде составного LDAP-пути (см. листинг 3а).

В графической оболочке отображается преобразованное каноническое имя, которому соответствует значение поля cn. Такое преобразование приведено в листинге 3б.

Листинг 3а. Получение списка членов группы (стандартный вариант)

path = …

Set objGroup = GetObject("LDAP:// " & path)

temp = ""

For Each obj In objGroup.member

temp = temp + obj + vbNewLine

Next

MsgBox temp

Листинг 3б. Получение списка членов группы (улучшенный вариант)

path = …

Set objGroup = GetObject("LDAP:// " & path)

For Each obj In objGroup.member

temp = temp + GetObject("LDAP:// " & ?

obj.cn) + vbNewLine

Next

MsgBox temp

Добавление и удаление объекта в группе

Поскольку механизм добавления и удаления членов в группу одинаков, то рассмотрим их вместе.

Алгоритм работы сценария в обоих случаях следующий. На первом этапе с помощью функции GetObject() получают доступ к группе. Затем, вызывая функцию, аргумент которой составное имя группы или учетной записи, осуществляют требуемое действие, причем вызывать setInfo() для записи данных в каталог Active Directory не нужно.

Для добавления учетной записи используется функция Add (см. листинг 4а), а для удаления – Remove (см. листинг 4б).

Листинг 4а. Добавление объектов в группу

path = …

objPath=…

Set objGroup = GetObject("LDAP:// " & path)

objGroup.Add("LDAP:// " & objPath)

 Листинг 4б. Удаление объектов из группы

path = …

objPath=…

Set objGroup = GetObject("LDAP:// " & path)

objGroup.Remove("LDAP:// " & objPath)

Заключение

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

Надеюсь, эта статья поможет автоматизировать некоторые процессы в вашей сети.

  1. Object Naming – http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/distrib/dsbb_act_kjpw.mspx?mfr=true.

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

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

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

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

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