Gill Bates 11 Geschrieben 25. Oktober Melden Teilen Geschrieben 25. Oktober Hallo, ich möchte ein Powershell Script erstellen wo ein Benutzer ohne Admin Berechtigung starten starten kann, worin eine lokale exe gestartet wird mit einem separaten lokalen Admin Account. Das weiß ich zumindest wie es geht. Die exe aber benötigt zusätzlich noch die Ausführung mit den erhöhten Adminrechten (Rechtsklick "als Administrator ausführen"). Hat mir da jemand einen Tip wie man das hinbekommt? Gruß Gill Zitieren Link zu diesem Kommentar
testperson 1.706 Geschrieben 25. Oktober Melden Teilen Geschrieben 25. Oktober Hi, die Frage wäre, was die "Exe" am Ende des Tages macht. Da könntest du ansetzen und dem User entsprechende Rechte für geben. Ansonsten gibt es bspw. für Intune ein "Endpoint Privilege Management" Add-On, mit dem das abbildbar wäre. Gruß Jan Zitieren Link zu diesem Kommentar
MurdocX 953 Geschrieben 28. Oktober Melden Teilen Geschrieben 28. Oktober Hi @Bill Gates, was du suchst, ist der Parameter "RunAs". Start-Process -FilePath "C:\MeineApp.exe" -Verb RunAs Zitieren Link zu diesem Kommentar
cj_berlin 1.329 Geschrieben 28. Oktober Melden Teilen Geschrieben 28. Oktober ...doch wie immer man es drehen und wenden will, braucht es einen User *mit* Admin-Berechtigung, um einen Prozess mit erhöhten Rechten zu starten, sonst wäre das ganze UAC-Thema ja komplett für die Füße Du kannst einen geplanten Task mit dem gewünschten Sicherheitskontext erstellen und den "Normal-User" zum Starten dieses Tasks berechtigen. 1 Zitieren Link zu diesem Kommentar
NilsK 2.955 Geschrieben 29. Oktober Melden Teilen Geschrieben 29. Oktober Moin, zu dem Vorschlag von Evgenij ergänze ich, dass du dann sicherstellen musst, dass niemand den Task und das, was er macht (also vor allem das Skript und die exe-Datei) verändert. Die Dateien müssen also in einem per Berechtigung geschützten Ordner liegen, damit nur Admins sie ändern dürfen. Das liegt vielleicht nicht für alle auf der Hand, die diesen Thread lesen. Gruß, Nils Zitieren Link zu diesem Kommentar
winmadness 79 Geschrieben 29. Oktober Melden Teilen Geschrieben 29. Oktober Ich würde das Ausführen des Scripts auch noch mit einem Passwort absichern. Dabei das Passwort natürlich nicht im Klartext im Script hinterlegen. Hierzu einige Hinweise von der KI: PowerShell Windows Anmeldeinformation speichern In PowerShell gibt es verschiedene Möglichkeiten, Anmeldeinformationen und Passwörter zu speichern und zu verwalten. Hier sind einige Ansätze: Get-Credential: Mit dem Cmdlet Get-Credential kann man interaktiv einen Benutzernamen und ein Passwort abfragen und ein PSCredential-Objekt erstellen. $cred = Get-Credential -Username "Benutzername" -Password (Read-Host -AsSecureString) Dieser Ansatz ist jedoch nicht sicher, da das Passwort als Klartext in das Script eingegeben wird. SecureString: Ein sichereres Verfahren ist die Verwendung von SecureString. Man kann ein Passwort als SecureString erstellen und dann in ein PSCredential-Objekt überführen. $secure_pwd = Read-Host -AsSecureString $cred = New-Object System.Management.Automation.PSCredential -ArgumentList "Benutzername", $secure_pwd Microsoft.PowerShell.SecretManagement: Microsoft bietet ein Modul namens Microsoft.PowerShell.SecretManagement, das es ermöglicht, Anmeldeinformationen und Passwörter sicher zu speichern und zu verwalten. Das Modul unterstützt verschiedene Speicherorte, wie z.B. Azure Key Vault oder lokale Dateien. Install-Module -Name Microsoft.PowerShell.SecretManagement cmdkey: Das cmdkey-Tool ist ein Teil von Windows und ermöglicht es, Anmeldeinformationen und Passwörter auf einem lokalen System zu speichern und zu verwalten. cmdkey /add:targetname /user:username /pass:wachtwoord PSCredentialManager: Das Modul PSCredentialManager bietet eine einfache Möglichkeit, Anmeldeinformationen und Passwörter auf einem lokalen System zu speichern und zu verwalten. Install-Module -Name PSCredentialManager Es ist wichtig zu beachten, dass die Sicherheit von Anmeldeinformationen und Passwörtern immer ein wichtiges Thema ist. Es sollte immer versucht werden, die Verwendung von Klartext-Passwörtern zu vermeiden und stattdessen sicherere Methoden wie SecureString oder spezielle Speichermodule zu verwenden. Zitieren Link zu diesem Kommentar
NilsK 2.955 Geschrieben 29. Oktober Melden Teilen Geschrieben 29. Oktober Moin, hm, dazu kann ich mir gerade kein passendes Szenario vorstellen. Die KI-Antwort scheint mir auf den Use Case auch so gar nicht zu passen. Gruß, Nils Zitieren Link zu diesem Kommentar
Gill Bates 11 Geschrieben 30. Oktober Autor Melden Teilen Geschrieben 30. Oktober Vielen Dank für eure Ansätze. Ich weiß nicht ob ich diese Woche noch dazu komme, alles auszuprobieren. Melde mich wieder. Gruß Gill Zitieren Link zu diesem Kommentar
daabm 1.366 Geschrieben 31. Oktober Melden Teilen Geschrieben 31. Oktober Am 29.10.2024 um 08:40 schrieb winmadness: Get-Credential: Mit dem Cmdlet Get-Credential kann man interaktiv einen Benutzernamen und ein Passwort abfragen und ein PSCredential-Objekt erstellen. $cred = Get-Credential -Username "Benutzername" -Password (Read-Host -AsSecureString) Dieser Ansatz ist jedoch nicht sicher, da das Passwort als Klartext in das Script eingegeben wird. Die KI redet direkt Blödsinn Zum einen erstellt Get-Credential auch einen SecureString (also das, was die KI im nächsten Absatz als bessere Lösung empfiehlt), zum anderen steht hier nirgends ein Passwort im Klartext. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.