LsaRemoveAccountRights 函数 (ntsecapi.h)
LsaRemoveAccountRights 函数从帐户中删除一个或多个特权。 可以指定要删除的特权,也可以设置标志以删除所有特权。 删除所有权限时, 函数会删除帐户。 如果指定不由帐户持有的特权,该函数将忽略这些权限。
语法
NTSTATUS LsaRemoveAccountRights(
[in] LSA_HANDLE PolicyHandle,
[in] PSID AccountSid,
[in] BOOLEAN AllRights,
[in] PLSA_UNICODE_STRING UserRights,
[in] ULONG CountOfRights
);
参数
[in] PolicyHandle
Policy 对象的句柄。 句柄必须具有POLICY_LOOKUP_NAMES访问权限。 有关详细信息,请参阅 打开策略对象句柄。
[in] AccountSid
指向从中删除特权的帐户的 SID) (安全标识符 的指针。
[in] AllRights
如果 为 TRUE,则函数将删除所有特权并删除帐户。 在这种情况下, 函数将忽略 UserRights 参数。 如果 为 FALSE,则函数将删除 UserRights 参数指定的特权。
[in] UserRights
指向LSA_UNICODE_STRING结构的数组 的 指针。 每个结构都包含要从帐户中删除的特权的名称。 有关特权名称的列表,请参阅 特权常量。
[in] CountOfRights
指定 UserRights 数组中的元素数。
返回值
如果函数成功,则返回值STATUS_SUCCESS。
如果函数失败,则返回值为 NTSTATUS 代码,可以是以下值之一或 LSA 策略函数返回值之一。
值 | 说明 |
---|---|
|
其中一个特权名称无效。 |
|
指示 UserRights 参数为 NULL,AllRights 参数为 FALSE。 |
可以使用 LsaNtStatusToWinError 函数将 NTSTATUS 代码转换为 Windows 错误代码。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | ntsecapi.h |
Library | Advapi32.lib |
DLL | Advapi32.dll |