Bloquear una base de datos de SQL Server con PHP
-
08-06-2019 - |
Pregunta
Quiero seguridad adicional para un punto particular en mi aplicación web.Entonces quiero bloquear la base de datos (SQL Server 2005).¿Alguna sugerencia o esto es incluso necesario con SQL Server?
Editar en pregunta:
La consulta falla silenciosamente, no se registran mensajes de error y no ocurre dentro de una transacción.
Solución final:
Nunca pude resolver el problema, sin embargo, lo que terminé haciendo fue cambiar a MySQL y usar una consulta de nivel transaccional aquí.Esta no fue la razón principal, ni siquiera la principal, para cambiar.Había tenido problemas con SQL Server y me permitió tener nuestro CMS y varias otras herramientas ejecutándose en la misma base de datos.Anteriormente teníamos un servidor SQL y una base de datos MySQL ejecutándose para ejecutar nuestro sitio.El puerto llevó un poco de tiempo, sin embargo, a la larga creo que funcionará mucho mejor para el sitio y el negocio.
Solución
Supongo que tienes tres opciones.
Establezca permisos de usuario para que el usuario x solo pueda leer de la base de datos.
Configure la base de datos en modo de usuario único para que solo una conexión pueda acceder a ella.
sp_dboption 'myDataBaseName', único, verdadero
Configurar la base de datos en solo lectura
sp_dboption 'myDataBaseName', solo lectura, verdadero
Otros consejos
Nunca pude resolver el problema, sin embargo, lo que terminé haciendo fue cambiar a MySQL y usar una consulta de nivel transaccional aquí.Esta no fue la razón principal, ni siquiera la principal, para cambiar.Había tenido problemas con MSSQL y me permitió tener nuestro CMS y varias otras herramientas ejecutándose en la misma base de datos.Anteriormente teníamos una base de datos MSSQL y MySQL ejecutándose para ejecutar nuestro sitio.El puerto llevó un poco de tiempo, sin embargo, a la larga creo que funcionará mucho mejor para el sitio y el negocio.