Dada uma função de banco de dados, user1
, uma função something()
definida como um procedimento armazenado e uma exibição criada como:
CREATE VIEW view1 AS select * from something()
E, dadas essas permissões:
REVOKE ALL ON FUNCTION something FROM user1
REVOKE SELECT ON view1 FROM user1
Quando executo SELECT * FROM view1
, recebo um erro permission denied for function something()
.
Minha pergunta é, se eu revogar as permissões de seleção na exibição, por que a função é chamada? Esperava receber algo como:
permission denied for relation view1
Obrigada!