Удалить пользователя AD в домене A из группы AD в домене B, пока мой клиент находится в домене C в PowerShell - PullRequest
0 голосов
/ 14 ноября 2018

Предположим, у меня есть AD-пользователь в домене A, который входит в AD-группу в домене B, а мой клиент находится в домене C.
Я хочу удалить пользователя из группы в PowerShell, но я действительно не могу понять, как я могу решить эту проблему, используя Remove-ADGroupMember или Remove-ADPrincipalGroupMembership, поскольку я могу пропустить только один домен.

1 Ответ

0 голосов
/ 14 ноября 2018

Я предполагаю, что домены A и B не находятся в одном лесу, но являются доверенными.

Проблема в том, что вы не удаляете прямую ссылку на пользователя: вы удаляете субъект внешней безопасности, который является объектом в том же домене, что и группа, которая ссылается на учетную запись в доверенном домене. Об этом я немного подробнее расскажу в статье, которую я написал: Что делает члена участником? .

Ни один из командлетов PowerShell, похоже, не в состоянии справиться с этим. Но вы можете использовать класс .NET DirectoryEntry для этого. Вот пример ($username и $groupname являются именами учетной записи и группы):

$u = Get-ADUser -Server domainA.com $username
#Get the Foreign Security Principal object for the user
$fsp = Get-ADObject -Server domainB.com -Filter "objectSid -eq '$($u.SID)'"

#Get the group
$g = Get-ADGroup -Server domainB.com $groupname

#Get a DirectoryEntry for the group (which is what the [ADSI] notation creates)
$group = [ADSI]"LDAP://domainB.com/$($g.DistinguishedName)"

#Remove the FSP from the group
$group.Properties["member"].Remove($fsp.DistinguishedName)
$group.CommitChanges()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...