【发布时间】:2018-08-21 18:55:40
【问题描述】:
我突然想到,我有一个关于权限的基本问题。任何被授予访问我的数据仓库的权限的人都将获得报告架构中对象的权限。但是,每当我们删除对象时,这些权限就会丢失。
该方法应满足的基本要求是:
- 在加载数据期间未填充索引(已删除、禁用?)以避免在插入时填充
- 保留现有权限。
根据上述要求,你们认为最好的方法是什么?
【问题讨论】:
-
改变 drop-recreate。
-
或者,将所有 GRANT 语句保存在单个 .SQL 文件中。创建所有内容后运行它。
-
@LukaszSzozda 怎么做?你能举个例子吗?
-
你明白你在说什么吗?你有一张桌子。您在该表上授予我 SELECT 权限。然后你放下桌子。 Oracle 应该如何以及为什么要保留有关您曾在 dropped object 上授予我任何东西这一事实的信息?这没有任何意义。
-
您有一个删除所有表并重新创建它们的过程?这不应该是任何业务流程的一部分,即使是,该程序肯定应该通过重新申请任何授权来完成工作。或者,如果这是构建过程的一部分,则该过程应该管理授权。
标签: oracle ddl privileges sql-grant