Scenari relativi alla tecnologia ACL
Le classi dello spazio dei nomi System.Security.AccessControl consentono di creare o modificare a livello di codice elenchi di controllo di accesso discrezionali (DACL) e elenchi di controllo di accesso di sistema (SACL) associati a una risorsa protetta.
In questa sezione vengono descritti i due scenari più comuni di controllo e di controllo di accesso, ovvero l'impostazione di regole durante la creazione delle risorse e la modifica a livello di codice delle regole di una risorsa esistente.
Scenario 1: creare una regola di accesso o di controllo per un nuovo file o una nuova directory
È talvolta necessario che un'applicazione crei un nuovo file o una nuova cartella. In questo scenario viene descritto come specificare gli ACL per un nuovo file o una nuova cartella utilizzando le classi ACL gestite.
Punti chiave dello scenario
Creare un'applicazione che preveda l'esecuzione delle seguenti attività:
Creazione di una o più oggetti FileSystemAccessRule o FileSystemAuditRule per rappresentare le regole da applicare.
Aggiunta di oggetti FileSystemAccessRule o FileSystemAuditRule a un nuovo oggetto FileSecurity o DirectorySecurity.
Creazione di un nuovo file o di una nuova cartella mediante il passaggio dell'oggetto FileSecurity o DirectorySecurity al metodo o al costruttore appropriato. Ciascun metodo di creazione o costruttore di file o directory dispone di un overload per l'accettazione di un parametro di sicurezza file. È ad esempio possibile utilizzare i metodi File.Create, Directory.CreateDirectory e FileStream.FileStream oltre a numerosi altri metodi per impostare gli ACL in fase di creazione.
Scenario 2: modificare una regola di accesso o di controllo per un file o una directory esistente
È talvolta necessario modificare a livello di codice gli ACL di un file o di una cartella esistente. In questo scenario viene descritto come modificare gli ACL per un file o una cartella esistente utilizzando le classi ACL gestite.
Punti chiave dello scenario
Creare un'applicazione che preveda l'esecuzione delle seguenti attività:
Recupero dell'oggetto FileSecurity o DirectorySecurity da un file o da una cartella esistente tramite il metodo GetAccessControl o GetAccessControl.
Creazione di una o più oggetti FileSystemAccessRule o FileSystemAuditRule per rappresentare le regole da applicare.
Aggiunta di oggetti FileSystemAccessRule o FileSystemAuditRule all'oggetto FileSecurity o DirectorySecurity.
Impostazione della persistenza per l'oggetto FileSecurity o DirectorySecurity tramite il metodo SetAccessControl o GetAccessControl.