Права на включение компьютера в домен

Обновлено: 06.07.2024

В прошлой статье мы создали и настроили контроллер домена (DC) , настало время наполнить наш домен пользователями и рабочими станциями.

КОНФИГУРАЦИЯ

Открываем Server Manager и выбираем опцию Roles .

Из доступных ролей выбираем недавно установленную - Active Directory Domain Services , далее Active Directory Users and Computers и находим созданный нами домен (в нашем случае - merionet.loc ). В выпадающем списке объектов находим Users и кликаем по данной опции правой кнопкой мыши и выбираем New → User .

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

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

Далее, нас просят ввести пароль для новой учетной записи и выбрать дополнительные опции:

  • User must change password at next logon - при включении данной опции, пользователя попросят сменить пароль при следующем логине;
  • User cannot change password - пользователь не сможет самостоятельно изменить свой пароль;
  • Password never expires - срок действия пароля пользователя никогда не истечет;
  • Account is disabled - учетная запись пользователя будем отключена и он не сможет залогиниться с доменными учетными данными, даже если они будут введены верно.

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

Отлично, новый пользователь домена создан. Теперь нам нужно зайти на компьютер пользователя и ввести его в домен. Для этого логинимся на компьютер пользователя с локальными учетными данными и открываем Свойства компьютера . Как видите, наш компьютер пока еще не стал частью домена, он ещё является частью рабочей группы WORKGROUP /. Убедитесь, что компьютер пользователя имеет версию Windows не ниже Professional. Чтобы ввести его в домен выбираем Change Settings

Важно! Поддержка доменной инфраструктуры начинается только с версии Windows Professional . На версиях Starter, Home Basic, Home Premium подключиться к домену не получится!

Далее напротив опции "To rename this computer or change its domain or workgroup, click Change" нажимаем собственно Change

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

Далее в открывшемся окне в опции "Member of" вместо Workgroup выбираем Domain и вводим имя нашего домена (в нашем случае – merionet.loc )

Далее нас попросят ввести учетные данные для учетной записи, которая уже создана и имеет право присоединиться к домену. Вводим учетные данные ранее созданного пользователя.

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

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

date

29.12.2018

directory

Active Directory

comments

комментариев 20

В этой статье мы рассмотрим особенности делегирования административных полномочий в домене Active Directory. Делегирование позволяет предоставить право на выполнение некоторых задач управления в AD обычным пользователям домена, не включая их в привилегированные доменные группы, такие как Domain Admins, Account Operators и т.д.. Например, с помощью делегирования вы можете предоставить определённой группе пользователей (допустим, Helpdesk) право на добавление пользователей в группы, заведение новых пользователей в AD и сброс пароля.

Особенности делегирования прав в AD

Для делегации полномочий в AD используется мастер Delegation of Control Wizard в графической оснастке Active Directory Users and Computers (DSA.msc).

Административные права в AD можно делегировать на довольно детальном уровне. Одной группе можно предоставить право на сброс пароля в OU, другой – на создание и удаление аккаунтов, третье на сброс пароля. Можно настроить наследование разрешений на вложенные OU. Вы можете делегировать полномочия на уровне:

  1. Сайта AD;
  2. Всего домена;
  3. Конкретной OU в Active Directory.

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

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

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

Представим, наша задача – предоставить группе HelpDesk право на сброс пароля и разблокировку аккаунтов пользователей в домене. Итак, создадим новую группу в AD с помощью PowerShell:

New-ADGroup "HelpDesk" -path 'OU=Groups,OU=Moscow,DC=corp,dc=winitpro,DC=ru' -GroupScope Global

Добавьте в группу нужных пользователей:

Add-AdGroupMember -Identity HelpDesk -Members ivanovaa, semenovvb

Delegate Control

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

выбрать группу для делегирования полномочий

Выберите из списка один из преднастроенных наборов привилегий (Delegate the following common tasks):

  • Create, delete, and manage user accounts;
  • Reset user passwords and force password change at next logon;
  • Read all user information;
  • Create, delete and manage groups;
  • Modify the membership of a group;
  • Manage Group Policy links;
  • Generate Resultant Set of Policy (Planning);
  • Generate Resultant Set of Policy (Logging);
  • Create, delete, and manage inetOrgPerson accounts;
  • Reset inetOrgPerson passwords and force password change at next logon;
  • Read all inetOrgPerson information.

Либо создайте собственное задание делегирования (Create a custom task to delegate). Я выберу второй вариант.

Create a custom task to delegate

Выберите тип объектов AD, на которые нужно предоставить права. Т.к. нам нужно предоставить права на учетные записи пользователей, выберите пункт User Object. Если вы хотите предоставить право на создание и удаление пользователей в этом OU, выберите опции Create/Delete selected objects in this folder. В нашем примере мы не предоставляем таких полномочий.

User Object

