• Active Directory
    • AD Consulting
    • AD Design
      • Domain Name festlegen
      • Domain Struktur einrichten
      • Forest Struktur definieren
    • AD Management
    • AD Automation
      • Dynamic Access Control (DAC)
    • AD Federation Services
      • ADFS Betrieb
      • ADFS und Office365
      • ADFS und Cisco Unified Communications Manager
      • SAML und ADFS 2.0
  • Azure / M365
    • Azure AD
    • Microsoft 365 (O365)
  • Migration
    • Active Directory Migration
    • Exchange Migration
    • File Server Migration
    • Lotus Notes Migration
    • Novell Migration
  • Wissen
    • Alle Beiträge
    • Administration
    • PowerShell
    • Migration
    • Exchange
    • Tools
  • Kontakt
    • Wir über uns
    • Kontakt
  • EN
info@firstattribute.com
by FirstAttribute
Active Directory FAQActive Directory FAQ
  • Active Directory
    • AD Consulting
    • AD Design
      • Domain Name festlegen
      • Domain Struktur einrichten
      • Forest Struktur definieren
    • AD Management
    • AD Automation
      • Dynamic Access Control (DAC)
    • AD Federation Services
      • ADFS Betrieb
      • ADFS und Office365
      • ADFS und Cisco Unified Communications Manager
      • SAML und ADFS 2.0
  • Azure / M365
    • Azure AD
    • Microsoft 365 (O365)
  • Migration
    • Active Directory Migration
    • Exchange Migration
    • File Server Migration
    • Lotus Notes Migration
    • Novell Migration
  • Wissen
    • Alle Beiträge
    • Administration
    • PowerShell
    • Migration
    • Exchange
    • Tools
  • Kontakt
    • Wir über uns
    • Kontakt
  • EN

PowerShell: Aktive Computerobjekte finden

Mrz 31, 2016 (Letztes Update) | Posted by Jens Künzler PowerShell |

 

PowerShell: Aktive Computerobjekte finden

Nach einer erfolgreich abgeschlossenen Active Directory Migration kommt früher oder später der Moment, wo es darum geht die alte Domain abzuschalten.

Hier stellt sich die Frage nach noch aktiven Computern in der alten Domain.

Ein kleines PowerShell-Skript hilft dabei noch aktive Computerobjekte finden.

Inhaltsverzeichnis

  • 1 LastLogonTimeStamp
  • 2 DateTime::FromFileTime
  • 3 LDAP-Filter
  • 4 Fazit

LastLogonTimeStamp

Wenn wir aktive Computerobjekte finden wollen, bietet sich das Attribut LastLogonTimeStamp an. Es wird von Computern automatisch aktualisiert, wenn der Wert, welcher im Computer Objekt der Domain gespeichert ist, älter als 9-14 Tage ist. Möchte man den LastLogonTimeStamp jedoch in einem LDAP-Filter verwenden, werden wir etwas Seltsames feststellen. Der Wert gibt an, dass die Anzahl von Nanosekunden seit dem 01.01.1601 mit 100 an. Mit einem kleinen Trick ist es aber dennoch möglich, LastLogonTimeStamp in einem LDAP Filter zu verwenden.

DateTime::FromFileTime

Mit der Methode ::FromFileTime der Klasse [DateTime] lässt sich der LastLogonTimeStamp (Nanosekunden seit dem 01.01.1601 / 100 ) in ein Datumsformat umwandeln.

1
$lastlogon=[datetime]::FromFileTime($comp.lastlogontimestamp)

LDAP-Filter

Damit wir den LastLogonTimeStamp in einem LDAP Filter abfragen können, müssen wir zunächst den abzufragenden Zeitstempel ausrechnen. In diesem Beispiel fragen wir alle Computerobjekte ab, welche sich in den vergangenen 6 Monaten (~182 Tage) angemeldet haben.

1
2
$DaysInactive = 182
$LDAPcheckdate=(Get-Date).Adddays(-($DaysInactive)).ToFileTime()

Mit der Methode “.ToFileTime()” wird das Datum in das gleiche Format umgewandelt, wie es der LastLogonTimeStamp benutzt. Dieser Wert kann nun in einem LDAP Filter verwendet werden. Damit es als Parameter für z.B. Find-LdapObject verwendet werden kann, setze ich den Filter zunächst als Variable $LDAPQuery zusammen.

1
2
$ldapQuery = '(&(objectClass=computer)(lastLogonTimeStamp=' + $LDAPcheckdate + '))'
$ActiveComp=Find-LdapObject -SearchFilter:$ldapquery

Fazit

