Définition des autorisations sur les répertoires virtuels
Pour des raisons de sécurité, le service BITS (Background Intelligent Transfer Service) ne charge pas de fichiers dans un répertoire virtuel pour lequel les autorisations de script et d’exécution sont activées. Si vous chargez un fichier dans un répertoire virtuel pour lequel ces autorisations sont activées, le travail échoue avec un code d’erreur BG_E_SERVER_EXECUTE_ENABLED.
BITS ne nécessite pas que le répertoire virtuel soit activé en écriture. Il est donc recommandé de désactiver l’accès en écriture au répertoire virtuel.
L’utilisateur authentifié (ou l’utilisateur anonyme d’IIS pour l’authentification anonyme) doit disposer des autorisations De modification sur le répertoire physique auquel le répertoire virtuel est mappé ; L’octroi d’autorisations d’écriture ne suffit pas.
Spécification des autorisations pour les notifications
Le schéma d’authentification que vous spécifiez pour le répertoire virtuel et l’URL de notification (voir la propriété BITSServerNotificationURL ) doit être compatible. BITS utilise le schéma d’authentification spécifié pour le répertoire virtuel pour accéder à l’URL de notification. Le travail de chargement échoue si BITS ne peut pas accéder à l’URL de notification en raison d’un échec d’authentification.
Si le type de notification (voir la propriété BITSServerNotificationType ) est par référence, l’application doit s’assurer que l’utilisateur a accès au fichier référencé (voir l’en-tête BITS-Request-DataFile-Name ). BITS définit les listes de contrôle d’accès du fichier référencé sur celles du répertoire physique auquel le répertoire virtuel est mappé.
Notes
L’application avertie doit être en mesure de mapper le fichier distant et d’y accéder même si l’URL de notification est mise en service par un serveur web qui se trouve sur un autre ordinateur que le répertoire de chargement physique. L’en-tête BITS-Request-DataFile-Name contient toujours une spécification de chemin d’accès relative à l’ordinateur qui héberge le composant Extensions BITS. Une application s’exécutant sur un autre ordinateur peut avoir besoin de convertir le chemin d’accès en chemin UNC avant d’y accéder.
BITS prend en charge de nombreuses combinaisons de schémas d’authentification. Toutefois, vous devez utiliser le schéma d’authentification suivant pour le répertoire virtuel et l’URL de notification correspondante.
Pour prendre en charge par des notifications de référence, le répertoire virtuel doit être configuré pour utiliser l’authentification NTLM (negotiate) si le répertoire de chargement physique (répertoire vers lequel pointe le répertoire virtuel) utilise un schéma d’authentification autre qu’anonyme. Si le répertoire de chargement physique autorise les demandes anonymes (aucune authentification), le répertoire virtuel doit activer l’anonyme (aucune authentification).
Les listes de contrôle d’accès du répertoire de chargement physique doivent être définies de telle sorte que l’utilisateur authentifié puisse lire les fichiers du répertoire vers lequel pointe l’URL de notification. BITS utilise les listes de contrôle d’accès du répertoire de chargement physique pour définir les listes de contrôle d’accès du fichier de chargement temporaire ( l’en-tête BITS-Request-DataFile-Name contient le chemin d’accès au fichier temporaire).
Étant donné que les notifications par valeur ne nécessitent pas que l’application avertie accède à un fichier temporaire qui contient le contenu du chargement, le schéma d’authentification peut être anonyme ou négocier (NTLM). La seule exigence est que l’utilisateur authentifié pour le répertoire virtuel doit également être autorisé à accéder à l’URL de notification.
Spécification des autorisations pour les partages distants
Un répertoire virtuel peut pointer vers un lecteur mappé sur un autre ordinateur ou un partage réseau. S’il pointe vers un lecteur réseau mappé, les informations d’identification utilisées pour mapper le lecteur doivent avoir un contrôle total sur le partage distant.
Si le répertoire virtuel pointe vers un partage réseau, BITS utilise les informations d’identification utilisateur Connect As du répertoire virtuel pour accéder au partage distant. Pour accéder à un partage distant, le compte Se connecter en tant que doit disposer de privilèges, comme décrit dans la documentation de la fonction LogonUser . BITS se connecte à l’aide de types d’ouverture de session LOGON32_LOGON_BATCH ou LOGON32_LOGON_INTERACTIVE. Le compte d’utilisateur Se connecter en tant que a besoin d’autorisations Full-Access sur le partage distant ; L’octroi d’autorisations d’écriture ne suffit pas.
Lorsque le répertoire de chargement physique est mappé à un partage réseau, l’identité de l’appelant qui demande l’URL de notification est l’utilisateur Se connecter en tant qu’utilisateur, ou l’utilisateur authentifié du répertoire de chargement physique (disponible uniquement dans IIS 6.0 et versions ultérieures, lorsque la zone case activée Toujours utiliser les informations d’identification de l’utilisateur authentifié lors de la validation de l’accès à la ressource réseau est sélectionnée dans la boîte de dialogue Se connecter en tant que).