Freigeben über


RtlAddAccessAllowedAce-Funktion (ntifs.h)

Die RtlAddAccessAllowedAce-Routine fügt einer Zugriffssteuerungsliste (Access Control List, ACL) einen Zugriffssteuerungseintrag (Access Allowed Access Control Entry, ACE) hinzu. Der Zugriff wird der angegebenen Sicherheits-ID (SID) gewährt.

Syntax

NTSYSAPI NTSTATUS RtlAddAccessAllowedAce(
  [in, out] PACL        Acl,
  [in]      ULONG       AceRevision,
  [in]      ACCESS_MASK AccessMask,
  [in]      PSID        Sid
);

Parameter

[in, out] Acl

Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der die zu ändernde ACL enthält. RtlAddAccessAllowedAce fügt am Ende dieser ACL einen zugriffsgeschützten ACE hinzu. Der ACE hat die Form einer ACCESS_ALLOWED_ACE-Struktur.

[in] AceRevision

ACL-Revisionsebene des hinzuzufügenden ACE. Die Windows-Versionsanforderung ist wie folgt:

Wert Bedeutung
ACL_REVISION
Die Revisionsebene, die für alle Windows-Versionen gültig ist.
ACL_REVISION_DS
Die ab Windows 2000 gültige Revisionsebene.
HinweisAceRevision muss ACL_REVISION_DS werden, wenn die ACL in Acl einen objektspezifischen ACE enthält.
 

[in] AccessMask

Bitmaske eines oder mehrerer ACCESS_MASK Flags, die die Zugriffsrechte angeben, die der angegebenen SID gewährt werden sollen. Weitere Informationen finden Sie in der Beschreibung des DesiredAccess-Parameters von ZwCreateFile.

[in] Sid

Zeiger auf die SID-Struktur, die einen Benutzer, eine Gruppe oder ein Anmeldekonto darstellt, dem Zugriff gewährt wird.

Rückgabewert

RtlAddAccessAllowedAce kann einen der folgenden Werte zurückgeben:

Rückgabecode Beschreibung
STATUS_SUCCESS
Der ACE wurde erfolgreich hinzugefügt.
STATUS_ALLOTTED_SPACE_EXCEEDED
Ein neuer ACE passt nicht in die ACL. Ein größerer ACL-Puffer ist erforderlich. Informationen zum Berechnen der Größe einer ACL finden Sie unter RtlCreateAcl .
STATUS_INVALID_ACL
Die angegebene ACL ist nicht ordnungsgemäß gebildet.
STATUS_INVALID_SID
Die angegebene SID-Struktur ist strukturell ungültig.
STATUS_REVISION_MISMATCH
Die angegebene Revision ist nicht bekannt oder nicht mit der der ACL kompatibel.

Hinweise

Weitere Informationen zur Sicherheit und Zugriffssteuerung finden Sie unter Windows-Sicherheitsmodell für Treiberentwickler und in der Dokumentation zu diesen Themen im Windows SDK.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Weitere Informationen

ACCESS_ALLOWED_ACE

ACCESS_MASK

ASS

ACL

RtlCreateAcl

RtlCreateSecurityDescriptor

RtlCreateSecurityDescriptorRelative

RtlLengthSecurityDescriptor

RtlSetDaclSecurityDescriptor

RtlSetOwnerSecurityDescriptor

RtlValidSecurityDescriptor

SID

SeAssignSecurity

ZwCreateFile