RtlAddAccessAllowedAceEx-Funktion (ntifs.h)
Die RtlAddAccessAllowedAceEx-Routine fügt einer Zugriffssteuerungsliste (Access Control List, ACL) einen Zugriffssteuerungseintrag (Access Control Entry, ACE) mit Vererbungs-ACE-Flags hinzu. Der Zugriff wird auf die angegebene Sicherheits-ID (SID) gewährt.
Syntax
NTSYSAPI NTSTATUS RtlAddAccessAllowedAceEx(
[in, out] PACL Acl,
[in] ULONG AceRevision,
[in] ULONG AceFlags,
[in] ACCESS_MASK AccessMask,
[in] PSID Sid
);
Parameter
[in, out] Acl
Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der die zu ändernde ACL enthält. RtlAddAccessAllowedAceEx fügt am Ende dieser Zugriffssteuerungsliste einen zugriffsberechtigten ACE hinzu. Der ACE ist in Form einer ACCESS_ALLOWED_ACE Struktur.
[in] AceRevision
ACL-Revisionsebene des hinzuzufügenden ACE. Dieser Wert kann ACL_REVISION oder ACL_REVISION_DS sein. Sie muss ACL_REVISION_DS werden, wenn die ACL ein objektspezifisches ACE enthält.
[in] AceFlags
Bitmaske, die die Erbflags des hinzuzufügenden ACE angibt.
[in] AccessMask
Eine 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
Ein Zeiger auf die SID-Struktur, die einen Benutzer, eine Gruppe oder ein Anmeldekonto darstellt, dem Zugriff gewährt wird.
Rückgabewert
RtlAddAccessAllowedAceEx 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. Weitere Informationen zum Berechnen der Größe einer ACL finden Sie unter RtlCreateAcl. |
STATUS_INVALID_ACL | Die angegebene ACL ist nicht ordnungsgemäß gebildet. |
STATUS_INVALID_PARAMETER | Der AceFlags-Parameter war ungültig. |
STATUS_INVALID_SID | Die angegebene SID-Struktur ist strukturell ungültig. |
STATUS_REVISION_MISMATCH | Die angegebene AceRevision ist nicht bekannt oder nicht mit dem der ACL kompatibel. |
Hinweise
Im Gegensatz zu RtlAddAccessAllowedAce legt diese Routine die Vererbungs-ACE-Flags fest.
Weitere Informationen zur Sicherheits- und Zugriffssteuerung finden Sie unter Windows-Sicherheitsmodell für Treiberentwickler und in der Dokumentation zu diesen Themen im Windows SDK, z. B.:
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 |
Zielplattform | Universell |
Header | ntifs.h (include Ntifs.h, FltKernel.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |