Partager via


Méthode IBackgroundCopyJobHttpOptions::SetSecurityFlags (bits2_5.h)

Définit des indicateurs pour HTTP qui déterminent si la liste de révocation des certificats est vérifiée et si certaines erreurs de certificat sont ignorées, ainsi que la stratégie à utiliser lorsqu’un serveur redirige la requête HTTP.

Syntaxe

HRESULT SetSecurityFlags(
  [in] ULONG Flags
);

Paramètres

[in] Flags

Indicateurs de sécurité HTTP qui indiquent les erreurs à ignorer lors de la connexion au serveur. Vous pouvez définir un ou plusieurs des indicateurs suivants :

Valeur Signification
BG_SSL_ENABLE_CRL_CHECK
0x0001
Vérifiez la liste de révocation des certificats (CRL) pour vérifier que le certificat de serveur n’a pas été révoqué.
BG_SSL_IGNORE_CERT_CN_INVALID
0x0002
Ignore les erreurs provoquées lorsque le nom d’hôte du certificat du serveur ne correspond pas au nom d’hôte dans la demande.
BG_SSL_IGNORE_CERT_DATE_INVALID
0x0004
Ignore les erreurs provoquées par un certificat expiré.
BG_SSL_IGNORE_UNKNOWN_CA
0x0008
Ignorer les erreurs associées à une autorité de certification inconnue.
BG_SSL_IGNORE_CERT_WRONG_USAGE
0x0010
Ignorer les erreurs associées à l’utilisation d’un certificat.
BG_HTTP_REDIRECT_POLICY_ALLOW_SILENT
0x0000
Permet au serveur de rediriger votre demande vers un autre serveur. Il s’agit de la valeur par défaut.
BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT
0x0100
Permet au serveur de rediriger votre demande vers un autre serveur. BITS met à jour le nom distant avec l’URL finale.
BG_HTTP_REDIRECT_POLICY_DISALLOW
0x0200
Place le travail dans l’état d’erreur irrécupérable lorsque le serveur redirige votre demande vers un autre serveur. BITS met à jour le nom distant avec l’URL redirigée.
BG_HTTP_REDIRECT_POLICY_MASK
0x0700
Masque de bits que vous pouvez utiliser avec la valeur de l’indicateur de sécurité pour déterminer la stratégie de redirection appliquée. Il n’inclut pas l’indicateur ALLOW_HTTPS_TO_HTTP.
BG_HTTP_REDIRECT_POLICY_ALLOW_HTTPS_TO_HTTP
0x0800
Permet au serveur de rediriger une requête HTTPS vers une URL HTTP.

Vous pouvez combiner cet indicateur avec BG_HTTP_REDIRECT_POLICY_ALLOW_SILENT et BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT.

Valeur retournée

Le tableau suivant répertorie certaines des valeurs de retour possibles.

Code de retour Description
S_OK
Les en-têtes ont été récupérés avec succès.
E_NOTIMPL
La valeur de l’indicateur n’est pas prise en charge.

Remarques

Si la vérification de la liste de révocation de certificats est demandée, BITS effectue la case activée pour tous les fichiers du travail qui spécifient le protocole HTTPS. Le case activée est effectué pour chaque fichier avant le début du transfert du fichier. Si vous définissez cette valeur sur TRUE après que BITS a partiellement téléchargé un fichier, BITS replanifie le travail et recommence à télécharger le fichier. Les fichiers déjà téléchargés ne sont pas affectés.

BITS utilise la liste de révocation de certificats sur l’ordinateur local si la liste de révocation de certificats est à jour ; sinon, BITS télécharge la liste de révocation de certificats à partir de l’autorité de certification qui a signé le certificat.

Le travail passe à l’état d’erreur irrécupérable si les erreurs suivantes se produisent.

Code d'erreur Description
ERROR_WINHTTP_SECURE_CERT_REV_FAILED Impossible de demander la vérification de la liste de révocation de certificats, car le serveur de certificats est hors connexion ou la liste de révocation de certificats ne peut pas être téléchargée.
ERROR_WINHTTP_SECURE_CERT_REVOKED Le certificat est révoqué.
 

La stratégie de redirection s’applique à tous les fichiers d’un travail de téléchargement (la stratégie ne s’applique pas aux travaux de chargement).

Avant BITS 3.0 : Les stratégies de redirection ne sont pas prises en charge.

Si la stratégie est BG_HTTP_REDIRECT_POLICY_DISALLOW et que le serveur redirige votre demande, le travail est placé dans l’état d’erreur irrécupérable avec l’un des codes d’erreur suivants. Pour obtenir une description des codes d’erreur, consultez Codes d’état 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 ne prend pas en charge la redirection de HTTP ou de HTTPs vers SMB.

Si la mise en cache d’homologue est activée et que vous spécifiez BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT, le fichier est stocké dans le cache avec l’URL redirigée finale. Si un homologue tente ensuite de télécharger le fichier avec l’URL d’origine, il ne trouve pas le fichier dans le cache de l’homologue et finit par télécharger le fichier à partir du serveur d’origine.

Si vous spécifiez et que le fichier est téléchargé à partir du

Notez que la définition de BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT peut affecter le résultat lors de l’appel de la méthode IBackgroundCopyJob3::ReplaceRemotePrefix . Si un serveur a redirigé votre demande, BITS a déjà changé l’URL d’origine en URL redirigée finale. Ainsi, l’appel de la méthode ReplaceRemotePrefix ne trouve pas les fichiers avec l’URL d’origine.

Configuration requise

   
Client minimal pris en charge Windows Vista
Serveur minimal pris en charge Windows Server 2008
Plateforme cible Windows
En-tête bits2_5.h (include Bits.h)
Bibliothèque Bits.lib

Voir aussi

IBackgroundCopyJobHttpOptions

IBackgroundCopyJobHttpOptions::GetSecurityFlags