+49 (0) 8171/405-0 info@proSoft.de

LastLogon Computer

Beispielscript, um mit Powershell zu überprüfen, welche Computer-Konten sich seit einer definierten Zeitspanne nicht mehr im Active Directory angemeldet haben.
Dieses Script kann z.B. dazu verwendet werden, um verwaiste Computerkonten im AD zu finden und im Anschluss zu deaktivieren bzw. zu löschen.
Die ermittelten Daten werden nach Datum sortiert und per HTML eMail versendet.

[sourcecode language=“ps“ autolinks=“false“ collapse=“false“ gutter=“true“ htmlscript=“false“ light=“false“ padlinenumbers=“true“ title=“LastLogon Computer“ toolbar=“true“ wraplines=“true“]
### ******************************
### Deklarationen
### ******************************

### Zeitspanne
### ******************************
$lastLogonDays_Computer = -30;

### Mail-Parameter
### ******************************
$mailFrom = "admin@domain.tld";
$mailTo = "support@domain.tld"
$mailSMTP = "smtpserver.domain.tld";
$mailSubject = "LastLogon Computer";

### eMail Header & Body
### ******************************
$mailHtmlHeader = @"
<style>
BODY {font-size:14px;}
TABLE {border-width: 1px; border-style: solid; border-color: black; border-collapse: collapse;}
TD {border-width: 1px; padding: 3px; border-style: solid; border-color: black;}
H2 {font-size:16px;}
</style>
"@

### ******************************
### Script
### ******************************

### aktuelles Datum ermitteln
### ******************************
$currentDate = Get-Date

### Computer ermitteln
### ******************************
$dateLimitComputer = $currentDate.AddDays($lastLogonDays_Computer)
$computer = Get-ADComputer -Filter * -Properties Name, LastLogonDate | Where-Object { $_.LastLogonDate -lt $dateLimitComputer } | Sort LastLogonDate | ConvertTo-Html -Property Name, LastLogonDate -Head $mailHtmlHeader

### eMail versenden
### ******************************
$body = "<h2>Computer</h2>" + $computer | Out-String
Send-MailMessage -To $mailTo -From $mailFrom -Subject $mailSubject -SmtpServer $mailSMTP -Body $body -BodyAsHtml -encoding ([System.Text.Encoding]::UTF8)
[/sourcecode]