Flash info

 "Même s'il se fait mal un vrai Geek ne crie pas, il Twitte."

Arnaud Petitjean

 
Microsoft Most Valuable Professionals
Accueil arrow Forum

Bienvenue sur le forum PowerShell-Scripting.com

 
stephanel
Utilisateur

PowerShelleur Débutant
Messages: 15
graphgraph
Karma: 0  
SetSecurityDescriptor sur Win32_Printer - 4/05/08 10:26 Bonjour,

Je dois réaliser un script permettant de positionner des permissions sur une imprimante Locale. Pour se faire, j'utilise le GetSecurityDescriptor de Win32_Printer, et je reccupere bien le AccessMask. Par contre, dés lors que j'essaye de modifier cette valeur avec un SetsecurityDescriptor, cela ne fonctionne pas.
Le script que j'utilise est décrit ci dessous. Si quelqu'un a une idée de pourquoi cela ne fonctionne pas, je suis preneur

Merci/Stéphane

Code:

  $printer=get-WmiObject win32_Printer -filter "name='Microsoft XPS Document Writer'" $printerSec=$printer.Getsecuritydescriptor() $DACL=$PrinterSec.descriptor.DACL for ($i 0$i -le ($DACL.length-1); $i += 1)  { if ($DACL[$i].trustee.name -eq "Everyone"){$Everyone=$i} } $DACL[$Everyone].AccessMask $DACL[$Everyone].AccessMask="983088" $return=$Printer.SetSecurityDescriptor() $return

  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 1771
graph
Karma: 62  
Re:SetSecurityDescriptor sur Win32_Printer - 4/05/08 16:59 Salut,
stephanel écrit:
Par contre, dés lors que j'essaye de modifier cette valeur avec un SetsecurityDescriptor, cela ne fonctionne pas.

As-tu un message d'erreur ou l'action est ineffective ?
As-tu regardé ce script ? Tu peux peut-être y trouver qq infos
Tutoriels PowerShell -- Liste de ressources autour de PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
stephanel
Utilisateur

PowerShelleur Débutant
Messages: 15
graphgraph
Karma: 0  
Re:SetSecurityDescriptor sur Win32_Printer - 4/05/08 17:11 Bonjour Laurent,

En fait, Return ne contient pas d'erreur, mais effectivement, la commande SetSecurityDescriptor semble ineffective.
J'ai regardé le script mais il n'y a pas de setsecuritydescriptor.
En fait c'est un script que j'ai trouvé en VBS (a base de get/setsecuritydescriptor) que j'essaye de traduire en powershell
  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 1771
graph
Karma: 62  
Re:SetSecurityDescriptor sur Win32_Printer - 6/05/08 08:38 Salut,
stephanel écrit:
la commande SetSecurityDescriptor semble ineffective.
D'après le SDK :

GetSecurityDescriptor
Returns the security descriptor that controls access to the printer. This method is available starting with Windows Vista.

Windows Server 2003, Windows XP, Windows 2000, and Windows NT 4.0: This method is not available.

Il faut donc utiliser Vista ou Ws 2008, est-ce ton cas ?

Une autre piste :
http://techsupt.winbatch.com/webcgi/webbatch.exe?techsupt/tsleft.web+Tutorials+Printing.txt

Une approche full API : http://binaryworld.net/Main/Codedetail.aspx?CodeId=3664


Message édité par: Laurent Dardenne, à: 6/05/08 08:52
Tutoriels PowerShell -- Liste de ressources autour de PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
© 2010 PowerShell-Scripting.com