Bagikan melalui


FileSystemSecurity Kelas

Definisi

Mewakili kontrol akses dan keamanan audit untuk file atau direktori.

public ref class FileSystemSecurity abstract : System::Security::AccessControl::NativeObjectSecurity
public abstract class FileSystemSecurity : System.Security.AccessControl.NativeObjectSecurity
[System.Security.SecurityCritical]
public abstract class FileSystemSecurity : System.Security.AccessControl.NativeObjectSecurity
type FileSystemSecurity = class
    inherit NativeObjectSecurity
[<System.Security.SecurityCritical>]
type FileSystemSecurity = class
    inherit NativeObjectSecurity
Public MustInherit Class FileSystemSecurity
Inherits NativeObjectSecurity
Warisan
Turunan
Atribut

Contoh

Contoh kode berikut menggunakan kelas FileSecurity untuk ditambahkan lalu menghapus entri daftar kontrol akses (ACL) dari file. Anda harus menyediakan akun pengguna atau grup yang valid untuk menjalankan contoh ini.

using System;
using System.IO;
using System.Security.AccessControl;

namespace FileSystemExample
{
    class FileExample
    {
        public static void Main()
        {
            try
            {
                string fileName = "test.xml";

                Console.WriteLine($"Adding access control entry for {fileName}");

                // Add the access control entry to the file.
                AddFileSecurity(fileName, @"DomainName\AccountName",
                    FileSystemRights.ReadData, AccessControlType.Allow);

                Console.WriteLine($"Removing access control entry from {fileName}");

                // Remove the access control entry from the file.
                RemoveFileSecurity(fileName, @"DomainName\AccountName",
                    FileSystemRights.ReadData, AccessControlType.Allow);

                Console.WriteLine("Done.");
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }

        // Adds an ACL entry on the specified file for the specified account.
        public static void AddFileSecurity(string fileName, string account,
            FileSystemRights rights, AccessControlType controlType)
        {
            FileInfo fileInfo = new(fileName);
            FileSecurity fSecurity = fileInfo.GetAccessControl();

            // Add the FileSystemAccessRule to the security settings.
            fSecurity.AddAccessRule(new FileSystemAccessRule(account,
                rights, controlType));

            // Set the new access settings.
            fileInfo.SetAccessControl(fSecurity);
        }

        // Removes an ACL entry on the specified file for the specified account.
        public static void RemoveFileSecurity(string fileName, string account,
            FileSystemRights rights, AccessControlType controlType)
        {
            FileInfo fileInfo = new(fileName);
            FileSecurity fSecurity = fileInfo.GetAccessControl();

            // Remove the FileSystemAccessRule from the security settings.
            fSecurity.RemoveAccessRule(new FileSystemAccessRule(account,
                rights, controlType));

            // Set the new access settings.
            fileInfo.SetAccessControl(fSecurity);
        }
    }
}
Imports System.IO
Imports System.Security.AccessControl

Module FileExample

    Sub Main()
        Try
            Dim fileName As String = "test.xml"

            Console.WriteLine("Adding access control entry for " & fileName)

            ' Add the access control entry to the file.
            AddFileSecurity(fileName, "DomainName\AccountName",
                FileSystemRights.ReadData, AccessControlType.Allow)

            Console.WriteLine("Removing access control entry from " & fileName)

            ' Remove the access control entry from the file.
            RemoveFileSecurity(fileName, "DomainName\AccountName",
                FileSystemRights.ReadData, AccessControlType.Allow)

            Console.WriteLine("Done.")
        Catch e As Exception
            Console.WriteLine(e)
        End Try

    End Sub

    ' Adds an ACL entry on the specified file for the specified account.
    Sub AddFileSecurity(ByVal fileName As String, ByVal account As String,
        ByVal rights As FileSystemRights, ByVal controlType As AccessControlType)

        Dim fileInfo As New FileInfo(fileName)
        Dim fSecurity As FileSecurity = fileInfo.GetAccessControl()

        ' Add the FileSystemAccessRule to the security settings. 
        Dim accessRule As New FileSystemAccessRule(account, rights, controlType)

        fSecurity.AddAccessRule(accessRule)

        ' Set the new access settings.
        fileInfo.SetAccessControl(fSecurity)

