Ciągi ACE
Język definicji deskryptora zabezpieczeń (SDDL) używa ciągów ACE w składnikach DACL i SACL deskryptora zabezpieczeń ciągu.
Jak pokazano w przykładach format ciągu deskryptora zabezpieczeń, każda ACE w ciągu deskryptora zabezpieczeń jest ujęta w nawiasy. Pola ACE są w następującej kolejności i są oddzielone średnikami (;).
Nuta
Wpisy kontroli dostępu warunkowego (ACE) mają inny format niż inne typy ACE. Aby uzyskać informacje na temat warunkowych kontroli dostępu, zobacz Security Descriptor Definition Language for Conditional ACEs.
ace_type;ace_flags;rights;object_guid;inherit_object_guid;account_sid;(resource_attribute)
Pola
-
ace_type
-
Ciąg wskazujący wartość AceType składowej struktury ACE_HEADER. Ciąg typu ACE może być jednym z następujących ciągów zdefiniowanych w pliku Sddl.h:
Ciąg typu ACE Stała w pliku Sddl.h Wartość AceType "A" SDDL_ACCESS_ALLOWED ACCESS_ALLOWED_ACE_TYPE "D" SDDL_ACCESS_DENIED ACCESS_DENIED_ACE_TYPE "OA" SDDL_OBJECT_ACCESS_ALLOWED ACCESS_ALLOWED_OBJECT_ACE_TYPE "OD" SDDL_OBJECT_ACCESS_DENIED ACCESS_DENIED_OBJECT_ACE_TYPE "AU" SDDL_AUDIT SYSTEM_AUDIT_ACE_TYPE "AL" SDDL_ALARM SYSTEM_ALARM_ACE_TYPE "Jednostka organizacyjna" SDDL_OBJECT_AUDIT SYSTEM_AUDIT_OBJECT_ACE_TYPE "OL" SDDL_OBJECT_ALARM SYSTEM_ALARM_OBJECT_ACE_TYPE "ML" SDDL_MANDATORY_LABEL SYSTEM_MANDATORY_LABEL_ACE_TYPE Windows Server 2003: Niedostępne. "XA" SDDL_CALLBACK_ACCESS_ALLOWED ACCESS_ALLOWED_CALLBACK_ACE_TYPE Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. "XD" SDDL_CALLBACK_ACCESS_DENIED ACCESS_DENIED_CALLBACK_ACE_TYPE Windows Server 2008, Windows Vista i Windows Server 2003: niedostępne. "RA" SDDL_RESOURCE_ATTRIBUTE SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. "SP" SDDL_SCOPED_POLICY_ID SYSTEM_SCOPED_POLICY_ID_ACE_TYPE Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. "XU" SDDL_CALLBACK_AUDIT SYSTEM_AUDIT_CALLBACK_ACE_TYPE Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. "ZA" SDDL_CALLBACK_OBJECT_ACCESS_ALLOWED ACCESS_ALLOWED_CALLBACK_ACE_TYPE Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. "TL" SDDL_PROCESS_TRUST_LABEL SYSTEM_PROCESS_TRUST_LABEL_ACE_TYPE Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. "FL" SDDL_ACCESS_FILTER SYSTEM_ACCESS_FILTER_ACE_TYPE Windows Server 2016, Windows 10 w wersji 1607, Windows 10 w wersji 1511, Windows 10 w wersji 1507, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista i Windows Server 2003: niedostępne. Nuta
Jeśli ace_type jest ACCESS_ALLOWED_OBJECT_ACE_TYPE, a object_guid ani inherit_object_guid nie ma określonegoidentyfikatora GUID, ConvertStringSecurityDescriptorToSecurityDescriptorDescriptor konwertuje ace_type na ACCESS_ALLOWED_ACE_TYPE.
-
ace_flags
-
Ciąg wskazujący wartość struktury AceFlags składowej struktury ACE_HEADER. Ciąg flag ACE może być łączeniem następujących ciągów zdefiniowanych w pliku Sddl.h:
Ciąg flag ACE Stała w pliku Sddl.h Wartość AceFlag "Ciągła integracja" SDDL_CONTAINER_INHERIT CONTAINER_INHERIT_ACE "OI" SDDL_OBJECT_INHERIT OBJECT_INHERIT_ACE "NP" SDDL_NO_PROPAGATE NO_PROPAGATE_INHERIT_ACE "We/Wy" SDDL_INHERIT_ONLY INHERIT_ONLY_ACE "ID" SDDL_INHERITED INHERITED_ACE "SA" SDDL_AUDIT_SUCCESS SUCCESSFUL_ACCESS_ACE_FLAG "FA" SDDL_AUDIT_FAILURE FAILED_ACCESS_ACE_FLAG "TP" SDDL_TRUST_PROTECTED_FILTER TRUST_PROTECTED_FILTER_ACE_FLAG Windows Server 2016, Windows 10 w wersji 1607, Windows 10 w wersji 1511, Windows 10 w wersji 1507, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista i Windows Server 2003: niedostępne. "CR" SDDL_CRITICAL CRITICAL_ACE_FLAG Windows Server w wersji 1803, Windows 10 w wersji 1803, Windows Server w wersji 1709, Windows 10 w wersji 1709, Windows 10 w wersji 1703, Windows Server 2016, Windows 10 w wersji 1607, Windows 10 w wersji 1511, Windows 10 w wersji 1507, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7 Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. -
prawa
-
Ciąg wskazujący prawa dostępu kontrolowane przez ACE. Ten ciąg może być ciągiem szesnastkowym reprezentującym prawa dostępu, takie jak "0x7800003F", lub może to być łączenie następujących ciągów.
Ogólne prawa dostępu
Ciąg praw dostępu Stała w pliku Sddl.h Uzyskiwanie dostępu do właściwej wartości "GA" SDDL_GENERIC_ALL GENERIC_ALL "GR" SDDL_GENERIC_READ GENERIC_READ "GW" SDDL_GENERIC_WRITE GENERIC_WRITE "GX" SDDL_GENERIC_EXECUTE GENERIC_EXECUTE Standardowe prawa dostępu
Ciąg praw dostępu Stała w pliku Sddl.h Uzyskiwanie dostępu do właściwej wartości "RC" SDDL_READ_CONTROL READ_CONTROL "SD" SDDL_STANDARD_DELETE USUNĄĆ "WD" SDDL_WRITE_DAC WRITE_DAC "WO" SDDL_WRITE_OWNER WRITE_OWNER Prawa dostępu do obiektu usługi katalogowej
Ciąg praw dostępu Stała w pliku Sddl.h Uzyskiwanie dostępu do właściwej wartości "RP" SDDL_READ_PROPERTY ADS_RIGHT_DS_READ_PROP "WP" SDDL_WRITE_PROPERTY ADS_RIGHT_DS_WRITE_PROP "CC" SDDL_CREATE_CHILD ADS_RIGHT_DS_CREATE_CHILD "DC" SDDL_DELETE_CHILD ADS_RIGHT_DS_DELETE_CHILD "LC" SDDL_LIST_CHILDREN ADS_RIGHT_ACTRL_DS_LIST "SW" SDDL_SELF_WRITE ADS_RIGHT_DS_SELF "LO" SDDL_LIST_OBJECT ADS_RIGHT_DS_LIST_OBJECT "DT" SDDL_DELETE_TREE ADS_RIGHT_DS_DELETE_TREE "CR" SDDL_CONTROL_ACCESS ADS_RIGHT_DS_CONTROL_ACCESS Prawa dostępu do plików
Ciąg praw dostępu Stała w pliku Sddl.h Uzyskiwanie dostępu do właściwej wartości "FA" SDDL_FILE_ALL FILE_GENERIC_ALL "FR" SDDL_FILE_READ FILE_GENERIC_READ "FW" SDDL_FILE_WRITE FILE_GENERIC_WRITE "FX" SDDL_FILE_EXECUTE FILE_GENERIC_EXECUTE Prawa dostępu do klucza rejestru
Ciąg praw dostępu Stała w pliku Sddl.h Uzyskiwanie dostępu do właściwej wartości "KA" SDDL_KEY_ALL KEY_ALL_ACCESS "KR" SDDL_KEY_READ KEY_READ "KW" SDDL_KEY_WRITE KEY_WRITE "KX" SDDL_KEY_EXECUTE KEY_EXECUTE Obowiązkowe prawa do etykiet
Ciąg praw dostępu Stała w pliku Sddl.h Uzyskiwanie dostępu do właściwej wartości "NR" SDDL_NO_READ_UP SYSTEM_MANDATORY_LABEL_NO_READ_UP Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. "NW" SDDL_NO_WRITE_UP SYSTEM_MANDATORY_LABEL_NO_WRITE_UP Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. "NX" SDDL_NO_EXECUTE_UP SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP Windows Server 2008, Windows Vista i Windows Server 2003: Niedostępne. -
object_guid
-
Reprezentacja ciągu identyfikatora GUID, który wskazuje wartość ObjectType składowej struktury ACE specyficznej dla obiektu, takiej jak ACCESS_ALLOWED_OBJECT_ACE. Ciąg identyfikatora GUID używa formatu zwróconego przez funkcję UuidToString.
W poniższej tabeli wymieniono niektóre powszechnie używane identyfikatory GUID obiektów:
Prawa i identyfikator GUID Pozwolenie CR; ab721a53-1e2f-11d0-9819-00aa0040529b Zmienianie hasła CR; 00299570-246d-11d0-a768-00aa006e0529 Resetowanie hasła -
inherit_object_guid
-
Reprezentacja ciągu identyfikatora GUID, który wskazuje wartość InheritedObjectType składowej struktury ACE specyficznej dla obiektu. Ciąg identyfikatora GUID używa formatu UuidToString.
-
account_sid
-
resource_attribute
-
[OPCJONALNIE] Resource_attribute dotyczy tylko zasobów ACL i jest opcjonalny. Ciąg wskazujący typ danych. Typ danych asa atrybutu zasobu może być jednym z następujących typów danych zdefiniowanych w sddl.h.
Znak "#" jest synonimem "0" w atrybutach zasobów. Na przykład D:AI(XA; OICI;FA;; Biały karzeł; (OctetStringType==#1#2#3#)) jest równoważne i interpretowane jako D:AI(XA; OICI;FA;; Biały karzeł; (OctetStringType==#01020300)).
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista i Windows Server 2003: atrybuty zasobów nie są dostępne.
Ciąg typu danych as atrybutu zasobu Stała w pliku Sddl.h Typ danych "TI" SDDL_INT Całkowita "TU" SDDL_UINT Liczba całkowita bez znaku "TS" SDDL_WSTRING Szeroki ciąg "TD" SDDL_SID SID "TX" SDDL_BLOB Ciąg oktetu "TB" SDDL_BOOLEAN Boolowski
W poniższym przykładzie przedstawiono ciąg ACE dla dozwolonego dostępu ACE. Nie jest to ACE specyficzna dla obiektu, dlatego nie zawiera żadnych informacji w polach object_guid i inherit_object_guid. Pole ace_flags jest również puste, co oznacza, że żadna z flag ACE nie jest ustawiona.
(A;;RPWPCCDCLCSWRCWDWOGA;;;S-1-1-0)
W powyższym ciągu ACE opisano następujące informacje ACE.
AceType: 0x00 (ACCESS_ALLOWED_ACE_TYPE)
AceFlags: 0x00
Access Mask: 0x100e003f
READ_CONTROL
WRITE_DAC
WRITE_OWNER
GENERIC_ALL
Other access rights(0x0000003f)
Ace Sid : (S-1-1-0)
W poniższym przykładzie pokazano plik sklasyfikowany z oświadczeniami zasobów dla systemu Windows i języka SQL (Structured Query Language) z tajemnicą ustawioną na wartość High Business Impact.
(RA;CI;;;;S-1-1-0; ("Project",TS,0,"Windows","SQL"))
(RA;CI;;;;S-1-1-0; ("Secrecy",TU,0,3))
W powyższym ciągu ACE opisano następujące informacje ACE.
AceType: 0x12 (SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE)
AceFlags: 0x1 (SDDL_CONTAINER_INHERIT)
Access Mask: 0x0
Ace Sid : (S-1-1-0)
Resource Attributes: Project has the strings Windows and SQL, Secrecy has the unsigned int value of 3
Aby uzyskać więcej informacji, zobacz Security Descriptor String Format and SID Strings. Aby uzyskać informacje na temat warunkowych kontroli dostępu, zobacz Security Descriptor Definition Language for Conditional ACEs.