Функция RtlAddAccessAllowedAceEx (ntifs.h)
Подпрограмма RtlAddAccessAllowedAceEx добавляет запись управления доступом (ACE) с флагами ACE наследования в список управления доступом (ACL). Доступ предоставляется указанному идентификатору безопасности (SID).
Синтаксис
NTSYSAPI NTSTATUS RtlAddAccessAllowedAceEx(
[in, out] PACL Acl,
[in] ULONG AceRevision,
[in] ULONG AceFlags,
[in] ACCESS_MASK AccessMask,
[in] PSID Sid
);
Параметры
[in, out] Acl
Указатель на выделенный вызывающим буфером, который содержит ACL для изменения. RtlAddAccessAllowedAceEx добавляет доступ к концу этого ACL. ACE находится в виде ACCESS_ALLOWED_ACE структуры.
[in] AceRevision
Уровень редакции ACL добавляемого ACE. Это значение может быть ACL_REVISION или ACL_REVISION_DS. Он должен быть ACL_REVISION_DS, если ACL содержит объект ACE.
[in] AceFlags
Битовая маска, указывающая наследуемые флаги добавляемого ACE.
[in] AccessMask
Битовая маска одного или нескольких флагов ACCESS_MASK, указывающих права доступа, предоставляемые указанному идентификатору безопасности. Дополнительные сведения см. в описании параметра DesiredAccessZwCreateFile.
[in] Sid
Указатель на структуру безопасности, представляющую пользователя, группу или учетную запись входа, которая предоставляет доступ.
Возвращаемое значение
RtlAddAccessAllowedAceEx может возвращать одно из следующих значений:
Возвращаемый код | Описание |
---|---|
STATUS_SUCCESS | ACE успешно добавлен. |
STATUS_ALLOTTED_SPACE_EXCEEDED | Новый ACE не вписывается в ACL. Требуется больший буфер ACL. Дополнительные сведения о вычислении размера ACL см. в RtlCreateAcl. |
STATUS_INVALID_ACL | Указанный список ACL неправильно сформирован. |
STATUS_INVALID_PARAMETER | Недопустимый параметр AceFlags. |
STATUS_INVALID_SID | Указанная структура безопасности не является структурно допустимой. |
STATUS_REVISION_MISMATCH | Указанный AceRevision не известен или несовместим с ACL. |
Замечания
В отличие от RtlAddAccessAllowedAce, эта подпрограмма задает флаги ACE наследования.
Дополнительные сведения о безопасности и управлении доступом см. в модели безопасности Windows для разработчиков драйверов и документации по этим темам в пакете SDK для Windows, например:
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 |
целевая платформа | Всеобщий |
заголовка | ntifs.h (include Ntifs.h, FltKernel.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |