NerdFs
-
Gesamte Inhalte
3 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von NerdFs
-
-
Cool, danke für die Tipps. Ich werde mir das mit der CSV mal ansehen, dass klingt ganz überschaubar.
-
Danke für die Infos. Mit Powershell beschäftige ich mich schon eine Weile. Allerdings fehlt mir noch eine Anhaltspunkt, wie ich damit eine Art "Stapel" anlege um die Änderungen zeitgesteuert durchzuführen. Die Änderungen in der Domäne durchzuführen via Powershell sind nicht das Problem. Nur habe ich irgendwie an ein einfaches GUI gesucht solche Änderungen zu erfassen und dann nachts z.B. zu übertragen. Wollte nicht jedes mal ein Script dafür anlegen bzw. bearbeiten. Aber die Idee mit der Aufgabenplanung ist ganz gut. Danke!
Änderungen in Domäne planen
in Systemadministratoren und Netzwerktechniker
Geschrieben
Hier mal mein erster Entwurf dazu. Kann sicher noch einiges ausgebaut werden, aber funktioniert soweit erst einmal. Vielen Dank für die Tipps!
$Changes = Import-Csv -Delimiter "`t" -Path .\veraenderungen.txt | Where-Object {$_.datum -eq "$(Get-Date -UFormat "%d.%m.%Y")"} $logfile = ".\log.txt" Function LogWrite { Param([string]$logline) $logdate = get-date -format "yyyy-MM-dd HH:mm:ss" $text = "["+$logdate+"] " + $logline $text >> $logfile } ForEach($Change in $Changes){ $username = $Change.Benutzer # prüfe ob Benutzer exsistiert if(Get-ADUser -Filter {SamAccountName -eq $username}) { switch($Change.Aktion) { add-group { $group = $Change.Parameter # prüfe ob Gruppe existiert if(Get-ADGroup -Filter {SamAccountName -eq $group}) { Add-ADGroupMember -Identity $group -Members $username LogWrite -logline "Benutzer $username der Gruppe $group hinzugefügt" } else { LogWrite -logline "Gruppe $group wurde nicht gefunden" } } remove-group { $group = $Change.Parameter if(Get-ADGroup -Filter {SamAccountName -eq $group}) { Remove-ADGroupMember -Identity $group -Members $username -Confirm:$false LogWrite -logline "Benutzer $username aus der Gruppe $group gelöscht" } else { LogWrite -logline "Gruppe $group wurde nicht gefunden" } } } } else { LogWrite -logline "Benutzer $username wurde in der AD nicht gefunden" } }