Autorisation powershell

Signaler
-
 Arek -
Bonjour,

bonjour a tous Jai besoin d'aide vue mes compétence en informatique je ne suis pas encore expert encore mais bon voila je dois crée un script qui permet au prof de changer les autorisation sur un dossier ainsi qu'aux sous-dossier a son groupe d'élève. pour l'instant Jai un script qui fonctionne a moitie car elle réussi a changer les autorisation pour un dossier mais pas les sous dossier merci d'avance

Configuration: Windows / Chrome 91.0.4472.77

4 réponses

Messages postés
13517
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
12 juin 2021
4 387
Bonjour,

Montre-nous ce que tu as déjà fait.

Import-Module ActiveDirectory

$Groupe = Read-Host -Prompt 'Entrez le groupe à mettre en read only'

$OUpath = "OU=$Groupe,OU=PISC,OU=Eleves,DC=cfplocal,DC=com"

# boucle d'affichage des code d'étudiants

# question continuer oui ou non




# si reponse=oui fait la job

$users = Get-ADUser -Filter * -SearchBase $OUpath | Select-Object -Property SamAccountName|
Foreach-Object {
$etudiant= $_.SamAccountName
Write-Host $etudiant
$acl = Get-Acl \\172.16.5.11\Usagers\Élèves\$etudiant

$AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("CFPLOCAL\$etudiant","read","Allow","InheritOnly")
$inheritanceFlag = [System.Security.AccessControl.InheritanceFlags]"ContainerInherit, ObjectInherit"
$propagationFlag = [System.Security.AccessControl.PropagationFlags]
$acl.SetAccessRule($AccessRule)

$acl | Set-Acl \\172.16.5.11\Usagers\Élèves\$etudiant

}
# message merci au revoir
$reponse = Read-Host -Prompt 'La procedure a bien fonctionner veuiller appuyer sur enter pour fermer'


# si reponse = non
# ferme le programme
et je dois aussi rajouter dans ce script une commande qui fera une boucle d'affichage des id des étudiants
Messages postés
13517
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
12 juin 2021
4 387
Merci d'utiliser les balises de code quand tu postes du code.

Import-Module ActiveDirectory

$Groupe = Read-Host -Prompt 'Entrez le groupe à mettre en read only'

$OUpath = "OU=$Groupe,OU=PISC,OU=Eleves,DC=cfplocal,DC=com"

# boucle d'affichage des codes d'étudiants

# question continuer oui ou non




# si reponse=oui fait le job

$users = Get-ADUser -Filter * -SearchBase $OUpath | Select-Object -Property SamAccountName | Foreach-Object {
 $etudiant= $_.SamAccountName
 Write-Host $etudiant
 $acl = Get-Acl \\172.16.5.11\Usagers\Élèves\$etudiant

 $rule = New-Object System.Security.AccessControl.FileSystemAccessRule("CFPLOCAL\$etudiant","ReadAndExecute", "ContainerInherit, ObjectInherit", "InheritOnly", "Allow")

 $acl.addAccessRule($rule)

 $acl | Set-Acl \\172.16.5.11\Usagers\Élèves\$etudiant

}
# message merci au revoir
$reponse = Read-Host -Prompt 'La procédure a bien fonctionné veuillez appuyer sur enter pour fermer'


# si reponse = non
# ferme le programme


Vérifie si ce script modifie bien les sous-dossiers également.



“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
Merci oui ça fonctionne et ouais désoler j'avais fait un copier coller