ORACLE 7.3用户管理

dam*_*inc 0 database oracle schema user-management

在工作中,我有一个应用程序坐在Oracle 7.3(旧的东西,是的).最近我尝试创建一个能够在所有表上进行SELECT的帐户,但没有别的,即没有更新或删除.但每当我创建一个新帐户时,它都可以访问所有应用程序表.我甚至把它剥离到了CREATE SESSION.这没有帮助 - 用户仍然可以更新任何表!

所以,我发现有一大堆公共同义词的名称与表完全相同(即表myTable123,公共同义词myTable123).我删除了其中一个,用户无法在该特定表上进行SELECT.然后我创建了一个新表,显然新用户看不到它.我为该表添加了一个公共同义词,希望用户能够访问它.没有运气,新用户无法看到它...这是有意义的,因为没有给予GRANT.还有别的东西......

我不是Oracle专家,我试图找到问题的根源,但到目前为止还没有运气.请帮助您提出任何建议.干杯! 达摩

Hob*_*obo 5

正如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 - 我假设在权限模型中没有太大变化.