¿Cuál es la mejor manera de restringir el acceso a un sitio web de desarrollo?


5

Tengo un sitio en el que estoy trabajando que me gustaría mostrar solo a algunos otros por ahora. ¿Hay algo de malo en configurar los nombres de usuario de Windows y usar la autenticación de Windows para avisar al usuario antes de ingresar al sitio de desarrollo?

7

Hay varias maneras, con diferentes grados de seguridad:

  • No lo ponga en el Internet - ponerlo en una red privada, y el uso de una VPN para acceder a ella
  • Restringir el acceso a Autenticación HTTP (como usted sugiere). La desventaja de esto es que puede interferir con el sitio real, si está utilizando autenticación HTTP o algún otro tipo de autenticación como parte de la aplicación.
  • Restrinja el acceso según la IP remota. Simplemente permita que las direcciones IP de los usuarios que desee puedan acceder a ellas.
  • Utilice un nombre de host personalizado. Tenerlo en una IP pública, pero no publicar el nombre de host. Esto significa hacer una entrada en su archivo HOSTS (o configurar su propio servidor DNS, si es posible) para que "blah.mysite.com" vaya al sitio, pero eso no está disponible en Internet. Obviamente, solo haría que el sitio fuera accesible al usar ese nombre de host (y no el IP).

1

Lo hago con frecuencia. Uso Hamachi para permitirles acceder a mi cuadro de desarrollo para que puedan ver qué está pasando. tienen acceso cuando lo desean y/o cuando yo lo permito. Cuando terminan, los desalojo de mi red Hamachi y cambio la contraseña.

Hamachi es una VPN de software. Aquí hay un enlace a Hamachi - También conocido como LogMeIn

Hamachi

Ellos tienen una versión gratuita que funciona bastante bien.


2

Eso depende de lo que entendemos por "mejor": por ejemplo, qué se refiere "fácil" o "más segura"?

La mejor forma podría ser que tenerlo en una red privada, que se adjunta a través de VPN.


1

Por supuesto, no hay nada malo con Windows autenticación. Sin embargo, hay un par de (no demasiado grandes) inconvenientes:

  • su esquema de autenticación de sitio web es diferente al producto final.
  • le está dando más acceso a la caja que realmente necesitan.
  • automáticamente se vuelve a crear la imagen de la máquina y la redistribución del sitio web es más compleja, ya que debe automatizar la creación de la cuenta de Windows.

Yo sugeriría dos alternativas:

  • para hacer lo autenticación que planea hacer en el sitio final y asegurarse de que todo localizador requiere autenticación
  • realizar una autenticación basada en cookies símbolo - enviarlos a una enlace que establece un token particular en una cookie y en el código de su sitio web agregue una comprobación rápida para ese token incluso antes de ir a la autenticación de usuario normal

1

Si no está casado con IIS, y necesita desarrolladores para estar capaz de cambiar el contenido, consideraría Apache + SSL + WebDav (también conocido como Carpetas Web). Esto le permitirá ofrecer un entorno seguro donde los desarrolladores pueden cambiar y ver el contenido sin tener cuentas de usuario en el servidor.

Esta configuración requiere cierto conocimiento de Apache, por lo que solo tiene sentido si ya está usando Apache o si con frecuencia necesita proporcionar acceso a su servidor web a terceros.

primer vínculo útil he encontrado sobre el tema: http://pascal.thivent.name/2007/08/howto-setup-apache-224-webdav-under.html


-1

¿Por qué no acaba de configurar un usuario NTFS y la asigna a la página web (y de quitar el acceso anónimo)