• 售前

  • 售后

热门帖子
入门百科

Oracle创建只读账号的具体步骤

[复制链接]
123456879 显示全部楼层 发表于 2021-8-14 14:56:41 |阅读模式 打印 上一主题 下一主题
目次


  • 需求分析
  • 第一步:创建只读账号
  • 第二步:赋予账号毗连数据库等基本权限
  • 第三步:获取原账号的查询权限
  • 第四步:将原账号权限赋值为新账号
  • 第五步:在新账号端创建同位显示表
  • 第六步:查询结果在新账号端执行
  • 第七步:执行完成之后 登录新账号,检察结果
  • 第八步:执行删除、修改sql语句测试
  • 附录:Oracle查询账号及权限详细语句

需求分析


现有数据库账号:HEPSUSR:具有完备权限,增删改查。
必要创建一个数据库账号:HTREADER,对HEPSUSR账号下全部的表具有只读权限。

第一步:创建只读账号
  1. --创建只读账号 第一步
  2. CREATE USER htreader identified by 123456;
复制代码
第二步:赋予账号毗连数据库等基本权限
  1. --赋予htreader连接等常规权限
  2. grant connect to htreader;
  3. grant create view to htreader;
  4. grant create session to htreader;
  5. grant create synonym to htreader;
复制代码
第三步:获取原账号的查询权限
  1. 获取原账号HEPSUSR用户的所有查询表权限
  2. select 'grant select on '||owner||'.'||object_name||' to htreader;'
  3. from dba_objects
  4. where owner in ('HEPSUSR')
  5. and object_type='TABLE';
  6. --查询结果为新账号的赋值语句,如下图
复制代码


第四步:将原账号权限赋值为新账号
  1. 在原账号HEPSUSR下执行,将原账号的查询权限 赋值给新账号
  2. -------
  3. grant select on HEPSUSR.ENTRY_CERT to htreader;
  4. grant select on HEPSUSR.SUB_MESSAGE_INFO to htreader;
  5. grant select on HEPSUSR.ENTRY_CERT_RELATION to htreader;
  6. grant select on HEPSUSR.ENTRY_CERT_RELATION to htreader;
  7. grant select on HEPSUSR.ENTRY_DECL_TAX to htreader;
  8. grant select on HEPSUSR.ENTRY_DOCU to htreader;
  9. grant select on HEPSUSR.ENTRY_FEES to htreader;
  10. grant select on HEPSUSR.ENTRY_GOODS_TAX to htreader;
  11. grant select on HEPSUSR.ENTRY_HEAD to htreader;
  12. grant select on HEPSUSR.ENTRY_LIST to htreader;
  13. grant select on HEPSUSR.ENTRY_WORKFLOW to htreader;
  14. grant select on HEPSUSR.IQ_APPEND to htreader;
  15. grant select on HEPSUSR.IQ_CERT to htreader;
  16. grant select on HEPSUSR.SUB_SWAP to htreader;
  17. grant select on HEPSUSR.VIN_LIST to htreader;
复制代码
第五步:在新账号端创建同位显示表


因为新创建的只读账号,Tables栏中显示为空,我们必要在PL/SQL显示栏中为新账号登录界面添加显示同位元素,如下:
  1. --在原账号HEPSUSR端执行,获取需要显示的表名称
  2. select 'create or replace SYNONYM htreader.'||object_name|| ' for ' ||owner|| '.'||object_name||';'
  3. from dba_objects
  4. where owner in ('HEPSUSR')
  5. and object_type='TABLE'
复制代码


第六步:查询结果在新账号端执行
  1. 在只读账号HTREADER端执行:添加显示各个表信息;在SYSNONYM目录下,tables目录下无显示
  2. create or replace SYNONYM htreader.VIN_LIST for HEPSUSR.VIN_LIST;
  3. create or replace SYNONYM htreader.SUB_SWAP for HEPSUSR.SUB_SWAP;
  4. create or replace SYNONYM htreader.SUB_MESSAGE_INFO for HEPSUSR.SUB_MESSAGE_INFO;
  5. create or replace SYNONYM htreader.IQ_CERT for HEPSUSR.IQ_CERT;
  6. create or replace SYNONYM htreader.IQ_APPEND for HEPSUSR.IQ_APPEND;
  7. create or replace SYNONYM htreader.ENTRY_WORKFLOW for HEPSUSR.ENTRY_WORKFLOW;
  8. create or replace SYNONYM htreader.ENTRY_LIST for HEPSUSR.ENTRY_LIST;
  9. create or replace SYNONYM htreader.ENTRY_HEAD for HEPSUSR.ENTRY_HEAD;
  10. create or replace SYNONYM htreader.ENTRY_GOODS_TAX for HEPSUSR.ENTRY_GOODS_TAX;
  11. create or replace SYNONYM htreader.ENTRY_FEES for HEPSUSR.ENTRY_FEES;
  12. create or replace SYNONYM htreader.ENTRY_DOCU for HEPSUSR.ENTRY_DOCU;
  13. create or replace SYNONYM htreader.ENTRY_DECL_TAX for HEPSUSR.ENTRY_DECL_TAX;
  14. create or replace SYNONYM htreader.ENTRY_CONTAINER for HEPSUSR.ENTRY_CONTAINER;
  15. create or replace SYNONYM htreader.ENTRY_CERT_RELATION for HEPSUSR.ENTRY_CERT_RELATION;
  16. create or replace SYNONYM htreader.ENTRY_CERT for HEPSUSR.ENTRY_CERT;
复制代码
第七步:执行完成之后 登录新账号,检察结果


新账号可以查询原账号的全部表结构,但是无法执行 增删改干系利用


第八步:执行删除、修改sql语句测试



附录:Oracle查询账号及权限详细语句
  1. 1.查看所有用户:
  2. select * from dba_users;
  3. select * from all_users;
  4. select * from user_users;
  5. 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):
  6. select * from dba_sys_privs;
  7. select * from user_sys_privs;
  8. 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限
  9. sql>select * from role_sys_privs;
  10. 4.查看用户对象权限:
  11. select * from dba_tab_privs;
  12. select * from all_tab_privs;
  13. select * from user_tab_privs;
  14. 5.查看所有角色:
  15. select * from dba_roles;
  16. 6.查看用户或角色所拥有的角色:
  17. select * from dba_role_privs;
  18. select * from user_role_privs;
复制代码
以上就是Oracle创建只读账号的详细步骤的详细内容,更多关于Oracle创建只读账号的资料请关注草根技术分享别的干系文章!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作