Trouvez les directeurs de security étrangers orphelins et supprimez-les des groupes

Nous avons un domaine Windows 2008 R2 avec plusieurs fiducies sortantes. Dans ce domaine, nous ajoutons les users des domaines approuvés aux groupes de security locaux du domaine. Il semble que certains ou tous les counts supprimés des domaines étrangers restnt dans les groupes après la suppression (du domaine d'origine), laissant un SID dans le groupe qui ne peut pas être résolu.

Quelle est la façon la plus simple de find de tels counts et de les supprimer des groupes?

2 Solutions collect form web for “Trouvez les directeurs de security étrangers orphelins et supprimez-les des groupes”

Je n'ai pas de script à scope de main. Mais personnellement, je ferais quelque chose comme ça.

  1. Enumérer des objects dans le cn = foreignsecurityprincipals, dc = doamin, dc = com container pour créer une list de SOP FPO
  2. Utilisez un file batch pour itérer à travers chacun et faites un psgetsid.exe (sysinternals) contre SID pour voir s'il résout. 0 signifie pouvoir résoudre et -1 signifie indisponible ou peut-être même incapable de contacter le DC correct
  3. Si% errorlevel% est -1, écris ce "mauvais" SID à un autre file

vous pouvez passer par les SID signalés comme -1 pour voir si vous souhaitez vraiment supprimer le FPO représenté. La suppression du FPO va nettoyer n'importe quelle appartenance utilisée. Vous pouvez utiliser DSRM au script en supprimant le FPO plus tard si vous le souhaitez en utilisant une boucle for pour itérer le file txt.

Voici un script powershell pour supprimer ForeignSecurityPrincipal orphelin pour lequel le nom ne peut pas être résolu (ce qui signifie normalement que l'object original n'existe plus).

Mais d'abord, assurez-vous que si le nom de ForeignSecurityPrincipal ne peut être résolu, il n'est pas lié à un problème de communication avec d'autres domaines.

Si vous êtes sûr de vouloir supprimer tous ces principes, supprimez simplement le paramètre "-WhatIf" de la section Catch, sinon il ne fait qu'une simulation.

$objForeignSecurityPrincipalList=Get-ADObject -Filter {ObjectClass -eq 'foreignSecurityPrincipal'} foreach($objFSP in $objForeignSecurityPrincipalList) { Try { $null=(New-Object System.Security.Principal.SecurityIdentifier($objFSP.objectSid)).Translate([System.Security.Principal.NTAccount]) } Catch { Remove-ADObject -Identity $objFSP -WhatIf } } 
  • Création de sites AD après la deployment des controllers Domains
  • Windows server 2008 r2 - Erreur écoutez EACCES 0.0.0.0:80
  • Migration de SBS 2011 "Data Drive" vers NAS iSCSI
  • Windows Server 2008 R2 se ferme sans raison apparente
  • Étapes pour renommer un server Exchange 2010 SP2
  • Comment réinitialiser la console Services.msc
  • Erreur de demande de certificat d'entreprise CA
  • Cisco ASA bloquant le trafic du server DNS
  • System.Security.AccessControl.PropagationFlags Powershell Equivalent GUI use?
  • boucle infinie du file batch lors de l'parsing du file
  • Remplacer le DNS distant par un DNS local pour tous les users d'un domaine
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.