ACCESS_ALLOWED_ACE-Struktur (winnt.h)

Die ACCESS_ALLOWED_ACE-Struktur definiert einen Zugriffssteuerungseintrag (Access Control Entry , ACE) für die dacl (Discretionary Access Control List ), die den Zugriff auf ein Objekt steuert. Ein zugriffsgeschützter ACE ermöglicht den Zugriff auf ein Objekt für einen bestimmten Treuhänder , der durch eine Sicherheits-ID (SID) identifiziert wird.

Syntax

typedef struct _ACCESS_ALLOWED_ACE {
  ACE_HEADER  Header;
  ACCESS_MASK Mask;
  DWORD       SidStart;
} ACCESS_ALLOWED_ACE;

Member

Header

ACE_HEADER Struktur, die die Größe und den Typ von ACE angibt. Es enthält auch Flags, die die Vererbung des ACE durch untergeordnete Objekte steuern. Der AceType-Member der ACE_HEADER-Struktur sollte auf ACCESS_ALLOWED_ACE_TYPE und das AceSize-Element auf die Gesamtzahl der Bytes festgelegt werden, die der ACCESS_ALLOWED_ACE-Struktur zugeordnet sind.

Mask

Gibt eine ACCESS_MASK-Struktur an, die die von diesem ACE gewährten Zugriffsrechte angibt.

SidStart

Das erste DWORD der SID eines Treuhänders. Die verbleibenden Bytes der SID werden im zusammenhängenden Speicher nach dem SidStart-Element gespeichert. Diese SID kann mit Anwendungsdaten angefügt werden.

Hinweise

ACE-Strukturen müssen an DWORD-Grenzen ausgerichtet sein. Alle Windows-Speicherverwaltungsfunktionen geben DWORD-ausgerichtete Handles an den Arbeitsspeicher zurück.

Die vom Mask-Member angegebenen Zugriffsrechte werden jedem Treuhänder gewährt, der über eine aktivierte SID verfügt, die der im SidStart-Member gespeicherten SID entspricht.

Eine ACCESS_ALLOWED_ACE-Struktur kann in einer Zugriffssteuerungsliste (Access Control List , ACL) durch einen Aufruf der Funktion AddAccessAllowedAce oder AddAccessAllowedAceEx erstellt werden. Wenn diese Funktionen verwendet werden, wird die richtige Menge an Arbeitsspeicher zugeordnet, die für die SID des Treuhänders erforderlich ist, und die Werte der Member Header.AceType und Header.AceSize werden automatisch festgelegt. Wenn die AddAccessAllowedAceEx-Funktion verwendet wird, wird auch das Header.AceFlags-Element festgelegt. Wenn eine ACCESS_ALLOWED_ACE-Struktur außerhalb einer ACL erstellt wird, muss genügend Arbeitsspeicher zugewiesen werden, um die vollständige SID des Treuhänders im SidStart-Member und den darauf folgenden zusammenhängenden Arbeitsspeicher aufzunehmen, und die Werte der Member Header.AceType, Header.AceFlags und Header.AceSize müssen von der Anwendung explizit festgelegt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Kopfzeile winnt.h (windows.h einschließen)

Weitere Informationen

ASS

ACL

AddAccessAllowedAce

AddAce

GetAce

SID