    End Sub

    ' Removes an ACL entry on the specified file for the specified account.
    Sub RemoveFileSecurity(ByVal fileName As String, ByVal account As String,
        ByVal rights As FileSystemRights, ByVal controlType As AccessControlType)

        Dim fileInfo As New FileInfo(fileName)
        Dim fSecurity As FileSecurity = fileInfo.GetAccessControl()

        ' Remove the FileSystemAccessRule from the security settings. 
        fSecurity.RemoveAccessRule(New FileSystemAccessRule(account,
            rights, controlType))

        ' Set the new access settings.
        fileInfo.SetAccessControl(fSecurity)

    End Sub
End Module

Keterangan

Kelas FileSystemSecurity adalah kelas dasar untuk kelas FileSecurity dan DirectorySecurity. Kelas-kelas ini mewakili semua hak akses untuk file atau direktori sistem dan menentukan bagaimana upaya akses diaudit.

Kelas FileSystemSecurity mewakili hak akses dan audit sebagai sekumpulan aturan. Setiap aturan akses diwakili oleh objek FileSystemAccessRule, sementara setiap aturan audit diwakili oleh objek FileSystemAuditRule.

Kelas FileSystemSecurity adalah abstraksi dari sistem keamanan file Microsoft Windows yang mendasar. Dalam sistem ini, setiap file atau direktori memiliki daftar kontrol akses diskresi (DACL), yang mengontrol akses ke file atau direktori, dan daftar kontrol akses sistem (SACL), yang menentukan upaya kontrol akses yang diaudit. Kelas FileSystemAccessRule dan FileSystemAuditRule adalah abstraksi entri kontrol akses (ACL) yang terdiri dari DACL dan SACL.

Kelas FileSystemSecurity menyembunyikan banyak detail DACL dan SACL; Anda tidak perlu khawatir tentang pemesanan ACE atau DACLS null.

Gunakan metode dependen implementasi .NET berikut untuk menambahkan atau mengambil informasi ACL dari file:

Implementasi .NET Menambahkan aturan Mengambil aturan
.JARING FileSystemAclExtensions.SetAccessControl(FileInfo, FileSecurity) FileSystemAclExtensions.GetAccessControl(FileInfo)
.NET Framework FileInfo.SetAccessControl(FileSecurity) FileInfo.GetAccessControl()

Properti

AccessRightType

Mendapatkan enumerasi yang digunakan kelas FileSystemSecurity untuk mewakili hak akses.

AccessRulesModified

Mendapatkan atau menetapkan nilai Boolean yang menentukan apakah aturan akses yang terkait dengan objek ObjectSecurity ini telah dimodifikasi.

(Diperoleh dari ObjectSecurity)
AccessRuleType

Mendapatkan enumerasi yang digunakan kelas FileSystemSecurity untuk mewakili aturan akses.

AreAccessRulesCanonical

Mendapatkan nilai Boolean yang menentukan apakah aturan akses yang terkait dengan objek ObjectSecurity ini berada dalam urutan kanonis.

(Diperoleh dari ObjectSecurity)
AreAccessRulesProtected

Mendapatkan nilai Boolean yang menentukan apakah Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek ObjectSecurity ini dilindungi.

(Diperoleh dari ObjectSecurity)
AreAuditRulesCanonical

Mendapatkan nilai Boolean yang menentukan apakah aturan audit yang terkait dengan objek ObjectSecurity ini berada dalam urutan kanonis.

(Diperoleh dari ObjectSecurity)
AreAuditRulesProtected

Mendapatkan nilai Boolean yang menentukan apakah Daftar Kontrol Akses Sistem (SACL) yang terkait dengan objek ObjectSecurity ini dilindungi.

(Diperoleh dari ObjectSecurity)
AuditRulesModified

Mendapatkan atau menetapkan nilai Boolean yang menentukan apakah aturan audit yang terkait dengan objek ObjectSecurity ini telah dimodifikasi.

(Diperoleh dari ObjectSecurity)
AuditRuleType

Mendapatkan jenis yang digunakan kelas FileSystemSecurity untuk mewakili aturan audit.

GroupModified

Mendapatkan atau mengatur nilai Boolean yang menentukan apakah grup yang terkait dengan objek yang dapat diamankan telah dimodifikasi.

(Diperoleh dari ObjectSecurity)
IsContainer

Mendapatkan nilai Boolean yang menentukan apakah objek ObjectSecurity ini adalah objek kontainer.

(Diperoleh dari ObjectSecurity)
IsDS

Mendapatkan nilai Boolean yang menentukan apakah objek ObjectSecurity ini adalah objek direktori.

(Diperoleh dari ObjectSecurity)
OwnerModified

Mendapatkan atau menetapkan nilai Boolean yang menentukan apakah pemilik objek yang dapat diamankan telah dimodifikasi.

(Diperoleh dari ObjectSecurity)
SecurityDescriptor

Mendapatkan deskriptor keamanan untuk instans ini.

(Diperoleh dari ObjectSecurity)

Metode

AccessRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AccessControlType)

