Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article vous aide à résoudre le problème où l’authentification digest échoue lorsqu’un client envoie une demande via un proxy à un site et microsoft Internet Information Services (IIS) utilise l’authentification digest.
Version du produit d’origine : Internet Information Services
Numéro de base de connaissances d’origine : 3050055
Symptômes
Examinez le cas suivant :
- IIS est configuré pour utiliser l’authentification digest.
- Le serveur reçoit une requête avec l’en-tête
Via
HTTP (HyperText Transfer Protocol). (Ce comportement se produit si la demande du client est routé via un proxy.) - La ressource demandée est protégée par l’authentification digest.
- Une demande enfant est créée dans le pipeline IIS. Par exemple, une requête est envoyée pour le document par défaut d’un répertoire, et l’URL envoyée a une barre oblique (/) comme dernier caractère.
Dans ce scénario, l’authentification digest échoue et le serveur retourne une réponse 401.
Cause
Pour des raisons de sécurité, les demandes routées via un proxy et pour lesquelles une requête enfant est créée dans le pipeline IIS, IIS ne peut pas approuver l’authentification digest.
Solution de contournement
Configurez le site web pour utiliser un autre type d’authentification. Par exemple, utilisez l’authentification Windows ou l’authentification de base via TLS (Transport Layer Security). Si ce n’est pas le cas, essayez les méthodes suivantes :
- Demandez au client d’utiliser une URL de requête, y compris le nom du fichier après le dernier / caractère.
- Définissez le mode de pipeline managé du pool d’applications sur Classic.
- Utilisez le module réécriture d’URL pour réécrire le chemin d’URL de //filename.
Pour utiliser le module réécriture d’URL pour contourner ce problème, configurez le module comme suit :
<system.webServer>
<rewrite>
<rules>
<rule name="<a rule name>" enabled="false">
<match url="(^$|.*/$)" />
<action type="Rewrite" url="{R:0}<a file name that you want the users to access>" />
</rule>
</rules>
</rewrite>
</system.webServer>