dam*_*inc 0 database oracle schema user-management
在工作中,我有一个应用程序坐在Oracle 7.3(旧的东西,是的).最近我尝试创建一个能够在所有表上进行SELECT的帐户,但没有别的,即没有更新或删除.但每当我创建一个新帐户时,它都可以访问所有应用程序表.我甚至把它剥离到了CREATE SESSION.这没有帮助 - 用户仍然可以更新任何表!
所以,我发现有一大堆公共同义词的名称与表完全相同(即表myTable123,公共同义词myTable123).我删除了其中一个,用户无法在该特定表上进行SELECT.然后我创建了一个新表,显然新用户看不到它.我为该表添加了一个公共同义词,希望用户能够访问它.没有运气,新用户无法看到它...这是有意义的,因为没有给予GRANT.还有别的东西......
我不是Oracle专家,我试图找到问题的根源,但到目前为止还没有运气.请帮助您提出任何建议.干杯! 达摩
正如tuinstoel所说,你可以忽略公共同义词 - 这不会影响权限.
创建原始表时,你可能会创建一个
grant [permissions] on [table] to public
Run Code Online (Sandbox Code Playgroud)
其中[permissions]可以像"all"一样广泛,这意味着任何新用户都将自动被授予对这些表的权限.
是否
select * from ALL_TAB_PRIVS where table_name = '[one of your problem tables]'
Run Code Online (Sandbox Code Playgroud)
什么回报?
BTW - 从未使用过Oracle 7.3.3 - 我假设在权限模型中没有太大变化.
| 归档时间: |
|
| 查看次数: |
180 次 |
| 最近记录: |