Назад | Перейти на главную страницу

«Запрошенный доступ к реестру не разрешен». Powershell

Я пытаюсь найти размер базы данных DC, который находится в службе NTDS. Мой сценарий:

$Computer = "abe.com"
$Reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $computer)     

$RegKey=$Reg.OpenSubKey("SYSTEM\\CurrentControlSet\\services\\NTDS\\Parameters" 
$NTDSPath = $Regkey.GetValue("DSA Database file") 
$NTDSREMOTEPath =  "\\$computer\$NTDSPath" -replace ":","$" 
$NTDSREMOTEPath = Get-item $NTDSREMOTEPath | Select-Object -ExpandProperty Length 

($NTDSREMOTEPath /1GB).ToString("0.000"+" GB") 

После запуска я получил ошибку:

Exception calling "OpenSubKey" with "1" argument(s): "Requested registry access is not allowed."
At C:\Users\Documents\HealthCheck\hardwareMonitoring.ps1:40 char:1
+ $RegKey= $Reg.OpenSubKey("SYSTEM\\CurrentControlSet\\services\\NTDS\\Parameters" ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : SecurityException

You cannot call a method on a null-valued expression.
At C:\Users\Documents\HealthCheck\hardwareMonitoring.ps1:41 char:1
+ $NTDSPath = $Regkey.GetValue("DSA Database file")
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

Get-item : Cannot find path '\\abc.com\' because it does not exist.
At C:\Users\Documents\HealthCheck\hardwareMonitoring.ps1:43 char:19
+ $NTDSREMOTEPath = Get-item $NTDSREMOTEPath | Select-Object -ExpandProperty Lengt ...
+                   ~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (\\abc.com\:String) [Get-Item], ItemNotFoundE 
   xception
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetItemCommand

Я понял, что у моей учетной записи недостаточно прав для запроса этого пути из regedit SYSTEM\\CurrentControlSet\\services\\NTDS\\Parameters.

Я решил войти в "abc.com" и добавил свою учетную запись с full control и read прав. Что я сделал, так это щелкните правой кнопкой мыши на Parameter выберите permissions и добавить мою учетную запись.

Я вернулся, чтобы снова запустить сценарий. У меня такая же ошибка!

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

В чем причина в этом случае? Спасибо вам большое!

Шаг 1.

Назначение разрешений ключу реестра

  1. Щелкните ключ, которому вы хотите назначить разрешения.
  2. В меню Правка щелкните Разрешения.
  3. Щелкните группу или имя пользователя, с которым хотите работать.
  4. Назначьте ключу один из следующих уровней доступа: Установите флажок Разрешить для

Прочитать, чтобы дать разрешение на чтение ключевого содержания, но не сохранять никаких изменений. Установите флажок «Разрешить» для «Полный доступ», чтобы разрешить открытие, редактирование и владение ключом.

  1. Чтобы предоставить специальное разрешение в ключе, нажмите «Дополнительно», а затем дважды щелкните пользователя или группу, которым вы хотите назначить специальный доступ. В разделе «Разрешения» установите флажок «Разрешить» или «Запретить» для каждого разрешения, которое вы хотите разрешить или запретить.

Шаг 2.

Контроллер домена Windows Server 2003

  1. Откройте редактор групповой политики
  2. Перейдите к, Политика локального компьютера> Конфигурация компьютера> Политики> Параметры Windows> Параметры безопасности> Системные службы.
  3. На правой панели найдите Remote Registry.
  4. Определите политику и установите для Тип запуска значение Автоматический.
  5. eboot клиентов, чтобы применить политику

Контроллер домена Windows Server 2008 или новее

  1. Откройте редактор групповой политики
  2. Разверните Конфигурация компьютера> Политики> Параметры Windows> Параметры безопасности> Системные службы.
  3. Найдите элемент удаленного реестра и измените режим запуска службы на автоматический.
  4. Перезагрузите клиентов, чтобы применить политику

Шаг 3.

Откройте конфигурацию компьютера в редакторе локальной групповой политики -> Параметры Windows -> Параметры безопасности -> Локальные политики -> Параметры безопасности -> Свойства сетевого доступа: Пути и вложенные пути реестра с удаленным доступом -> на вкладке Настройка локальных политик добавьте свой подраздел реестра. пути, которые вы хотите запросить

Например: System\CurrentControlSet\Control\ContentIndex