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才能看到

dawei

【声明】:北京站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。