Menginisialisasi instans baru kelas FileSystemAccessRule yang mewakili aturan kontrol akses baru untuk pengguna yang ditentukan, dengan hak akses, kontrol akses, dan bendera yang ditentukan.

AddAccessRule(AccessRule)

Menambahkan aturan akses yang ditentukan ke Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
AddAccessRule(FileSystemAccessRule)

Menambahkan izin daftar kontrol akses (ACL) yang ditentukan ke file atau direktori saat ini.

AddAuditRule(AuditRule)

Menambahkan aturan audit yang ditentukan ke Daftar Kontrol Akses Sistem (SACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
AddAuditRule(FileSystemAuditRule)

Menambahkan aturan audit yang ditentukan ke file atau direktori saat ini.

AuditRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AuditFlags)

Menginisialisasi instans baru kelas FileSystemAuditRule yang mewakili aturan audit yang ditentukan untuk pengguna yang ditentukan.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetAccessRules(Boolean, Boolean, Type)

Mendapatkan kumpulan aturan akses yang terkait dengan pengidentifikasi keamanan yang ditentukan.

(Diperoleh dari CommonObjectSecurity)
GetAuditRules(Boolean, Boolean, Type)

Mendapatkan kumpulan aturan audit yang terkait dengan pengidentifikasi keamanan yang ditentukan.

(Diperoleh dari CommonObjectSecurity)
GetGroup(Type)

Mendapatkan grup utama yang terkait dengan pemilik yang ditentukan.

(Diperoleh dari ObjectSecurity)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetOwner(Type)

Mendapatkan pemilik yang terkait dengan grup utama yang ditentukan.

(Diperoleh dari ObjectSecurity)
GetSecurityDescriptorBinaryForm()

Mengembalikan array nilai byte yang mewakili informasi deskriptor keamanan untuk objek ObjectSecurity ini.

(Diperoleh dari ObjectSecurity)
GetSecurityDescriptorSddlForm(AccessControlSections)

Mengembalikan representasi Security Descriptor Definition Language (SDDL) dari bagian yang ditentukan dari deskriptor keamanan yang terkait dengan objek ObjectSecurity ini.

(Diperoleh dari ObjectSecurity)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ModifyAccess(AccessControlModification, AccessRule, Boolean)

Menerapkan modifikasi yang ditentukan ke Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
ModifyAccessRule(AccessControlModification, AccessRule, Boolean)

Menerapkan modifikasi yang ditentukan ke Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek ObjectSecurity ini.

(Diperoleh dari ObjectSecurity)
ModifyAudit(AccessControlModification, AuditRule, Boolean)

