35.36. role_routine_grants #

A visão role_routine_grants identifica todos os privilégios concedidos em funções onde o concessor, ou o beneficiado, é a função de banco de dados (role) ativa no momento. Podem ser encontradas mais informações em routine_privileges. A única diferença efetiva entre esta visão e a visão routine_privileges é que esta visão omite as funções que se tornaram acessíveis ao usuário corrente por meio de uma concessão para PUBLIC.

Tabela 35.34. Colunas de role_routine_grants

Coluna Tipo de dados

Descrição

grantor sql_identifier

Nome da função de banco de dados que concedeu o privilégio

grantee sql_identifier

Nome da função de banco de dados para a qual o privilégio foi concedido

specific_catalog sql_identifier

Nome do banco de dados que contém a função (sempre o banco de dados corrente)

specific_schema sql_identifier

Nome do esquema que contém a função

specific_name sql_identifier

O nome específico da função. Veja routines para obter mais informações.

routine_catalog sql_identifier

Nome do banco de dados que contém a função (sempre o banco de dados corrente)

routine_schema sql_identifier

Nome do esquema que contém a função

routine_name sql_identifier

Nome da função (pode estar duplicado em caso de sobrecarga)

privilege_type character_data

Sempre EXECUTE (o único tipo de privilégio para funções)

is_grantable yes_or_no

YES se o privilégio puder ser concedido, NO caso contrário


Exemplo 35.34. Exemplo do tradutor

Privilégios concedidos em funções

Uso do esquema de informações para mostrar todos os privilégios concedidos em funções onde a concessora é a usuária cristina e a beneficiária é a usuária ana.

GRANT EXECUTE ON FUNCTION maior_1000 TO ana;
GRANT
SELECT *
FROM information_schema.role_routine_grants
WHERE grantee = 'ana'\gx

-[ RECORD 1 ]----+-----------------
grantor          | cristina
grantee          | ana
specific_catalog | cristina
specific_schema  | public
specific_name    | maior_1000_34234
routine_catalog  | cristina
routine_schema   | public
routine_name     | maior_1000
privilege_type   | EXECUTE
is_grantable     | NO