Freigeben über


AddScopedPolicyIDAce-Funktion (securitybaseapi.h)

Die AddScopedPolicyIDAce-Funktion fügt am Ende einer Systemzugriffssteuerungsliste (SACL) einen SYSTEM_SCOPED_POLICY_ID_ACEZugriffssteuerungseintrag (ACCESS Control Entry, ACE) hinzu. Eine SYSTEM_SCOPED_POLICY_ID_ACE Struktur gibt eine zentrale Zugriffsrichtlinie (CAP) an, die der Ressource zugeordnet werden soll und während der Zugriffsüberprüfung verwendet werden kann. Der Satz von Standardzugriffsrechten wird im Thema Standardzugriffsrechte definiert.

Syntax

BOOL AddScopedPolicyIDAce(
  [in, out] PACL  pAcl,
  [in]      DWORD dwAceRevision,
  [in]      DWORD AceFlags,
  [in]      DWORD AccessMask,
  [in]      PSID  pSid
);

Parameter

[in, out] pAcl

Ein Zeiger auf eine Zugriffssteuerungsliste (ACL). Diese Funktion fügt dieser ACL eine ACE hinzu. Der Wert dieses Parameters kann nicht NULL-werden.

[in] dwAceRevision

Gibt die Revisionsebene der geänderten ACL an. Dieser Wert kann ACL_REVISION oder ACL_REVISION_DS werden. Verwenden Sie ACL_REVISION_DS, wenn die ACL objektspezifische ACEs enthält.

[in] AceFlags

Eine Reihe von Bitkennzeichnungen, die die ACE-Vererbung steuern. Die Funktion legt diese Flags im AceFlags Member der ACE_HEADER Struktur der neuen ACE fest.

Um die Konsistenz mit der Benutzeroberfläche für erweiterte Dateiberechtigungen von Windows 8 zu gewährleisten, sollten Anwendungen die CONTAINER_INHERIT_ACE und OBJECT_INHERIT_ACE Flags im AceFlags Parameter angeben.

Dieser Parameter kann eine Kombination aus den folgenden Werten sein.

Wert Bedeutung
CONTAINER_INHERIT_ACE
2 (0x2)
Die ACE wird von den Containerobjekten geerbt.
INHERIT_ONLY_ACE
8 (0x8)
Die ACE gilt nicht für das Objekt, dem die ACE zugewiesen ist, kann aber von untergeordneten Objekten geerbt werden.
INHERITED_ACE
16 (0x10)
Gibt eine geerbte ACE an. Dieses Flag ermöglicht Vorgängen, die die Sicherheit in einer Struktur von Objekten ändern, geerbte ACEs zu ändern, ohne ACEs zu ändern, die direkt auf das Objekt angewendet wurden.
NO_PROPAGATE_INHERIT_ACE
4 (0x4)
Die OBJECT_INHERIT_ACE und CONTAINER_INHERIT_ACE Bits werden nicht an eine geerbte ACE weitergegeben.
OBJECT_INHERIT_ACE
1 (0x1)
Die ACE wird von Nicht-Containerobjekten geerbt.

[in] AccessMask

Muss null für Windows 8 und Windows Server 2012 sein.

[in] pSid

Ein Zeiger auf die SID (S-1-17-*), der die zentrale Zugriffsrichtlinie identifiziert, die der Ressource zugeordnet werden soll.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird TRUE-zurückgegeben.

Wenn die Funktion fehlschlägt, wird FALSE-zurückgegeben. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 8 [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2012 [nur Desktop-Apps]
Zielplattform- Fenster
Header- securitybaseapi.h (include Windows.h)
Library Kernel32.lib
DLL- Kernel32.dll

Siehe auch

Standardzugriffsrechte