Las siguientes opciones de mysqld afectan a la seguridad:
--allow-suspicious-udfs
Esta opción cotrola si las funciones definidas por el
usuario que sólo tienen un símbolo xxx
para la función principal se pueden cargar. Por defecto, la
opción está desactivada y sólo UDFs que tengan al menos
un símbolo auxiliar pueden cargarse. Esto previene intentos
de cargar funciones desde ficheros objeto compartidos que no
contegan UDFs legítimos. Para MySQL 5.0, esta opción se
añadió en MySQL 5.0.3. Consulte
Sección 27.2.3.6, “Precauciones de seguridad en funciones definidas por usuarios”.
--local-infile[={0|1}]
Si arranca el servidor con
--local-infile=0
, los clientes no pueden
usar LOCAL
en comandos LOAD
DATA
. Consulte Sección 5.5.4, “Cuestiones relacionadas con la seguridad y LOAD DATA
LOCAL
”.
--old-passwords
Fuerza al servidor a generar hashes de contraseñas cortos (pre-4.1) para las nuevas contraseñas. Esto es útil para compatibilidad cuando el servidor debe soportar antiguos programas cliente. Consulte Sección 5.6.9, “Hashing de contraseñas en MySQL 4.1”.
(OBSOLETO)
--safe-show-database
En versiones previas de MySQL, esta opción provoca que el
comando SHOW DATABASES
muestre los
nombers de sólo aquellas bases de datos para las que el
usuario tiene algún tipo de privilegio. En MySQL 5.0, esta
opción no está disponible ya que es el comportamiento por
defecto, y hay un privilegio SHOW
DATABASES
que puede usarse para controlar el
acceso a los nombres de las bases de datos para cada cuenta.
Consulte Sección 13.5.1.3, “Sintaxis de GRANT
y REVOKE
”.
--safe-user-create
Si está activada, un usuario no puede crear nuevos usuarios
con el comando GRANT
a no ser que el
usuario tenga el privilegio INSERT
para
la tabla mysql.user
. Si desea que un
usuario tenga la habilidad de crear nuevos usuarios con los
privilegios que el usuario tiene derecho a otorgar, debe
otorgar al usuario el siguiente privilegio:
mysql> GRANT INSERT(user) ON mysql.user TO 'nombre_usuario
'@'nombre_host
';
Esto asegura que el usuario no pueda cambiar ninguna columna
de privilegios directamente, pero debe usar el comando
GRANT
para dar privilegios a otros
usuarios.
--secure-auth
Desactiva autenticación para cuentas que usen antiguas contraseñas (pre-4.1)
--skip-grant-tables
Esta opción hace que el servidor no use el sistema de
privilegios en absoluto. Esto da a todo el mundo
acceso total a todas las bases de
datos! (Puede decirle a un servidor en ejecución que
arranque usando las tablas de permisos de nuevo usando
mysqladmin flush-privileges o el comando
mysqladmin reload, o mediante el comando
FLUSH PRIVILEGES
.)
--skip-name-resolve
Los nombres de equipo no se resuelven. Todo valor en la
columna Host
en la tabla de permisos
deben ser números IP o localhost
.
--skip-networking
No permite conexiones TCP/IP a través de la red. Todas las conexiones a mysqld se realizan mediante ficheros socket de Unix.
--skip-show-database
Con esta opción, el comando SHOW
DATABASES
se permite sólo a usuarios que tengan
el privilegio SHOW DATABASES
, y el
comando muestra todos los nombres de bases de datos. Sin
esta opción , SHOW DATABASES
está
permitido a todos los usuarios, pero muestra cada nombre de
base de datos sólo si el usuario tiene el privilegio
SHOW DATABASES
o algún privilegio para
la base de datos.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.