Question Déplacement user dans Group

Plus d'informations
il y a 11 ans 1 mois #18914 par Dupont
Réponse de Dupont sur le sujet Re:Déplacement user dans Group
Yop , tout d'abord je tiens à te remercier pour ton investissement , tu dois y passer bcp de temps alors que t'as d'autres chats à fouetter enfin bref ,

la ligne ou j'ai un peu de mal c'est :
[code:1](Get-ADGroupMember -Identity $NameG1 | where {$_.SamAccountName -eq $user.SamAccountName}[/code:1]

Pourquoi faire une condition afin de savoir si un utilisateur est présent dans un groupe ? ( c'est ce que je comprends ) sachant qu'on s'en fiche un peu ici de la gestion d'erreur ^^

En gros c'est la condition que je ne comprends pas en fait ...

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 1 mois #18915 par Philippe
Réponse de Philippe sur le sujet Re:Déplacement user dans Group
salut KaAzZ01

tout d'abord je tiens à te remercier pour ton investissement , tu dois y passer bcp de temps alors que t'as d'autres chats à fouetter enfin bref ,

faut bien aidée les débutants
et puis j'ai un quota d'heure a faire chaque mois pour les bonnes actions :lol: et j'ai perdu mon fouet
de plus on t'envoie la facture en fin de mois :evil: :lol:
pour le \"beaucoup de temps\", c'est beaucoup moins que toi ^^

Pourquoi faire une condition afin de savoir si un utilisateur est présent dans un groupe ? ( c'est ce que je comprends ) sachant qu'on s'en fiche un peu ici de la gestion d'erreur ^^

ici le but est de ne pas afficher une erreur à la quelle on s'attend pour pouvoir voir les autres
de plus c'est plus propre pour des logs
ca facilite le débogage
et enfin pourquoi s'en privé quand c'est simple a faire ?

En gros c'est la condition que je ne comprends pas en fait ...

voila la bonne remarque enfin ;)
puisque il n'existe pas de fonction Request-ADGroupMember \"l'utilisateur est t'il dans ce groupe ?\" , il faut la faire !!
Get-ADGroupMember te liste les membres du goupe inscrit dans la variable $NameG1
| where reçois un à un les membres du groupe
et avec {$_.SamAccountName -eq $user.SamAccountName} il compare chaque membre ($_.SamAccountName) à l'utilisateur $user.SamAccountName
au final si il trouve rien il renvoie null (false)
sinon il renvoie la liste des utilisateurs correspondants à la comparaison, dans le cas d'une condition d'un if c'est comme si il renvoyé true

Message édité par: 6ratgus, à: 3/02/15 09:52<br><br>Message édité par: 6ratgus, à: 3/02/15 09:57

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 1 mois #18917 par Dupont
Réponse de Dupont sur le sujet Re:Déplacement user dans Group
Merci , tu m'as beaucoup aidé pour mon projet de stage , j'ai quand même pas mal compris de trucs en PowerShell même si je reste une brelle ( tout est relatif ) , je suis parti de presque rien , c'est un aspect un peu laissé de côté dans ma formation , alors que je suis spécialisé en réseaux mais bon . Puis de voir une communauté francaise et active franchement ca fait plaisir ! :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 1 mois #18918 par Philippe
Réponse de Philippe sur le sujet Re:Déplacement user dans Group

c'est un aspect un peu laissé de côté dans ma formation , alors que je suis spécialisé en réseaux mais bon

çà fait pas trop partie du réseaux, la programmation informatique et le domaine AD :whistle:
même si çà l'utilise comme support

Bon courage pour la suite de ta formation ;)<br><br>Message édité par: 6ratgus, à: 3/02/15 12:22

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 2 semaines #19179 par Dupont
Réponse de Dupont sur le sujet Re:Déplacement user dans Group
Bonjour , je réactualise le topic car on m'a fait une nouvelle demande qui me simplifie pas la tâche même si c'est vrai que ça serait plus simple...

On m'a demandé de récupérer la première ligne de mon fichier qui équivaut aux noms de groupes et que tant que le fichier contient des lignes il faut affecter les utilisateurs aux groupes . L'objectif est le même mais je n'arrive pas à comprendre ce raisonnement pourtant vieux comme l'informatique ! D’où l'explication à 2 francs ...

Je mets le code/algorithme/ qui sera peut-être plus parlant :


[code:1]$EnTete = @()
$GroupeATraiter = @()
$File = \&quot;C:\Projet2\Group.csv\&quot;

Import-Csv -Encoding UTF8 -Delimiter \&quot;,\&quot; $File
$PremiereLigne = Get-Content $File | Select-Object -Index 1
$EnTete = $PremiereLigne.Split(\&quot;,\&quot;«»)

foreach ($ligne in $File) #Tant que le fichier n'est pas fini
{

$Utilisateur = $EnTete[0]
echo $Utilisateur

&lt;#for ($i = lbound($EnTete)+1 -le ubound($EnTete) , $i++) #Récupéer
{
$Groupe = $EnTete[$i]
$DansGroupeOuPas = $GroupeATraiter[$i]

if ($Utilisateur -eq 1 -and !(Get-ADGroupMember -Identity $Groupe | where {$_.SamAccountName -eq $Utilisateur.SamAccountName})) {
Add-ADGroupMember -Identity $Groupe -Members $Utilisateur -Verbose
}
if ($Utilisateur -eq 0 -and !(Get-ADGroupMember -Identity $Groupe | where {$_.SamAccountName -eq $Utilisateur.SamAccountName})) {
Remove-ADGroupMember -Identity $Groupe -Members $Utilisateur -Verbose
}
}#&gt;

}[/code:1]
A la base on m'a expliqué en vbscript-francisé d'ou le lbound et ubound qui servent à récupérer tous les groupes tant que la 1ere ligne n'est pas vide , je ne trouve pas d'équivalent , je ne comprends le raisonnement qu'à moitié ... Bref je suis perdu

J'ai réutilisé la structure en if du code précédent , seulement à chaque groupe il fallait rajouter 2 blocs , et les dirigeants étaient pas pour cette solution x)<br><br>Message édité par: KaAzZ01, à: 4/03/15 15:39

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 2 semaines #19180 par Laurent Dardenne
KaAzZ01 écrit:

On m'a demandé de récupérer la première ligne de mon fichier qui équivaut aux noms de groupes et que tant que le fichier contient des lignes il faut affecter les utilisateurs aux groupes.

Si je comprend bien, quelqu'un se facilite la saisie ;)

On peut, comme tous le reste, détourner l'usage du CSV...

A te lire, il s'agit d'une représentation d'une relation 1-N :
Un groupe - Plusieurs utilisateurs

Si la première ligne est la liste des groupes, il te faut boucler sur chaque occurrences de nom de groupe.

Le csv étant importé dans un tableau d'objets, il te suffit de deux variable $GroupesName et $User :
[code:1]
$Objets='Groupes',1,2,3 #Import-csv ...
$GroupesNames=$Objets[0]
$Users=$Objets[1..($Objets.Count -1)]
[/code:1]<br><br>Message édité par: Laurent Dardenne, à: 4/03/15 16:33

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.115 secondes
Propulsé par Kunena