PowerShell, tout comme net use, net share, vous permet de gérer vos partages réseaux et de dossier de Windows 10/11.
Différents cmdlet et commandes existent pour lister, créer et supprimer des partages réseaux mais aussi gérer les autorisations sur les partages réseaux.
Cet article vous guide pour administrer vos partages réseaux en Powershell.
Table des matières
- 1 Introduction aux cmdlet Powershell SmbShare
- 2 PowerShell : gérer les partages réseaux et de dossier de Windows 10
- 2.1 PSSession et session à distance
- 2.2 Lister et afficher les partages réseaux
- 2.3 Créer un partage réseau
- 2.4 Lister les autorisations d’un partage
- 2.5 Ajouter, Modifier, supprimer les autorisations d’un partage réseau
- 2.6 Refuser l’accès à un partage de dossier à un groupe ou utilisateur
- 2.7 Modifier les propriétés d’un partage réseau
- 2.8 Supprimer un partage réseau
- 2.9 Créer un lecteur réseau ou mapper un lecteur réseau
- 3 Liens
cmdlet Powershell | Description |
Get-SmbShare | Lister les partages réseaux |
New-SmbShare | Créer un nouveau partage réseau |
Remove-SmbShare | Supprimer un partage réseau |
Grant-SmbShareAccess | Modifier les autorisations d’un partage réseau |
Revoke-SmbShareAccess | Supprimer les autorisations d’un partage réseau |
Set-SmbShare | Modifier les propriétés d’un partage |
Get-SmbShareAccess | Lister les autorisations d’un partage |
New-SmbMapping | Mapper un lecteur réseau |
La liste des autres cmdlet SmbShare dans la documentation Microsoft : List SmbShare cmdlet
En général, lorsque l’on passe une commande, une confirmation est à faire avec Oui ou non.
Vous pouvez passer outre la confirmation avec l’option -Force.
Pour cibler un partage et travailler dessus, on utilise l’option -Name suivi du nom du partage.
PowerShell : gérer les partages réseaux et de dossier de Windows 10
PSSession et session à distance
Avec Powershell, on peut très facilement lister les ressources réseaux locales mais on peut aussi travailler sur un PC distant grâce à PSSession.
Après avoir ouvert PowerShell, on démarre une session d’un PC distant avec la commande suivante :
Enter-PSSession -ComputerName NomDuPC
Lister et afficher les partages réseaux
En Powershell, on utilise donc la commande get-SmbShare afin d’obtenir la liste des partages réseaux.
Saisissez simplement la commande et vous aurez la liste des partages avec le nom, le chemin complet et la description.
Get-SmbShare
A noter aussi qu’il existe cette commande :
get-WmiObject -class Win32_Share
Voir aussi cet article :
Afin d’obtenir les propriétés d’un partage en particulier, on utilise Select *.
Ainsi pour obtenir les propriétés du partage share :
Get-SmbShare -Name share | select *
Créer un partage réseau
Pour créer un partage réseau en Powershell, on utilise la commande New-SmbShare.
Pour créer un partage Films sur le dossier D:\Films :
New-SmbShare -Name "Films" -Path "D:\Films"
Voici les options pour définir les autorisations :
- -ReadAccess : donne un accès en lecture
- -ChangeAccess : donne les autorisations en modifications
- -FullAccess : attribut le contrôle total
- -NoAccess : aucun accès
Par exemple pour créer un partage de dossier avec les autorisations en modifications pour le groupe utilisateurs et contrôle total sur le groupe Administrateurs.
New-SmbShare -Name "Film" -Path "D:\Film" -ChangeAccess "Utilisateurs" -FullAccess "Administrateurs"
Lister les autorisations d’un partage
Il est ensuite possible d’afficher les autorisations d’un partage avec Get-SmbShareAccess :
Get-SmbShareAccess NomDuPartage
Ici on voit que la partage réseau share est en lecture pour tout le monde.
Dans cet autre exemple, Toutle monde est en refuser sur le contrôle totale, il n’a donc pas accès au partage de ce dossier, mais l’utilisateur Mak lui a les autorisations en modifications.
Enfin, pour afficher les autorisations en liste avec Format-List :
Get-SmbShareAccess share | Format-List
Ajouter, Modifier, supprimer les autorisations d’un partage réseau
PowerShell propose toutes les commandes pour ajouter, modifier ou supprimer les autorisations d’un partage.
Pour modifier un partage existant, on utilise Grant-SmbShareAccess.
Ici, on cible le partage réseau film et le compte utilisateur MSI\MaK pour donner l’accès complet.
On voit que l’on passe des permissions modifications au contrôle total.
Grant-SmbShareAccess -Name film -AccountName MSI\MaK -AccessRight Full -Force
PowerShell permet de manipuler les autorisations de partage.
Lorsque l’on doit modifier une autorisation, il faut d’abord retirer celle-ci avec Revoke-SmbShareAccess.
Ici on supprime toutes les autorisations pour l’utilisateur MaK.
Revoke-SmbShareAccess -Name film -AccountName MSI\MaK -Force
Enfin on utilise Grant-SmbShareAccess pour ajouter de nouvelles autorisations à un partage.
On spécifiee les utilisateurs ou groupes que nous souhaitons avoir accès au partage ainsi que le niveau d’accès dont ils disposeront.
Grant-SmbShareAccess -Name film -AccountName MSI\MAK -AccessRight Change
Refuser l’accès à un partage de dossier à un groupe ou utilisateur
Vous devrez peut-être refuser à des utilisateurs ou à des groupes spécifiques l’accès à un partage de fichiers pour des raisons de sécurité. Toutes les autorisations Refuser remplacent toutes les autorisations Autoriser. Ainsi, même si les utilisateurs possèdent des autorisations de lecture ou de modification sur le partage, si vous leur refusez spécifiquement l’autorisation sur ce partage ou s’ils sont dans un groupe refusé, ils ne pourront pas accéder à ce partage.
Pour refuser l’accès d’un utilisateur ou d’un groupe au partage de fichiers, nous allons utiliser la commande Block-SmbShareAccess.
Dans ce cas, on refuse l’utilisateur MaK du PC MSI :
Block-SmbShareAccess -Name film -AccountName MSI\Mak -Force
Enfin il faut utiliser la commande UnBlock-SmbShareAccess pour autoriser l’accès :
UnBlock-SmbShareAccess -Name film -AccountName MSI\Mak -Force
Modifier les propriétés d’un partage réseau
Set-SmbShare est un cmdlnet qui s’utilise pour modifier les propriétés d’un partage.
Par exemple pour modifier la description d’un partage réseaux, on utilise -Description :
Set-SmbShare share -Description "Kikooo"
Activer le chiffrement SMB sur le partage film :
Set-SmbShare –Name <sharename> -EncryptData $true
Remplacer $true par $false pour le désactiver
Puis, pour désactiver la mise en cache sur le partage film :
Set-SmbShare film -CachingMode none -Force
Supprimer un partage réseau
Powershell donne la possibilité de supprimer un partage de dossier très simplement avec Remove-SmbShare.
Par exemple pour supprimer le partage réseau avec le nom Data :
Remove-SmbShare -Name "Data"
Créer un lecteur réseau ou mapper un lecteur réseau
Pour créer un lecteur réseau en PowerShell, on utilise New-SmbMapping.
Par exemple pour mapper un lecteur réseau X sur le partage \\PC\MonPartage
New-SmbMapping -LocalPath 'X:' -RemotePath '\\PC\MonPartage'
Liens
- Qu’est-ce que PowerShell sur Windows 10, 11 : exemple de commandes
- PowerShell et CMD (invite de commandes) : les différences
- 14 commandes PowerShell de base pour apprendre et débuter
- La liste des commandes PowerShell
- Les virus ou trojan PowerShell
- Comment exécuter un script PowerShell
- PowerShell Get-Process : gestion des processus
- Exécution script désactivée PowerShell : Autoriser l’exécution de Scripts dans PowerShell
- Lancer PowerShell depuis CMD
- PowerShell : créer et écrire dans un fichier
- PowerShell : installer, désinstaller, lister les applications
- Comment utiliser Where-Object de PowerShell pour filtrer les éléments
- Créer, supprimer, formater des partitions de disque en PowerShell
- Ajouter, supprimer et modifier des comptes utilisateurs et des groupes locaux avec PowerShell
- Comment créer une tâche planifiée en PowerShell
- Configurer les tâches planifiées en PowerShell
- Comment gérer Windows Defender avec PowerShell
- Comment copier ou déplacer des fichiers avec PowerShell
- PowerShell : gérer les partages réseaux et de dossiers de Windows 10
- Les commandes réseaux PowerShell sur Windows 10, 11
- Gérer les services Windows en PowerShell
- PowerShell : supprimer un fichier avec 10 exemples
- PowerShell : tester l’existence fichier
- PowerShell : rechercher une chaîne de caractères avec Select-String
- Comment mettre à jour PowerShell sur Windows