Метод IBitsTokenOptions::SetHelperTokenFlags (bits4_0.h)
Задает флаги использования для маркера, связанного с заданием передачи BITS.
Синтаксис
HRESULT SetHelperTokenFlags(
DWORD UsageFlags
);
Параметры
UsageFlags
Указывает флаг использования. Для этого параметра необходимо задать одно из следующих значений:
Значение | Значение |
---|---|
|
Если этот флаг указан, используется вспомогательный маркер.
|
|
Если этот флаг указан, используется вспомогательный маркер.
|
Возвращаемое значение
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Флаги использования вспомогательного маркера указывают, к каким ресурсам будет осуществляться доступ с помощью контекста безопасности вспомогательного маркера. BITS будет обращаться ко всем остальным ресурсам, используя контекст безопасности владельца задания. Например, доступ к сертификату клиента осуществляется с помощью удостоверения владельца задания.
Если указан сертификат клиента, а владельцем задания BITS не является учетная запись LocalSystem, установка параметра UsageFlag в BG_TOKEN_NETWORK приведет к сбою задания с кодом ошибки 0x80072f9a (ERROR_WINHTTP_CLIENT_CERT_NO_ACCESS_PRIVATE_KEY).
Более старые реализации фактически требовали, чтобы пользователи BITS имели права администратора, чтобы устанавливать флаги использования вспомогательных маркеров с помощью этого метода. Начиная с Windows 10 версии 1607 пользователи BITS без прав администратора могут использовать этот метод для установки флагов использования вспомогательных маркеров без прав администратора в заданиях BITS, которыми они владеют. Это изменение позволяет пользователям BITS без прав администратора (например, фоновым службам загрузчика, работающим под учетной записью NetworkService) эффективно использовать вспомогательные маркеры.
В частности, реализация была изменена, чтобы разрешить пользователям без прав администратора устанавливать флаги использования вспомогательных маркеров, если идентификатор безопасности маркера потока вызывающего объекта совпадает с идентификатором безопасности учетной записи пользователя владельца задания во время вызова IBackgroundCopyJob::QueryInterface , а в текущем настроенном вспомогательном маркере не включен идентификатор безопасности администратора (DOMAIN_ALIAS_RID_ADMINS).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 |
Минимальная версия сервера | Windows Server 2008 R2 |
Целевая платформа | Windows |
Header | bits4_0.h |
Распространяемые компоненты | Windows Management Framework в Windows Vista с пакетом обновления 1 (SP1), Windows Vista с пакетом обновления 2 (SP2) и Windows Server 2008 с пакетом обновления 2 (SP2) |