GetAce ermittelt Adresse uno Eintrags (ACE) en uno Access-Control Liste (ACL) uno SACLs oder uno DACLs. Diese Función hay sólo bajo NT-basierten Windowssystemen. Ein ACE besteht de: Dem ACE Encabezamiento => - Byte 0 = Typ des ACEs 0 = Der ACE erlaubt una Zugriff (ACCESS_ALLOWED_ACE_TYPE). Gilt para DACLs 1 = Der ACE verbietet una Zugriff (ACCESS_DENIED_ACE_TYPE) Gilt para DACLs. 2 = Der ACE veranlaßt el Aufzeichnen erfolgreicher oder fehlgeschlafener Zugriffe(SYSTEM_AUDIT_ACE_TYPE). Gilt para SACLs 3 = En el momento todavía no benutzt (SYSTEM_ALARM_ACE_TYPE). - Byte 1 = ACE Flags Für DACLs: $3 = Der ACE wurde de una Containerobjekt, z.B. una Ordner, übernommen (CONTAINER_INHERIT_ACE). $8 = Der ACE kann de enthaltenen Objekten übernommen voluntad (INHERIT_ONLY_ACE). $4 = (NO_PROPAGATE_INHERIT_ACE) $1 = Der ACE wurde de una no Containerobjekt, z.B. uno Expediente, übernommen(OBJECT_INHERIT_ACE). Für SACLs: $80 = Fehlgeschlagene Zugriffe voluntad aufgezeichnet (FAILED_ACCESS_ACE_FLAG). $40 = Erfolgreiche Zugriffe voluntad aufgezeichnet (SUCCESSFUL_ACCESS_ACE_FLAG). - Byte 2-3 = Größe des ACEs en Bytes - Byte 4-7 = Zugriffsrechte, d.h. erlaubte oder verbotene Zugriffe: $1 = FILE_READ_DATA (Erlaubt Daten de una File a lesen) $2 = FILE_WRITE_DATA (Erlaubt Daten a Scheiben) $4 = FILE_APPEND_DATA (Erlaubt Daten anzuhängen) $8 = FILE_READ_EA (Erlaubt erweiterte Attibute a lesen) $10 = FILE_WRITE_EA (Erlaubt erweiterte Atributos a escribir) $20 = FILE_EXECUTE (Erlaubt una Expediente auszuführen) $80 = FILE_READ_ATTRIBUTES (Lesen el Fileattribute) $100 = FILE_WRITE_ATTRIBUTES (Cambio el Fileattribute) $40000 = WRITE_DAC (Cambio el DACL Einträge) $20000 = READ_CONTROL (Lesen el DACL Einträge y Besitzer) $100000 = SYNCHRONIZE (Erlaubt una FileHandle en una Complitition I/O a warten) $40 = File_Delete_CHILD (Erlaubt una Unterordner a löschen - para Archivos no Bedeutung) $1000000 = ACCESS_SYSTEM_SECURITY (Erlaubt el Zugriff en el SACL) $80000 = WRITE_OWNER (Eigentümer ändern) $10000 = _DELETE (Expediente löschen) - Byte 8-.... = SID des Users oder el Gruppe
Deklaration:
DEF @GetAce(3) !ADVAPI32,GetAce
Parámetro:
1.Parámetro: Adresse uno ACL Struktur o. Bereichsvariable con el Adresse uno ACL Struktur uno DACLs oder uno SACLs. 2.Parámetro: Der Index (Position) des ACEs, dessen Adresse uno obtener möchte. 3.Parámetro: 4 Byte Bereichsvariable, el el Adresse des ACEs aufnimmt.