Eine Möglichkeit, den Download-Ordner des Benutzers beim Anmelden zu leeren

Eine Möglichkeit, den Download-Ordner des Benutzers beim Anmelden zu leeren

Scheint eine einfache Aufgabe zu sein, aber keine meiner Lösungen hat funktioniert. Normale AD-Domäne mit normalen Benutzern. Wir verwenden Terminalserver mit Nicht-Roaming-Profilen, sodass alles auf der TS-Festplatte gespeichert ist. Wir möchten ihren Download-Ordner beim Anmelden leeren, weil sie das nie selbst tun und wir es satt haben, dass die Festplatten voll werden.

Also erstelle ich natürlich ein einfaches Powershell-Skript und erstelle ein GPO, um es bei der Anmeldung auszuführen. Das Problem ist, dass das PS-Skript erhöhte Rechte erfordert und Anmeldeskripte auf der Berechtigungsstufe dieses Benutzers ausgeführt werden und nicht erhöht werden können.

Hier ist die PS-Zeile:

Get-ChildItem C:\Users\*\Downloads\* | Remove-Item -Force

Funktioniert hervorragend, wenn Sie es manuell von einer erhöhten Powershell-Instanz aus ausführen.

Ok, also kein GPO. Der nächste Gedanke ist, auf jedem Terminalserver eine geplante Aufgabe zu erstellen und sie mit einem Dienstkonto auszuführen, das über Administratorrechte verfügt.

Das Problem dabei ist, dass das Leeren des Download-Ordners jedes Benutzers nicht funktioniert, sondern nur des Servicekontos.

Daher möchte ich nicht den Download-Ordnerpfad jedes einzelnen Benutzers statisch in die .ps1-Datei eingeben, da dies offensichtlich ein Verwaltungsalbtraum wäre.

Weiß also jemand:

  1. Eine Möglichkeit, den Download-Ordner bei der Benutzeranmeldung über ein GPO zu leeren, ohne dafür ein Skript auszuführen. oder
  2. Eine Möglichkeit zur Verbesserung des Skripts besteht darin, die Ordner aller Benutzer rekursiv zu durchsuchen, den Download-Ordner zu finden und ihn zu leeren, ohne den Namen jedes Benutzers angeben zu müssen.

Wie kann das einfach gemacht werden? Danke

Antwort1

Ihr Problem mit diesem Benutzeranmeldeskript besteht darin, dass Sie versucht haben, die Download-Inhalte ALLER Benutzer zu löschen, falls dies der von Ihnen verwendete Befehl ist.

Sie möchten sicherlich die Downloads jedes einzelnen Benutzers löschen. Wenn sich Downloads also in deren Profilverzeichnis befinden:

Get-ChildItem $env:USERPROFILE\downloads | Remove-Item -recurse

Möglicherweise müssen Sie Ihr Skript signieren oder festlegen, -ExecutionPolicy Bypassje nachdem, welche Ausführungsrichtlinie Sie für Powershell haben. Es gibt zahlreiche Ratschläge zum Ausführen von Powershell in einem Anmeldeskript.

Wenn Sie es in der guten alten Batchdatei machen, ist es ganz einfach:

rd /s /q %USERPROFILE%\Downloads\*
del /q  %USERPROFILE%\Downloads\*.*

verwandte Informationen