Directory.SetAccessControl(String, DirectorySecurity) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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 directorySecurity
null
.
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:
Gunakan metode GetAccessControl untuk mengambil objek DirectorySecurity dari file sumber.
Buat objek DirectorySecurity baru untuk file tujuan.
Gunakan metode GetSecurityDescriptorBinaryForm atau GetSecurityDescriptorSddlForm objek DirectorySecurity sumber untuk mengambil informasi ACL.
Gunakan metode SetSecurityDescriptorBinaryForm atau SetSecurityDescriptorSddlForm untuk menyalin informasi yang diambil di langkah 3 ke objek DirectorySecurity tujuan.
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.