Der Vorteil dieser Vorgehensweise ist die besonders schnelle Abfrage. In meinem aktuellen Fall befinden sich ca. 16.000 Computerobjekte in der Domain.
Wenn ich alle Computer per LDAP anfrage und danach den LastLogonTimeStamp auswerte, dauert die Abfrage ca. 10 Minuten.
Berechne ich jedoch den LastLogonTimeStamp zuerst und nutze diesen Wert bereits in der LDAP Anfrage, so verringert sich die Laufzeit auf wenige Sekunden.
Der Grund liegt darin, dass nur noch 30 aktive Computer zurückgeliefert werden.
 

weiterführende Artikel:
Schnelle LDAP-Suche mit PowerShell – 3 Varianten
LastLogonTimeStamp vs. msDSLastSuccessfulInteractiveLogonTime


 

FirstAttribute AG

Dieser Artikel entstand bei Projekten der FirstAttribute AG
AD Consulting
| AD Migration

Sie planen Veränderungen an Ihrem AD?
Nehmen Sie Kontakt zu uns auf, wir hören Ihnen gern zu.


Artikel weiterempfehlen:
  • teilen
  • tweeten
  • sharen
  • xingen
  • mailen
Artikel erstellt am: 05.02.2016
Tags: Computer ObjectFromFileTimeLastLogonTimeStampLDAP
1

You also might be interested in

DNS Records aktualisieren sich nicht

Okt 30, 2014

Aktualisierung von DNS-Records im Active Directory Neulich hat mich ein[...]

Novell-AD

Novell Migration: Kritische Legacy-Applikationen mit OpenLDAP-Proxy umstellen

Okt 27, 2015

In diesem Artikel möchte ich den LDAP-Proxy als Möglichkeit zur[...]

AD DS versus AD LDS

AD DS und AD LDS im Direktvergleich

Apr 9, 2019

In diesem Artikel werden die Unterschiede zwischen den Verzeichnisdiensten Active[...]

1 Comment

Leave your reply.

Leave a Reply

<p>Danke für Ihre Anregungen, Fragen und Hinweise.<br/>Infos zum <a href="https://www.active-directory-faq.dekontakt/">Datenschutz</a></p>
Cancel Reply

FirstWare IDM-Portal im Test: IT-Administrator 08-2022

 

ADFAQ-FirstAttribute

Wer schreibt ?

Team der FirstAttribute AG

Consultants und Entwickler der FirstAttribute arbeiten seit mehr als 20 Jahren in IAM- und Cloud-Transition-Projekten.
Zusammen verfügen Sie über einen wertvollen Erfahrungsschatz im Bereich Active Directory und Azure AD und teilen diesen auf Active Directory FAQ.

Neueste Artikel

  • 8 Tipps für mehr Sicherheit in Active Directory und Backups von AD
  • Azure AD Custom Security Attributes ermöglichen flexible Berechtigungsstrukturen
  • Dateiberechtigungen in MS Teams und SharePoint Online verwalten – So funktioniert es
  • AD-Gruppen in Microsoft Teams verwenden – Dynamische Gruppen in der Praxis
  • Verbindung zwischen Microsoft 365 und SharePoint Online zu Azure AD

Unsere IAM-Lösungen

Ihre IAM-Lösung: FirstWare IDM-Portal

 

my-IAM für Cloud Identity Management in Microsoft Teams

Kontakt aufnehmen

Sie haben eine Frage oder Anmerkung? Schicken Sie uns schnell eine Nachricht.

Nachricht senden
Jetzt AD Tasks vereinfachen und delegieren: FirstWare IDM-Portal

Folgen Sie uns

Kontakt

  • FirstAttribute AG
  • Am Büchele 18, 86928 Hofstetten, Germany
  • +49 89 215 442 400
  • https://www.firstattribute.com

Schlagwörter

.Net ACL Active Directory AD LDS AD Objekt Azure AD Berechtigung Cloud cmdlets Delegation Domain Controller dynamicgroup dynamische Gruppen Exchange Exchange-Ordner Exchange-Postfach Exchange Migration Federation FirstWare Get-Mailbox Global Catalog Group Policy Gruppen Gruppenmitgliedschaft IDM-Portal LDAP m365 Microsoft Azure Migration New-ADUser Novell NTFS Office 365 PowerShell QMM QMM AD QMM Exchange Quest Migration Manager Schema Set-ADUser SID SID History Update Windows 10 Windows Server 2012 R2

Neueste Kommentare

  • activedirectoryfaq.com sharepoint login - infoslist bei Windows 365 und Azure AD verstehen in Theorie und Praxis
  • Domäne Letzte Anmeldung - ObenGesichert.com bei LastLogon vs. LastLogonTimestamp
  • Teams Code Zur Anmeldung - ObenGesichert.com bei Authentifizierung für MS Teams in hybriden Netzwerken
Login
Impressum
Datenschutzerklärung

© 2023 · Active-Directory-FAQ by firstattribute.com

Prev Next