File.SetAccessControl(String, FileSecurity) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee past u ACL-vermeldingen (Access Control List) toe die worden beschreven door een FileSecurity object op het opgegeven bestand.
public:
static void SetAccessControl(System::String ^ path, System::Security::AccessControl::FileSecurity ^ fileSecurity);
public static void SetAccessControl(string path, System.Security.AccessControl.FileSecurity fileSecurity);
static member SetAccessControl : string * System.Security.AccessControl.FileSecurity -> unit
Public Shared Sub SetAccessControl (path As String, fileSecurity As FileSecurity)
Parameters
- path
- String
Een bestand waaruit ACL-vermeldingen (Access Control List) moeten worden toegevoegd of verwijderd.
- fileSecurity
- FileSecurity
Een FileSecurity object dat een ACL-vermelding beschrijft die moet worden toegepast op het bestand dat wordt beschreven door de path parameter.
Uitzonderingen
Er is een I/O-fout opgetreden tijdens het openen van het bestand.
De path parameter is null.
Kan het bestand niet vinden.
De path parameter heeft een bestand opgegeven dat alleen-lezen is.
– of –
Deze bewerking wordt niet ondersteund op het huidige platform.
– of –
De path parameter heeft een map opgegeven.
– of –
De beller heeft niet de vereiste machtiging.
De fileSecurity parameter is null.
Opmerkingen
Met de SetAccessControl methode worden ACL-vermeldingen (Access Control List) toegepast op een bestand dat de niet-ingevoegde ACL-lijst vertegenwoordigt.
Caution
De ACL die is opgegeven voor de fileSecurity parameter vervangt de bestaande ACL voor het bestand. Als u machtigingen voor een nieuwe gebruiker wilt toevoegen, gebruikt u de GetAccessControl methode om de bestaande ACL te verkrijgen, te wijzigen en deze vervolgens SetAccessControl weer toe te passen op het bestand.
Een ACL beschrijft personen en groepen die al dan niet rechten hebben voor specifieke acties op het opgegeven bestand. Zie Instructies voor het toevoegen of verwijderen van vermeldingen in toegangsbeheerlijsten voor meer informatie.
De SetAccessControl methode behoudt alleen FileSecurity objecten die zijn gewijzigd na het maken van het object. Als een FileSecurity object niet is gewijzigd, wordt het niet opgeslagen in een bestand. Daarom is het niet mogelijk om een object op te halen uit het FileSecurity ene bestand en hetzelfde object opnieuw toe te past op een ander bestand.
ACL-gegevens van het ene bestand naar het andere kopiëren:
Gebruik de GetAccessControl methode om het FileSecurity object op te halen uit het bronbestand.
Maak een nieuw FileSecurity object voor het doelbestand.
Gebruik de GetSecurityDescriptorBinaryForm of GetSecurityDescriptorSddlForm methode van het bronobject FileSecurity om de ACL-informatie op te halen.
Gebruik de SetSecurityDescriptorBinaryForm of SetSecurityDescriptorSddlForm methode om de gegevens die in stap 3 zijn opgehaald, te kopiëren naar het doelobject FileSecurity .
Stel het doelobject FileSecurity in op het doelbestand met behulp van de SetAccessControl methode.
In NTFS-omgevingen ReadAttributes en ReadExtendedAttributes worden aan de gebruiker verleend als de gebruiker rechten heeft ListDirectory op de bovenliggende map. ReadAttributes Weigeren en ReadExtendedAttributesweigeren ListDirectory in de bovenliggende map.