
Я пытаюсь получить одобрение на автоматизированный скрипт, который использует:
Get-ADGroup
и
Get-ADUser
командлеты (часть модуля ActiveDirectory для PowerShell). Однако, чтобы получить одобрение, мне нужно найти альтернативу включению всех средств удаленного администрирования сервера (RSAT) на сервере, на котором будет запущен скрипт.
Включение RSAT через управление сервером:
Есть ли способ просто включить определенные роли сервера, чтобы избежать необходимости включатьвсеинструментов, представленных в RSAT? Например, если посмотреть на страницу модуля ActiveDirectory от Microsoft, то можно предположить, что модуль ActiveDirectory может использовать только службы домена Active Directory (ADDS) И/ИЛИ роли сервера Active Directory Lightweight Directory Services (ADLDS). Кто-нибудь знает, так ли это?
Страница модуля ActiveDirectory:
Выбор ролей сервера в управлении сервером:
решение1
Модули Powershell не имеют ничего общего с ролями служб AD. Фактически, они вам абсолютно НЕ нужны, если только ваш сервер не является контроллером домена.
Я попытался определить минимальное подмножество RSAT, необходимое для работы командлетов Powershell, и обнаружил, что мне нужен весь пакет RSAT, иначе он не будет работать.
Для Windows 10 Build 1809 и более поздних версий (и, как я полагаю, также в Server 2019) RSAT сам по себе стал Feature-On-Demand в Windows. Но опять же: неясно, какая из примерно 10 функций предоставляет какие именно модули MMC или командлеты Powershell.
Microsoft действительно должна предоставить надлежащую документацию для этого, но они этого не делают.
Единственное, что я могу сказать наверняка: это гарантированно будет работать, если вы установите RSAT целиком. И мне так и не удалось заставить это работать только с подмножеством RSAT.
решение2
Поскольку сервер, на котором я пытаюсь это запустить, — это 2012 R2, я обнаружил, что вам нужно сделать следующее:Включен ТОЛЬКО модуль ActiveDirectory PowerShellнеобходимо сделать следующее:
На вашем сервере Windows 2012 R2:
- Если это еще не так, перейдите к мастеру «Удаление ролей и компонентов» на консоли диспетчера сервера и удалите (снимите отметки) ВСЕ «Инструменты удаленного администрирования сервера» на вкладке «Компоненты». После этого перезапустите сервер.
Запустите следующий скрипт PowerShell на сервере:
Install-WindowsFeature RSAT-AD-PowerShell