As funções no Oracle Database não têm proprietário, assim como os diretórios não têm proprietário.
Quando o usuário com CREATE ROLE
ou SYSDBA
privilégio cria a função, ele recebe automaticamente essa função, o WITH ADMIN OPTION
que significa que o usuário pode conceder essa função posteriormente a outros usuários, mesmo que o privilégio CREATE ROLE
seja revogado.
Você pode ver quais funções estão atribuídas a quais usuários consultando a DBA_ROLE_PRIVS
exibição ou USER_ROLE_PRIVS
se deseja saber quais funções estão atribuídas ao usuário atual.
Além disso, um usuário não pode criar uma função se a função com o mesmo nome já existir. No entanto, você pode auditar a criação e concessão de funções. Você pode fazer isso com a instrução AUDIT ROLE (se por algum motivo tiver sido desativada NOAUDIT ROLE
) e, em seguida, consultando a DBA_AUDIT_TRAIL
exibição.