Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como conceder execução em procedimento armazenado específico ao usuário


Sim... isso funciona como esperado se você não conceder ao usuário o SELECT privilégio no mysql.proc tabela, direta ou indiretamente, como com GRANT SELECT ON *.* TO ...

Sem SELECT permissão nesta tabela, um usuário só pode ver a existência de procedimentos armazenados e funções armazenadas onde ele tem outras permissões, como EXECUTE .

Sob o capô, a falta de SELECT em mysql.proc também impede que o usuário veja os procedimentos aos quais não tem acesso através do information_schema.routines pseudo-tabela.

Você não deve precisar GRANT SELECT ON mysql.proc para permitir que o usuário execute procedimentos ou funções... e se você fizer isso, então isso parece a pergunta.