comment refuser à l'utilisateur d'accéder aux sous-dossiers et au fichier?
sur l'ordinateur local ,j'ai créé exemple de projet sur mvc4 (rasoir) et créer un répertoire nommé "x" et de mettre un fichier texte "a.txt".
http://localhost:64471/x/a.txt
dans mon web config je renonce à tout utilisateur d'accéder à "x" dossier par cette config:
<location path="x">
<system.web>
<authorization>
<deny users="*"/>
</authorization>
</system.web>
Maintenant, si un utilisateur envoie cette demande :
http://localhost:64471/x/
il fonctionne et de renvoyer l'utilisateur vers l'URL que défini dans les formes balise web config.
mais lorsque l'utilisateur envoyer cette demande :
http://localhost:64471/x/a.txt
pouvez lire fichier texte dans le navigateur(navigateur affiche le contenu du fichier texte).
je veux savoir comment faire pour refuser l'utilisateur d'accéder à tous les fichiers et sous-dossiers dans "x" dossier?
source d'informationauteur motevalizadeh | 2013-09-26
Vous devez vous connecter pour publier un commentaire.
J'ai testé avec
path="x"
de la racine web.config. Il restreindre le tout sous x dossier; il n'est même pas me laisser parcourir ~/x. J'ai redirigé vers la page de connexion.Pourriez-vous essayer de chemin d'accès complet à a.txt comme cela dans la racine web.config?
Si cela ne fonctionne toujours pas, vous pouvez essayer de créer un site web.config à l'intérieur de x dossier avec le contenu suivant.
Je sais que c'est une vieille question, mais si vous rencontrez des problèmes et de traiter avec des fichiers texte ou html, vous pouvez consulter cette stackoverflow question.
En bref, vous pourriez avoir besoin de l'ajouter à votre site web.config:
Comme kirk points, les fichiers tels que .txt et .les fichiers html sont gérées par IIS et pas ASP.NET, de sorte que les règles d'autorisation ne sont pas appliquées.