Voy a encuadrar esta pregunta usando ASP.NET Core ya que eso es lo que estoy usando, aunque mi pregunta es aplicable a cualquier escenario en el que tenga un cliente que realice solicitudes a un servidor que almacena archivos estáticos.
En la documentos de Microsoft sobre cómo solicitar middleware en un ASP Aplicación .NET Core , especifica:
El middleware de archivos estáticos se llama al principio de la tubería para que pueda manejar las solicitudes y el cortocircuito sin pasar por los componentes restantes. El middleware de archivo estático no proporciona comprobaciones de autorización. Todos los archivos servidos por él, incluidos aquellos bajo wwwroot, están disponibles públicamente. Consulte Trabajar con archivos estáticos para un enfoque para proteger archivos estáticos.
Puedo ver que sería útil evitar la autenticación
-
para servir estos archivos más rápido.
-
porque estos archivos estáticos (que consisten principalmente en HTML, CSS, JavaScript, y varios tipos de archivos de imagen) no son de ninguna manera ofuscado en el cliente ( para usuarios autenticados , cuidado)
Sin embargo, hay una parte de mí que se siente incómoda al permitir que todos estos archivos estén disponibles públicamente, teniendo en cuenta que debe estar autenticado para poder acceder al sitio. Dado que estos archivos estáticos contienen muchos de los scripts del sitio y otros recursos, un usuario no autenticado que normalmente no podría interactuar con la aplicación puede ver de repente cómo funciona la interfaz.
¿Hay alguna información contenida en archivos estáticos que pueda ser útil para un atacante, como una imagen parcialmente completa del código base de front-end? Mi conjetura es no, porque si ese fuera el caso, eso implica que confiamos en que todos los usuarios autenticados no usen esa información de manera maliciosa. Sin embargo, quería asegurarme preguntando aquí.