PowerShell. HKLM. Set-ItemProperty ohne Admin-Rechte
Hallo zusammen,
wie kann in PowerShell eine Credential so verwendet werden, dass ein Script (als .exe) einen Reg-Eintag in HKLM ohne Admin-Rechte ändern kann?
PS-Script mit einer GUI wird den Usern als .exe zur Verfügung gestellt.
Der User bzw. die User haben keine lokalen Admin-Rechte, ist eine Domäne (AD).
Ohne Admin-Rechte darf in HKLM aber nichts geändert werden und das ist aktuell mein Problem.
Ich habe den Ansatz ausprobiert, aber es funktioniert nur bei dem Benutzer, mit dem die wwsd.xml erstellt wurde:
Wechselt man den User (ohne Admin-Rechte), dann erscheint nach Ausführen (GUI Button-Event) eine Login-Abfrage. Kann ich so leider nicht gebrauchen.
Das ist aber normales Verhalten, so wie ich es gelesen habe.
Welche anderen Ansätze gibt es, um dem Script (als .exe ausführbar gemacht) die Rechte dennoch zu erteilen?
Als Werkzeug stehen mir vorrangig PowerShell und wenn es nicht anders geht C# mit Visual-Studio zur Verfugung.
Denn ein Programm, was wir im Einsatz haben, kann den Schlüssel $key_BEA_HKLM ändern, obwohl es ohne Admin-Rechte gestartet wird.
Der Sicherheitsaspekt ist dabei sehr wichtig.
Vielen Dank im Voraus
wie kann in PowerShell eine Credential so verwendet werden, dass ein Script (als .exe) einen Reg-Eintag in HKLM ohne Admin-Rechte ändern kann?
PS-Script mit einer GUI wird den Usern als .exe zur Verfügung gestellt.
Der User bzw. die User haben keine lokalen Admin-Rechte, ist eine Domäne (AD).
Ohne Admin-Rechte darf in HKLM aber nichts geändert werden und das ist aktuell mein Problem.
Ich habe den Ansatz ausprobiert, aber es funktioniert nur bei dem Benutzer, mit dem die wwsd.xml erstellt wurde:
# Cred-Export
$PNd = Get-Credential -Message 'P' -UserName 'xx\Administrator'
$PNd | Export-Clixml -Path 'C:\Temp\wwsd.xml'
# Cred-Import
$Cred = Import-Clixml -Path 'C:\temp\wwsd.xml'
$Zugang = New-Object System.Management.Automation.PSCredential( $Cred )
$key_BEA_HKLM = 'HKLM:\SOFTWARE\SolidWorks\AddIns\{461C5CA1-37AF-4948-910F-CAEEFB403814}'
Start-Process powershell.exe -ArgumentList "-Command Set-ItemProperty -Path '$key_BEA_HKLM' -Value 754 -Name '(default)'" -Credential $Zugang
Wechselt man den User (ohne Admin-Rechte), dann erscheint nach Ausführen (GUI Button-Event) eine Login-Abfrage. Kann ich so leider nicht gebrauchen.
Das ist aber normales Verhalten, so wie ich es gelesen habe.
Welche anderen Ansätze gibt es, um dem Script (als .exe ausführbar gemacht) die Rechte dennoch zu erteilen?
Als Werkzeug stehen mir vorrangig PowerShell und wenn es nicht anders geht C# mit Visual-Studio zur Verfugung.
Denn ein Programm, was wir im Einsatz haben, kann den Schlüssel $key_BEA_HKLM ändern, obwohl es ohne Admin-Rechte gestartet wird.
Der Sicherheitsaspekt ist dabei sehr wichtig.
Vielen Dank im Voraus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 3059804937
Url: https://administrator.de/forum/powershell-hklm-set-itemproperty-ohne-admin-rechte-3059804937.html
Ausgedruckt am: 25.12.2024 um 02:12 Uhr
5 Kommentare
Neuester Kommentar
Zitat von @Johann.Z:
Denn ein Programm, was wir im Einsatz haben, kann den Schlüssel $key_BEA_HKLM ändern, obwohl es ohne
Denn ein Programm, was wir im Einsatz haben, kann den Schlüssel $key_BEA_HKLM ändern, obwohl es ohne
Schau mal per Procmon welcher Prozess die Änderung tatsächlich schreibt. Oftmals läuft ein Dienst als System und es wird dem nur gesagt das er das tun soll.
Oder schau dir von dem Registrykey die Berechtigungen mal genauer an, was da schreiben darf