« PowerShell/Sécurité » : différence entre les versions
(Page créée avec « {{Sommaire}} == Liste des droits sur le contenu d'une arborescence == <source> # Liste des droits de sécurité sur les dossiers et fichiers d'une arborescence # Création d'un fichier $FichierDestination = "C:\Support\PermissionListeTest.csv" $CheminRacine = "C:\Support\" # Entête de document $FichierEntete = "Chemin;IdentityReference;AccessControlType;IsInherited;InheritanceFlags;PropagationFlags;FilesystemRights" $FichierExiste = Test-Path $FichierDestinatio... ») |
|||
(5 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
{{Sommaire}} | {{Sommaire}} | ||
== Identifiant en clair == | |||
<source> | |||
<# | |||
Description : création d'un lecteur réseau, avec utilisation d'un compte et d'un mot de passe | |||
Usage : exercice en PowerShell | |||
Auteur : fylip22 | |||
Version : 1.0 | |||
Révisions : | |||
- 1.0 (27/03/2024) : fylip22, création du script | |||
#> | |||
# mot de passe | |||
$password = ConvertTo-SecureString "MonMotDePasse" -AsPlainText -Force | |||
# autre variable | |||
$R1 = "192.168.1.11" | |||
# création de l'identifiant (association compte et mot de passe | |||
$Identifiant = New-Object System.Management.Automation.PSCredential ("$R1\username", $password) | |||
# création du lecteur T: | |||
New-PSDrive -Name t -Root "\\$R1\dossierpartage$" -PSProvider "FileSystem" -Credential $Identifiant | |||
</source> | |||
== Stockage des identifiants dans un fichier == | |||
Création d'un fichier contenant les identifiants : | |||
<source> | |||
$IdentFichier = "c:\support\lecompte.xml" | |||
New-Object System.Management.Automation.PSCredential("lecompte", (ConvertTo-SecureString -AsPlainText -Force "#MonMotdePasse2023*")) | Export-Clixml $IdentFichier | |||
</source> | |||
Utilisation du fichier contenant les identifiants: | |||
<source> | |||
$IdentFichier = "c:\support\lecompte.xml" | |||
$Ident = Import-Clixml -path $IdentFichier | |||
</source> | |||
== Utilisation du gestionnaire d'identification Windows == | |||
Avec les prérequis suivants : | |||
* <source inline>Install-Module -Name CredentialManager</source> | |||
* <source inline>Set-ExecutionPolicy RemoteSigned</source> | |||
Etape 1 : création d'une nouvelle identification via le "Gestionnaire d'identification" : | |||
* "ajouter des informations d'identification générique" | |||
* adresse internet ou réseau, nom d'utilisateur et mot de passe | |||
** exemple "o365, moncompte@toto.onmicrosoft.com, monmotdepasse" | |||
Etape 2 : récupération des informations : | |||
* <source inline>$cred = Get-StoredCredential -Target "o365"</source> | |||
=== Source === | |||
Youtube, Shane Young, Learn to securely use Passwords with PowerShell : | |||
* vidéo : https://www.youtube.com/watch?v=MVZAbQEkegU | |||
== Liste des droits sur le contenu d'une arborescence == | == Liste des droits sur le contenu d'une arborescence == |
Dernière version du 28 mars 2024 à 10:08
Identifiant en clair
<# Description : création d'un lecteur réseau, avec utilisation d'un compte et d'un mot de passe Usage : exercice en PowerShell Auteur : fylip22 Version : 1.0 Révisions : - 1.0 (27/03/2024) : fylip22, création du script #> # mot de passe $password = ConvertTo-SecureString "MonMotDePasse" -AsPlainText -Force # autre variable $R1 = "192.168.1.11" # création de l'identifiant (association compte et mot de passe $Identifiant = New-Object System.Management.Automation.PSCredential ("$R1\username", $password) # création du lecteur T: New-PSDrive -Name t -Root "\\$R1\dossierpartage$" -PSProvider "FileSystem" -Credential $Identifiant
Stockage des identifiants dans un fichier
Création d'un fichier contenant les identifiants :
$IdentFichier = "c:\support\lecompte.xml" New-Object System.Management.Automation.PSCredential("lecompte", (ConvertTo-SecureString -AsPlainText -Force "#MonMotdePasse2023*")) | Export-Clixml $IdentFichier
Utilisation du fichier contenant les identifiants:
$IdentFichier = "c:\support\lecompte.xml" $Ident = Import-Clixml -path $IdentFichier
Utilisation du gestionnaire d'identification Windows
Avec les prérequis suivants :
Install-Module -Name CredentialManager
Set-ExecutionPolicy RemoteSigned
Etape 1 : création d'une nouvelle identification via le "Gestionnaire d'identification" :
- "ajouter des informations d'identification générique"
- adresse internet ou réseau, nom d'utilisateur et mot de passe
- exemple "o365, moncompte@toto.onmicrosoft.com, monmotdepasse"
Etape 2 : récupération des informations :
$cred = Get-StoredCredential -Target "o365"
Source
Youtube, Shane Young, Learn to securely use Passwords with PowerShell :
Liste des droits sur le contenu d'une arborescence
# Liste des droits de sécurité sur les dossiers et fichiers d'une arborescence # Création d'un fichier $FichierDestination = "C:\Support\PermissionListeTest.csv" $CheminRacine = "C:\Support\" # Entête de document $FichierEntete = "Chemin;IdentityReference;AccessControlType;IsInherited;InheritanceFlags;PropagationFlags;FilesystemRights" $FichierExiste = Test-Path $FichierDestination If ($FichierExiste -eq $True) {Remove-Item $FichierDestination} Add-Content -Encoding UTF8 -Value $FichierEntete -Path $FichierDestination $DossierListe = dir $CheminRacine -recurse | Where {$_.psiscontainer -eq $True} Foreach ($Dossier in $DossierListe) { $DroitListe = Get-ACL $Dossier.fullname | ForEach-Object { $_.Access } Foreach ($Droit in $DroitListe) { $FichierLigne = ($Dossier.Fullname, $Droit.IdentityReference, $Droit.AccessControlType, $Droit.IsInherited, $Droit.InheritanceFlags, $Droit.PropagationFlags, ($Droit.FileSystemRights -replace ',', '/' ) ) -join ";" Add-Content -Encoding UTF8 -Value $FichierLigne -Path $FichierDestination } }
Autre
Pour la mise à jour de compte utilisateur, attribut titre et numéro de mobile, d'après le nom du compte et une fichier :
Import-Csv "D:\script\util-maj-tel.csv" | Foreach { Set-ADUser -Identity $_.SamAccountName –Title $_.Title -MobilePhone $_.MobilePhone }
Copier les groupes de sécurité d'un compte vers un autre !
Get-ADUser -Identity "comptesource" -Properties memberof | Select-Object -ExpandProperty memberof | Add-ADGroupMember -Members "comptecible"
Ressource
Installer le module Active Directory sur Windows 10 et Windows Server
Gérer les utilisateurs Active Directory avec PowerShell
Créer un utilisateur dans l’Active Directory avec PowerShell
Gérer les utilisateurs et ordinateurs inactifs dans l’Active Directory