Privilegios En Workbench
Enviado por dieguinhocs • 25 de Abril de 2014 • 1.391 Palabras (6 Páginas) • 465 Visitas
Privilegios de los que provee MySQL
La información sobre los privilegios de las cuentas está almacenada en las tablas user, db, host, tables_priv, columns_priv, y procs_priv de la base de datos mysql. El servidor MySQL lee el contenido de estas tablas y lo almacena en memoria cuando se inicia, y lo relee bajo ciertas circunstancias indicadas en Sección 5.6.7, “Cuándo tienen efecto los camios de privilegios”. Las decisiones de control de acceso se basan en la copia en memoria de las tablas grant.
Los nombres utilizados en las sentencias GRANT y REVOKE para referirse a privilegios se muestran en la siguiente tabla, junto al nombre de columna asociado con cada privilegio en las tablas grant y el contexto en que el privilegio se aplica. Más información sobre el significado de cada privilegio se puede encontrar en Sección 13.5.1.3, “Sintaxis de GRANT y REVOKE”.
Privilegio Columna Contexto
CREATE Create_priv bases de datos, tablas, o índices
DROP Drop_priv bases de datos o tablas
GRANT OPTION Grant_priv bases de datos, tablas, o procedimientos almacenados
REFERENCES References_priv bases de datos o tables
ALTER Alter_priv tablas
DELETE Delete_priv tablas
INDEX Index_priv tablas
INSERT Insert_priv tablas
SELECT Select_priv tablas
UPDATE Update_priv tablas
CREATE VIEW Create_view_priv vistas
SHOW VIEW Show_view_priv vistas
ALTER ROUTINE Alter_routine_priv procedimientos almacenados
CREATE ROUTINE Create_routine_priv procedimientos almacenados
EXECUTE Execute_priv procedimientos almacenados
FILE File_priv acceso a archivos en la máquina del servidor
CREATE TEMPORARY TABLES Create_tmp_table_priv administración del servidor
LOCK TABLES Lock_tables_priv administración del servidor
CREATE USER Create_user_priv administración del servidor
PROCESS Process_priv administración del servidor
RELOAD Reload_priv administración del servidor
REPLICATION CLIENT Repl_client_priv administración del servidor
REPLICATION SLAVE Repl_slave_priv administración del servidor
SHOW DATABASES Show_db_priv administración del servidor
SHUTDOWN Shutdown_priv administración del servidor
SUPER Super_priv administración del servidor
CREATE VIEW y SHOW VIEW fueron añadidos en MySQL 5.0.1. CREATE USER, CREATE ROUTINE, y ALTER ROUTINE fueron añaidos en MySQL 5.0.3. Aunque EXECUTE ya estaba presente en MySQL 5.0.0, no se activó hasta MySQL 5.0.3. Para utilizar estos privilegios cuando se actualice desde una versión más antigua de MySQL que no los tiene, debe actualizar sus tablas grant utilizando el script mysql_fix_privilege_tables proporcionado con la distribución MySQL. Consulte Sección 2.10.2, “Aumentar la versión de las tablas de privilegios”.
Para crear o modificar procedimientos almacenados cuando el registro binario está activado, debe también tener el privilegio SUPER, tal y como se explica en Sección 19.3, “Registro binario de procedimientos almacenados y disparadores”.
Los privilegios CREATE y DROP permiten crear nuevas bases de datos y tablas, o eliminar las existentes. Si otorga el privilegio DROP para la base de datos mysql a un usuario, ese usuario puede eliminar la base de datos en la que MySQL almacena los privilegios de acceso.
Los privilegios SELECT, INSERT, UPDATE, and DELETE permiten realizar operaciones en registros de tablas existentes en una base de datos.
Las sentencias SELECT requieren el privilegio SELECT sólo si realmente extraen registros de una tabla. Algunas sentencias SELECT no acceden a tablas, y pueden ser ejecutados por tanto sin permiso para ninguna base de datos. Por ejemplo, podría utilizar el cliente mysql como una simple calculadora para evaluar expresiones que no hacen referencia a tablas:
mysql> SELECT 1+1;
mysql> SELECT PI()*2;
El privilegio INDEX permite crear o eliminar índices. INDEX es aplicable a tablas existentes. Si tiene el privilegio CREATE para una tabla, entonces puede incluir definiciones de índices en la sentencia CREATE TABLE.
El privilegio ALTER permite utilizar ALTER TABLE para cambiar la estructura de o renombrar tablas.
El privilegio CREATE ROUTINE es necesario para crear procedimientos almacenados (funciones y procedimientos). El privilegio ALTER ROUTINE se necesita para modificar o eliminar procedimientos almacenados, y EXECUTE es necesario para ejecutarlos.
El privilegio GRANT permite dar a otros usuarios las privilegios que uno mismo posee. Puede ser utilizado para bases de datos, tablas, y procedimientos almacenados.
El privilegio FILE otorga permiso para leer y escribir archivos en la máquina del servidor utilizando las sentencias LOAD DATA INFILE y SELECT ... INTO OUTFILE. Un usuario que tiene el privilegio FILE puede leer cualquier archivo de la máquina del servidor que sea legible por cualquiera o por el usuario que ejecuta el servidor MySQL. (Esto implica que el usuario puede leer cualquier archivo en el directorio de datos, porque el servidor puede acceder a cualquiera de estos archivos.) El privilegio FILE también permite al usuario crear
...