IBitsTokenOptions::SetHelperToken 方法 (bits4_0.h)
设置帮助程序令牌以模拟 COM 客户端的令牌。 由于应用程序通过 COM 模拟设置令牌,因此令牌不是永久性的,并且仅在会话的生存期内有效。 当 BITS 服务收到注销通知时,BITS 服务将放弃与传输作业关联的任何帮助程序令牌。
语法
HRESULT SetHelperToken();
返回值
可能会返回以下值:
返回代码/值 | 说明 |
---|---|
|
客户端上的 COM 设置不允许对客户端令牌进行模拟级别访问。 |
|
|
注解
帮助程序令牌不需要表示管理员。
代理毯的模拟级别必须设置为 RPC_C_IMP_LEVEL_IMPERSONATE 或 RPC_C_IMP_LEVEL_DELEGATE。 有关详细信息,请参阅 安全一揽子协商。
隐藏标志应设置为 EOAC_DYNAMIC_CLOAKING,这使 COM 服务器能够使用线程令牌作为客户端的标识。 有关详细信息,请参阅 隐藏 和 EOLE_AUTHENTICATION_CAPABILITIES枚举。
旧实现实际上要求 BITS 用户具有管理员权限才能设置帮助程序令牌。 从 Windows 10 版本 1607 开始,非管理员 BITS 用户可以使用 IBitsTokenOptions::SetHelperToken 在他们拥有的 BITS 作业上设置非管理员帮助程序令牌。 此更改允许非管理员 BITS 用户 ((例如 在 NetworkService 帐户) 下运行的后台下载程序服务)来设置帮助程序令牌。
具体而言,只要调用方线程令牌的 SID 与 IBackgroundCopyJob::QueryInterface 调用期间作业所有者用户帐户的 SID 相同,并且正在设置的帮助程序令牌未启用管理员 SID (DOMAIN_ALIAS_RID_ADMINS) ,则已更改实现以允许没有管理员权限的用户设置帮助程序令牌。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 |
最低受支持的服务器 | Windows Server 2008 R2 |
目标平台 | Windows |
标头 | bits4_0.h |
可再发行组件 | 在 Windows Vista SP1、Windows Vista SP2 和 Windows Server 2008 SP2 上Windows Management Framework |