Поделиться через


Функция RtlAddAccessAllowedAce (ntifs.h)

Подпрограмма RtlAddAccessAllowedAce добавляет запись управления доступом (ACE) в список управления доступом (ACL). Доступ предоставляется указанному идентификатору безопасности (SID).

Синтаксис

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

Параметры

[in, out] Acl

Указатель на выделенный вызывающим буфером, содержащим ACL для изменения. RtlAddAccessAllowedAce добавляет доступ к концу этого ACL. ACE находится в виде ACCESS_ALLOWED_ACE структуры.

[in] AceRevision

Уровень редакции ACL добавляемого ACE. Требования к версии Windows приведены ниже.

Ценность Значение
ACL_REVISION
Допустимый уровень редакции для всех версий Windows.
ACL_REVISION_DS
Допустимый уровень редакции начиная с Windows 2000.
ПримечаниеAceRevision должно быть ACL_REVISION_DS, если ACL в Acl содержит объект ACE.
 

[in] AccessMask

Битовая маска одного или нескольких флагов ACCESS_MASK, указывающая права доступа, предоставляемые указанному идентификатору безопасности. Дополнительные сведения см. в описании параметра DesiredAccessZwCreateFile.

[in] Sid

Указатель на структуру БЕЗОПАСНОСТИ, представляющую пользователя, группу или учетную запись входа, доступ которой предоставляется.

Возвращаемое значение

RtlAddAccessAllowedAce может возвращать одно из следующих значений:

Возвращаемый код Описание
STATUS_SUCCESS
ACE успешно добавлен.
STATUS_ALLOTTED_SPACE_EXCEEDED
Новый ACE не вписывается в ACL. Требуется больший буфер ACL. Сведения о вычислении размера ACL см. в RtlCreateAcl.
STATUS_INVALID_ACL
Указанный список ACL неправильно сформирован.
STATUS_INVALID_SID
Указанная структура безопасности не является структурно допустимой.
STATUS_REVISION_MISMATCH
Указанная редакция не известна или несовместима с этой версией ACL.

Замечания

Дополнительные сведения о безопасности и управлении доступом см. в модели безопасности Windows для разработчиков драйверов и документации по этим разделам в пакете SDK для Windows.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка ntifs.h (include Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

См. также

ACCESS_ALLOWED_ACE

ACCESS_MASK

ACE

ACL

RtlCreateAcl

RtlCreateSecurityDescriptor

RtlCreateSecurityDescriptorRelative

RtlLengthSecurityDescriptor

RtlSetDaclSecurityDescriptor

RtlSetOwnerSecurityDescriptor

RtlValidSecurityDescriptor

SID

SeAssignSecurity

ZwCreateFile