请教各位高手,如何实现分布式数据库角色用户权限设置?小弟先谢过各位GG,MM了~

[复制链接]
查看11 | 回复9 | 2005-10-30 17:05:33 | 显示全部楼层 |阅读模式
如何把分布式数据库A中的角色ONE授权给数据库B中的角色TWO?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
通过dblink访问数据库的时候
权限是由登陆到目标数据库上的数据库用户的权限所决定的
干吗有如此一问?
数据库b中通过数据库a中具有one角色的用户登陆就可以了
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
你好,谢谢你的指点,我的数据库具体情况是:数据库B中有很多具有角色TWO权限的用户,他们都需要访问数据库A中授权角色ONE访问的表,请问如何实现呢?再次感谢。
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
dblink是以数据库a中具有角色one的用户登陆的
自己试一试就知道了
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
biti_rainy ,你好,感谢你的指点,

应该是我没说清楚,对不起,我的意思是只能允许具有角色TWO的用户访问,如果使用PUBLIC,那么数据库B中的所有用户都可以访问,这正是我不希望得到的结果!再次希望能够得到你的指点,多谢~·
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
dblink不能通过角色来授权,你只能在数据库B中所有具有角色TWO的用户下建立私有DBLINK来访问库A。也可以写一个脚本,定期自动执行,首先查出所有具有角色TWO的用户,给它自动建立私有DBLINK,被取消角色TWO的用户则删除其下的私有DBLINK
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
在建立用户后,给用户如果授权角色two
则给该用户建立dblink
取消角色two 的时候就dropdblink
这些通过8i中的系统trigger应该可以实现
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
先谢谢版主的多次帮助,问题是具有角色TWO的权限的用户数非常多,而且已经存在了。TRIGGER好像只能对新建,修改,或删除的用户起作用吧?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
你就写一个成批处理的脚本授予不就结了?
要是让我来做这件事情
我将采取最直接简单但是看起来最傻的办法:
对所有有这种要求的用户,每个拥护创建一个私有dblink
最多写个成批处理的脚本就行了
私有的总是比公有的效率高!
况且这种操作不是很麻烦,但给你带来的也许有很多意想不到的好处
不要追求完美的最简单的设置
把这个事情作为你们的dba必须注意的事项就ok了
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
看来也只能这样了,再次感谢 biti_rainy,呵呵~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行