Remarque
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.
En utilisant le protocole SRV pris en charge via symsrv.dll (fourni avec débogueur), le magasin de symboles est accessible à l’aide de HTTP (au lieu de simplement UNC/SMB).
HTTP est couramment utilisé au lieu de SMB lorsqu’un pare-feu n’autorise pas SMB entre le client et le serveur. Les environnements de production et de laboratoire sont de bons exemples de cela.
Un serveur de symboles HTTP ne peut pas être un magasin en aval dans une chaîne de chemins de symboles en raison de sa nature en lecture seule. Le proxy de serveur de symboles (filtre ISAPI) fonctionne autour de cette limite. SymProxy télécharge les fichiers manquants dans le système de fichiers du serveur à l’aide de magasins de symboles en amont préconfigurés. Le filtre télécharge le fichier sur le système de fichiers, ce qui permet à IIS de télécharger le fichier sur le client, ce qui restaure le concept de chaînage du magasin de symboles. Pour plus d’informations, consultez SymProxy .
La configuration d'IIS en tant que magasin de symboles est relativement simple, car les fichiers de symboles sont simplement servis comme fichiers statiques. Le seul paramètre non par défaut est la configuration des types MIME pour autoriser le téléchargement des fichiers de symboles en tant que flux binaires. Pour ce faire, utilisez un caractère générique « * » appliqué au répertoire virtuel du dossier de symboles.
Pour rendre un magasin de symboles accessible sur Internet, vous devez configurer à la fois les répertoires contenant les fichiers de symboles et les services Iis (Internet Information Services).
Note En raison de la façon dont IIS sera configuré pour servir des fichiers de symboles, il n’est pas recommandé que la même instance de serveur soit utilisée à d’autres fins. En règle générale, les paramètres de sécurité souhaités pour un serveur de symboles n’ont pas de sens pour d’autres utilisations, par exemple pour un serveur de commerce externe. Assurez-vous que l’exemple de configuration décrit ici est judicieux pour votre environnement et adaptez-le selon vos besoins spécifiques.
Création du répertoire de symboles
Commencez par sélectionner le répertoire que vous utiliserez comme magasin de symboles. Dans nos exemples, nous appelons ce répertoire c :\symstore et le nom du serveur sur le réseau est \SymMachineName.
Pour plus d’informations sur la façon de remplir votre magasin de symboles, consultez SymStore et Arborescence des dossiers du magasin de symboles.
Configuration d’IIS
Les services Internet Information (IIS) doivent être configurés pour servir les symboles en créant un répertoire virtuel et en configurant des types MIME. Une fois cette opération effectuée, la méthode d’authentification peut être choisie.
Pour créer un répertoire virtuel
Ouvrez le Gestionnaire des services Internet (IIS).
Accédez aux sites web.
Cliquez avec le bouton droit sur Le site web par défaut ou le nom du site utilisé, puis sélectionnez Ajouter un répertoire virtuel....
Tapez des symboles pour alias , puis cliquez sur Suivant.
Pour faciliter l’administration, il est recommandé d’utiliser le même nom pour le dossier, le partage et le répertoire virtuel.
Pour le chemin d’accès , entrez c :\SymStore , puis cliquez sur Suivant.
Cliquez sur OK pour terminer l’ajout du répertoire virtuel.
Effectuez le processus de configuration du sous-répertoire une fois pour le serveur. Notez qu’il s’agit d’un paramètre global et affecte les applications non hébergées dans le dossier racine d’un site.
Configuration du sous-répertoire
Accédez à [Ordinateur].
Ouvrez l’Éditeur de configuration.
Accédez au système ApplicationHost/sites.
Développez virtualDirectoryDefaults.
Définissez allowSubDirConfig sur False.
Effectuez ce processus une fois pour le serveur. Notez qu’il s’agit d’un paramètre global et affecte les applications non hébergées dans le dossier racine d’un site.
Facultatif rendre les fichiers de symboles accessibles
Accédez à [Ordinateur] | Sites | [Site Web] | Symboles.
Double-cliquez sur Navigation dans le répertoire dans le volet central.
Cliquez sur Activer dans le volet droit.
Le type MIME du contenu téléchargé doit être défini sur application/octet-stream pour permettre à tous les fichiers de symboles d’être remis par IIS.
Configuration des types MIME
Cliquez avec le bouton droit sur le répertoire virtuel Symboles , puis choisissez Propriétés.
Sélectionnez En-têtes HTTP.
Cliquez sur Types MIME.
Cliquez sur Nouveau.
Pour Extension, tapez *.
Pour le type MIME, tapez application/octet-stream.
Pour quitter la boîte de dialogue Types MIME , cliquez sur OK.
Pour quitter les propriétés des symboles, cliquez sur OK.
Vous pouvez modifier le fichier web.config pour configurer les types MIME pour les symboles. Cette approche efface les types MIME hérités et ajoute un caractère générique passe-partout * type MIME. Cette approche peut être nécessaire lorsque les types MIME sont hérités dans certaines configurations IIS.
Utilisation de web.config pour configurer des types MIME
Modifiez le fichier web.config comme indiqué ici.
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <directoryBrowse enabled="true" /> <staticContent> <clear /> <mimeMap fileExtension=".*" mimeType="application/octet-stream" /> </staticContent> </system.webServer> </configuration>Redémarrez IIS.
IIS est maintenant prêt à servir des fichiers de symboles de tous les types à partir du magasin de symboles.
Configuration de l’authentification
Il est possible de configurer IIS pour utiliser l’authentification Windows intégrée afin que les clients (windbg.exe par exemple) puissent s’authentifier automatiquement auprès d’IIS sans inviter l’utilisateur final à entrer des informations d’identification.
Note Configurez uniquement l’authentification Windows sur IIS pour contrôler l’accès au serveur de symboles si cela convient à votre environnement. Il existe d’autres options de sécurité disponibles pour contrôler davantage l’accès à IIS si cela est nécessaire pour votre environnement.
Pour configurer la méthode d’authentification en tant qu’anonyme
Lancez le Gestionnaire des services Internet (IIS).
Accédez à [Ordinateur] | Sites | [Site Web] | Symboles.
Double-cliquez sur Authentification dans le volet central.
Sous Authentification et contrôle d’accès , cliquez sur Modifier.
Cliquez avec le bouton droit sur Authentification Windows , puis sélectionnez Activer.
Pour tous les autres fournisseurs d’authentification, cliquez avec le bouton droit sur chaque fournisseur et sélectionnez Désactiver.
Cliquez sur OK pour terminer la configuration de l’authentification.
Si l’authentification windows n’est pas répertoriée, utilisez Activer et désactiver les fonctionnalités Windows pour activer la fonctionnalité. L’emplacement de la fonctionnalité est différent dans chaque version de Windows. Dans Windows 8.1/Windows 2012 R2, il se trouve sous Internet Information Services | Services World Wide Web | Sécurité.
Désactiver la prise en charge Kerberos
SymSrv.dll ne prend pas en charge l’authentification Kerberos lors de la connexion à IIS. Par conséquent, l’authentification Kerberos doit être désactivée dans IIS et NTLM doit être définie comme seul protocole d’authentification Windows.
Note Désactivez uniquement la sécurité Kerberos si cela convient à votre environnement.
Désactiver la prise en charge Kerberos à l’aide de appcmd.exe
Ouvrir une fenêtre d’invite de commandes
Pour désactiver Kerberos et forcer l’utilisation de NTLM, utilisez cette commande :
appcmd.exe set config -section:system.webServer/security/authentication/windowsAuthentication /+"providers.[value='NTLM']" /commit:apphostPour revenir à la valeur par défaut avec Kerberos activé, utilisez cette commande :
appcmd.exe set config -section:system.webServer/security/authentication/windowsAuthentication /+"providers.[value='Negotiate,NTLM']" /commit:apphost
Configuration des invites d’authentification du client SymSrv
Lorsque SymSrv reçoit des demandes d’authentification, le débogueur peut afficher la boîte de dialogue d’authentification ou refuser automatiquement la demande, selon la façon dont elle a été configurée. Vous pouvez configurer ce comportement à l’aide des invites de commande !sym prompts on|off. Par exemple, pour activer les indications, utilisez cette commande.
!sym prompts on
Pour vérifier le paramètre actuel, utilisez cette commande.
!sym prompts
Pour plus d’informations, consultez !sym et pare-feu et serveurs proxy.