Sdílet prostřednictvím


Technologické shrnutí pro seznamy ACL

Toto téma shrnuje informace o spravovaném rozhraní API pro volitelné seznamy řízení přístupu (DACL), systémové seznamy řízení přístupu (SACL) a položky řízení přístupu (ACE). Můžete použít třídy v oboru názvů System.Security.AccessControl k programovému přístupu DACL, SACL a ACE pro několik typů chráněných prostředků v rozhraní .NET Framework verze 2.0 a novější.

Spravované rozhraní API seznamů ACL usnadňuje práci se seznamy ACL lépe, než nespravovaná implementace poskytnutím několika tříd, které se budou nepřetržitě starat o mnoho podrobností. Například není možné vytvořit null DACL ve spravované implementaci a již není nutné se obávat, že omylem vytvoříte nezabezpečené DACL z důvodu nesprávného objednání vašich ACE.

Klíčová slova

Seznam řízení přístupu (ACL), volitelný seznam řízení přístupu (DACL), systémový seznam řízení přístupu (SACL), položka řízení přístupu (ACE), audit ACE

Obory názvů

System.Security.AccessControl

Související technlogie

Zabezpečení v rozhraní .NET Framework

Základní informace

Volitelný seznam řízení přístupu (DACL), který je někdy zkrácený na ACL, je mechanismus použitý k ochraně prostředků, například souborů a složek pomocí systému Microsoft Windows NT. DACL obsahuje více položek řízení přístupu (ACE), které přiřadí objekt zabezpečení (obvykle uživatelský účet nebo skupina účtů) s pravidlem, které řídí použití prostředku. DACL a ACE umožňují povolit nebo odepřít práva prostředkům založená na oprávněních, které je možné přiřadit uživatelským účtům. Například můžete vytvořit ACE a použít jej pro seznam DACL souboru k zabránění jeho čtení komukoli kromě správce.

Systémový seznam řízení přístupu (SACL), který se někdy nazývá audit ACE, je mechanismus ovládající zprávy o auditu přidružené k prostředku. Podobně jako DACL, SACL obsahuje ACE definující pravidla auditu pro daný prostředek. Audit ACE vám umožňuje zaznamenat úspěšné nebo neúspěšné pokusy o přístup k prostředku, ale liší se od přístupu ACE, protože neurčují účty, které mohou prostředek použít. Například můžete vytvořit ACE a použít jej pro SACL souboru k protokolování všech úspěšných pokusů o otevření souboru.

Třídy ACL v kostce

Následující tabulka uvádí hlavní třídy, které můžete použít pro snadné vytváření a upravování ACL v několika oblastech technologie. Toto není vyčerpávající seznam oboru názvů System.Security.AccessControl, ale spíše seznam primárních tříd, které byste měli používat k práci s ACL.

Technologická oblast

Třídy

Kryptografické klíče

CryptoKeySecurity

CryptoKeyAccessRule

CryptoKeyAuditRule

Adresáře

DirectorySecurity

FileSystemAccessRule

FileSystemAuditRule

Popisovače události čekání

EventWaitHandleSecurity

EventWaitHandleAccessRule

EventWaitHandleAuditRule

Soubory

FileSecurity

FileSystemAccessRule

FileSystemAuditRule

Mutexy

MutexSecurity

MutexAccessRule

MutexAuditRule

Klíče registru

RegistrySecurity

RegistryAccessRule

RegistryAuditRule

Semafory

SemaphoreSecurity

SemaphoreAccessRule

SemaphoreAuditRule

Chcete-li se dotázat na stávající informaci ACL pro prostředek nebo použít upravené informace ACL na prostředek, musíte použít jednu z několika metod, které umožňují přístup do ACL existujícího prostředku. Třídy v předchozí tabulce poskytují metody pro vytváření a upravování ACL, ale neposkytují způsob, jak se dotázat nebo použít ACL.

Každý prostředek má přidružené metody, které se používají s ACL během vytvoření prostředku (obvykle přetížení konstruktoru), které načtou ACL pro existující prostředek a použijí ACL pro existující prostředek.

V následující tabulce jsou uvedeny metody používané k získání a nastavení ACL pro každou oblast technologie. Tyto metody jsou umístěny v několika oborech názvů mimo obor názvů System.Security.AccessControl a jsou součástí vysoké úrovně tříd, které představují určitý prostředek. Například pro dotaz na ACL pro zadaný adresář můžete použít metodu Directory.GetAccessControl k získání objektu DirectorySecurity, který zapouzdří DACL a SACL pro adresář. Všimněte si, že některé prostředky, jako jsou například soubory a adresáře, mají několik rovnocenných metod v různých třídách, které umožňují přístup do ACL.

Technologická oblast

Metody pro získání a nastavení ACL

Kryptografické klíče

CspParameters.CryptoKeySecurity

CspParameters.CspParameters

CspParameters.CspParameters

CspKeyContainerInfo.CryptoKeySecurity

Adresáře

Directory.GetAccessControl

Directory.SetAccessControl

DirectoryInfo.GetAccessControl

DirectoryInfo.SetAccessControl

DirectoryInfo.Create

Popisovače události čekání

EventWaitHandle.GetAccessControl

EventWaitHandle.SetAccessControl

EventWaitHandle.EventWaitHandle

Soubory

FileStream.GetAccessControl

FileStream.SetAccessControl

FileStream.FileStream

File.GetAccessControl

File.SetAccessControl

File.Create

FileInfo.GetAccessControl

FileInfo.SetAccessControl

Mutexy

Mutex.GetAccessControl

Mutex.SetAccessControl

Mutex.Mutex

Klíče registru

RegistryKey.GetAccessControl

RegistryKey.SetAccessControl

RegistryKey.CreateSubKey

Semafory

Semaphore.GetAccessControl

Semaphore.SetAccessControl

Semaphore.Semaphore

Viz také

Další zdroje

Přehled technologie ACL

Zabezpečení v rozhraní .NET Framework