DuplicateToken

【勇芳软件工作室】汉化HomePreviousNext

DuplicateToken函数创建一个新的访问令牌,可以复制已存在的一个。

BOOL DuplicateToken(

HANDLE 【ExistingTokenHandle】,//处理令牌以复制
SECURITY_IMPERSONATION_LEVEL 【ImpersonationLevel】,//模拟级别
PHANDLE 【DuplicateTokenHandle】//处理复制的令牌
); 

参数

【ExistingTokenHandle】

标识使用TOKEN_DUPLICATE访问权限打开的访问令牌。

【ImpersonationLevel】

指定一个提供新令牌的模拟级别的SECURITY_IMPERSONATION_LEVEL枚举类型。

【DuplicateTokenHandle】

指向接收重复令牌句柄的变量的指针。该句柄具有TOKEN_IMPERSONATE和TOKEN_QUERY对新令牌的访问权限。

返回值

如果函数成功,返回值不为零。

如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.

备注

DuplicateToken功能创建一个模拟令牌,您可以在SetThreadTokenImpersonateLoggedOnUser等功能中使用。由DuplicateToken创建的令牌不能在CreateProcessAsUser函数中使用,这需要一个主令牌。要创建可传递给CreateProcessAsUser的令牌,请使用DuplicateTokenEx功能。

也可以看看

CreateProcessAsUser, DuplicateTokenEx, ImpersonateLoggedOnUser, SECURITY_IMPERSONATION_LEVEL, SetThreadToken