Question
Remove user from group
- Norman
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 16
- Remerciements reçus 0
il y a 16 ans 3 semaines #1850
par Norman
Remove user from group a été créé par Norman
Hello bonjour à tous je suis un nouveau membre !
Admin système, on m'a récemment fait découvrir 'Posh' et c'est vraiment génial, votre site est la référence en terme de résultats pour moi, ce qui m'a amené naturellement à l'achat du bouquin .
Cela dit, il y a une syntaxe que je n'arrive pas à faire fonctionner, c'est celle du retrait de user d'un groupe AD. Je suis parti sur la syntaxe ADD que j'ai trouvé dans le livre et je veux la mettre à la sauce delete (fyi:j'ai une liste de nom court de users)
Voiçi mon code, qui ne marche pas, que j'utilise delete ou remove sur la variable groupe, l'erreur me dit qu'il y a un problème avec le nombre de paramètre..et comme je ne connais rien à la syntaxe ADSI...
[code:1]
$util = Get-Content -path c:\liste.txt
$Groupe='LDAP://CN=Administrateurs,CN=Builtin,DC=intranet,DC=darty,DC=fr'
#recherche les users
foreach ($i in $util) {
$objDomaine = [ADSI] 'LDAP://DC=intranet,DC=darty,DC=fr'
$objRecherche = New-Object system.directoryservices.DirectorySearcher($objDomaine)
$objRecherche.Filter=\"(&(ObjectCategory=user) (cn=$Util))\"
$recherche= $objRecherche.FindOne()
#retrait
$objGroupe = [ADSI] $Groupe
$objGroupe.Remove((ObjectCategory=member) (CN=$util))
$objGroupe.SetInfo()}
[/code:1]
Message édité par: canard, à: 6/03/08 12:09<br><br>Message édité par: canard, à: 6/03/08 12:09
Admin système, on m'a récemment fait découvrir 'Posh' et c'est vraiment génial, votre site est la référence en terme de résultats pour moi, ce qui m'a amené naturellement à l'achat du bouquin .
Cela dit, il y a une syntaxe que je n'arrive pas à faire fonctionner, c'est celle du retrait de user d'un groupe AD. Je suis parti sur la syntaxe ADD que j'ai trouvé dans le livre et je veux la mettre à la sauce delete (fyi:j'ai une liste de nom court de users)
Voiçi mon code, qui ne marche pas, que j'utilise delete ou remove sur la variable groupe, l'erreur me dit qu'il y a un problème avec le nombre de paramètre..et comme je ne connais rien à la syntaxe ADSI...
[code:1]
$util = Get-Content -path c:\liste.txt
$Groupe='LDAP://CN=Administrateurs,CN=Builtin,DC=intranet,DC=darty,DC=fr'
#recherche les users
foreach ($i in $util) {
$objDomaine = [ADSI] 'LDAP://DC=intranet,DC=darty,DC=fr'
$objRecherche = New-Object system.directoryservices.DirectorySearcher($objDomaine)
$objRecherche.Filter=\"(&(ObjectCategory=user) (cn=$Util))\"
$recherche= $objRecherche.FindOne()
#retrait
$objGroupe = [ADSI] $Groupe
$objGroupe.Remove((ObjectCategory=member) (CN=$util))
$objGroupe.SetInfo()}
[/code:1]
Message édité par: canard, à: 6/03/08 12:09<br><br>Message édité par: canard, à: 6/03/08 12:09
Connexion ou Créer un compte pour participer à la conversation.
- PASCAULT
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 78
- Remerciements reçus 0
il y a 16 ans 3 semaines #1851
par PASCAULT
Réponse de PASCAULT sur le sujet Re:Remove user from group
Salut,
En regardant sur ce site, tu peux d'inspirer peut-être de ça:
powershell-scripting.com/index.php?optio...;id=82&Itemid=71
Ce qui donnerait pour toi, du style:
au lieu de:
[code:1]
$objgroup.PSBase.Properties[\"member\"].remove($recherche)[/code:1]
En regardant sur ce site, tu peux d'inspirer peut-être de ça:
powershell-scripting.com/index.php?optio...;id=82&Itemid=71
Ce qui donnerait pour toi, du style:
au lieu de:
$objGroupe.Remove((ObjectCategory=member) (CN=$util))
[code:1]
$objgroup.PSBase.Properties[\"member\"].remove($recherche)[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Norman
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 16
- Remerciements reçus 0
il y a 16 ans 3 semaines #1852
par Norman
Réponse de Norman sur le sujet Re:Remove user from group[Résolu]
Merci, qlq1 m'a expliqué pour PSbase mais c'est une vraie galère.
Voiçi le code qui marche aussi simple que pour faire un Add sauf que pour retirer un user d'un groupe, c'est Remove et pas Delete!!
[code:1]$util = Get-Content -path c:\liste.txt
$Groupe='LDAP://CN=Administrateurs,CN=Builtin,DC=intranet,DC=darty,DC=fr'
#recherche les users
foreach ($UserCN in $util) {
$objDomaine = [ADSI] 'LDAP://DC=intranet,DC=darty,DC=fr'
$objRecherche = New-Object system.directoryservices.DirectorySearcher($objDomaine)
$objRecherche.Filter=\"(&(ObjectCategory=user) (cn=$UserCN))\"
$recherche= $objRecherche.FindOne()
#retrait
$objGroupe = [ADSI] $Groupe
$objGroupe.remove($recherche.path)
$objGroupe.SetInfo()
}[/code:1]
Moi qui suis naze en développement, j'apprends bocou grâce à Powershell .
Maintenant, je vais regarder comment passer/récupérer des paramètres; ça doit pas être trop dur, on doit pouvoir récupérer ça avec les variables prédéfinies comme en C.
Merci gremlinsy.
Message édité par: canard, à: 6/03/08 14:56<br><br>Message édité par: canard, à: 6/03/08 15:42
Voiçi le code qui marche aussi simple que pour faire un Add sauf que pour retirer un user d'un groupe, c'est Remove et pas Delete!!
[code:1]$util = Get-Content -path c:\liste.txt
$Groupe='LDAP://CN=Administrateurs,CN=Builtin,DC=intranet,DC=darty,DC=fr'
#recherche les users
foreach ($UserCN in $util) {
$objDomaine = [ADSI] 'LDAP://DC=intranet,DC=darty,DC=fr'
$objRecherche = New-Object system.directoryservices.DirectorySearcher($objDomaine)
$objRecherche.Filter=\"(&(ObjectCategory=user) (cn=$UserCN))\"
$recherche= $objRecherche.FindOne()
#retrait
$objGroupe = [ADSI] $Groupe
$objGroupe.remove($recherche.path)
$objGroupe.SetInfo()
}[/code:1]
Moi qui suis naze en développement, j'apprends bocou grâce à Powershell .
Maintenant, je vais regarder comment passer/récupérer des paramètres; ça doit pas être trop dur, on doit pouvoir récupérer ça avec les variables prédéfinies comme en C.
Merci gremlinsy.
Message édité par: canard, à: 6/03/08 14:56<br><br>Message édité par: canard, à: 6/03/08 15:42
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.063 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Remove user from group