2009-05-15 5 views
0

In meiner asp.net-Webanwendung habe ich einen Ordner, in dem ich ein paar HTML-und JPEG-Dateien haben. Bei einigen dieser Dateien muss sich kein Benutzer anmelden, während bei den anderen die Anmeldung erforderlich ist. Wie schließe ich die Dateien aus, die für die Ansicht frei sind, ohne sich einzuloggen, während der Benutzer sich weiterhin für die Anzeige anderer Dateien im selben Ordner mit nur der Konfigurationsdatei anmeldet? Ich konnte etwas in der Konfigurationsdatei nicht finden, oder vielleicht habe ich es übersehen. Wenn jemand weiß, bitte antworten.web.config ignoriert bestimmte Dateien von der Anforderung der Authentifizierung

Danke.

Antwort

1

Ich habe versucht, diese auch zu beantworten, wie ich kann, aber der Satz:

Wie schließe ich die Dateien, die frei sind für Ansicht ohne Anmeldung während angezeigt wird nach wie vor den Benutzer Aufrechterhaltung anmelden um andere Dateien im selben Ordner mit nur der Konfigurationsdatei anzuzeigen.

..ist ein bisschen verwirrend!

Die Dateien, die authentifiziert werden müssen, werden vom asp.net-Handler wie ASPX-Dateien behandelt. jpegs und andere statische Dateien umgehen dies, sodass sie ohne Authentifizierung angezeigt werden können. Der Handler aspnet_isapi behandelt nur bestimmte Dateien, Sie können ihn jedoch so konfigurieren, dass er mehr Dateierweiterungen (oder alle Dateien) verarbeitet, indem Sie Erweiterungszuordnungen in IIS konfigurieren.

Persönlich würde ich alle Dateien, die ich wollte ungeschützt in einem Ordner mit Berechtigungen, damit jeder diesen Ordner anzuzeigen, legen Sie die aspnet_isapi-Handler für alle Dateien und schützen Sie dann Ihre anderen Ordner entsprechend den Anforderungen Ihrer Anwendung.

Je nachdem, was Sie tun möchten (wie Ihre Frage ist nicht so klar), können Sie möglicherweise nicht erreichen, was Sie wollen nur aus der Konfigurationsdatei, aber hoffentlich gibt diese Antwort Ihnen die Informationen, die Sie benötigen um daraus eigene Schlüsse zu ziehen.

+0

danke Neil, was ich meinte, war in meiner Website Ich habe einen Bilderordner. Alle Bilder müssen geschützt werden, außer denen, die ich auf der Anmeldeseite zeigen muss. Derzeit sind sogar die Bilder auf meiner Login-Seite nicht zu sehen, da die Anwendung darauf wartet, dass ich mich anmelde, um sie dem Benutzer zu zeigen. – user20358

+0

Gibt es eine Möglichkeit, ich kann die Anwendung bestimmte Dateien auszuschließen, nur durch die entsprechenden Einträge in der Konfigurationsdatei.? Wenn ja, was wären diese Einträge? – user20358

+0

Sie können, wenn die Dateien von ASP.NET behandelt werden - d. H. ASPX-Seiten - die JPEG/HTML-Dateien nicht von ASP.NET, sondern direkt von IIS geliefert werden und daher nicht gesperrt werden. Am besten wäre es, sie über einen .ashx-Handler oder auf einer ASPX-Seite zu bedienen - dies würde Ihnen mehr Kontrolle geben. http://msdn.microsoft.com/en-us/library/8d82143t.aspx enthält Beispiele zum Sichern von Dateien und Verzeichnissen über die Config. –

Verwandte Themen