Security

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

Я программист, пытающийся администрировать Active Directory для небольшой компании. Контроллер домена работает под управлением Windows Small Business Server.

У нас есть штат полевых работников, использующих планшетные ПК; проблемы конфигурации с раздутым ПО ThinkVantage для планшетов потребуют от этих пользователей прав администратора при использовании планшетов. Это нормально – им полезно иметь широкие привилегии, когда я рассказываю им об устранении неполадок по телефону, поэтому я не ищу обходных путей. Я хочу использовать групповую политику для создания следующего сценария: пользователи определенной группы безопасности (или организационной единицы) должны быть в группе BUILTIN/Administrators при входе на компьютеры определенной группы безопасности (или организационной единицы). Ничего страшного, если компьютеры должны быть в OU, но я бы предпочел назначать пользователей по группам. Конечно, полевые работники не должны быть администраторами на других рабочих станциях, а сотрудники офиса не должны быть администраторами на планшетах.

В настоящее время это управляется локально на каждом планшете, но по мере добавления новых сотрудников это становится все более хлопотным делом. Мне кажется, что Restricted Groups – это выход, но без прочного фундамента в концепциях и методах AD мне сложно это реализовать. Какова правильная техника для решения этой задачи и как мне ее реализовать? 

Ответ 1

  1. Создайте группу для включения пользователей (Local-Admins-Tablets) и добавьте их в эту группу.

  2. Создайте под-OU текущей OU рабочих станций и поместите планшеты сюда (Workstations\Tablets).

  3. Создайте GPO (Local-Admins-Tablets-Policy) и свяжите его с OU Workstations\Tablets.

В GPO установите следующее:

  1. Comp Config - Policies - Windows Settings - Security Settings - Restricted Groups

  2. Добавьте группу «Администраторы». Члены этой группы: myDomain\Local-Admins-Tablets

  3. Перезагрузите компьютеры, и готово.

Имейте в виду, что установка Ограниченных групп перезапишет существующий список локальных администраторов машины. Если у вас там уже есть другие пользователи/группы, вам нужно будет добавить их в эту политику. Другими примерами могут быть myDomain\Domain Admins и т. д.

Также измените фильтрацию в GPO и добавьте Domain Computers. Самый простой способ сделать это использовать оснастку MMC Group Policy Management (вы можете получить ее из Remote Server Administration Tools от Microsoft).

Ответ 2

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

  1. Создайте структуру OU/группы таким же образом, как и раньше.

  2. Находясь в разделе «Ограниченные группы объекта групповой политики», добавьте группу, но вместо администраторов укажите YOURDOMAIN\Local-Admins-Tablets.

  3. В разделе «Эта группа является членом» нажмите «Добавить» и введите «Администраторы».

Это тонкая, но важная разница в работе двух разделов. «Члены этой группы» эффективно работает как «Группа A будет содержать только группы X, Y и Z». Раздел «Члены этой группы» эффективно работает как «Убедитесь, что группа A является членом групп X, Y и Z».

После того как вы установили политику с помощью Members of this group, единственное, что может изменить членство группы, это объект переопределяющей политики, который также использует Members of this group или любую другую политику, использующую This group is a member of.

Ответ 3

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

Есть несколько различных способов сделать это, но я могу предложить только один. Итак, выполните описанные выше шаги, но также создайте группу для каждого компьютера, где пользователям нужны дополнительные права. Каждая из этих «компьютерных групп» добавляется в группу myDomain\Local-Admins.

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

Ответ 4

Я написал сценарий, который запускается как политика компьютера с правами администратора на локальной рабочей станции. Он проверяет описание последнего вошедшего пользователя в AD, которое администратор домена может установить из «Active directory Users and Computers»; если оно содержит имя рабочей станции, скрипт добавляет пользователя в локальную группу администраторов; если имя рабочей станции отсутствует в описании пользователя, он удаляет пользователя из локальной группы администраторов. Описание может включать более одного имени компьютера, как показано ниже:

Описание пользователя: «Локальный администратор на WKST-E445R и WKST-VM398».

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

Вот скрипт:

    @if "%debug%" neq "%username%" echo off

set ver=MakeLocalAdmin.cmd henrik@c o m m o r e.se 20150423

:: Добавляет последнего вошедшего в домен пользователя в локальную группу Administrators, если запущен GPO компьютера с правами администратора и комментарий пользователя содержит Computername

set log=nul

:: or set log=c:\logs\MakeLocalAdmins.txt

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

FOR /F "tokens=3 delims= " %%G in ('reg query "hklm\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI" /v LastLoggedOnUser') DO (

set DomainAndUserName=%%G)

:: Удалите пробелы

set DomainAndUserName=%DomainAndUserName: =%

:: Получить только имя пользователя

set LastLoggedOnUserName=%DomainAndUserName:*\=%

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

FOR /F "tokens=3 delims= " %%G in ('reg query "hklm\system\controlset001\control\nls\language" /v Installlanguage') DO (

set Language=%%G)

echo %date% %Time% ; %0 ; %computername%; %LastLoggedOnUserName%; %DomainAndUserName%, %Language% >> %log%

goto %Language%

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

:: то будет ошибка 'label not found', которая должна означать завершение работы скрипта, но в любом случае убедитесь, что он завершается. 

goto end

:0409

:: Английский

net user /domain %LastLoggedOnUserName% | find "Comment " | find "%computername%" >> %log%

set NoLocalAdmin=%errorlevel%

if %NoLocalAdmin% equ 0 net localgroup Administrators /add "%DomainAndUserName%" >> %log%

if %NoLocalAdmin% equ 1 net localgroup Administrators /del "%DomainAndUserName%" >> %log%

goto end

:041D

:: Шведский

:: †„” åäö (Swedish char's)

net user /domain %LastLoggedOnUserName% | find "Kommentar " | find "%computername%" >> %log%

set NoLocalAdmin=%errorlevel%

if %NoLocalAdmin% equ 0 net localgroup Administrat”rer /add "%DomainAndUserName%" >> %log%

if %NoLocalAdmin% equ 1 net localgroup Administrat”rer /del "%DomainAndUserName%" >> %log%

goto end

:end

Схожие статьи

Как зашифровать в MD5 важную информацию и как работает шифрование MD5
Security

Как зашифровать в MD5 важную информацию и как работает шифрование MD5

Security

Целесообразно ли компьютерам одного домена взаимодействовать друг с другом

Обфускация и деобфускация кода: всё про этот метод защиты ПО
Security

Обфускация и деобфускация кода: всё про этот метод защиты ПО

Security

Какой самый надежный способ отправить zip-файл по электронной почте?