微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

oracle – 如何在没有在对象之前预先修复模式名称的情况下由多个用户使用一个模式?

搜索了很多帖子来实现以下问题.但无法得到解决方案.有人可以解决这个问题.

问题.
我创建了一个名为RAMFULL的用户/模式,其中包含connect,资源权限.并且我希望使用名为RAMREAD的oracle用户作为具有只读权限的别名来访问此用户.在访问/使用RAMFULL中的对象期间,我不需要向其他人提及Adminitrator /完全特权用户RAMFULL.

>我创建了一个名为RAMFULL的用户/架构
>我正在使用具有相同用户名用户/模式进行所有CRUD操作.
>问题是我必须将此架构提供给我的开发中心来分析问题.但是我不想给它们这个db.由于它具有所有权限,因此可以被篡改或实验.
>现在,我正在寻找一个解决方案来创建另一个只具有只读权限的用户,并且当他登录该帐户/架构时,一个人应该感觉像是在处理原始架构,除了权限.
>我看过很多文章,我可以通过分配给另一个用户来创建同义词或用Ro创建角色.但在所有这些问题是当我选择我必须预先修复架构名称.例如,如果我需要搜索表,我必须从SCHEMA1.TABLE1给出选择计数(*);

我想知道是否可以使用具有只读权限的RAMREAD用户访问Schema RAMFULL.在我使用RAMREAD用户时,我不应该在任何地方提供/提及RAMFULL用户.请帮帮我.

解决方法

您可以 alter the session执行此操作:

alter session set current_schema = RAMREAD;

报价:

Subsequent unqualified references to schema objects during the session will resolve to objects in the specified schema.

它没有给你任何额外的权限,所以你仍然需要在RAMFULL的所有表上授予SELECT,你希望用户登录到RAMREAD才能看到

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