RtlDeleteAce 函数 (ntifs.h)

RtlDeleteAce 例程从指定的访问控制列表(ACL)中删除访问控制项(ACE)。

语法

NTSYSAPI NTSTATUS RtlDeleteAce(
  [in, out] PACL  Acl,
  [in]      ULONG AceIndex
);

参数

[in, out] Acl

指向要修改的 ACL 的指针。 RtlDeleteAce 从此 ACL 中删除指定的 ACE。

[in] AceIndex

指定要删除的 ACE。 值为零对应于 ACL 中的第一个 ACE、1 到第二个 ACE 等。

返回值

RtlDeleteAce 返回STATUS_SUCCESS或相应的 NTSTATUS 值,例如以下值之一:

返回代码 描述
STATUS_INVALID_PARAMETER 其中一个参数值无效。

STATUS_INVALID_PARAMETER可能的原因包括:

  • 指定的 ACL 无效。
  • 指定的索引值的范围不足。
  • STATUS_INVALID_PARAMETER是错误代码。

言论

有关计算 ACL 大小的信息,请参阅 RtlCreateAcl参考条目的“备注”部分。

若要将 ACE 添加到 ACL,请使用 RtlAddAce

若要获取指向 ACL 中的 ACE 的指针,请使用 RtlGetAce

有关安全和访问控制的详细信息,请参阅适用于驱动程序开发人员 Windows 安全模型,以及有关 Windows SDK 中这些主题的文档。

要求

要求 价值
最低支持的客户端 Windows Server 2003 SP1
目标平台 普遍
标头 ntifs.h (include Ntifs.h)
NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另请参阅

ACE

ACL

RtlAddAce

RtlCreateAcl

RtlGetAce