Stringhe ACE

Il linguaggio di definizione del descrittore di sicurezza (SDDL) usa stringhe ACE nei componenti DACL e SACL di una stringa del descrittore di sicurezza .

Come illustrato negli esempi di formato stringa descrittore di sicurezza , ogni ACE in una stringa del descrittore di sicurezza è racchiusa tra parentesi. I campi dell'ACE sono nell'ordine seguente e sono separati da punti e virgola (;).

Nota

Le voci del controllo di accesso condizionale hanno un formato diverso da quelli di altri tipi ACE. Per gli ACL condizionali, vedere Linguaggio di definizione del descrittore di sicurezza per gli ACL condizionali.

ace_type;ace_flags;rights;object_guid;inherit_object_guid;account_sid;(resource_attribute)

Campi

ace_type

Stringa che indica il valore del membro AceType della struttura ACE_HEADER . La stringa di tipo ACE può essere una delle stringhe seguenti definite in Sddl.h:

Stringa di tipo ACE Costante in Sddl.h Valore 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
"OU" 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: non disponibile.
"XA" SDDL_CALLBACK_ACCESS_ALLOWED ACCESS_ALLOWED_CALLBACK_ACE_TYPE Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"XD" SDDL_CALLBACK_ACCESS_DENIED ACCESS_DENIED_CALLBACK_ACE_TYPE Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"RA" SDDL_RESOURCE_ATTRIBUTE SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"SP" SDDL_SCOPED_POLICY_ID SYSTEM_SCOPED_POLICY_ID_ACE_TYPE Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"XU" SDDL_CALLBACK_AUDIT SYSTEM_AUDIT_CALLBACK_ACE_TYPE Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"ZA" SDDL_CALLBACK_OBJECT_ACCESS_ALLOWED ACCESS_ALLOWED_CALLBACK_ACE_TYPE Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"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 e Windows Server 2003: non disponibile.
"FL" SDDL_ACCESS_FILTER SYSTEM_ACCESS_FILTER_ACE_TYPE Windows Server 2016, Windows 10 versione 1607, Windows 10 versione 1511, Windows 10 versione 1507, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.

Nota

Se ace_type è ACCESS_ALLOWED_OBJECT_ACE_TYPE e non object_guid né inherit_object_guid ha un GUID specificato, ConvertStringSecurityDescriptorToSecurityDescriptor converteace_type in ACCESS_ALLOWED_ACE_TYPE.

ace_flags

Stringa che indica il valore del membro AceFlags della struttura ACE_HEADER . La stringa di flag ACE può essere una concatenazione delle stringhe seguenti definite in Sddl.h:

Stringa di flag ACE Costante in Sddl.h Valore AceFlag
"CI" SDDL_CONTAINER_INHERIT CONTAINER_INHERIT_ACE
"OI" SDDL_OBJECT_INHERIT OBJECT_INHERIT_ACE
"NP" SDDL_NO_PROPAGATE NO_PROPAGATE_INHERIT_ACE
"IO" 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 versione 1607, Windows 10 versione 1511, Windows 10 versione 1507, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"CR" SDDL_CRITICAL CRITICAL_ACE_FLAG Windows Server versione 1803, Windows 10 versione 1803, Windows Server versione 1709, Windows 10 versione 1709, Windows 10 versione 1703, Windows Server 2016, Windows 10 versione 1607, Windows 10 versione 1511, Windows 10 versione 1507, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.

Diritti

Stringa che indica i diritti di accesso controllati dall'ACE. Questa stringa può essere una rappresentazione di stringa esadecimale dei diritti di accesso, ad esempio "0x7800003F", oppure può essere una concatenazione delle stringhe seguenti.

Diritti di accesso generico

Stringa di diritti di accesso Costante in Sddl.h Valore del diritto di accesso
"GA" SDDL_GENERIC_ALL GENERIC_ALL
"GR" SDDL_GENERIC_READ GENERIC_READ
"GW" SDDL_GENERIC_WRITE GENERIC_WRITE
"GX" SDDL_GENERIC_EXECUTE GENERIC_EXECUTE

Diritti di accesso standard

