configuración del sitio web para usuarios registrados, cualquier persona y archivos que nadie debería ver (a través de la web) [cerrado]

-1

Le pregunté a cómo evitar que los usuarios que no han iniciado sesión vean cierto contenido pero la solución que elegí para implementar encontró un problema . Elegí hacer mi directorio raíz para el servidor C:\WAMP\www\public e incluir los archivos que solo quiero que los usuarios registrados vean desde C:\WAMP\www\private . El problema es si tengo un script que necesita ser interpretado por el servidor (como .php) que no quiero que sea público, pero si los puse en private el servidor no los ejecutará y si los puse ellos en public entonces cualquiera puede acceder a ellos. ¿Debo abandonar este enfoque con private y public y usar .htaccess en su lugar? En el segundo enlace, se sugirió crear un archivo en el directorio public que incluya la secuencia de comandos en el directorio private , pero creo que eso se está volviendo demasiado complicado. ¿Alguna solución mejor?

Ahora que lo pienso, realmente hay tres niveles de seguridad

  1. Contenido que cualquiera puede ver (por ejemplo, la página de registro)
  2. El contenido que solo los usuarios registrados pueden ver (por ejemplo, la sección solo para miembros)
  3. Contenido que nadie puede ver (por ejemplo, secuencias de comandos que agregan cuentas de usuario o hacen llamadas a la base de datos. Espera, incluso esto es una violación de seguridad si alguien puede ver este tipo de cosas?)
pregunta Celeritas 08.02.2013 - 19:32
fuente

1 respuesta

2

Parece que puede haber algunas cosas extrañas o malentendidos aquí. Un servidor web solo presentará los archivos a un usuario que deba proporcionar. De manera predeterminada, en muchos servidores web, este es cualquier contenido que no tiene un medio de procesamiento directo, por lo que cualquier archivo en la carpeta web termina siendo públicamente visible. Sin embargo, en el caso de un archivo de script del lado del servidor correctamente configurado, como PHP, el servidor debe pasar el archivo a un controlador (PHP) para que se interprete y luego proporciona el resultado de ese script al cliente que solicita el "archivo".

En general, sus controladores de script se ejecutarán como un usuario separado del servidor web. El motor de secuencias de comandos debe tener acceso a los archivos que necesita para poder ejecutarse y el servidor web simplemente necesita poder llamar al motor de secuencias de comandos. De esta manera, puede tener archivos de script a los que PHP puede acceder para que el servidor web no tenga acceso. Además, esto debería permitirle tener los archivos PHP interpretados en cualquier lugar donde pueda estar la URL que los señala. Simplemente debe asegurarse de que el enlace al motor de secuencias de comandos esté configurado correctamente.

En cuanto a las características específicas de la configuración en su servidor en particular, los webmasters pueden ser de mayor ayuda, ya que tienen una experiencia más amplia con aplicaciones de servidor web en particular y los manejadores de scripts no son realmente un problema de seguridad.

    
respondido por el AJ Henderson 08.02.2013 - 20:08
fuente

Lea otras preguntas en las etiquetas