ORACLE 存储过程授权

hyg8888 2010-09-24 11:04:41
我已建立了以用户USERA,想赋予其可以查看存储过程的权限,GRANT语句怎么写?有劳各位了
...全文
1039 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
hyg8888 2010-09-24
  • 打赏
  • 举报
回复
好的,谢谢各位!
虫洞 2010-09-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 hyg8888 的回复:]
那是所有 字典了,没有单独针对过程的吗?比如 grant select procedure to usera;不过这个语句没执行成功
[/Quote]

存储过程只有
create 、alter、execute、drop权限
没有select权限
gelyon 2010-09-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 hyg8888 的回复:]
那是所有 字典了,没有单独针对过程的吗?比如 grant select procedure to usera;不过这个语句没执行成功
[/Quote]

没有你说的这个方法,只有grant execute on <procedure> to <username>;这是执行的权限,如果要查看,这
dba_tab_privs 是用户被授予的对象权限
dba_sys_privs 是用户被授予的系统权限
dba_role_privs 是用户被授予的角色

三个视图都可以的
hyg8888 2010-09-24
  • 打赏
  • 举报
回复
那是所有 字典了,没有单独针对过程的吗?比如 grant select procedure to usera;不过这个语句没执行成功
gelyon 2010-09-24
  • 打赏
  • 举报
回复

--给usera授予查看数据字典的权限:
grant select any dictionary to usera;
--再查看你要的过程
select object_name,status from user_objects where object_type='PROCEDURE';
hyg8888 2010-09-24
  • 打赏
  • 举报
回复
也就是一数据库安全性较高,给予不同用户不同的权限,有的可以建表,有的只是可以查看表,现在要做的就是给予USERA查看存储过程的权限,只是查看,不能执行
gelyon 2010-09-24
  • 打赏
  • 举报
回复
查看存储过程?什么意思?通过数据字典就可以查看了啊

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