Pregunta

¿Cómo funcionan los usuarios de privilegios en MySQL? ¿Todos los usuarios que usan un sitio web de redes sociales tienen un privilegio de usuario único para conectarse a la base de datos o todos los usuarios usan el mismo privilegio, como:

$dsn = 'mysql:host=localhost;dbname=social_site';
$username = 'members';
$password = 'pa55word'; 
¿Fue útil?

Solución

No, en términos generales, habrá uno (o un pequeño número) de usuarios de MySQL, y el script PHP (u otro código del lado del servidor) usará este usuario para hacer todos los datos de recuperación y configuración de datos. En algunos escenarios, es útil crear un puñado de usuarios de MySQL con varios niveles de permisos, como un nivel adicional de seguridad (así que general select Las consultas se ejecutan utilizando un usuario con solo select privilegios y inserts y updates son manejados por un usuario separado con esos privilegios). Si permite que las computadoras remotas accedan a la base de datos MySQL directamente (para sitios web o aplicaciones de socios), también es común crear un usuario de MySQL específico para esa conexión con permisos limitados solo a lo que necesitan (no drop o modify Permisos, por ejemplo) y limitado exclusivamente a su dirección IP (puede limitar un usuario de MySQL a las conexiones desde una sola dirección).

La conclusión es que solo debe crear algunos usuarios, y su sitio web/aplicación solo utilizará este pequeño grupo de usuarios para hacer toda la consulta. Además, es una buena práctica acceder a la base de datos con un usuario que tiene la menor cantidad de permisos posibles para lograr las tareas (dentro de lo razonable ... no cree un usuario separado para cada acción posible ... generalmente 1-3 usuarios deben cubrir todos niveles de permisos que desee). Si crea una gran cantidad de usuarios, (a) ralentizará MySQL, ya que tiene que acceder a una tabla de permisos más grande; (b) Será mucho más difícil administrar los permisos si la aplicación cambia en el futuro; y (c) es más doloroso depurar problemas de permisos (su script PHP tiene más flexibilidad en qué hacer e informar si hay un problema de permisos).

Otros consejos

Normalmente tiene una conexión de base de datos y almacena las cuentas de cada usuarios en una tabla de "usuarios" con los nombres de usuario y contraseñas correspondientes.

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