Stringa di diritti di accesso Costante in Sddl.h Valore del diritto di accesso
"RC" SDDL_READ_CONTROL READ_CONTROL
"SD" SDDL_STANDARD_DELETE DELETE
"WD" SDDL_WRITE_DAC WRITE_DAC
"WO" SDDL_WRITE_OWNER WRITE_OWNER

Diritti di accesso a oggetti del servizio directory

Stringa di diritti di accesso Costante in Sddl.h Valore del diritto di accesso
"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

Diritti di accesso ai file

Stringa di diritti di accesso Costante in Sddl.h Valore del diritto di accesso
"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

Diritti di accesso alle chiavi del Registro di sistema

Stringa di diritti di accesso Costante in Sddl.h Valore del diritto di accesso
"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

Diritti di etichetta obbligatori

Stringa di diritti di accesso Costante in Sddl.h Valore diritto di accesso
"NR" SDDL_NO_READ_UP SYSTEM_MANDATORY_LABEL_NO_READ_UP Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"NW" SDDL_NO_WRITE_UP SYSTEM_MANDATORY_LABEL_NO_WRITE_UP Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.
"NX" SDDL_NO_EXECUTE_UP SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP Windows Server 2008, Windows Vista e Windows Server 2003: non disponibile.

object_guid

Rappresentazione di stringa di un GUID che indica il valore del membro ObjectType di una struttura ACE specifica dell'oggetto, ad esempio ACCESS_ALLOWED_OBJECT_ACE. La stringa GUID usa il formato restituito dalla funzione UuidToString .

Nella tabella seguente sono elencati alcuni GUID oggetto comunemente usati:

Diritti e GUID Autorizzazione
CR;ab721a53-1e2f-11d0-9819-00aa0040529b Cambia password
CR;00299570-246d-11d0-a768-00aa006e0529 Reimposta password

inherit_object_guid

Rappresentazione di stringa di un GUID che indica il valore del membro InheritedObjectType di una struttura ACE specifica dell'oggetto. La stringa GUID usa il formato UuidToString .

account_sid

Stringa SID che identifica il trustee dell'ACE.

resource_attribute

[FACOLTATIVO] Il resource_attribute è solo per gli ACL di risorse ed è facoltativo. Stringa che indica il tipo di dati. Il tipo di dati ace dell'attributo di risorsa può essere uno dei tipi di dati seguenti definiti in Sddl.h.

Il segno "#" è sinonimo di "0" negli attributi della risorsa. Ad esempio, D:AI(XA;OICI;FA;;; WD;(OctetStringType==#1#2#3##)) equivale a e interpretato come D:AI(XA;OICI;FA;;; WD;(OctetStringType==#01020300)).

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista e Windows Server 2003: Gli attributi delle risorse non sono disponibili.

Stringa del tipo di dati ace dell'attributo di risorsa Costante in Sddl.h Tipo di dati
"TI" SDDL_INT Intero con segno
"TU" SDDL_UINT Intero senza segno
"TS" SDDL_WSTRING Stringa wide
"TD" SDDL_SID SID
"TX" SDDL_BLOB Stringa ottetto
"TB" SDDL_BOOLEAN Boolean

L'esempio seguente mostra una stringa ACE per un ace consentito per l'accesso. Non è un ace specifico dell'oggetto, pertanto non contiene informazioni nei campi object_guid e inherit_object_guid . Il campo ace_flags è vuoto, che indica che non sono impostati flag ACE.

(A;;RPWPCCDCLCSWRCWDWOGA;;;S-1-1-0)

La stringa ACE illustrata in precedenza descrive le informazioni ACE seguenti.

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)

L'esempio seguente mostra un file classificato con attestazioni di risorse per Windows e Structured Query Language (SQL) con segreto impostato su Impatto aziendale elevato.

(RA;CI;;;;S-1-1-0; ("Project",TS,0,"Windows","SQL")) 
(RA;CI;;;;S-1-1-0; ("Secrecy",TU,0,3))

La stringa ACE illustrata in precedenza descrive le informazioni ACE seguenti.

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

Per altre informazioni, vedere Security Descriptor String Format and SID Strings.For more information, see Security Descriptor String Format and SID Strings. Per gli ACL condizionali, vedere Security Descriptor Definition Language for Conditional ACEs .For conditional ACEs, see Security Descriptor Definition Language for Conditional ACEs.

Vedi anche

[MS-DTYP]: Security Descriptor Description Language