Question ACL d'un répertoire

Plus d'informations
il y a 18 ans 3 jours #1995 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:ACL d'un répertoire
Salut,
darkslayer91 écrit:

merci pour la réponse, néanmoins j'ai un petit soucis car il ne reconnaît pas Write-host !


Quelle console utilises-tu PowerShell 1.1, 2.0 ou une autre application/IDE ?

Tutoriels PowerShell

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

Plus d'informations
il y a 15 ans 8 mois #7252 par vlb
Réponse de vlb sur le sujet Re:ACL d'un répertoire
Arnaud écrit:

Je sais que ma réponse ne va pas te satisfaire...;)

La modification des ACL avec PowerShell n'est pas une chose facile. Je te conseillerais de continuer avec xcacls.exe, bien plus intuitif.

Arnaud


Bonjour à tous,

Je cherchais depuis ce forum une réponse simple aux acls sous powershell et windows 2008 SP2 (pas de R2, PS V1...), ajouter un compte de domaine dans les ACLs d'un répertoire, le quotidien...

Je me suis investi sur cacls, pas possible de faire des permissions exotiques, set-acl ne fait qu'une copie de permissions vers d'autres répertoires, icacls me permettait pas de faire un héritage des droits simplement.

Je suis pas feignant parce que je suis admin mais admin parce que je suis feignant :whistle:

Donc je me suis intéressé à XCALCS.VBS, à adapter sous Windows 2008 :

Rechercher la fonction IsOSSupported() dans le fichier XCACLS.VBS et ajouter à la ligne

[code:1]
Case \"5.0\", \"5.1\", \"5.2\"
[/code:1]

\"6.0\" pour obtenir

[code:1]
Case \"5.0\", \"5.1\", \"5.2\", \"6.0\"
[/code:1]

Maintenant, XCACLS.VBS peut fonctionner pour une version de Windows 2008 server.

Le contexte:
je monte un serveur FTP et je veux paramêtrer mes ACLs avec un compte du domaine.
Je ne détaille pas l'intégration dans le domaine, l'installation de IIS7 et FTP7.5 en powershell, seulement le share et les ACLs du dossier que l'on appelera FTProot.
Le nom de domaine sera CONTOSO pour des questions évidentes...


le net share avant le partage de FTProot
[code:1]
PS C:\sources> net share

Share name Resource Remark

C$ C:\ Default share
D$ D:\ Default share
IPC$ Remote IPC
ADMIN$ C:\Windows Remote Admin
The command completed successfully.
[/code:1]

Commande pour le partage de FTProot
[code:1]
PS C:\sources> $shareName = \"FTProot\"
PS C:\sources> $domainName=\"CONTOSO\"
PS C:\sources> net share $shareName=D:\$shareName \"/GRANT:$domainName\Administrators,FULL\" /UNLIMITED /REMARK:\"$shareName\"
FTProot was shared successfully.
[/code:1]

Le résultat du paratage de FTProot
[code:1]
PS C:\sources> net share

Share name Resource Remark

C$ C:\ Default share
D$ D:\ Default share
IPC$ Remote IPC
ADMIN$ C:\Windows Remote Admin
FTProot D:\FTProot FTProot
The command completed successfully.
[/code:1]

Maintenant afficher les ACLs, à partir du dossier XCACLS.VBS

[code:1]
PS C:\sources> cscript xcacls.vbs d:\FTProot
Microsoft (R) Windows Script Host Version 5.7
Copyright (C) Microsoft Corporation. All rights reserved.

Starting XCACLS.VBS (Version: 5.2) Script at 25/06/2010 12:33:49

Startup directory:
\"C:\sources\"

Arguments Used:
Filename = \"d:\FTProot\"



**************************************************************************
Directory: D:\FTProot

Permissions:
Type Username Permissions Inheritance

Allowed BUILTIN\Administrators Full Control This Folder Only
Allowed \CREATOR OWNER Full Control Subfolders and Files
Allowed NT AUTHORITY\SYSTEM Full Control This Folder, Subfolde
Allowed BUILTIN\Administrators Full Control Subfolders and Files

No Auditing set

Owner: BUILTIN\Administrators
**************************************************************************


Operation Complete
Elapsed Time: 0,3164063 seconds.

Ending Script at 25/06/2010 12:33:49
[/code:1]

L'affectation d'un compte spécial de domaine en lecture/exécution + écriture pour ce dossier

[code:1]
PS C:\sources> cscript xcacls.vbs d:\$sharename /E /G \"$domainName\Customer Admins:WX;WX\" /SPEC B
Microsoft (R) Windows Script Host Version 5.7
Copyright (C) Microsoft Corporation. All rights reserved.

