Aggiungere autorizzazioni a una cartella
Pubblicato: 25 giugno 2020 - 16:46
Ciao a tutti,
Durante l'installazione di determinati software, l'utente finale avrà bisogno delle autorizzazioni per la cartella.
Tuttavia, in un contesto in cui l'utente non è un amministratore, ciò rappresenta un problema.
La soluzione che utilizzo è la seguente:
- un pacchetto che installa un modulo PowerShell (che quindi diventa una dipendenza del software)
- uno script per modificare i permessi.
I diritti vengono assegnati a 1 cartella specifica, per gli utenti autenticati (possono essere modificati da qualsiasi altro gruppo).
Il modulo PowerShell è NTFSSecurity, disponibile qui: https://gallery.technet.microsoft.com/s ... dbb2b84e85
Il pacchetto utilizzato per installarlo contiene questo codice:
Lo script PowerShell utilizzato è il seguente:
Nel pacchetto WAPT ti serve semplicemente:
- Per rendere il pacchetto di installazione NTFSSecurity una dipendenza,
- Posizionare un file .ps1 con il codice PowerShell in alto,
- Esegui lo script nella funzione def install() con il comando:
Spero che questo ti sia d'aiuto.
Durante l'installazione di determinati software, l'utente finale avrà bisogno delle autorizzazioni per la cartella.
Tuttavia, in un contesto in cui l'utente non è un amministratore, ciò rappresenta un problema.
La soluzione che utilizzo è la seguente:
- un pacchetto che installa un modulo PowerShell (che quindi diventa una dipendenza del software)
- uno script per modificare i permessi.
I diritti vengono assegnati a 1 cartella specifica, per gli utenti autenticati (possono essere modificati da qualsiasi altro gruppo).
Il modulo PowerShell è NTFSSecurity, disponibile qui: https://gallery.technet.microsoft.com/s ... dbb2b84e85
Il pacchetto utilizzato per installarlo contiene questo codice:
Codice: Seleziona tutto
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
targetPWSH = makepath(programfiles,'WindowsPowerShell\Modules\NTFSSecurity')
folderPWSH = 'NTFSSecurity'
def install():
#copie du module Powershell
if (isdir(targetPWSH) != True) :
mkdirs(targetPWSH)
copytree2(folderPWSH,targetPWSH)Codice: Seleziona tutto
#Autorisation d'accès au dossier pour les utilisateurs loggés
Install-Module NTFSSecurity
$Path = "CHEMIN DU DOSSIER POUR LES DROITS"
#Désactivation de l'héritage
Get-Item $Path | Disable-NTFSAccessInheritance
Add-NTFSAccess –Path $Path -Account "Utilisateurs authentifiés" -AccessRights FullControl- Per rendere il pacchetto di installazione NTFSSecurity una dipendenza,
- Posizionare un file .ps1 con il codice PowerShell in alto,
- Esegui lo script nella funzione def install() con il comando:
Codice: Seleziona tutto
run('powershell.exe -NoProfile -NonInteractive -executionpolicy bypass -File FICHIER.ps1')