Accounts nach 6 Monaten löschen
Hallo Freunde der Sonne,
tatsächlich bin ich jetzt kein ITler mehr, sondern so ein IT Datenschutztyp ITler.
Muss leider die Kunden immer darauf hinweisen, dass der Account nicht nur deaktiviert werden muss, sondern auch nach 6 Monaten nach der Deaktivierung tatsächlich auch gelöscht werden muss. Daher meine Frage, wenn die das nicht selbst machen, wie bekomme ich es hin, alle Accounts die 6 Monate nach dem Deaktivierungsdatum, auch gelöscht werden und nicht nur deaktiviert? Spaß beiseite. Die Frage ist : ich will in einer Unter OU alle Accounts löschen, die nach 6 Monaten deaktivert wurden und die löschen..
Bin für jeden Hinweis dankbar.
LG
lordofremixes
tatsächlich bin ich jetzt kein ITler mehr, sondern so ein IT Datenschutztyp ITler.
Muss leider die Kunden immer darauf hinweisen, dass der Account nicht nur deaktiviert werden muss, sondern auch nach 6 Monaten nach der Deaktivierung tatsächlich auch gelöscht werden muss. Daher meine Frage, wenn die das nicht selbst machen, wie bekomme ich es hin, alle Accounts die 6 Monate nach dem Deaktivierungsdatum, auch gelöscht werden und nicht nur deaktiviert? Spaß beiseite. Die Frage ist : ich will in einer Unter OU alle Accounts löschen, die nach 6 Monaten deaktivert wurden und die löschen..
Bin für jeden Hinweis dankbar.
LG
lordofremixes
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 666814
Url: https://administrator.de/contentid/666814
Ausgedruckt am: 22.11.2024 um 04:11 Uhr
7 Kommentare
Neuester Kommentar
Moin,
mit Powershell ganz einfach. Das Skript kannst du auch per Task Scheduler jeden Tag laufen lassen.
Grüße
mit Powershell ganz einfach. Das Skript kannst du auch per Task Scheduler jeden Tag laufen lassen.
Import-Module ActiveDirectory
$Months = (get-date).AddMonths(-6)
$users = Get-ADUser -properties * -filter {((modifyTimeStamp -le $Months) -AND (enabled -eq $False))} -SearchBase "DEINE OU"| where CanonicalName -Like "NamedAccounts" | select-object SAMaccountname
foreach ($user in $users)
{
write-host Deleting account $user.SAMaccountname
Remove-ADUser -Identity $user.SAMaccountname
}
Grüße
Guten Morgen
Es gibt auch noch die Möglichkeit die alten Benutzerprofile auf den Computern löschen zu lassen.
Vielleicht ist das eine nette Option "on top" ?!
https://www.itnator.net/alte-benutzerprofile-loschen-mit-gpo/
Gruß joehuaba
Es gibt auch noch die Möglichkeit die alten Benutzerprofile auf den Computern löschen zu lassen.
Vielleicht ist das eine nette Option "on top" ?!
https://www.itnator.net/alte-benutzerprofile-loschen-mit-gpo/
Gruß joehuaba
Zitat von @chkdsk:
Moin,
mit Powershell ganz einfach. Das Skript kannst du auch per Task Scheduler jeden Tag laufen lassen.
Grüße
Moin,
mit Powershell ganz einfach. Das Skript kannst du auch per Task Scheduler jeden Tag laufen lassen.
> Import-Module ActiveDirectory
>
> $Months = (get-date).AddMonths(-6)
> $users = Get-ADUser -properties * -filter {((modifyTimeStamp -le $Months) -AND (enabled -eq $False))} -SearchBase "DEINE OU"| where CanonicalName -Like "NamedAccounts" | select-object SAMaccountname
> foreach ($user in $users)
> {
> write-host Deleting account $user.SAMaccountname
> Remove-ADUser -Identity $user.SAMaccountname
> }
>
Grüße
Der ModifyTimeStamp ist aber auch riskant. Theoretisch kannst du AD-Accounts auch noch bearbeiten, nachdem er deaktiviert wurde. Alleine das verschieben in eine andere OU zählt als Modify. Ich habe für deaktivierte User eine eigene OU, die ich regelmäßig prüfe. Per Skript würde ich in dem Zusammenhang nicht den ModifyTimeStamp sondern das LastLogonDate der User abfragen. Ja es gäbe manchmal einige Wochen Differenz zwischen LastLogonDate und dem tatsächlichen Ausscheiden, allerdings führt das eher zu einer früheren Löschung.
Gruß
Doskias