Starting XCACLS.VBS (Version: 5.2) Script at 25/06/2010 12:46:43

Startup directory:
\"C:\sources\"

Arguments Used:
Filename = \"d:\FTProot\"
/E (Edit ACL leaving other users intact)
/G (Grant rights)
CONTOSO\Customer Admins:WX;WX
/SPEC (Special Folder Permission)
B - This Folder, Subfolders and Files



**************************************************************************
Directory: D:\FTProot
Granting NTFS rights (WX access for This Folder, Subfolders and Files) for \"CONTOSO\Customer Admins\"
Completed successfully.
**************************************************************************


Operation Complete
Elapsed Time: 0,59375 seconds.

Ending Script at 25/06/2010 12:46:43
[/code:1]

Et le résultat logique et mathématiques

[code:1]
PS C:\sources> $share=get-acl d:\$sharename
PS C:\sources> $share.access


FileSystemRights : Write, ReadAndExecute, Synchroni
AccessControlType : Allow
IdentityReference : CONTOSO\Customer Admins
IsInherited : False
InheritanceFlags : ContainerInherit, ObjectInherit
PropagationFlags : None

FileSystemRights : FullControl
AccessControlType : Allow
IdentityReference : BUILTIN\Administrators
IsInherited : True
InheritanceFlags : None
PropagationFlags : None

FileSystemRights : FullControl
AccessControlType : Allow
IdentityReference : CREATOR OWNER
IsInherited : True
InheritanceFlags : ContainerInherit, ObjectInherit
PropagationFlags : InheritOnly

FileSystemRights : FullControl
AccessControlType : Allow
IdentityReference : NT AUTHORITY\SYSTEM
IsInherited : True
InheritanceFlags : ContainerInherit, ObjectInherit
PropagationFlags : None

FileSystemRights : FullControl
AccessControlType : Allow
IdentityReference : BUILTIN\Administrators
IsInherited : True
InheritanceFlags : ContainerInherit, ObjectInherit
PropagationFlags : InheritOnly
[/code:1]

Le but de tout ça, c'est que mon client filezilla puisse se connecter en FTPES et avoir accès au répertoire pour faire mes mises à jour, automatisé au démarrage du serveur IIS/FTP.

Cependant j'ai du chercher plusieurs versions de l'installeur xcacls, donc je vous joins le xcacls.vbs prêt à l'emploi (pas besoin de faire la modification avec le \"6.0\").

Si vous avez des améliorations ou des remarques, je prends !

suchiwa

Vincent

Dans le doute, reboot...

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

Plus d'informations
il y a 15 ans 8 mois #7253 par vlb
Réponse de vlb sur le sujet Re:ACL d'un répertoire
Avec le fichier à renommer en xcacls.vbs

La pièce jointe XCACLS.txt est absente ou indisponible

<br><br>Message édité par: suchiwa, à: 25/06/10 13:13

Vincent

Dans le doute, reboot...
Pièces jointes :

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

Plus d'informations
il y a 15 ans 8 mois #7261 par Arnaud Petitjean
Réponse de Arnaud Petitjean sur le sujet Re:ACL d'un répertoire
Salut Suchiwa,

As-tu résolu ton problème ?

Merci pour ton vbs modifié ;-)

Avis aux amateurs pour le convertir en PowerShell :)

Arnaud

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?

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

Plus d'informations
il y a 15 ans 8 mois #7266 par vlb
Réponse de vlb sur le sujet Re:ACL d'un répertoire
Arnaud écrit:

Salut Suchiwa,

As-tu résolu ton problème ?

Merci pour ton vbs modifié ;-)

Avis aux amateurs pour le convertir en PowerShell :)

Arnaud


En fait, je n'ai pas de problème... je voulais \&quot;présenter\&quot; xcacls pour ces bienfaits naturels :P , n'ayant vu que peu de topics dessus.

Vincent

Dans le doute, reboot...

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

Plus d'informations
il y a 15 ans 8 mois #7267 par vlb
Réponse de vlb sur le sujet Re:ACL d'un répertoire
j'ai une remarque par contre:
J'ai investi les yeux fermés dans votre bouquin.
Je travaille sur de l'automatisation des services windows 2008 tel que AD DS, IIS ou SQL Server 2008 pour les applications.
Les connexions LDAP, l'ajout d'OU ou de compte sont très bien expliqués.
Par contre, il y a un petit manque coté ACL et permission en powershell.
Peut être est ce une limitation du WMI ou du .NET FrameWork ?

Vincent

Dans le doute, reboot...

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

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