В списке разрешений нужно выбрать те привилегий, которые вы хотите делегировать. В нашем примере мы выберем право на разблокировку (Read lockoutTime и Write lockoutTime) и сброс пароля (Reset password).

Для поиска источника блокировки аккаунтов в домене службой поддержки пользователей нужно предоставить право поиска по журналам на контроллерах домена.

Read lockoutTime и Write lockoutTime

Нажмите Next и на последнем экране подтвердите назначение выбранных полномочий.

мастер делегирования полномочий в Active Directory

Теперь под учетной записью пользователя из группы HelpDesk попробуйте из PowerShell сбросить пароль пользователя из OU Users, например из PowerShell:

Set-ADAccountPassword petricdb -Reset -NewPassword (ConvertTo-SecureString -AsPlainText “PPPPa$$w0rd1” -Force -Verbose) –PassThru

Пароль должен сброситься успешно (если он соответствует доменной политике паролей).

Теперь попробуйте создать пользователя в данной OU с помомью командлета New-ADUser:

New-ADUser -Name kalininda -Path 'OU=Users,OU=Moscow,OU=winitpro,OU=DC=ru' -Enabled $true

Должна появится ошибка доступа, т.к. полномочий на создание учетных записей вы не делегировали.

Для контроля пользователям, которым вы делегированными привилегии, вы можете использовать журналы контроллеров домена. Например, вы можете отследить кто сбросил пароль пользователя в домене, узнать кто создал учетную запись пользователя в AD или отследить изменения в определённых группах AD.

Делегация полномочий на присоединение компьютеров в домен AD

Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased.

You have exceeded the maximum number of computer accounts you are allowed to create in this domain

Вы можете изменить это ограничение на уровне всего домена, увеличив значение в атрибуте ms-DS-MachineAccountQuota (ссылка). Либо (гораздо правильнее и безопаснее), делегировав право на присоединение компьютеров к домену в определенной OU конкретной группе пользователей (helpdesk). Для этого нужно предоставить право создавать объекты типа (Computer objects). В мастере делегирования выберите Create selected objects in this folder.

Create selected objects in this folder

А в секции Permissions выберите Create All Child Objects.

делегировать право на создание объектов в AD

Отключаем делегирование прав в домене AD

Чтобы лишить группу делегированных ранее прав на OU, откройте свойства OU в консоли ADUC и перейдите на вкладку Security.

расширенные настройки делегирования в AD

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

Также со вкладки Security ->Advanced вы можете самостоятельно настроить делегирование полномочий, назначая нестандартные разрешений различным группам безопасности.

Предоставление разрешения на присоединение компьютеров к домену

Вы можете назначить разрешения на присоединение компьютера при создании учетной записи компьютера, нажав кнопку Change («Изменить») в обычном графическом интерфейсе Microsoft (см. метку 1 на экранах 1 и 2).

Создание новой учетной записи компьютера в оснастке Active Directory Users and Computers (ADUC)
Экран 1. Создание новой учетной записи компьютера в оснастке Active Directory Users and Computers (ADUC)

Создание новой учетной записи компьютера с помощью Active Directory Administrative Center (ADAC)
Экран 2. Создание новой учетной записи компьютера с помощью Active Directory Administrative Center (ADAC)

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

Предоставление разрешения на присоединение вручную с помощью графического интерфейса

Ниже последовательно описан процесс предоставления разрешений на присоединение учетной записи компьютера с консоли ADUC вручную.

Назначение разрешений на подсоединение компьютера к домену в графическом интерфейсе
Экран 3. Назначение разрешений на подсоединение компьютера к домену в графическом интерфейсе

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

Сценарий Grant-ComputerJoinPermission.ps1

Я подготовил сценарий Grant-ComputerJoinPermission.ps1 (см. листинг), чтобы предоставить четыре необходимых разрешения (см. экран 3) для одной или нескольких учетных записей компьютеров. Синтаксис сценария следующий:

Параметр -Name задает имена одной или нескольких учетных записей компьютеров. Имя параметра (-Name) можно опустить, если разместить имена учетных записей компьютеров на второй позиции в командной строке сценария. Этот параметр принимает входные данные конвейера, поэтому имя параметра тоже следует опустить, если имена компьютеров передаются в сценарий через конвейер. Данный параметр не поддерживает подстановочные знаки.

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

Поведение параметров -WhatIf и -Confirm — такое же, как у команд PowerShell: -WhatIf указывает, какие действия выполняет сценарий, в то время как эти действия не совершаются, а -Confirm запрашивает подтверждение перед выполнением любого действия.

Примеры команд

1. Предоставить учетной записи kendyer разрешение для присоединения компьютера pc1 к домену:

2. Предоставить учетной записи kendyer разрешение для присоединения списка компьютеров к домену:

В этом примере файл Computers.txt содержит список имен компьютеров (по одному на строку). PowerShell покажет вносимые изменения из-за параметра -Verbose.

