# erfordert Suche CmdLets: http://www.quest.com/powershell/activeroles-server.aspx
# Unternehmenseinheit-Liste
$BU = „Finanzierung“, „Verkäufe“, „vermarktend“, „ES“, „Entwicklung“
# der Abstand zwischen Daten. Produziert diese in der abschließenden Spalte: 0 bis 30; 30 bis 60, etc.
$DateRange = 30
# Gebrauch-Suche CmdLets, zum der Benutzer zu erhalten
- Ermöglicht - IncludedProperties lastLogonTimeStamp Erhalten-QADUser - SizeLimit 0 | % {
# Einfluss auf dieses für Bequemlichkeit
$LastLogon = $_.LastLogonTimeStamp
# die IntervalString und Vervielfacherwerte zurückstellen
# beginnt, indem nach Daten weniger als 30 Tage suchen alt, erhöht durch 30 auf jedem Durchlauf der Schleife
$IntervalString = ""; $Multiplier = 1
Wenn ($LastLogon - Ne $Null) {
Tun {
# sehen, wenn das LOGON-Datum nach dem spezifizierten Datum ist
Wenn ($LastLogon - GT (Erhalten-Datum) .AddDays (- ($DateRange * $Multiplier))) {
# Aufzeichnung dieser Wert als „0 bis 30“ oder „30 bis 60“, usw.
$IntervalString = „$ ($DateRange * ($Multiplier - 1)) zu $ ($DateRange * $Multiplier)“
}
# Stufensprung der Vervielfacher
$Multiplier++
#, bis es einen Wert hat
} Während ($IntervalString - eq "")
} Sonst {
$IntervalString = „N/A“
}
# den Ausgang erzeugen
$ _ | Vorwählen-Gegenstand DN, UserPrincipalName, DisplayName, LastLogonTimeStamp, WhenCreated,
@ {n='BusinessUnit'; e= {ForEach ($Name in $BU) {wenn ($_.DN - „OU=$Name zusammenbringen, ") {$Name}}}},
@ {n='Range'; e= {$IntervalString}}
# Export es aller zu einem CSV using Vorsprung als Begrenzer
} | „SomeFile.csv“ - NoTypeInformation - Begrenzer `t Exportieren-CSV
|