oracle如何分配这样的权限

Tod707070 2010-11-27 12:06:59
我有一个数据库,数据库里面有两个用户writer和reader,他们所处的表空间是不同的。
writer是一个dba用户,reader是一个受限制用户。
我不能把reader创建成dba,我允许reader在自己的表空间里面创建任意的数据表、视图、函数、存储过程、索引,在获得writer授权的情况下,可以“只读”writer用户下的部分数据表。
请问,我应该如何创建reader用户,如何给他分配角色?
...全文
73 点赞 收藏 9
写回复
9 条回复
Tod707070 2010年11月27日
我再解释一下,我要创建的用户是reader,他的权限要求是这样的:
(1)reader不能是dba,他是受限制的,他不能随便访问其他用户的数据表。
(2)reader用户能够在自己的表空间里随意创建视图、索引、数据表等数据库资源。
(3)其他用户可以把自己的数据表的select、references权限赋予reader用户。
问题:
这个用户怎么创建,该分配什么角色?
回复 点赞
huangdh12 2010年11月27日
这个 ,貌似 connect,resource就可以了吧
其他的只读权限,就让各个用户赋予就可以了吧
回复 点赞
njlywy 2010年11月27日
connect,resource
回复 点赞
xiaoyaobihai 2010年11月27日
引用 3 楼 huangdh12 的回复:

这个 ,貌似 connect,resource就可以了吧
其他的只读权限,就让各个用户赋予就可以了吧


+1
回复 点赞
lxyzxq2008 2010年11月27日
[Quote=引用 6 楼 xman_78tom 的回复:]

SQL code

-- 创建 reader 用户帐户,默认用户表空间为 reader_ts,在其上的配额没有限制
-- 由于在其他表空间上没有配额,reader 无法在其他表空间上创建对象
create user reader
identified by password
default tablespace reader_ts
quota unlimited on reader_ts;
……
[/Quote]+1
回复 点赞
xman_78tom 2010年11月27日

-- 创建 reader 用户帐户,默认用户表空间为 reader_ts,在其上的配额没有限制
-- 由于在其他表空间上没有配额,reader 无法在其他表空间上创建对象
create user reader
identified by password
default tablespace reader_ts
quota unlimited on reader_ts;

-- 授予 reader 登陆数据库的权限
grant create session to reader;
-- 授予 reader 角色 resource 以允许 reader 创建表、视图、函数、存储过程、索引
grant resource to reader;
-- 授予 reader 读取 writer 下表的权限
grant select on writer.tablename to reader;

回复 点赞
YY_MM_DD 2010年11月27日
[Quote=引用 3 楼 huangdh12 的回复:]

这个 ,貌似 connect,resource就可以了吧
其他的只读权限,就让各个用户赋予就可以了吧
[/Quote]
+1
回复 点赞
心中的彩虹 2010年11月27日
[Quote=引用楼主 tod707070 的回复:]
我有一个数据库,数据库里面有两个用户writer和reader,他们所处的表空间是不同的。
writer是一个dba用户,reader是一个受限制用户。
我不能把reader创建成dba,我允许reader在自己的表空间里面创建任意的数据表、视图、函数、存储过程、索引,在获得writer授权的情况下,可以“只读”writer用户下的部分数据表。
请问,我应该如何创建reader用户,如何给他……
[/Quote]
查看其他的只需 grant connect,resource to reader
回复 点赞
发动态
发帖子
基础和管理
创建于2007-09-28

7175

社区成员

9.5w+

社区内容

Oracle 基础和管理
社区公告
暂无公告