FileSecurity Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Egy fájl hozzáférés-vezérlési és naplózási biztonságát jelöli. Ez az osztály nem örökölhető.
public ref class FileSecurity sealed : System::Security::AccessControl::FileSystemSecurity
public sealed class FileSecurity : System.Security.AccessControl.FileSystemSecurity
[System.Security.SecurityCritical]
public sealed class FileSecurity : System.Security.AccessControl.FileSystemSecurity
type FileSecurity = class
inherit FileSystemSecurity
[<System.Security.SecurityCritical>]
type FileSecurity = class
inherit FileSystemSecurity
Public NotInheritable Class FileSecurity
Inherits FileSystemSecurity
- Öröklődés
- Attribútumok
Példák
Az alábbi példakód az FileSecurity osztály használatával vesz fel és távolít el egy hozzáférés-vezérlési lista (ACL) bejegyzést egy fájlból. A példa futtatásához érvényes felhasználói vagy csoportfiókot kell megadnia.
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
Megjegyzések
Az FileSecurity osztály megadja a rendszerfájl hozzáférési jogosultságait és a hozzáférési kísérletek naplózásának módját. Ez az osztály a hozzáférési és naplózási jogosultságokat szabálykészletként jelöli. Minden hozzáférési szabályt egy FileSystemAccessRule objektum jelöl. Minden naplózási szabályt egy FileSystemAuditRule objektum jelöl.
A FileSecurity osztály a mögöttes Microsoft Windows fájlrendszer absztrakciója. Ebben a rendszerben minden fájl rendelkezik egy diszkréciós hozzáférés-vezérlési listával (DACL), amely szabályozza a fájlhoz való hozzáférést, valamint egy rendszerhozzáférés-vezérlési listát (SACL), amely meghatározza a naplózott hozzáférés-vezérlési kísérleteket. Az FileSystemAccessRule osztályok a FileSystemAuditRule hozzáférés-vezérlési bejegyzések (ACE-k) absztrakciói, amelyek DACL-eket és SAC-okat tartalmaznak.
Az FileSecurity osztály elrejti a DACL-ek és a SACL-ek számos részletét; nem kell aggódnia az ACE-rendezés vagy a null DACLs miatt.
FileSecurity Az osztály használatával lekérheti, hozzáadhatja vagy módosíthatja a fájl DACL-ét és SACL-ét képviselő hozzáférési szabályokat.
A következő .NET implementációfüggő metódusok használatával adja hozzá vagy kérje le a hozzáférési vagy naplózási szabályokat egy fájlból:
| .NET-implementáció | Szabályok hozzáadása | Szabályok lekérése |
|---|---|---|
| .NET | FileSystemAclExtensions.SetAccessControl(FileInfo, FileSecurity) | FileSystemAclExtensions.GetAccessControl(FileInfo) |
| .NET-keretrendszer | FileInfo.SetAccessControl(FileSecurity) | FileInfo.GetAccessControl() |
Konstruktorok
| Name | Description |
|---|---|
| FileSecurity() |
Inicializálja a FileSecurity osztály új példányát. |
| FileSecurity(String, AccessControlSections) |
Inicializálja az FileSecurity osztály új példányát egy megadott fájlból az AccessControlSections enumerálás megadott értékeinek használatával. |
Tulajdonságok
| Name | Description |
|---|---|
| AccessRightType |
Lekéri azt az enumerálást, amelyet az FileSystemSecurity osztály a hozzáférési jogosultságok megjelenítésére használ. (Öröklődés forrása FileSystemSecurity) |
| AccessRulesModified |
Lekéri vagy beállít egy logikai értéket, amely meghatározza, hogy az objektumhoz ObjectSecurity társított hozzáférési szabályok módosultak-e. (Öröklődés forrása ObjectSecurity) |
| AccessRuleType |
Lekéri azt az enumerálást, amelyet az FileSystemSecurity osztály a hozzáférési szabályok megjelenítésére használ. (Öröklődés forrása FileSystemSecurity) |
| AreAccessRulesCanonical |
Logikai értéket kap, amely meghatározza, hogy az objektumhoz ObjectSecurity társított hozzáférési szabályok kánonikus sorrendben vannak-e. (Öröklődés forrása ObjectSecurity) |
| AreAccessRulesProtected |
Logikai értéket kap, amely meghatározza, hogy a ObjectSecurity objektumhoz társított diszkrecionális Access Control lista (DACL) védett-e. (Öröklődés forrása ObjectSecurity) |
| AreAuditRulesCanonical |
Logikai értéket kap, amely meghatározza, hogy az objektumhoz ObjectSecurity társított naplózási szabályok canonikus sorrendben vannak-e. (Öröklődés forrása ObjectSecurity) |
| AreAuditRulesProtected |
Logikai értéket kap, amely meghatározza, hogy a ObjectSecurity objektumhoz társított Rendszer Access Control lista (SACL) védett-e. (Öröklődés forrása ObjectSecurity) |
| AuditRulesModified |
Lekéri vagy beállít egy logikai értéket, amely meghatározza, hogy az objektumhoz ObjectSecurity társított naplózási szabályok módosultak-e. (Öröklődés forrása ObjectSecurity) |
| AuditRuleType |
Lekéri az osztály által a FileSystemSecurity naplózási szabályok megjelenítésére használt típust. (Öröklődés forrása FileSystemSecurity) |
| GroupModified |
Lekéri vagy beállít egy logikai értéket, amely meghatározza, hogy a biztonságos objektumhoz társított csoport módosult-e. (Öröklődés forrása ObjectSecurity) |
| IsContainer |
Logikai értéket kap, amely meghatározza, hogy ez ObjectSecurity az objektum tárolóobjektum-e. (Öröklődés forrása ObjectSecurity) |
| IsDS |
Logikai értéket kap, amely meghatározza, hogy ez ObjectSecurity az objektum címtárobjektum-e. (Öröklődés forrása ObjectSecurity) |
| OwnerModified |
Lekéri vagy beállít egy logikai értéket, amely meghatározza, hogy a biztonságos objektum tulajdonosa módosult-e. (Öröklődés forrása ObjectSecurity) |
| SecurityDescriptor |
Lekéri a példányhoz tartozó biztonsági leírót. (Öröklődés forrása ObjectSecurity) |
Metódusok
| Name | Description |
|---|---|
| AccessRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AccessControlType) |
Inicializálja az FileSystemAccessRule osztály új példányát, amely egy új hozzáférés-vezérlési szabályt jelöl a megadott felhasználó számára a megadott hozzáférési jogosultságokkal, hozzáférés-vezérléssel és jelzőkkel. (Öröklődés forrása FileSystemSecurity) |
| AddAccessRule(AccessRule) |
Hozzáadja a megadott hozzáférési szabályt a CommonObjectSecurity objektumhoz társított diszkréciós Access Control listához (DACL). (Öröklődés forrása CommonObjectSecurity) |
| AddAccessRule(FileSystemAccessRule) |
Hozzáadja a megadott hozzáférés-vezérlési listát (ACL) az aktuális fájlhoz vagy könyvtárhoz. (Öröklődés forrása FileSystemSecurity) |
| AddAuditRule(AuditRule) |
Hozzáadja a megadott naplózási szabályt a CommonObjectSecurity objektumhoz társított System Access Control List (SACL) listához. (Öröklődés forrása CommonObjectSecurity) |
| AddAuditRule(FileSystemAuditRule) |
Hozzáadja a megadott naplózási szabályt az aktuális fájlhoz vagy könyvtárhoz. (Öröklődés forrása FileSystemSecurity) |
| AuditRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AuditFlags) |
Inicializálja az osztály új példányát, FileSystemAuditRule amely a megadott felhasználó megadott naplózási szabályát képviseli. (Öröklődés forrása FileSystemSecurity) |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetAccessRules(Boolean, Boolean, Type) |
Lekéri a megadott biztonsági azonosítóhoz társított hozzáférési szabályok gyűjteményét. (Öröklődés forrása CommonObjectSecurity) |
| GetAuditRules(Boolean, Boolean, Type) |
Lekéri a megadott biztonsági azonosítóhoz társított naplózási szabályok gyűjteményét. (Öröklődés forrása CommonObjectSecurity) |
| GetGroup(Type) |
Lekéri a megadott tulajdonoshoz társított elsődleges csoportot. (Öröklődés forrása ObjectSecurity) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetOwner(Type) |
Lekéri a megadott elsődleges csoporthoz társított tulajdonost. (Öröklődés forrása ObjectSecurity) |
| GetSecurityDescriptorBinaryForm() |
Bájtértékeket tartalmazó tömböt ad vissza, amely az objektum biztonsági leíró adatait ObjectSecurity jelöli. (Öröklődés forrása ObjectSecurity) |
| GetSecurityDescriptorSddlForm(AccessControlSections) |
Az objektumhoz ObjectSecurity társított biztonsági leíró megadott szakaszainak biztonsági leíró definíciós nyelvét (SDDL) adja vissza. (Öröklődés forrása ObjectSecurity) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ModifyAccess(AccessControlModification, AccessRule, Boolean) |
Alkalmazza a megadott módosítást a CommonObjectSecurity objektumhoz társított diszkrecionális Access Control listára (DACL). (Öröklődés forrása CommonObjectSecurity) |
| ModifyAccessRule(AccessControlModification, AccessRule, Boolean) |
Alkalmazza a megadott módosítást a ObjectSecurity objektumhoz társított diszkrecionális Access Control listára (DACL). (Öröklődés forrása ObjectSecurity) |
| ModifyAudit(AccessControlModification, AuditRule, Boolean) |
Alkalmazza a megadott módosítást a CommonObjectSecurity objektumhoz társított System Access Control listára (SACL). (Öröklődés forrása CommonObjectSecurity) |
| ModifyAuditRule(AccessControlModification, AuditRule, Boolean) |
Alkalmazza a megadott módosítást a ObjectSecurity objektumhoz társított System Access Control listára (SACL). (Öröklődés forrása ObjectSecurity) |
| Persist(Boolean, String, AccessControlSections) |
Menti az objektumhoz ObjectSecurity társított biztonsági leíró megadott szakaszait állandó tárolóba. Javasoljuk, hogy a konstruktornak átadott paraméterek és a megőrző metódusok értékei |
| Persist(SafeHandle, AccessControlSections, Object) |
Menti az objektumhoz NativeObjectSecurity társított biztonsági leíró megadott szakaszait állandó tárolóba. Javasoljuk, hogy a konstruktornak átadott paraméterek és a megőrző metódusok értékei |
| Persist(SafeHandle, AccessControlSections) |
Menti az objektumhoz NativeObjectSecurity társított biztonsági leíró megadott szakaszait állandó tárolóba. Javasoljuk,hogy őrizze meg, hogy a |
| Persist(String, AccessControlSections, Object) |
Menti az objektumhoz NativeObjectSecurity társított biztonsági leíró megadott szakaszait állandó tárolóba. Javasoljuk, hogy a konstruktornak átadott paraméterek és a megőrző metódusok értékei |
| Persist(String, AccessControlSections) |
Menti az objektumhoz NativeObjectSecurity társított biztonsági leíró megadott szakaszait állandó tárolóba. Javasoljuk, hogy a konstruktornak átadott paraméterek és a megőrző metódusok értékei |
| PurgeAccessRules(IdentityReference) |
Eltávolítja a megadotthoz IdentityReferencetársított összes hozzáférési szabályt. (Öröklődés forrása ObjectSecurity) |
| PurgeAuditRules(IdentityReference) |
Eltávolítja a megadotthoz IdentityReferencetársított összes naplózási szabályt. (Öröklődés forrása ObjectSecurity) |
| ReadLock() |
Zárolja ezt az ObjectSecurity objektumot olvasási hozzáféréshez. (Öröklődés forrása ObjectSecurity) |
| ReadUnlock() |
Az objektum zárolásának feloldása ObjectSecurity olvasási hozzáféréshez. (Öröklődés forrása ObjectSecurity) |
| RemoveAccessRule(AccessRule) |
Eltávolítja azokat a hozzáférési szabályokat, amelyek ugyanazt a biztonsági azonosítót és hozzáférési maszkot tartalmazzák, mint a megadott hozzáférési szabály a CommonObjectSecurity objektumhoz társított Diszkréciós Access Control Listából (DACL). (Öröklődés forrása CommonObjectSecurity) |
| RemoveAccessRule(FileSystemAccessRule) |
Eltávolítja az összes egyező hozzáférés-vezérlési lista (ACL) engedélyét az aktuális fájlból vagy könyvtárból. (Öröklődés forrása FileSystemSecurity) |
| RemoveAccessRuleAll(AccessRule) |
Eltávolít minden olyan hozzáférési szabályt, amely ugyanazzal a biztonsági azonosítóval rendelkezik, mint a megadott hozzáférési szabály a CommonObjectSecurity objektumhoz társított Diszkréciós Access Control listából (DACL). (Öröklődés forrása CommonObjectSecurity) |
| RemoveAccessRuleAll(FileSystemAccessRule) |
Eltávolítja a megadott felhasználó összes hozzáférés-vezérlési listáját (ACL) az aktuális fájlból vagy könyvtárból. (Öröklődés forrása FileSystemSecurity) |
| RemoveAccessRuleSpecific(AccessRule) |
Eltávolít minden olyan hozzáférési szabályt, amely pontosan megfelel a megadott hozzáférési szabálynak a CommonObjectSecurity objektumhoz társított Diszkrecionális Access Control listából (DACL). (Öröklődés forrása CommonObjectSecurity) |
| RemoveAccessRuleSpecific(FileSystemAccessRule) |
Egyetlen egyező hozzáférés-vezérlési lista (ACL) engedély eltávolítása az aktuális fájlból vagy könyvtárból. (Öröklődés forrása FileSystemSecurity) |
| RemoveAuditRule(AuditRule) |
Eltávolítja azokat a naplózási szabályokat, amelyek ugyanazt a biztonsági azonosítót és hozzáférési maszkot tartalmazzák, mint a megadott naplózási szabály a CommonObjectSecurity objektumhoz társított System Access Control Listából (SACL). (Öröklődés forrása CommonObjectSecurity) |
| RemoveAuditRule(FileSystemAuditRule) |
Eltávolítja az összes egyező engedélyezési vagy letiltási naplózási szabályt az aktuális fájlból vagy könyvtárból. (Öröklődés forrása FileSystemSecurity) |
| RemoveAuditRuleAll(AuditRule) |
Eltávolít minden olyan naplózási szabályt, amely ugyanazzal a biztonsági azonosítóval rendelkezik, mint a megadott naplózási szabály a CommonObjectSecurity objektumhoz társított System Access Control Listából (SACL). (Öröklődés forrása CommonObjectSecurity) |
| RemoveAuditRuleAll(FileSystemAuditRule) |
Eltávolítja a megadott felhasználó összes naplózási szabályát az aktuális fájlból vagy könyvtárból. (Öröklődés forrása FileSystemSecurity) |
| RemoveAuditRuleSpecific(AuditRule) |
Eltávolítja az összes olyan naplózási szabályt, amely pontosan megfelel a megadott naplózási szabálynak a CommonObjectSecurity objektumhoz társított System Access Control Listából (SACL). (Öröklődés forrása CommonObjectSecurity) |
| RemoveAuditRuleSpecific(FileSystemAuditRule) |
Egyetlen egyező engedélyezési vagy letiltási naplózási szabály eltávolítása az aktuális fájlból vagy könyvtárból. (Öröklődés forrása FileSystemSecurity) |
| ResetAccessRule(AccessRule) |
Eltávolítja a CommonObjectSecurity objektumhoz társított Diszkrecionális Access Control listában (DACL) szereplő összes hozzáférési szabályt, majd hozzáadja a megadott hozzáférési szabályt. (Öröklődés forrása CommonObjectSecurity) |
| ResetAccessRule(FileSystemAccessRule) |
Hozzáadja a megadott hozzáférés-vezérlési listát (ACL) az aktuális fájlhoz vagy könyvtárhoz, és eltávolítja az összes megfelelő ACL-engedélyt. (Öröklődés forrása FileSystemSecurity) |
| SetAccessRule(AccessRule) |
Eltávolít minden olyan hozzáférési szabályt, amely ugyanazt a biztonsági azonosítót és minősítőt tartalmazza, mint a CommonObjectSecurity objektumhoz társított Diszkréciós Access Control listában (DACL), majd hozzáadja a megadott hozzáférési szabályt. (Öröklődés forrása CommonObjectSecurity) |
| SetAccessRule(FileSystemAccessRule) |
Beállítja a megadott hozzáférés-vezérlési listát (ACL) az aktuális fájlhoz vagy könyvtárhoz. (Öröklődés forrása FileSystemSecurity) |
| SetAccessRuleProtection(Boolean, Boolean) |
Beállítja vagy eltávolítja az objektumhoz ObjectSecurity társított hozzáférési szabályok védelmét. A védett hozzáférési szabályokat a szülőobjektumok nem módosíthatják örökléssel. (Öröklődés forrása ObjectSecurity) |
| SetAuditRule(AuditRule) |
Eltávolít minden olyan naplózási szabályt, amely ugyanazt a biztonsági azonosítót és minősítőt tartalmazza, mint a CommonObjectSecurity objektumhoz társított System Access Control List (SACL) megadott naplózási szabálya, majd hozzáadja a megadott naplózási szabályt. (Öröklődés forrása CommonObjectSecurity) |
| SetAuditRule(FileSystemAuditRule) |
Beállítja az aktuális fájl vagy könyvtár megadott naplózási szabályát. (Öröklődés forrása FileSystemSecurity) |
| SetAuditRuleProtection(Boolean, Boolean) |
Beállítja vagy eltávolítja az objektumhoz ObjectSecurity társított naplózási szabályok védelmét. A védett naplózási szabályokat a szülőobjektumok nem módosíthatják örökléssel. (Öröklődés forrása ObjectSecurity) |
| SetGroup(IdentityReference) |
Beállítja az objektumhoz társított ObjectSecurity biztonsági leíró elsődleges csoportját. (Öröklődés forrása ObjectSecurity) |
| SetOwner(IdentityReference) |
Beállítja az objektumhoz társított biztonsági leíró tulajdonosát ObjectSecurity . (Öröklődés forrása ObjectSecurity) |
| SetSecurityDescriptorBinaryForm(Byte[], AccessControlSections) |
Az objektum biztonsági leírójának ObjectSecurity megadott szakaszait a megadott bájtértékekből állítja be. (Öröklődés forrása ObjectSecurity) |
| SetSecurityDescriptorBinaryForm(Byte[]) |
Az objektum biztonsági leíróját ObjectSecurity a megadott bájtértékekből állítja be. (Öröklődés forrása ObjectSecurity) |
| SetSecurityDescriptorSddlForm(String, AccessControlSections) |
Az objektum biztonsági leírójának ObjectSecurity megadott szakaszait a megadott Biztonsági leíró definíciós nyelv (SDDL) sztringből állítja be. (Öröklődés forrása ObjectSecurity) |
| SetSecurityDescriptorSddlForm(String) |
Az objektum biztonsági leíróját ObjectSecurity a megadott Biztonsági leíró definíciós nyelv (SDDL) sztringből állítja be. (Öröklődés forrása ObjectSecurity) |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
| WriteLock() |
Zárolja ezt az ObjectSecurity objektumot írási hozzáféréshez. (Öröklődés forrása ObjectSecurity) |
| WriteUnlock() |
Az objektum zárolásának feloldása ObjectSecurity írási hozzáféréshez. (Öröklődés forrása ObjectSecurity) |