Как разрешить / запретить пользователям вход на компьютеры в домене AD

По умолчанию при создании пользователя в AD он автоматически добавляется в группу Domain Users. Группа Domain Users в свою очередь по умолчанию добавляется в локальную группу Users на компьютере при добавлении его в домен AD. Это означает что любой пользователь домена может войти на любой компьютер в сети. В этой статье мы рассмотрим основные способы ограничения возможности входа пользователей на компьютеры домена.

Разрешаем вход только на определенные компьютеры в свойствах пользователя AD

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

  1. Запустите оснастку ADUC (Active Directory Users and Computers), выполнив команду dsa.msc.
  2. С помощью поиска найдите учетную запись пользователя, которому нужно разрешить вход только на определённые компьютеры и откройте его свойства.
  3. Перейдите на вкладку Account и нажмите кнопку Log On To. logon-to ad пользователь
  4. Как вы видите, пользователю разрешено входить на все компьютеры (The user can log on to: All computer). Чтобы разрешить пользователю доступ на определенные компьютеры, выберите опцию The following computers и добавьте в список имена компьютеров, но которые ему разрешено логиниться. разрешить пользвоателю вход только на следующие компьютеры
    Примечание. Нужно указывать полное NetBIOS или DNS имя компьютера (знаки подстановки использовать нельзя), параметр регистронезависимый.
  5. Количество компьютеров, которые можно добавить в этот список ограничено 64. При попытке добавить 65 компьютер появится сообщение об ошибке: This property is limited to 64 values. You must remove some of the existing values before you can add new ones.
  6. Сохраните изменения. Теперь пользователь может входить только на указанные компьютеры.

Изменяем атрибут LogonWorkstations с помощью PowerShell

Вручную ограничивать вход пользователей на компьютеры домена довольно утомительно. С помощью PowerShell можно автоматизировать это действия. Список компьютеров, на которые разрешено входить пользователю хранится в атрибуте пользователя в AD – LogonWorkstations. Например, наша задача разрешить определенному пользователю входить только на компьютеры, чьи имена содержатся в текстовом файле computers.csv

Скрипт может выглядеть так:

Import-Module ActiveDirectory
$ADusername = ‘aapetrov’
$complist = Import-Csv -Path "C:\PS\computers.csv" | ForEach-Object {$_.NetBIOSName}
$comparray = $complist -join ","
Set-ADUser -Identity $ADusername -LogonWorkstations $comparray
Clear-Variable comparray

powershell изменить атрибут LogonWorkstations

С помощью следующей команды можно вывести список компьютеров, на которые разрешено входить пользователю можно с помощью командлета Get-ADUser.

Get-ADUser $ADusername -Properties LogonWorkstations | Format-List Name, LogonWorkstations

Либо можно посмотреть список компьютеров в консоли ADUC.

logon workstations

Чтобы добавить в список новый компьютер, воспользуйтесь такой командой:

$Wks = (Get-ADUser dvivannikov -Properties LogonWorkstations).LogonWorkstations
$Wks += ",newpc"
Set-ADUser aapetrov -LogonWorkstations $Wks

Ограничиваем вход на компьютеры с помощью GPO

В больших доменах использовать свойство пользователя LogonWorkstations для ограничения доступ пользователей к компьютерам нецелесообразно из-за ограничений и недостаточной гибкости. Как правило, чтобы запретить пользователям входить на некоторые ПК? используют групповые политики.

Можно ограничить список пользователей в локальной группе Users с помощью политики Restricted Groups (Windows Settings -> Security Settings), но мы рассмотрим другой вариант.

Есть две групповые политики, которые находятся в разделе Computer Configuration -> Policies -> Security Settings -> Local Policies -> User Rights Assignment (Конфигурация пользователя -> Политики -> Параметры безопасности -> Локальные политики -> Назначение прав пользователя):

  • Deny log on locally (Запретить локальный вход) – позволяет запретить локальный вход на компьютеры для определенных пользователей или групп;
  • Allow log on locally (Локальный вход в систему) – содержит список пользователей и групп, которым разрешено входить на компьютер локально.

Например, чтобы запретить пользователям определенной группы входить на компьютеры в некой OU, вы можете создать отдельную группу пользователей, добавить ее в политику Deny log on locally и назначить ее на OU с компьютерами, доступ к которым вы хотите ограничить.

политика Deny log on locally (Запретить локальный вход)

назначить политики denylogon на OU

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

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

Совет. Группы можно автоматически наполнять пользователями из OU с помощью командлетов PowerShell Get-ADUser и Add-ADGroupMember таким скриптом:

Import-module ActiveDirectory
$rootOU = “OU= Users,OU=MSK,DC=winitpro,DC=ru”
$group = “corp\msk-users”
Get-ADUser -SearchBase $rootOu -Filter * | ForEach-Object {Add-ADGroupMember -Identity $group -Members $_ }

Затем нужно включить политику Allow log on locally, добавить в нее эту группу (+ различные администраторские группы: Domain Admins, администраторы рабочих станций и прочее) и назначить политику на OU с компьютерами. Таким образом вы разрешите только пользователям конкретного OU входить на компьютеры.

При попытке входа пользователя, которому не разрешен локальный вход, появится окно с предупреждением:

You cannot log on because the logon method you are using is not allowed on this computer.  Please see your network administrator for more information.

Или

The sign-in method you are trying to use isn’t allowed. For more info, contact your network administrator.

The sign-in method you are trying to use isn’t allowed

Несколько важных моментов касательно данных политик:

  • Не стоит применять данные политики, для ограничения доступа к серверам и тем более к контроллерам домена.
    Как разрешить обычным пользователям RDP доступ к DC.
  • Не включаете эти политики через стандартные GPO: Default Domain Policy или Default Domain Controllers Policy.
  • Запрещающая политика имеет больший приоритет.
  • Не забывайте про сервисные учетные записи(в том числе gMSA), которые могут использоваться для запуска служб на компьютерах.
  • Не стоит применить политики, ограничивающие локальный вход на весь домен. Назначайте их на конкретные OU.

Предыдущая статья Следующая статья


Комментариев: 2 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)