Salta el contingut

7. Permisos

Per a crear, modificar o executar els procediments emmagatzemats, els usuaris han de tindre els permisos corresponents.

7.1. Permís per a crear PE

SQL
1
2
3
GRANT CREATE ROUTINE
ON nom_bd.*          -- o bé, sense el nom_bd.
TO nom_usuari;

A partir d'eixe moment, l'usuari nom_usuari ja podrà crear PE i tindrà tots els permisos sobre eixos PE (execució, modificació i esborrat).

7.2. Permís per a modificar o esborrar un PE

SQL
1
2
3
GRANT ALTER ROUTINE
ON { PROCEDURE | FUNCTION } nom_proc
TO nom_usuari;

7.3. Permís d'execució d'un PE

SQL
1
2
3
GRANT EXECUTE
ON { PROCEDURE | FUNCTION } nom_proc
TO nom_usuari;

7.4. Llevar permisos (REVOKE)

Per a llevar permisos estan els REVOKE corresponents:

SQL
1
2
3
REVOKE { CREATE ROUTINE | ALTER ROUTINE | EXECUTE }
ON nom_proc
FROM nom_usuari;

Exemples:

SQL
1
2
3
4
REVOKE CREATE ROUTINE ON * FROM pep;
REVOKE ALTER ROUTINE ON PROCEDURE llistar FROM pep;
REVOKE ALTER ROUTINE ON FUNCTION quants FROM pep;
REVOKE EXECUTE ON llistar FROM pep;

7.5. Taules del sistema associades

  • En la taula mysql.proc hi ha informació dels procediments creats (nom, propietari, etc.).
  • En la taula mysql.procs_priv hi ha informació dels permisos dels processos de cada usuari.