PowerShell Script mit Admin-Rechten

Benötigt man für ein Script Admin-Rechte so ist dies teilweise recht unhandlich zu bewerkstelligen. Benötigt wird dieses meistens um auf spezielle Dateien, die Registry oder auf die Sicherheitslogs zugreifen zu können.

Auf Heise.de bin ich hierbei auf einen  PowerShell Code gestoßen der die erforderlichen Rechte im Vorfeld abruft. Im Anschluss einfach das eigentliche Script einfügen.

$identity = [System.Security.Principal.WindowsIdentity]::GetCurrent()
$princ = NewObject System.Security.Principal.WindowsPrincipal($identity)

if(!$princ.IsInRole(
[System.Security.Principal.WindowsBuiltInRole]::Administrator))
{
$powershell = [System.Diagnostics.Process]::GetCurrentProcess()
$psi = NewObject System.Diagnostics.ProcessStartInfo $powerShell.Path
$script = $MyInvocation.MyCommand.Path
$prm = $script
foreach($a in $args) {
$prm += ‚ ‚ + $a
}
$psi.Arguments = $prm
$psi.Verb = „runas“
[System.Diagnostics.Process]::Start($psi) | Out-Null
return;
}

Quelle: Heise.de
Dieser Eintrag wurde veröffentlicht in PowerShell und verschlagwortet mit von Alexander Damm. Permanenter Link zum Eintrag.
Alexander Damm

Über Alexander Damm

Seit Windows Server 2000 beschäftige ich mich mit den Betriebssystemen von Microsoft. Dabei liegen meine Schwerpunkte auf Active Directory, Exchange Server, Lync bzw. Skype for Business, Cloud Services wie Office 365 oder Azure sowie Security Analysen, Lösungen und Konzepte. Beruflich agiere ich als System Consultant für die datom GmbH aus Dresden und freue mich auf ihre Anmerkungen oder Anfragen.

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.