À l'aide d'IIS 7, ouvrez le Gestionnaire des services Internet, sélectionnez le nœud du serveur, double-cliquez sur la fonctionnalité Mappages de gestionnaires . Cliquez sur l'action Ajouter un gestionnaire géré et configurez le gestionnaire comme suit:
- Chemin de demande: * .svn / * (mappage générique pour tous les fichiers dans tous les dossiers .svn)
- Type: System.Web.HttpForbiddenHandler
- Nom: Subversion-metadata (vous pouvez choisir un nom différent si vous le souhaitez)
Maintenant, toute demande de fichiers dans les dossiers de métadonnées Subversion nommés .svn dans tous les sites doit retourner ceci:
Erreur serveur dans l'application '/'
Ce type de page n'est pas diffusé.
Description: Le type de page que vous avez demandé n'est pas diffusé car il a été explicitement interdit. Veuillez vérifier l'URL ci-dessous et assurez-vous qu'elle est correctement orthographiée.
URL demandée: /.svn/text-base/Default.aspx.svn-base
Vous pouvez choisir un type de gestionnaire différent si vous le souhaitez, peut-être un gestionnaire FileNotFound qui renverra un code d'état 404.
Pour IIS 6 (avec ASP.NET 2 installé et configuré):
Naviguez vers le répertoire d'accueil> Configuration> Mappage et mappez l' .svn-base
extension vers %SystemRoot%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll
. Ensuite, dans machine.config (que vous pouvez trouver dans %SystemRoot%\Microsoft.NET\Framework\v2.0.50727\CONFIG
), vous pouvez ajouter le même gestionnaire que ci-dessus pour l'extension, ajouter l'élément XML suivant en tant qu'enfant de l' <httpHandlers>
élément -element:
<add verb="*" path="*.svn-base" type="System.Web.HttpForbiddenHandler"/>
Cela empêchera uniquement les visiteurs de demander les fichiers de code source, ils pourraient toujours demander d'autres fichiers à partir des dossiers .svn. Mappez plus d'extensions vers aspnet_isapi.dll ou effectuez un mappage générique (cela affectera les performances) et vous pourriez bloquer la demande de plus de fichiers.