Pregunta

Tengo un sitio ASP.NET MVC con una aplicación de administración del sitio privado y vigilado con ASP.NET de autorización de SQL respaldados. Necesito agregar un inicio de sesión para el sitio público para permitir a los visitantes a registrarse para obtener una cuenta.

Estoy pensando que debería crear el almacenamiento totalmente independiente para el sitio público, en lugar de extender la db usuario existente y se basan en las funciones públicas para mantener a los usuarios fuera de la oficina. ¿Hay alguna razón para no hacerlo?

¿Fue útil?

Solución

Sí hay. Se puede aislar la base de datos privada de la base de datos pública. Crear 2 cuentas de usuario de base de datos, asegúrese de que sólo tienen acceso a la base de datos 1 que necesitan. Las aplicaciones públicas y privadas utilizarán diferentes cuentas. A continuación, a bloquear las cuentas de la base de datos para asegurarse de que sólo tienen los derechos necesarios para la aplicación web para la función. (No estoy seguro de lo que la base de datos que está utilizando. Si está utilizando MS-SQL asegurarse de que no tienen acceso a xp_cmdshell, si es menor de MySQL asegúrese de que la cuenta no tiene privilegios de archivos. Hay otras consideraciones pero esto está fuera del alcance de esta pregunta.)

Si no se encuentra una vulnerabilidad de inyección SQL en la parte pública de su sitio, entonces será capaz de acceso que una base de datos privada dejando su sitio afectado por el ataque.

Otros consejos

El tiempo y el dinero potencialmente podrían ser una razón. De lo contrario, si usted tiene el tiempo. Dependiendo de la necesidad, sin saber exactamente lo que está en la mano, podría también agregar una gran cantidad de complejidad ...

HTH.

¿Alguna vez tener un usuario con más de una función? ¿Podría llegar a almacenar el mismo usuario en más de una base de datos? Si es así, me gustaría mantener a sus usuarios en una base de datos unificada.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top