Bagikan melalui


Directory.SetAccessControl(String, DirectorySecurity) Metode

Definisi

Menerapkan entri daftar kontrol akses (ACL) yang dijelaskan oleh objek DirectorySecurity ke direktori yang ditentukan.

public:
 static void SetAccessControl(System::String ^ path, System::Security::AccessControl::DirectorySecurity ^ directorySecurity);
public static void SetAccessControl (string path, System.Security.AccessControl.DirectorySecurity directorySecurity);
static member SetAccessControl : string * System.Security.AccessControl.DirectorySecurity -> unit
Public Shared Sub SetAccessControl (path As String, directorySecurity As DirectorySecurity)

Parameter

path
String

Direktori untuk menambahkan atau menghapus entri daftar kontrol akses (ACL).

directorySecurity
DirectorySecurity

Objek DirectorySecurity yang menjelaskan entri ACL untuk diterapkan ke direktori yang dijelaskan oleh parameter path.

Pengecualian

Parameter directorySecuritynull.

Direktori tidak dapat ditemukan.

path tidak valid.

Proses saat ini tidak memiliki akses ke direktori yang ditentukan oleh path.

-atau-

Proses saat ini tidak memiliki hak istimewa yang memadai untuk mengatur entri ACL.

Keterangan

Metode SetAccessControl menerapkan entri daftar kontrol akses (ACL) ke direktori yang mewakili daftar ACL yang tidak diwariskan.

Hati

ACL yang ditentukan untuk parameter directorySecurity menggantikan ACL yang ada untuk direktori. Untuk menambahkan izin bagi pengguna baru, gunakan metode GetAccessControl untuk mendapatkan ACL yang ada dan memodifikasinya.

ACL menjelaskan individu dan grup yang memiliki, atau tidak memiliki, hak atas tindakan tertentu pada file atau direktori tertentu. Untuk informasi selengkapnya, lihat Cara: Menambahkan atau Menghapus Entri Daftar Kontrol Akses.

Metode SetAccessControl hanya bertahan DirectorySecurity objek yang telah dimodifikasi setelah pembuatan objek. Jika objek DirectorySecurity belum dimodifikasi, objek tidak akan dipertahankan ke file. Oleh karena itu, tidak dimungkinkan untuk mengambil objek DirectorySecurity dari satu file dan menerapkan kembali objek yang sama ke file lain.

Untuk menyalin informasi ACL dari satu file ke file lainnya:

  1. Gunakan metode GetAccessControl untuk mengambil objek DirectorySecurity dari file sumber.

  2. Buat objek DirectorySecurity baru untuk file tujuan.

  3. Gunakan metode GetSecurityDescriptorBinaryForm atau GetSecurityDescriptorSddlForm objek DirectorySecurity sumber untuk mengambil informasi ACL.

  4. Gunakan metode SetSecurityDescriptorBinaryForm atau SetSecurityDescriptorSddlForm untuk menyalin informasi yang diambil di langkah 3 ke objek DirectorySecurity tujuan.

  5. Atur objek DirectorySecurity tujuan ke file tujuan menggunakan metode SetAccessControl.

Di lingkungan NTFS, ReadAttributes dan ReadExtendedAttributes diberikan kepada pengguna jika pengguna memiliki hak ListDirectory pada folder induk. Untuk menolak ReadAttributes dan ReadExtendedAttributes, tolak ListDirectory pada direktori induk.

Berlaku untuk

Lihat juga