Foreign Security Principals entfernen
Eine zunächst sehr einfach anmutende Anfrage brachte doch eine kleine Herausforderung mit sich:
Nach einer abgeschlossenen Domain Migration sollten die Foreign Security Principals aus den Domain Local Groups entfernt werden.
Index
Hintergrund – was sind Foreign Security Principals (FSP)?
Wenn ein Trust zwischen zwei Domänen oder zwei Forests erstellt wurde, kann auf Ressourcen in der jeweils anderen Domain zugegriffen werden. Die Voraussetzung ist, dass die nötigen Berechtigungen dafür erteilt wurden.
Ein Foreign Security Principal Objekt wird in der Trusting Domain angelegt:
- wenn ein Benutzerkonto der Trusted Domain Mitglied in einer Domain Local Group der Trusting Domain wird.
Dieses FSP Objekt wird Mitglied der Domain Local Group.
Gespeichert werden die FSPs automatisch in dem Container „ForeignSecurityPrincipals“
(nur sichtbar wenn die „advanced features“ des Users and Computers Snap-In aktiviert sind).
Die FSP Objekte selbst werden nach dieser Notation aufgebaut:
<SID-des-trusted-Objektes>-<DN-des-FSP-Containers>.
CN=S-1-5-21-123456789-123456789-1234567890–123456,CN=ForeignSecurityPrincipals,DC=domain,DC=com.
Orange ist hier der Teil der Domain SID
Rot ist die RID der Objekte.
Entfernen der FSPs
Nachdem die Migration abgeschlossen war, wurden die migrierten Objekte in der Ziel-Domain Mitglied der Domain Local Group. Die FSP Objekte sollten entfernt werden. Ein PowerShell Skript sollte dies relativ schnell erledigen können. Ob es sich um ein FSP handelt, lässt sich schnell am Inhalt des „MemberOf„-Attributs der Gruppen erkennen. Hier steht nur der Distinguished Name (DN) des FSP mit der oben beschriebenen Notation drin. Da es in der betroffenen Umgebung mehr als eine Trusted Domain gibt, sollte mittels der Domain SID geprüft werden, ob der FSP aus der gewünschten Quell Domain stammt.
Remove-ADGroupMember
Folgender Versuchsaufbau erschien logisch:
- Binden des Gruppenobjektes mit Get-ADGroup
- Durchforsten des „MemberOF“ mit einer ForEach-Schleife
- Prüfen der Domain-SID
- Entfernen der unerwünschten FSP mit Remove-ADGroupMember.
Jedoch ist es mir auch nach langer Recherche im Internet nicht gelungen, die FSP mit Remove-ADGroupMember zu entfernen.
Der Aufruf von Remove-ADGroupMember lautet wie folgt:
ADGroup – Gruppe, aus welcher ein Mitglied entfernt werden soll
ADPrincipal – Mitglied, welches entfernt werden soll
Das Problem besteht nun darin, dass Remove-ADGroupMember nur die Objekttypen „User, Group und Computer“ als ADPrincipal akzeptiert. Der Objekttyp „Foreign Security Principal“ wird nicht als Eingabeparameter akzeptiert.
Remove-QADGroupMember
Lösen konnte ich das Problem, indem ich auf die DELL (Quest) PowerShell cmdLets zurückgegriffen habe.
Das cmdLet Remove-QADGroupMember entfernt FSP aus Gruppen, wenn das FSP Objekt zuvor in einer Variablen gebunden wurde:
Remove-QADGroupMember -Identity <GroupName> -Member $FSPobj
Die DELL (Quest) Active Directory cmdLets können hier heruntergeladen werden:
Download ActiveRoles Management Shell for Active Directory 1.7
Dieser Artikel entstand bei Projekten der FirstAttribute AG
AD Consulting | AD Migration
Für Fragen zu unseren Leistungen stehen
wir Ihnen unter Kontakt gern zur Verfügung.
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>