la dernière fois qu'un utilisateur AD s'est connecté?

26

J'ai remarqué que nous avons dans Active Directory plus d'utilisateurs que l'entreprise n'a de réels employés.

Existe-t-il un moyen simple de vérifier plusieurs comptes Active Directory et de voir s'il existe des comptes qui n'ont pas été utilisés depuis un certain temps? Cela devrait m'aider à déterminer si certains comptes doivent être désactivés ou supprimés.

Jindrich
la source
Si vous utilisez le composant logiciel enfichable AD dans la console MMC et que vous êtes en mesure d'afficher l'objet utilisateur, vous obtiendrez un onglet pour «éditeur d'attributs» dans lequel vous pourrez voir l'attribut «lastLogin».
bgmCoder

Réponses:

22

Le livre de recettes Active Directory d'O'Reiley donne une explication au chapitre 6:

6.28.1 Problème: vous voulez déterminer quels utilisateurs ne se sont pas connectés récemment.

6.28.2 Solution

6.28.2.1 Utilisation d'une interface utilisateur graphique

  1. Ouvrez le composant logiciel enfichable Utilisateurs et ordinateurs Active Directory.
  2. Dans le volet gauche, cliquez avec le bouton droit sur le domaine et sélectionnez Rechercher.
  3. À côté de Rechercher, sélectionnez Requêtes communes.
  4. Sélectionnez le nombre de jours à côté de Jours depuis la dernière connexion.
  5. Cliquez sur le bouton Rechercher maintenant.

6.28.2.2 Utilisation d'une interface de ligne de commande

dsquery user -inactive <NumWeeks>

Pour obtenir plus d'informations, voir la recette 6.28

Alexey Shatygin
la source
1
+1 J'ai évité de désherber l'AD parce que je ne savais pas comment. Merci.
cop1152
Ne comptez pas sur les comptes obsolètes toujours inactifs. Les comptes "test" sont souvent créés pour être utilisés par des tests unitaires ou comme comptes secondaires pour des utilisateurs valides. Ces comptes peuvent ne pas sembler inactifs mais doivent être supprimés car ils fournissent un accès non audité aux systèmes.
Chris Nava
1
Cela ne fonctionne que si la forêt / le domaine est 2003 Native ou supérieur, soit dit en passant. Avant 2003, le DC avait son propre enregistrement de la dernière connexion pour chaque utilisateur. Dumpsec (mentionné ci-dessous) est assez bon pour obtenir la dernière vraie connexion en envoyant du spam à chaque contrôleur de domaine et établit une liste de ceux qui se sont connectés sur chaque contrôleur de domaine.
marty
@marty Espérons qu'il ne reste pas trop d'installations antérieures à 2003, car Server 2003 est en fin de vie.
Joel Coel
6

Ce script provient de http://synjunkie.blogspot.com/2008/08/powershell-finding-unused-ad-accounts.html ; cette URL ne fonctionne plus depuis le 7 décembre 2015. Vous pouvez exporter ces informations dans un fichier CSV, que vous pouvez afficher / filtrer dans Excel.

get-qaduser * -sizelimit 0 | select -property name,accountexpires,pass*,accountisdisabled,lastlog*,canonicalname | export-csv -path d:\Passwords.csv
JohnW
la source
En supposant que vous ne vouliez pas #Type blah blah blahau début de votre fichier CSV, utilisez le -notypeparamètre onexport-csv
northben
L'URL est cassée. :(
Signal15
L'URL est cassée mais vous pouvez toujours accéder à ses archives: Powershell - Recherche de comptes AD inutilisés
PeteWiFi
3

Il convient de noter que la dernière heure d'ouverture de session stockée sur chaque contrôleur de domaine n'est pas répliquée entre les contrôleurs de domaine, il existe en fait deux attributs qui stockent la dernière heure d'ouverture de session, un est répliqué mais seulement tous les 14 (je pense). Si un moment précis est important pour vous, j'utiliserais un outil tiers qui interroge chaque contrôleur de domaine (nous en avons 90!), Nous avons utilisé un outil appelé True Last Logon , je peux le recommander.

Scott Johansen
la source
0

J'utilise DumpSec, un outil gratuit de Somarsoft pour cela: DumpSec Utile pour trouver des comptes d'ordinateur périmés :)


la source
0

Au cours de ce processus, documentez-le, avec les étapes que vous exécutez et les comptes que vous désactivez / supprimez. À un moment donné, un auditeur vous demandera comment supprimer les anciens comptes et vous aurez besoin de la documentation.

BillN
la source
0

Une méthode / suggestion très rapide et sale:

Définissez le mot de passe de chaque compte suspect pour qu'il expire et nécessite une réinitialisation lors de la prochaine connexion. Placez un astérisque dans le champ de description de chaque compte. Attendez une semaine environ, vérifiez à nouveau vos comptes marqués pour voir ceux qui nécessitent encore la réinitialisation du mot de passe. Désactivez les délinquants, attendez les appels du service d'assistance, réactivez ceux qui étaient en vacances.

Un autre:

Alternativement, vous pouvez également envoyer une liste d'utilisateurs suspectés à votre service RH / personnel et voir si l'un d'eux vérifiera qu'ils sont en fait toujours employés.

Un de plus:

Enfin, je crois que si vous ouvrez "Utilisateurs et ordinateurs Active Directory" et développez l'outil de requête AD, vous pouvez créer une requête qui détaille ce que vous recherchez.

Greg Meehan
la source