Les cmdlets de gestion des postes clients sous Windows 10 sont regroupées dans le module Microsoft.PowerShell.Management
# Lister les applets de gestions Get-command -module Microsoft.PowerShell.Management
# Récupère et affiche les 20 derniers échecs d'authentification Get-EventLog -LogName Security -Newest 20 -InstanceId 4625 # Effacer le journal Clear-EventLog -LogName Security
Les droits d'accès aux dossiers/fichiers sont définis par ACL (Acces Control List). On peut gérer les ACL via les cmdlets Get-Acl et Set-Acl
# Les commandes de gestions des droits d'accès sont # regroupées dans le module Security Get-command -module Microsoft.PowerShell.Security
# Récupère le descripteur de sécurité # associé au dossier "C:\Users\aUser\aRepository" Get-Acl -Path 'C:\Users\aUser\aRepository' | Format-List
Le descripteur contient la liste des droits d'accès (ACL) dans l'attribut Acces
(Get-Acl -Path 'C:\Users\aUser\aRepository').Access
Pour mettre à jour les droits sur un fichier/dossier :
# récupère les ACL du fichier $myAcl = Get-Acl -Path '.\path\to\aFile' $AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("aUserName","Modify","Allow") $myAcl.SetAccessRule($AccessRule) $myACL | Set-Acl -Path '.\path\to\aFile'
Via PowerShell il est facile de copier les ACL d'un objet à un autre :
# Copie les ACL de folderA sur FolderB Get-Acl -Path '.\path\to\folderA' | Set-ACL -Path '.\path\to\folderB'