impersonateSelf 函数 (securitybaseapi.h)
ImpersonateSelf 函数获取一个访问令牌,该令牌模拟调用进程的安全上下文。 令牌分配给调用线程。
语法
BOOL ImpersonateSelf(
[in] SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
);
参数
[in] ImpersonationLevel
指定提供新令牌的模拟级别的 SECURITY_IMPERSONATION_LEVEL 枚举类型。
返回值
如果该函数成功,则返回值为非零值。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
注解
ImpersonateSelf 函数用于一些任务,例如为单个线程而不是整个进程启用权限,或者更改单个线程的默认自由访问控制列表 (DACL) 。
模拟完成后,服务器可以调用 RevertToSelf 函数。
若要使此函数成功,保护进程令牌的 DACL 必须向自身授予TOKEN_DUPLICATE权限。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | securitybaseapi.h (包括 Windows.h) |
Library | Advapi32.lib |
DLL | Advapi32.dll |