2017-02-13 1 views
-1

J'ai deux groupes; groupe A et groupe B. Si un utilisateur fait partie du groupe B, je souhaite les supprimer du groupe A. En effet, les groupes s'excluent mutuellement.Supprimer l'utilisateur du groupe A s'il est membre du groupe B

J'ai trouvé des scripts qui vont supprimer l'utilisateur d'un groupe, mais pas à la condition que l'utilisateur fasse partie d'un autre groupe.

Quelqu'un peut-il aider?

+0

Qu'avez-vous réussi à le faire loin? Comme AD ne supporte pas les groupes mutuellement exclusifs, vous pouvez refuser explicitement l'accès de A à B et vice versa. Ainsi, si un utilisateur appartient à A et B, il ne peut rien faire. Cela facilite la détection des appartenances en double. – vonPryz

Répondre

0

Essayez ceci:

$user = "TestUser" 

$groupA = Get-ADGroupMember -Identity "Group A" -Recursive | Select -ExpandProperty Name 
$groupB = Get-ADGroupMember -Identity "Group B" -Recursive | Select -ExpandProperty Name 

If (($groupA -contains $user) -and ($groupB -contains $user)) { 
     Write-Host "$user is a member of groupA and groupB" 
     Remove-ADGroupMember -Identity "Group B" -Member $user 
} 
0

Cette boucle de volonté par tous les membres du groupe B et (s'ils sont membres) les retirer du groupe A.

# Get all members of the GroupB. 
Foreach ($User In Get-ADGroupMember -Identity "Group B") 
{ 
    # If they are a 'MemberOf' GroupA 
    If ((Get-ADUser $User.SamAccountName -Properties MemberOf).MemberOf -Contains "Group A") 
    { 
     # Remove that user from GroupA 
     Remove-ADGroupMember -Identity "Group A" -Members $User.SamAccountName 
    } 
}