3. Предоставить учетной записи kendyer разрешение для присоединения компьютера pc1 к домену с использованием альтернативных учетных данных:

В этом примере команда Get-Credential запрашивает учетные данные, и PowerShell использует учетные данные, введенные в параметре -Credential (скобки вокруг Get-Credential обязательны).

4. Создать новую учетную запись компьютера и предоставить учетной записи kendyer разрешение для присоединения к домену:

В этом примере команда New-ADComputer создает объект-компьютер и выводит его с использованием параметра -PassThru. Затем объект-компьютер выводится в сценарий Grant-ComputerJoinPermission.ps1, который предоставляет учетной записи kendyer разрешение для присоединения компьютера к домену.

5. Создать список учетных записей компьютеров в подразделении и предоставить учетной записи lynndyer разрешение на их присоединение к домену:

По умолчанию право на присоединение компьютеров к домену предоставляется группе пользователей Прошедшие проверку (Autentificated Users). Другими словами, любой пользователь, имеющий доменную учетную запись, может добавить свой компьютер в домен. Однако чтобы избежать злоупотреблений, максимальное количество машин, которое может присоединить рядовой пользователь, ограничено 10.

Компьютер не может быть присоединен к домену. На этом домене превышено максимально допустимое число учетных записей. Обратитесь к системному администратору с просьбой отменить это ограничение или увеличить значение.

За размер квоты отвечает атрибут пользователя ms-DS-MachineAccountQuota. Считается квота следующим образом: в учетной записи компьютера (а не пользователя) есть атрибут ms-DS-CreatorSID, в котором хранится SID учетной записи пользователя, заводившего учетную запись этого компьютера. Когда рядовой пользователь добавляет компьютер в домен, то система подсчитывает количество учетных записей компьютеров, в которых атрибут ms-DS-CreatorSID равен SID-у пользователя. Если это значение меньше значения квоты ms-DS-MachineAccountQuota, то компьютер подключается к домену, иначе появляется приведенная выше ошибка. Квота носит относительный характер, т.е. считаются не все учетные записи компьютеров, когда либо заведенные пользователем, а только существующие в домене на данный момент.

Есть несколько способов обойти квоту.

Предварительное создание учетной записи компьютера

  1. Открываем оснастку «Active Directory — пользователи и компьютеры».
  2. Щелкаем правой кнопкой мыши на контейнере, в котором планируется создавать учетную запись и выбираем пункт Создать — Компьютер.
  3. В открывшемся окне вводим имя компьютера, который необходимо добавить в домен.
  4. Жмем на кнопку Изменить и выбираем пользователя или группу, от имени которого производится присоединение к домену. При выборе имейте ввиду, что квота не распространяется только на членов группы Администраторы домена (Domain admins) и тех пользователей, которым делегированы права на управление данным контейнером.
  5. Далее жмем OK и учетная запись компьютера создана, а в значении атрибута ms-DS-CreatorSID будет указан SID того пользователя, от имени которого заводилась учетная запись в AD, а не того кто физически подключал компьютер к домену.

Достоинство этого способа в том, что мы сразу создаем учетную запись в нужном нам контейнере, а не в контейнере Computers (контейнер для компьютеров по умолчанию). Однако он более трудоемок, чем остальные, ведь таким образом придется создавать учетку для каждого нового компьютера.

Делегирование прав на создание и удаление учетных записей компьютеров

  • Открываем оснастку «Active Directory — пользователи и компьютеры».
  • Щелкаем правой кнопкой мыши на контейнере Computers и выбираем пункт «Делегирование управления».
  • В мастере делегирования управления выбираем пользователя или группу, которой доверим создавать учетные записи компьютеров. Правильным решением, на мой взгляд, будет создать для этой цели отдельную группу.
  • В следующем окне отмечаем пункт «Создать особую задачу для делегирования», т.к. в стандартных задачах нет возможности выбрать создание и удаление учетных записей компьютеров.
  • Отмечаем пункт «Разрешения для создания и удаления дочерних объектов» и выбираем из списка пункты «Создание объекта компьютер» и «Удаление объекта компьютер».
  • Жмем кнопку Далее, затем Готово. Делегирование создано, и теперь на выбранных пользователей квота не распространяется.

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

Изменение установленной по умолчанию квоты

  • Подключаемся к контесту именования домена по умолчанию.
  • Подключившись, щелкаем правой кнопкой мыши на нашем домене и в контекстном меню выбираем пункт «Свойства».
  • Находим в свойствах атрибут ms-DS-MachineAccountQuota и изменяем его значение на нужное нам.

    Сохраняем значение и закрываем оснастку. Квота на добавление компьютеров изменена, причем изменения будут действовать на всех пользователей, прошедших проверку (группа Autentificated Users).

Читайте также: