Метод IBackgroundCopyJobHttpOptions::SetSecurityFlags (bits2_5.h)

Устанавливает флаги для HTTP, которые определяют, проверяется ли список отзыва сертификатов и игнорируются ли некоторые ошибки сертификата, а также политика, используемая при перенаправлении СЕРВЕРА HTTP-запроса.

Синтаксис

HRESULT SetSecurityFlags(
  [in] ULONG Flags
);

Параметры

[in] Flags

Флаги безопасности HTTP, указывающие, какие ошибки следует игнорировать при подключении к серверу. Можно задать один или несколько следующих флагов:

Значение Значение
BG_SSL_ENABLE_CRL_CHECK
0x0001
Проверьте список отзыва сертификатов (CRL), чтобы убедиться, что сертификат сервера не был отозван.
BG_SSL_IGNORE_CERT_CN_INVALID
0x0002
Игнорирует ошибки, вызванные тем, что имя узла сертификата сервера не соответствует имени узла в запросе.
BG_SSL_IGNORE_CERT_DATE_INVALID
0x0004
Игнорирует ошибки, вызванные сертификатом с истекшим сроком действия.
BG_SSL_IGNORE_UNKNOWN_CA
0x0008
Игнорируйте ошибки, связанные с неизвестным центром сертификации (ЦС).
BG_SSL_IGNORE_CERT_WRONG_USAGE
0x0010
Игнорировать ошибки, связанные с использованием сертификата.
BG_HTTP_REDIRECT_POLICY_ALLOW_SILENT
0x0000
Позволяет серверу перенаправлять запрос на другой сервер. Это значение по умолчанию.
BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT
0x0100
Позволяет серверу перенаправлять запрос на другой сервер. BITS обновляет удаленное имя окончательным URL-адресом.
BG_HTTP_REDIRECT_POLICY_DISALLOW
0x0200
Помещает задание в состояние неустранимой ошибки, когда сервер перенаправляет запрос на другой сервер. BITS обновляет удаленное имя перенаправленным URL-адресом.
BG_HTTP_REDIRECT_POLICY_MASK
0x0700
Битовая маска, которую можно использовать со значением флага безопасности, чтобы определить, какая политика перенаправления действует. Он не включает ALLOW_HTTPS_TO_HTTP флага.
BG_HTTP_REDIRECT_POLICY_ALLOW_HTTPS_TO_HTTP
0x0800
Позволяет серверу перенаправлять HTTPS-запрос на URL-адрес HTTP.

Этот флаг можно объединить с BG_HTTP_REDIRECT_POLICY_ALLOW_SILENT и BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT.

Возвращаемое значение

В следующей таблице перечислены некоторые из возможных возвращаемых значений.

Код возврата Описание
S_OK
Заголовки успешно извлечены.
E_NOTIMPL
Значение флага не поддерживается.

Комментарии

Если запрашивается проверка списка отзыва сертификатов, BITS выполняет проверка для всех файлов в задании, указывающих протокол HTTPS. Проверка выполняется для каждого файла перед началом передачи файла. Если задать для этого значения значение TRUE после частичного скачивания файла bits, bits перепланирует задание и начнет скачивание файла снова. Файлы, которые уже загружены, не затрагиваются.

BITS использует список отзыва сертификатов на локальном компьютере, если список отзыва сертификатов обновлен; В противном случае BITS скачивает список отзыва сертификатов из центра сертификации (ЦС), подписавшего сертификат.

Если возникают следующие ошибки, задание переходит в состояние неустранимой ошибки.

Код ошибки Описание
ERROR_WINHTTP_SECURE_CERT_REV_FAILED Не удается запросить проверку списка отзыва сертификатов, так как сервер сертификатов находится в автономном режиме или не удается скачать список отзыва сертификатов.
ERROR_WINHTTP_SECURE_CERT_REVOKED Сертификат отозван.
 

Политика перенаправления применяется ко всем файлам в задании загрузки (политика не применяется к отправке заданий).

До BITS 3.0: Политики перенаправления не поддерживаются.

Если политика BG_HTTP_REDIRECT_POLICY_DISALLOW и сервер перенаправляет запрос, задание помещается в состояние неустранимой ошибки с одним из следующих кодов ошибок. Описание кодов ошибок см. в разделе Коды состояния HTTP.

  • HRESULT_FROM_WIN32(HTTP_STATUS_AMBIGUOUS)
  • HRESULT_FROM_WIN32(HTTP_STATUS_MOVED)
  • HRESULT_FROM_WIN32(HTTP_STATUS_REDIRECT)
  • HRESULT_FROM_WIN32(HTTP_STATUS_REDIRECT_METHOD)
  • HRESULT_FROM_WIN32(HTTP_STATUS_REDIRECT_KEEP_VERB)
BITS не поддерживает перенаправление с HTTP или HTTP на SMB.

Если одноранговое кэширование включено и указано BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT, файл сохраняется в кэше с окончательным перенаправленным URL-адресом. Если одноранговый узел попытается скачать файл с исходным URL-адресом, одноранговый узел не найдет файл в кэше однорангового узла и в конечном итоге скачит файл с сервера-источника.

Если вы указали и файл скачан из

Обратите внимание, что настройка BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT может повлиять на результат при вызове метода IBackgroundCopyJob3::ReplaceRemotePrefix . Если сервер перенаправил ваш запрос, bits уже изменит исходный URL-адрес на окончательный перенаправленный URL-адрес, поэтому вызов метода ReplaceRemotePrefix не приведет к поиску файлов с исходным URL-адресом.

Требования

   
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header bits2_5.h (включая Bits.h)
Библиотека Bits.lib

См. также раздел

IBackgroundCopyJobHttpOptions

IBackgroundCopyJobHttpOptions::GetSecurityFlags