у меня на самом деле было это раньше, как в этом вопросе, но по какой-то причине я получаю сообщение "работает с полными привилегиями", но мой сценарий выдает исключение:
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: этот вопрос скорее спрашивает, почему я не могу запустить команды, хотя у меня должны быть полные привилегии, а не как повысить свои привилегии. Надеюсь, этого достаточно, чтобы оправдать новый вопрос
Ценю любую помощь.