Menerapkan modifikasi yang ditentukan ke Daftar Kontrol Akses Sistem (SACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
ModifyAuditRule(AccessControlModification, AuditRule, Boolean)

Menerapkan modifikasi yang ditentukan ke Daftar Kontrol Akses Sistem (SACL) yang terkait dengan objek ObjectSecurity ini.

(Diperoleh dari ObjectSecurity)
Persist(Boolean, String, AccessControlSections)

Menyimpan bagian yang ditentukan dari deskriptor keamanan yang terkait dengan objek ObjectSecurity ini ke penyimpanan permanen. Kami menyarankan agar nilai parameter includeSections yang diteruskan ke konstruktor dan metode persisten identik.

(Diperoleh dari ObjectSecurity)
Persist(SafeHandle, AccessControlSections)

Menyimpan bagian yang ditentukan dari deskriptor keamanan yang terkait dengan objek NativeObjectSecurity ini ke penyimpanan permanen. Kami recommend.persist bahwa nilai parameter includeSections yang diteruskan ke konstruktor dan metode persisten identik.

(Diperoleh dari NativeObjectSecurity)
Persist(SafeHandle, AccessControlSections, Object)

Menyimpan bagian yang ditentukan dari deskriptor keamanan yang terkait dengan objek NativeObjectSecurity ini ke penyimpanan permanen. Kami menyarankan agar nilai parameter includeSections yang diteruskan ke konstruktor dan metode persisten identik.

(Diperoleh dari NativeObjectSecurity)
Persist(String, AccessControlSections)

Menyimpan bagian yang ditentukan dari deskriptor keamanan yang terkait dengan objek NativeObjectSecurity ini ke penyimpanan permanen. Kami menyarankan agar nilai parameter includeSections yang diteruskan ke konstruktor dan metode persisten identik.

(Diperoleh dari NativeObjectSecurity)
Persist(String, AccessControlSections, Object)

Menyimpan bagian yang ditentukan dari deskriptor keamanan yang terkait dengan objek NativeObjectSecurity ini ke penyimpanan permanen. Kami menyarankan agar nilai parameter includeSections yang diteruskan ke konstruktor dan metode persisten identik.

(Diperoleh dari NativeObjectSecurity)
PurgeAccessRules(IdentityReference)

Menghapus semua aturan akses yang terkait dengan IdentityReferenceyang ditentukan.

(Diperoleh dari ObjectSecurity)
PurgeAuditRules(IdentityReference)

Menghapus semua aturan audit yang terkait dengan IdentityReferenceyang ditentukan.

(Diperoleh dari ObjectSecurity)
ReadLock()

Mengunci objek ObjectSecurity ini untuk akses baca.

(Diperoleh dari ObjectSecurity)
ReadUnlock()

Membuka kunci objek ObjectSecurity ini untuk akses baca.

(Diperoleh dari ObjectSecurity)
RemoveAccessRule(AccessRule)

Menghapus aturan akses yang berisi pengidentifikasi keamanan dan masker akses yang sama dengan aturan akses yang ditentukan dari Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
RemoveAccessRule(FileSystemAccessRule)

Menghapus semua izin perkenankan atau tolak kontrol akses (ACL) yang cocok dari file atau direktori saat ini.

RemoveAccessRuleAll(AccessRule)

Menghapus semua aturan akses yang memiliki pengidentifikasi keamanan yang sama dengan aturan akses yang ditentukan dari Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
RemoveAccessRuleAll(FileSystemAccessRule)

Menghapus semua izin daftar kontrol akses (ACL) untuk pengguna yang ditentukan dari file atau direktori saat ini.

RemoveAccessRuleSpecific(AccessRule)

Menghapus semua aturan akses yang sama persis dengan aturan akses yang ditentukan dari Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
RemoveAccessRuleSpecific(FileSystemAccessRule)

Menghapus izin perkenankan atau tolak kontrol akses (ACL) yang cocok dari file atau direktori saat ini.

RemoveAuditRule(AuditRule)

Menghapus aturan audit yang berisi pengidentifikasi keamanan dan masker akses yang sama dengan aturan audit yang ditentukan dari Daftar Kontrol Akses Sistem (SACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
RemoveAuditRule(FileSystemAuditRule)

Menghapus semua aturan audit izinkan atau tolak yang cocok dari file atau direktori saat ini.

RemoveAuditRuleAll(AuditRule)

Menghapus semua aturan audit yang memiliki pengidentifikasi keamanan yang sama dengan aturan audit yang ditentukan dari Daftar Kontrol Akses Sistem (SACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
RemoveAuditRuleAll(FileSystemAuditRule)

Menghapus semua aturan audit untuk pengguna yang ditentukan dari file atau direktori saat ini.

RemoveAuditRuleSpecific(AuditRule)

Menghapus semua aturan audit yang sama persis dengan aturan audit yang ditentukan dari Daftar Kontrol Akses Sistem (SACL) yang terkait dengan objek CommonObjectSecurity ini.

(Diperoleh dari CommonObjectSecurity)
RemoveAuditRuleSpecific(FileSystemAuditRule)

Menghapus satu aturan audit izinkan atau tolak pencocokan dari file atau direktori saat ini.

ResetAccessRule(AccessRule)

Menghapus semua aturan akses dalam Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek CommonObjectSecurity ini lalu menambahkan aturan akses yang ditentukan.

(Diperoleh dari CommonObjectSecurity)
ResetAccessRule(FileSystemAccessRule)

Menambahkan izin daftar kontrol akses (ACL) yang ditentukan ke file atau direktori saat ini dan menghapus semua izin ACL yang cocok.

SetAccessRule(AccessRule)

Menghapus semua aturan akses yang berisi pengidentifikasi dan kualifikasi keamanan yang sama dengan aturan akses yang ditentukan dalam Daftar Kontrol Akses Diskresi (DACL) yang terkait dengan objek CommonObjectSecurity ini lalu menambahkan aturan akses yang ditentukan.

(Diperoleh dari CommonObjectSecurity)
SetAccessRule(FileSystemAccessRule)

Mengatur izin daftar kontrol akses (ACL) yang ditentukan untuk file atau direktori saat ini.

SetAccessRuleProtection(Boolean, Boolean)

Mengatur atau menghapus perlindungan aturan akses yang terkait dengan objek ObjectSecurity ini. Aturan akses yang dilindungi tidak dapat dimodifikasi oleh objek induk melalui pewarisan.

(Diperoleh dari ObjectSecurity)
SetAuditRule(AuditRule)

Menghapus semua aturan audit yang berisi pengidentifikasi dan kualifikasi keamanan yang sama dengan aturan audit yang ditentukan dalam Daftar Kontrol Akses Sistem (SACL) yang terkait dengan objek CommonObjectSecurity ini lalu menambahkan aturan audit yang ditentukan.

(Diperoleh dari CommonObjectSecurity)
SetAuditRule(FileSystemAuditRule)

Mengatur aturan audit yang ditentukan untuk file atau direktori saat ini.

SetAuditRuleProtection(Boolean, Boolean)

Mengatur atau menghapus perlindungan aturan audit yang terkait dengan objek ObjectSecurity ini. Aturan audit yang dilindungi tidak dapat dimodifikasi oleh objek induk melalui pewarisan.

(Diperoleh dari ObjectSecurity)
SetGroup(IdentityReference)

Mengatur grup utama untuk deskriptor keamanan yang terkait dengan objek ObjectSecurity ini.

(Diperoleh dari ObjectSecurity)
SetOwner(IdentityReference)

Mengatur pemilik untuk deskriptor keamanan yang terkait dengan objek ObjectSecurity ini.

(Diperoleh dari ObjectSecurity)
SetSecurityDescriptorBinaryForm(Byte[])

Mengatur pendeskripsi keamanan untuk objek ObjectSecurity ini dari array nilai byte yang ditentukan.

(Diperoleh dari ObjectSecurity)
SetSecurityDescriptorBinaryForm(Byte[], AccessControlSections)

Mengatur bagian yang ditentukan dari deskriptor keamanan untuk objek ObjectSecurity ini dari array nilai byte yang ditentukan.

(Diperoleh dari ObjectSecurity)
SetSecurityDescriptorSddlForm(String)

Mengatur deskriptor keamanan untuk objek ObjectSecurity ini dari string Security Descriptor Definition Language (SDDL) yang ditentukan.

(Diperoleh dari ObjectSecurity)
SetSecurityDescriptorSddlForm(String, AccessControlSections)

Mengatur bagian yang ditentukan dari deskriptor keamanan untuk objek ObjectSecurity ini dari string Security Descriptor Definition Language (SDDL) yang ditentukan.

(Diperoleh dari ObjectSecurity)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
WriteLock()

Mengunci objek ObjectSecurity ini untuk akses tulis.

(Diperoleh dari ObjectSecurity)
WriteUnlock()

Membuka kunci objek ObjectSecurity ini untuk akses tulis.

(Diperoleh dari ObjectSecurity)

Berlaku untuk