Comment trouver de nouveaux comptes Active Directory créés au cours des 90 derniers jours?
quelqu'un sait-il qui faire cela? Je ne peux pas comprendre.
Merci d'avance.
Comment trouver de nouveaux comptes Active Directory créés au cours des 90 derniers jours?
quelqu'un sait-il qui faire cela? Je ne peux pas comprendre.
Merci d'avance.
Pour la postérité, dsquery est conçu pour ce type de recherche. AD conserve un champ "whenCreated", ce qui facilite la recherche avec l'outil de votre choix.
dsquery * -filter "(whenCreated> = 20101022083730.0Z)"
Par exemple. Vous pouvez créer par programmation l'horodatage basé sur maintenant - 90 jours.
"(&(objectClass=user)(whenCreated>=20101022083730.0Z))"
pour filtrer les ordinateurs et autres objets.Essayez ce qui suit pour extraire les utilisateurs créés au cours des 30 derniers jours.
la source
Une alternative à la version Powershell présentée ci-dessus, qui est beaucoup plus efficace car elle ne charge pas tous les utilisateurs en mémoire avant de les filtrer (vous devez effectuer le filtre directement sur l'applet de commande Get-ADUser et ne pas utiliser d'objet Where):
la source
Utilisation de PowerShell et des outils Quest ActiveRoles pour AD (disponibles ici - http://www.quest.com/powershell/activeroles-server.aspx ),
vous donnera une sortie vers la console ou partout où vous redirigerez tous les utilisateurs créés au cours des 90 derniers jours.
la source
Voici un exemple d'un autre site de quelqu'un récupérant tous les comptes AD triés par date de création:
http://www.experts-exchange.com/Security/Operating_Systems_Security/Windows/Q_21117191.html
Vous pouvez obtenir la date de création de chaque compte dans Active Directory. Chaque objet AD a un attribut WhenCreated et WhenChanged. Vous pouvez vider ces attributs dans un fichier plat à l'aide de l'utilitaire LDIFDE, ou vous pouvez les vider dans un fichier délimité par des virgules à l'aide de CSVDE (les deux utilitaires sont fournis avec Windows 2000).
Voici la syntaxe pour vider les deux attributs des objets utilisateur dans une unité d'organisation appelée Phoenix dans un domaine appelé Company.com vers la console pour la visualisation (l'entrée entière doit être tapée sur une seule ligne):
ldifde -d ou = phoenix, dc = company, dc = com -l une fois créé, qui est changé -p onelevel -r "(ObjectCategory = user)" -f con
Si vous souhaitez enregistrer le vidage dans un fichier, changez le commutateur -f de con en un nom de fichier.
Le dernier horodatage de connexion utilise ce format: YYYYMMDDHHMMSS, avec l'heure indiquée en temps universel coordonné. Un horodatage de 20040115182937.0Z correspond au 15 janvier 2004 18:29:37 UCT.
USRSTAT est lent et le rapport que vous obtenez doit être fusionné avec le vidage LDIFDE. J'ai donc mis en place un script qui recherche des objets utilisateur sur chaque contrôleur de domaine, puis répertorie l'heure d'ouverture de session locale et l'heure de création. L'horodatage de la connexion utilisateur nécessite une conversion à partir d'un entier long. J'ai emprunté le code de conversion à Richard L. Mueller (www.rlmueller.net/Programs). Le script complet de Richard prend également le fuseau horaire local du Registre et convertit l'heure de l'UCT en heure locale. Nifty
la source
En fait, toutes ces réponses ne fonctionneront pas pour un énorme environnement de production AD.
La réponse est d'utiliser DirSync: https://support.microsoft.com/en-us/help/891995/how-to-poll-for-object-attribute-changes-in-active-directory-on-window
Voici une implémentation java de ceci: https://docs.ldap.com/ldap-sdk/docs/javadoc/com/unboundid/ldap/sdk/experimental/ActiveDirectoryDirSyncControl.html
Fondamentalement, vous demandez continuellement à AD des modifications basées sur un jeton incrémentiel.
la source
Vous pouvez le faire assez facilement avec
dsquery
Voici un problème opposé mais connexe
Documents Dsquery
la source