Flash info

"La connaissance ce n’est point la possession de la vérité, mais d’un langage cohérent."

Antoine de Saint Exupéry (1900-1944)

 
Accueil arrow Forum

Bienvenue sur le forum PowerShell-Scripting.com

 
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 5726
graph
Karma: 209  
Pb de récup du SID du groupe 'Everyone'(Résolu) - 3/03/08 14:59 Salut,
j'essaie de récupérer les informations du groupe local "Tout le monde" :
Code:

  $useraccount = [ADSI] ("WinNT://" "." "/" "Tout le monde,group") $SID $useraccount.Get("ObjectSID")


malheureusement l'appel de la méthode Get me renvoie une erreur :
Exception lors de la récupération du membre « Get » : « Le nom de groupe est introuvable.
»
Au niveau de ligne : 1 Caractère : 7
+ $SID = <<<< $useraccount.Get("ObjectSID")

Cela fonctionne pour le groupe administrateurs ou un compte utilisateur existant.

Qq peut-il me dire si cela est du aux limitations suivante :http://support.microsoft.com/kb/278259/en-us

Je suis sous XP sp2 "stand-alone" en tant qu'admin.
Merci.

Message édité par: Robin, à: 24/04/08 21:42
Tutoriels PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
gremlinsy
Utilisateur

PowerShelleur Amateur
Messages: 78
graphgraph
Karma: 8  
Re:Pb de récupération du SID du groupe 'Everyone' - 3/03/08 21:16 Le groupe "tout le monde" est un groupe de securité integré (au même titre qu'utilisateurs authentifiés ou system).
Tout le monde inclut tous les utilisateurs ainsi que les invités et anonymes(selon OS).Ce groupe est géré par le système.
Le SID du groupe "tout le monde" est S-1-1-0.
Je ne sais pas s'il est possible de récupérer des infos mais avec la cmd $useraccount = [ADSI] ("WinNT://" + "." + "/" + "Tout le monde,group"), aucune propriété n'est remontée.

Pour le kb 278259, cela indique qu'à partir de windows XP, le compte anonyme n'est plus inclus dans le groupe tout le monde. Cependant, cela n'a pas d'incidence sur le SID.
  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 5726
graph
Karma: 209  
Re:Pb de récupération du SID du groupe 'Everyone' - 4/03/08 13:31 Salut,
merci pour ta réponse.
gremlinsy écrit:
mais avec la cmd $useraccount = [ADSI] ("WinNT://" + "." + "/" + "Tout le monde,group"), aucune propriété n'est remontée.

Ok, j'utiliserais donc cette autre approche :
Code:

       # Accès local  $Account = New-Object System.Security.Principal.NTAccount($Nom)      # Récupére le SID au format SDDL (S-1-1-0)   $SID $Account.Translate([System.Security.Principal.SecurityIdentifier])


Il y a tout de même qq chose qui m'échappe, ce n'est pas possible via le provider ADSI mais bien par une classe .NET ...
Tutoriels PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
gremlinsy
Utilisateur

PowerShelleur Amateur
Messages: 78
graphgraph
Karma: 8  
Re:Pb de récupération du SID du groupe 'Everyone' - 5/03/08 13:11 Je pense que c'est la même limitation que pour le provider LDAP. On ne peut pas spécifier directement le nom d'un groupe intégré.
Ce que j'ai pu trouver comme info:
http://www.chineseinnorthamerica.com/technical/active%20directory/adsi%20ldap%20user% 20management.html
Dans la partie
Reading User Cannot Change Password (LDAP Provider)...
4. ...
Note The "Everyone" and "NT AUTHORITYSELF" strings ... the strings should not be used directly
  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 5726
graph
Karma: 209  
Re:Pb de récupération du SID du groupe 'Everyone' - 5/03/08 14:47 Salut,
gremlinsy écrit:
On ne peut pas spécifier directement le nom d'un groupe intégré.

Effectivement je n'ai pas testé l'appel .NET sous AD
Bon je vais rechercher les correspondances binaire des SID de ces comptes.
Merci.
Tutoriels PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 5726
graph
Karma: 209  
Re:Pb de récupération du SID du groupe 'Everyone' - 5/03/08 15:34 BatchMan écrit:
Bon je vais rechercher les correspondances binaire des SID de ces comptes.

On peut procéder ainsi (ici pour un SID local) :
Code:

  $SID=new-object System.Security.Principal.SecurityIdentifier "S-1-1-0" [byte[]] $SIDArray = ,$SID.BinaryLength $SID.GetBinaryForm($SIDArray,0) $SIDArray


Résolu donc.
Tutoriels PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
© 2020 PowerShell-Scripting.com