Problema de autorización: los usuarios anónimos no pueden acceder a .jpeg o .css
-
03-07-2019 - |
Pregunta
Tengo esto en mi archivo web.config:
<authentication mode="Forms">
<forms loginUrl="login.aspx" defaultUrl="Venues.aspx" />
</authentication>
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
Sólo quiero permitir el acceso a mis páginas a usuarios autenticados.El problema es que la primera vez que voy a la página de inicio de sesión, no tengo ninguna imagen ni estilo en mi página.Creo que esto se debe a que le negué el acceso a la .jpeg
y .css
archivos.Creo que puedo resolver este problema en IIS, pero recién estoy en Dev.Sólo tengo VS 2008 y no IIS.
¿Es posible para mí permitir el acceso a la imgs
directorio para el usuario anónimo en web.config?
Solución
Podría permitir ciertos directorios (directamente debajo de <configuration>
):
<location path="images">
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</location>
También es probable que deba incluir WebResource.axd
<location path="WebResource.axd">
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</location>
Otros consejos
Creo que este es un error conocido en Visual Studio: cuando no está usando IIS, Visual Studio bloquea por error el archivo CSS en la página de inicio de sesión.
Ver aquí:
publicación de blog de tomtech999
Debería estar bien cuando se ejecuta en IIS.
Del mismo modo, si desea que el control ReportViewer de Microsoft funcione en su página web, debe agregar esto:
<location path="Reserved.ReportViewerWebControl.axd">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
Esto fue un problema para mí al intentar que la versión 2010 del visor de informes funcionara. (Afortunadamente, solo tomó 7 mil millones de años descubrir la fuente del problema).