Disons que je suit dans un web.config:IIS ou autorisation ASP.NET - moyen le plus simple de sécuriser les fichiers statiques?
<allow roles="Developers" />
<deny users="*"/>
Ce verrouille l'accès à .aspx, .asmx et d'autres types de fichiers .NET, mais il permet aussi aux utilisateurs non autorisés d'ouvrir des fichiers statiques comme image.jpg Je comprends pourquoi le web.config n'est pas demandé d'informations d'autorisation quand quelqu'un demande image.jpg (ce n'est pas un type .NET, et IIS peut le contourner), mais comment puis-je verrouiller une application entière?
conseils que j'ai trouvé en ligne comprend:
- créer le répertoire en question et IIS/.NET ramasser une entrée
<location>
. (Il ne semble pas.) - vous devez écrire votre propre filtre ISAPI et mapper toutes les extensions de fichiers sensibles à cela.
- vous n'avez pas besoin d'écrire votre propre filtre ISAPI - juste le mappage des extensions à aspnet_isapi.dll le fera.
- vous n'avez pas besoin de modifier IIS, créez simplement une entrée httpHandler dans le fichier web.config pour vos extensions. (Je préfèrerais ne pas essayer de le faire pour toutes les extensions de l'application.)
Rien de tout cela ne fonctionne aussi facilement que je me souviens d'être dans Apache. Quelle est la chose la plus simple qui pourrait fonctionner pour demander un mot de passe à un visiteur et ne pas servir de fichiers (statiques ou non) à un utilisateur qui ne l'a pas?
Un filtre ISAPI n'est pas très amusant, mais ce n'est pas si difficile et une fois que vous avez le code de base c'est incroyable combien d'autres choses vraiment utiles que vous trouvez à faire. C'est un showstopper si vous n'êtes pas autorisé à déployer une telle chose qui pour de nombreux développeurs web serait le cas. – AnthonyWJones
Je ne suis pas convaincu. La première étape est encore l'apprentissage C++. Le mieux qu'un programmeur managé peut faire est de faire des appels natifs/dangereux vers C++, ce que je devrais encore écrire. – MatthewMartin
c'est un bon lien vers scottgu - il a été éludé mon google mojo plus tôt aujourd'hui, mais c'est exactement la chose que je cherchais. Merci. – dnord