Учетные записи bitS Security, Token и Администратор istrator
Обратные вызовы сертификатов HTTP-сервера
Правильное проверка сертификатов сервера является ключевой частью поддержания безопасности HTTPS. BITS помогает всегда проверять сертификаты сервера в соответствии со списком требований, заданных SetSecurityFlags. По умолчанию BITS использует проверку сертификата стиля браузера.
Можно также указать пользовательскую функцию для вызова для дальнейшего проверки сертификата. Задайте обратный вызов сертификата сервера с помощью метода SetServerCertificateValidationInterface. Метод будет вызван только после того, как операционная система проверила сертификат на основе вызова SetSecurityFlag.
Сертификаты HTTP-клиента
Сертификат клиента можно задать в задании HTTP с двумя различными методами параметров сертификата. Сертификат можно задать по идентификатору или по имени субъекта сертификата. Сертификат клиента будет использоваться во время согласования TLS (или повторного обсуждения), если серверу требуется проверка подлинности клиента.
Заголовки HTTP только для записи
BITS помогает защитить маркеры проверки подлинности HTTP от нежелательного доступа. Часто HTTP-серверу потребуется какой-либо маркер безопасности или строка при скачивании или отправке файла на HTTP-серверы.
BITS защищает эти маркеры проверки подлинности несколькими способами.
- BITS позволяет использовать HTTP-подключения с защитой TLS и SSL, указав URL-адрес HTTPS.
- Пользовательские заголовки всегда сохраняются в зашифрованном формате на диске.
- Вы можете запретить возврат заголовков клиентов другим программам с помощью метода IBackgroundCopyJobHttpOptions3::MakeCustomHeadersWriteOnly.
Пользователи standard и Администратор istrator
Пользователь, который находится в группе администраторов, может выполнять процесс со стандартным доступом пользователей или в состоянии с повышенными привилегиями (с правами администратора). BITS будет запускать задание в любом состоянии, пока пользователь вошел в систему на компьютере. Однако если пользователь создал задание или взял на себя владение заданием с повышенными привилегиями, пользователь должен находиться в состоянии с повышенными привилегиями, чтобы получить или изменить задание (в противном случае вызов завершается ошибкой при отказе в доступе (0x80070005)). Чтобы определить повышенное состояние задания, вызовите метод IBackgroundCopyJob4::GetOwnerElevationState .
Стандартный пользователь не может перечислять или изменять задания, принадлежащие другим пользователям.
Уровень целостности
Помимо повышенного состояния, уровень целостности маркера может определить, может ли пользователь изменить задание. Клиент не может изменять задания, созданные маркером с более высоким уровнем целостности. В частности, многие маркеры локальной системы имеют уровень целостности выше, чем уровень целостности окна с повышенными привилегиями, и поэтому их невозможно изменить администратором из обычного командного окна с повышенными привилегиями. Например, Обновл. Windows и SMS-задания выполняются как LocalSystem, которые имеют более высокий уровень целостности, чем маркер с повышенными привилегиями, чтобы администратор не может изменить или удалить эти задания. Чтобы изменить это задание, создайте задачу планировщика задач, которая выполняется как локальная система. Задача может выполнять консольное приложение, использующее API BITS, или задача может выполнить скрипт, вызывающий Bits Администратор.exe. Чтобы определить используемый уровень целостности, вызовите метод IBackgroundCopyJob4::GetOwnerIntegrityLevel .
Удостоверение службы
Начиная с обновление Windows 10 за май 2019 г. (10.0; Сборка 18362), задания BITS, запущенные из службы, будут поддерживать удостоверение службы. Это позволяет службам, которые хотят использовать BITS для скачивания файлов в каталог или отправки файлов из каталога, разрешения которых привязаны к идентификатору безопасности службы. Кроме того, сетевой трафик будет правильно приписываться службе, запрашивающей задание BITS вместо того, чтобы быть атрибутом BITS.