系统权限ADMINISTER DATABASE TRIGGER的作用
更新:HHH   时间:2023-1-7


基于database创建一个系统trigger,遇到了权限问题,查了一下原来是需要ADMINISTER DATABASE TRIGGER权限[@more@]SQL> create or replace trigger trigg_db 2 after logon on database 3 -- for each row 4 declare 5 -- local variables here 6 begin 7 insert into t_trace values(sys_context('userenv','ip_address'), 8 sys_context('userenv','terminal'), 9 sys.login_user, 10 sysdate, 11 sys.sysevent); 12 end trigg_db; 13 / after logon on database * 第 2 行出现错误: ORA-01031: 权限不足 --============================ SQL> grant ADMINISTER DATABASE TRIGGER to test; 授权成功。 SQL> --=========================== SQL> create or replace trigger trigg_db 2 after logon on database 3 -- for each row 4 declare 5 -- local variables here 6 begin 7 insert into t_trace values(sys_context('userenv','ip_address'), 8 sys_context('userenv','terminal'), 9 sys.login_user, 10 sysdate, 11 sys.sysevent); 12 end trigg_db; 13 / 触发器已创建 SQL> --========================= To create a trigger on DATABASE, you must have the ADMINISTER DATABASE TRIGGER privilege. If this privilege is later revoked, then you can drop the trigger, but not alter it. --========================
返回网络安全教程...