Я работаю в среде активных каталогов со многими серверами. У меня есть учетная запись пользователя, которую я хотел бы использовать для проверки состояния других серверов, не предоставляя этой учетной записи полного административного доступа к этим другим серверам. В частности, я хочу проверить место на диске на этих серверах, и я бы хотел сделать это с помощью Powershell.
Я выполнил Enable-PSRemoting на целевом сервере и может успешно вызывать на них Get-PSDrive удаленно, используя учетные данные администратора. Результаты возвращаются практически сразу и включают информацию об использованном / свободном пространстве на всех дисках.
Однако, когда я запускаю ту же команду (Invoke-Command -computer remoteserver1 {Get-PSDrive -PSProvider FileSystem}
) как неадминистративный пользователь, результаты возвращаются очень медленно (занимает около 30 секунд), и ни один из дисков не имеет информации об использованном / свободном пространстве.
Что я сделал до сих пор:
Некоторые также предложили попробовать Invoke-Command -computer remoteserver1 {Get-WmiObject -Class Win32_MappedLogicalDisk}
для устранения неполадок, но возвращается сообщение «Доступ запрещен». Я верю, если бы я мог получить Get-WmiObject
успешно работая для этого ограниченного пользователя, это решит мою проблему.
Что мне делать, чтобы получить доступ к этой ограниченной учетной записи пользователя для проверки места на диске на других серверах? без предоставления прав администратора учетной записи и, желательно, без необходимости подключать и отключать какие-либо диски?
Чтобы позволить неадминистративной учетной записи выполнять необходимые команды Powershell для возврата информации о дисковом пространстве на удаленном сервере, выполните следующие шаги (в качестве администратора сервера / домена) на целевом сервере.
Enable-PSRemoting
- Погуглите, если вам нужны дополнительные объяснения.
Нажмите Пуск> Выполнить ..., введите lusrmgr.msc
и нажмите ОК
Щелкните папку Группы.
Дважды щелкните группу «Пользователи удаленного управления» и добавьте учетную запись пользователя без прав администратора. Щелкните ОК.
Дважды щелкните группу «Распределенные пользователи COM» и добавьте учетную запись пользователя без прав администратора. Щелкните ОК.
Нажмите Пуск> Выполнить ..., введите dcomcnfg
и нажмите ОК
Разверните дерево «Службы компонентов», пока не дойдете до «Мой компьютер». Щелкните правой кнопкой мыши «Мой компьютер», чтобы открыть меню, и выберите «Свойства».
Щелкните вкладку Безопасность COM.
Нажмите «Изменить ограничения» в разделе «Разрешения доступа». Убедитесь, что в группе «Распределенные пользователи COM» установлены флажки для локального и удаленного доступа. Щелкните ОК.
Щелкните Изменить ограничения в разделе «Разрешения на запуск и активацию». Убедитесь, что все четыре поля «Разрешить» отмечены для группы «Пользователи распределенного COM». Щелкните ОК.
Нажмите Пуск> Выполнить ..., введите wmimgmt.msc
и нажмите ОК.
Щелкните правой кнопкой мыши элемент управления WMI (локальный), чтобы открыть меню, и выберите пункт «Свойства».
Перейдите на вкладку «Безопасность», затем нажмите «Корень» и нажмите кнопку «Безопасность» в нижней части диалогового окна.
Щелкните Добавить ... и добавьте локальную группу пользователей Distributed COM.
Щелкните Advanced.
Выделите строку с распределенными пользователями COM в ней и нажмите кнопку «Изменить».
В раскрывающемся списке «Применимо к» выберите «Это пространство имен и подпространства имен».
В столбце Разрешить отметьте «Выполнить методы», «Включить учетную запись» и «Включить удаленное управление».
Щелкните OK, чтобы выйти из диалоговых окон.
Прокомментируйте ниже, если у вас есть какие-либо отзывы о проблемах безопасности или о том, как улучшить доступ с минимальными привилегиями.
Подсказка к этой ссылке для руководства: https://helpdesk.kaseya.com/hc/en-gb/articles/229043428-Configuring-a-regular-non-admin-user-account-for-WMI-monitoring