Как импортировать модуль PowerShell только для администраторов?

При импорте модуля PowerShell, который

#Requires -RunAsAdministrator

из моего профиля PowerShell выдает ScriptRequiresElevation,Microsoft.PowerShell.Commands.ImportModuleCommand ошибку.

Как я могу

  • а) добавить условие / параметр, что модуль импортируется только при запуске оболочки с повышенными привилегиями или
  • б) переместить импорт в профиль, который загружается только при запуске оболочки с повышенными правами?

person arueckauer    schedule 29.05.2019    source источник


Ответы (1)


Самый простой - добавить проверку состояния в сценарий вашего профиля, вы можете добавить проверку, чтобы узнать, работаете ли вы как администратор:

$currentPrincipal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())
if($currentPrincipal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator))
{
    Import-Module NeedsAdminModule
}
person HAL9256    schedule 29.05.2019