对某用户授权新建的表权限

Posted lwq9614

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对某用户授权新建的表权限相关的知识,希望对你有一定的参考价值。

 

 

---需求,将TEST1,TEST2用户下所有表授权给 test用户,包括往后新建的表。ps:生产库慎用,最好不用;

 

create or replace trigger ddl_tri
after create on database
declare
PRAGMA AUTONOMOUS_TRANSACTION;
v_sqlstr_1 varchar2(4000);
v_job number;
begin
if Sys.dictionary_obj_owner in (‘TEST1‘,‘TEST2‘) THEN
if sys.sysevent = ‘CREATE‘ then

if Sys.dictionary_obj_type =‘TABLE‘ then
v_sqlstr_1:=‘grant select on ‘|| Sys.dictionary_obj_owner||‘.‘||Sys.dictionary_obj_name||‘ to test‘;
--dbms_output.put_line(v_sqlstr_1);
dbms_job.submit(v_job,‘begin execute immediate ‘‘‘||v_sqlstr_1||‘‘‘; end;‘,sysdate);
commit;
execute immediate v_sqlstr_1;
end if;
end if;
END IF;
end;
/

 

以上是关于对某用户授权新建的表权限的主要内容,如果未能解决你的问题,请参考以下文章

PostgreSQL对现有,新建的表和视图授权给用户

PostgreSQL对现有的未来的表和视图授权给用户

Case: 一个read-only 角色对某个schema下的新建的表,无需单独授权,直接拥有只读权

oracle如何授权当前用户只能增删改查当前用户的表

mysql对实例授权,可以不用对实例下的表重新授权吗?

ORACLE授权用户查询另一个用户下的表与视图