【发布时间】:2015-06-26 14:08:54
【问题描述】:
我有一个以特定用户身份运行的 plsql 作业,我需要执行授权以授予该用户对特定表的访问权限,直到作业完成。这项工作永远不会超过 30 分钟。
我的问题是,在 oracle 中,是否可以在有限的时间内授予特定用户对表的访问权限,或者我应该在作业完成后创建另一个函数来撤销权限?我进行了一些快速搜索,但找不到任何关于此的内容。有谁知道这是否可能?
如果我能在 30 分钟内全部授予,那就太棒了。
【问题讨论】:
-
查看Oracle调度器。
-
只为这个工作创建一个特殊用户怎么样?
-
你使用的是 dbms_job 还是 dbms_scheduler?
-
我建议使用函数/程序在表 (Access_tab) 中插入 id、start_time 和 end_time,同时授予用户访问权限。部署一个每 15 分钟运行一次的作业,该作业根据表 (Access_tab) 中指定的 end_time 撤销访问。这将减少撤销访问权限的人工干预。
标签: sql oracle plsql permissions sql-grant