Restringir acceso a solo socios en mi web

Tengo una página en un servidor web con Windows e IIS 6, y tengo una zona solo para socios, es decir, quiero que solo puedan entrar si tienen un usuario y una contraseña válidos. Esto puedo hacerlo con los permisos de windows, ocurre que tengo tantos usuarios que el rendimiento no es bueno, además no sé cuál será el límite de windows para el número de usuarios. Quisiera hacerlo de otra manera, ¿cómo podría hacerlo? He oído hablar de "htaccess", pero creo que es un comando de Apache, ¿no? ¿Podría dar acceso a los usuarios, pero que la lista de usuarios y contraseñas se lea de un fichero en lugar de depender de Windows? Así podría hacer copia de seguridad de socios...

5 respuestas

Respuesta
1
Te seré sincero: No soy muy apegado a las plataformas WIN32 para aplicaciones tipo servidor, pero puedo darte algunos datos:
El htaccess de Apache es capaz de crear grupos de usuarios a nivel de servidor (http). Es casi igual, pero más óptimo que el de Windows, pues trabaja con un archivo de texto que almacena la lista de usuarios. Además da la posibilidad de crear grupos definiendo permisos por cada uno. No consume muchos recursos y es de una alta eficiencia.
Ahora, si tu página no está programada solo para correr en servidores IIS (asp, VS.net, MsSql entre otras) Podrías migrar a Apache para win32 y manejar los usuarios a través del citado archivo de texto.
Lo otro que puedes hacer para restringir el acceso a determinadas páginas (no a directorios) es utilizando sesiones en lenguajes dinámicos, como php y utilizando un motor de bases de datos. En este mismo tema, si lo que necesitas es visualizar los contenidos de un directorio, puedes generar una aplicación que manipule los archivos en la carpeta y sea capaz de navegar en un directorio determinado definido por un handler.
En resumen, tus opciones (desde mi punto de vista) son:
* Migrar a Apache para Windows y restringir via .htaccess
* Desarrollar una aplicación dinámica para lectura de directorios.
* Desarrollar un lector de archivos en php y aplicar sesiones con nombres de usuario y contraseña (lo que hace necesaria la instalacion de un motor de bases de datos y el interprete dinámico PHP)
Cualquier pregunta, no dudes en formularla
Hola, gracias por tu interés. Estoy de acuerdo en que htaccess de Apache es más óptimo que los permisos de W2003, sobre todo teniendo en cuenta que según las previsiones debería de dar acceso a unos 10000 socios... hacerlo con permisos de W2003 es una locura, y el problema de recuperar la configuración de usuarios ante un fallo de sistema se vuelve infranqueable. Estoy barajando tres opciones, ¿me dices tu opinión?
- Migración a Apache para Win32: nunca lo he hecho, y no sé si tiene un método automático para migrar, sería importante saberlo ya que tengo unas 26 páginas alojadas y no puedo parar el servidor demasiado. También desconozco su rendimiento y estabilidad ante IIS 6 (el rendimiento en Linux está fuera de toda duda).
- Instalación de Apache/Win32, manteniendo IIS 6, a ver si consigo no cambiar lo que tengo e incorporar el htaccess. Algo me dice que los experimentos mejor con gaseosa... pero si funciona, sería perfecto.
- Instalación de IISPassword: programita gratuito (ISAPI) que equivale según sus creadores a htaccess de Apache. También hay otro de pago que se llama Passdir. Esta opción parece muy sencilla, la duda la misma: ¿Es estable/confiable su rendimiento?
Gracias por tu tiempo, piénsate al respuesta según tu experiencia/información y me cuentas.
Un saludo,
Emilio (Valencia)
Me he dado mucho tiempo para leer y analizar tus opciones. Lo que yo opino:
Opción 1: La regla general en todo "Utiliza siempre el original". IIS es a Windows como Apache es a Linux. Pero como sabrás, las reglas fueron hechas para quebrarse. La migración no es complicada, pero se vuelve un gran drama si estás acostumbrado a las interfaces gráficas (Apache es texto y consolas, nada más). Por el asunto de la estabilidad, volvemos a la primera frase... aquello de "lo original" que hace que IIS corra mejor que Apache en Windows (sobretodo en las versiones server).
Opción 2: Si quieres conservar algo de cabello en la cabeza, te recomiendo no tomar esta opción. Ahora, si la calvicie es tu elección, debes recordar que ambos servicios salen por el puerto http predefinido (80). Cuando instales Apache, te dirá:
".. Make_sock:could not bind to address 0.0.0.0:80 no listening sockets available, shutting down..."
¿Solución? Modificar el puerto de escucha (listen) del 80 al 81, por ejemplo. Para acceder a las páginas con Apache, la sintaxis seria http://dominio/
Opción 3: He visto el funcionamiento de IISPassword en uno de mis proveedores de host y le pedí algunas referencias. A lo que llegué es que es una buena opción para un webhosting por la facilidad de uso y su estabilidad aceptable (aceptable, por que cuando el servicio por una u otra causa caía, denegaba los accesos en vez de permitirlos... o sea, fallo de funcionalidad y no de seguridad).
Es imposible que sepa con exactitud lo que realmente requieres, pero con los datos que me has dado yo diría que la opción más razonable que tienes en las manos es la de IISPassword.
Te deseo mucha suerte en el proceso y espero haber contribuido en algo.
Respuesta
1
En mi opinión es mejor que utilices base de datos y sesiones
Vamos a ver, yo administro el servidor, no los contenidos de las webs, no puedo modificar lo que ponen los webmasters
Entonces puedes mirar esta solución http://www.iisprotect.com/ aunque no es libre. Apache sí lo permite a través de su configuración interna o con el archivo .htacces en caso de no tener acceso al servidor.
Respuesta
1
Para restringir el acceso mediante el htaccess tendrías que cambiar el servidor IIS por el servidor APACHE. Para dar acceso y tener la lista de usuarios separada de IIS o APACHE tendrías que usar php o perl. Normalmente esto te supondrá tener que instalar PHP o Perl y además un programa para bases de datos como MySQL y luego tendrías que programar un sistema de gestión de usuarios (tal vez puedas encontrar alguno gratuito en www.hotscripts.com).
Con IIS tienes varias opciones, como migrar los archivos .htaccess de APACHE. Para más información mira aquí http://support.microsoft.com/default.aspx?scid=kb;en-us;324216&sd=tech y aqui http://support.microsoft.com/kb/324064/EN-US/ .
Gracias, muy interesante, no sabía que Microsoft tratase este problema. He instalado IISPassword y funciona perfectamente, además es gratuito.
Respuesta
También puedes hacer un programa java script y que este sea que en el inicio de la Web llame a los usuarios
Respuesta
-1
Con el htaccess si se pueden hacer permisos por carpeta pero efectivamente tendrías que cargar apache en tu pc

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas