Question Get-acl et pb de longueur des chemins de fichiers

Plus d'informations
il y a 10 ans 4 mois #21000 par Patrice OLIVER
Bonjour,

Je suis en train de reprendre un script qui, après quelques modifications, va me permettre de sauvegarder les permissions positionnées sur mon stockage réseau pour être capable de les restaurer ensuite (il y a encore du taff ;) ). Très utiles ces temps-ci avec les attaques Zero-Day et la nécessité parfois de repartir de sauvegardes.

Le pb est que le script renvoie parfois des erreurs pour la bonne raison que les noms des répertoires dépasse 240 caractères, ce qui est facile à atteindre dans le cas d'arborescences détaillées.

Voici le script en question :
[code:1]$stream = new-object System.IO.StreamWriter(\"C:\lol.log\"«»)
$repertoire_racine = \"P:\PILOTAGE-GESTION\DAFAG\INFORMATIQUE\\"
$liste_repertoire = Get-childitem $repertoire_racine -recurse
foreach ($repertoire in $liste_repertoire)
{
if($repertoire.Attributes -eq \"Directory\"«»)
{
$global_acl = Get-Acl $repertoire.FullName
$stream.WriteLine($repertoire.FullName)
$stream.WriteLine(\"
\"«»)

foreach ($droit in $global_acl.Access)
{
$chaine = \"\"
$chaine += $droit.IdentityReference
$chaine += \" : \"
$chaine += $droit.FileSystemRights
$stream.WriteLine($chaine)
}
$stream.WriteLine(\"_________________________\"«»)
}
}
$stream.Close()[/code:1]


Auriez-vous une astuce ?


Merci.
Patrice.<br><br>Message édité par: Arnaud, à: 6/11/15 09:14

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

Plus d'informations
il y a 10 ans 4 mois #21010 par Arnaud Petitjean
Salut Patrice,

Malheureusement tu te confrontes à un problème commun sur la plateforme Microsoft :angry:. Je suis toujours surpris que Microsoft en 2015 n'ait toujours pas solutionné ce problème.

Quoi qu'il en soit, j'ai testé récemment la librairie AlphaFS. Elle permet de dépasser la limite imposée par le filesytem qui est je crois de 260 caractères (MAX_PATH).

Voici quelques liens qui pourront certainement t'aider:
- File System Security PowerShell Module
- alphaleonis/AlphaFS sur GitHUB

Je pense que le module PowerShell \&quot;File System Security\&quot; sera plus simple à utiliser que la librairie AlphaFS car celui-ci fait justement appel à cette dernière pour en simplifier l'usage.

Je ne l'ai pas testé mais je serais content d'avoir ton retour sur le sujet.

Arnaud<br><br>Message édité par: Arnaud, à: 6/11/15 09:24

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.

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