RtlAddAccessAllowedAceEx-Funktion (ntifs.h)
Die RtlAddAccessAllowedAceEx Routine fügt einen Zugriffssteuerungseintrag (ACE) mit Vererbungs-ACE-Flags zu einer Zugriffssteuerungsliste (ACL-) hinzu. Der Zugriff wird der angegebenen 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 ACL eine zugriffsfähige ACE hinzu. Die ACE ist in Form einer ACCESS_ALLOWED_ACE Struktur.
[in] AceRevision
ACL-Revisionsebene der zu hinzufügenden ACE. Dieser Wert kann ACL_REVISION oder ACL_REVISION_DS werden. Es muss ACL_REVISION_DS werden, wenn die ACL eine objektspezifische ACE enthält.
[in] AceFlags
Bitmaske, die die Vererbungskennzeichnungen der 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 parameters DesiredAccess von ZwCreateFile.
[in] Sid
Ein Zeiger auf die SID-Struktur, die ein Benutzer-, Gruppen- oder Anmeldekonto darstellt, das Zugriff gewährt wird.
Rückgabewert
RtlAddAccessAllowedAceEx- kann einen der folgenden Werte zurückgeben:
Rückgabecode | Beschreibung |
---|---|
STATUS_SUCCESS | Die ACE wurde erfolgreich hinzugefügt. |
STATUS_ALLOTTED_SPACE_EXCEEDED | Eine neue 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 richtig gebildet. |
STATUS_INVALID_PARAMETER | Der AceFlags-Parameter war ungültig. |
STATUS_INVALID_SID | Die angegebene SID-Struktur ist nicht strukturell gültig. |
STATUS_REVISION_MISMATCH | Die angegebene AceRevision- ist nicht bekannt oder nicht kompatibel mit der der ACL. |
Bemerkungen
Im Gegensatz zu RtlAddAccessAllowedAcelegt diese Routine die Vererbungs-ACE-Flags fest.
Weitere Informationen zur Sicherheits- und Zugriffssteuerung finden Sie unter Windows-Sicherheitsmodell für Treiberentwickler und die Dokumentation zu diesen Themen im Windows SDK, z. B.:
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 |
Zielplattform- | Universal |
Header- | ntifs.h (einschließlich Ntifs.h, FltKernel.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | <= APC_LEVEL |
Siehe auch
RtlCreateSecurityDescriptorRelative