2010-09-28 14 views
0

J'ai un site Web sur IIS 7. Ce site Web a un HttpModule avec un gestionnaire d'événement AuthorizeRequest. Cet événement ne se déclenche pas pour les fichiers CSV et je peux accéder au fichier sans me connecter, je suppose que c'est parce que IIS7 n'est pas configuré pour exiger l'authentification des formulaires pour les fichiers CSV.Activation de l'authentification de formulaire pour les fichiers CSV dans IIS7

Comment puis-je régler ceci?

Répondre

0

ce answer explique comment réaliser ce que je cherchais. J'ai inséré dans web.config les lignes dans les chapitres 3 et 4 du guide référencé, et a changé ".htm" avec " .csv", peut-être quelqu'un peut optimiser la solution pour les fichiers * .csv. mais pour moi ça fait ce dont j'avais besoin.

0

Cela aura un impact tous les fichiers, mais vous pouvez ajouter un mappage à la configuration de votre serveur:

  1. Accédez aux propriétés de votre site et cliquez sur « Mappages ».
  2. Dans le coin supérieur droit, cliquez sur "Ajouter un mappage de module".
  3. Mettez "* .csv" dans le chemin de requête.
  4. Sélectionnez "IsapiModule" pour le module.
  5. Recherchez le fichier aspnet_isapi.dll dans le dossier framework du framework .net approprié que vous utilisez sous Executable.
  6. Donnez-lui un nom.
  7. Cochez les onglets dans "Restrictions de demande" pour plus d'options.

Cela devrait forcer toute requête .csv à analyser via asp.net (invoquant ainsi formsauthentication) avant de traiter la requête.

EDIT: Vous pouvez également ajouter un mappage de script générique comme desribed ici: http://learn.iis.net/page.aspx/508/wildcard-script-mapping-and-iis-7-integrated-pipeline/

Cela forcera l'authentification à tous les fichiers non-.net (pdfs, docs, quoi que ce soit).

+0

Je peux toujours accéder au fichier sans authentification et AuthorizeRequest n'est pas renvoyé ... Pouvez-vous penser à tout ce que je peux vérifier? – Lince81

+0

@ Lince81 - voir éditer. –

+0

La recommandation qui est donnée ici ne fonctionnera que si votre pool d'applications fonctionne en mode classique, si votre pool d'applications fonctionne en mode intégré, vous voulez probablement activer l'authentification par formulaires et votre module pour toutes les demandes. Voir: http://learn.iis.net/page.aspx/244/how-to-take-advantage-of-the-iis7-integrated-pipeline/ –