у меня на самом деле было это раньше, как в этом вопросе, но по какой-то причине я получаю сообщение "работает с полными привилегиями", но мой сценарий выдает исключение:

get-brokersession : Insufficient administrative privilege

 + CategoryInfo          : PermissionDenied: 

Мой сценарий:

param([switch]$Elevated)

function Test-Admin {
  $currentUser = New-Object Security.Principal.WindowsPrincipal $([Security.Principal.WindowsIdentity]::GetCurrent())
  $currentUser.IsInRole([Security.Principal.WindowsBuiltinRole]::Administrator)
}

if ((Test-Admin) -eq $false)  {
    if ($elevated) 
    {
        # tried to elevate, did not work, aborting
    } 
    else {
        Start-Process powershell.exe -Verb RunAs -ArgumentList ('-noprofile -noexit -file "{0}" -elevated' -f ($myinvocation.MyCommand.Definition))
}

exit
}

'running with full privileges'

$hostname=$args[0]
$Logfile = "C:\Program Files\NSClient++\log\logout_user.log"
$Stamp = (Get-Date).toString("yyyy/MM/dd HH:mm:ss")

Function LogWrite
{
   Param ([string]$logstring)

   Add-content $Logfile -value $logstring
}

Add-PSSnapin Citrix.*
get-brokersession -HostedMachineName $hostname -filter {sessionstate -eq "Disconnected"} | stop-brokersession
LogWrite "$Stamp Server: $hostname - stopped brokersessions, inactive Users cleared"
Write-Host "Server: $hostname - stopped brokersessions, inactive Users cleared" 

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

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

Ценю любую помощь.

0