Autorisation powershell

arek -  
 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

  1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    Bonjour,

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

    0
  2. arek
     
    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
    0
  3. arek
     
    et je dois aussi rajouter dans ce script une commande qui fera une boucle d'affichage des id des étudiants
    0
  4. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    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.

    0
    1. Arek
       
      Merci oui ça fonctionne et ouais désoler j'avais fait un copier coller
      0