Comment faire pour refuser l'accès à un fichier avec ASP.NET web config mais pas seulement sur le plan local?
J'ai un problème avec ASP.NET fichier de configuration web. Je veux nier certains utilisateurs ou rôles d'accès au fichier PDF. Je suis à l'aide de ASP.NET la composition et le rôle du système de gestion. J'ai donc ajouté ces lignes de codes pour un site Web.fichier de configuration:
<location path="myfile.pdf">
<system.web>
<authorization>
<allow roles="admin"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
et le mettre dans le répertoire de la sorcière le fichier est inclus. Maintenant quand je lance le projet dans le système local, je ne peux pas accéder au fichier PDF wile-je me connecter avec le rôle "admin". Mais quand j'ai publier le projet sur le serveur web, je ne peux pas les sourcils en le dossier, mais je peux voir le fichier PDF lorsque je parcours le chemin complet vers le fichier PDF. Donc:
Je ne peux pas accéder à: http://www.example.com/folder
mais je peux afficher: http://www.example.com/folder/myfile.pdf
OriginalL'auteur Morteza Hasani | 2011-03-03
Vous devez vous connecter pour publier un commentaire.
IIS est probablement desservant le fichier PDF avant de ASP.Net obtient ses mains sur elle. En supposant que vous êtes en utilisant .Net 4.0, ajoutez ceci à votre site Web.fichier de configuration pour forcer toutes les demandes de circuler à travers ASP.Net:
OriginalL'auteur Josh M.
Vous avez besoin de faire IIS avant PDF les demandes de ASP.NET pour vos trucs pour prendre de place.
Exemple De L'Article:
Citant partie pertinente de l'article:
Parce que vous n'utilisez pas le gestionnaire personnalisé, il vous suffit de définir le gestionnaire de ASP.NET le gestionnaire par défaut. C'est le même gestionnaire d'ensemble ".aspx" déjà dans IIS.
OriginalL'auteur Meligy