文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Oracle 权限常用语句【转】

2024-04-02 19:55

关注
http://www.cnblogs.com/ningvsban/p/3606239.html body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe WPC', 'Segoe UI', 'HelveticaNeue-Light', 'Ubuntu', 'Droid Sans', sans-serif; font-size: 14px; line-height: 1.6; }

Oracle用户权限常用语句

常用的System Privileges

实例

创建用户并赋予该用户授权权限。

create user ken identified by ken;

授予权限并附带admin option

grant create session, create table to ken with admin option;

授予权限,不带with admin option

grant create view to ken;

新建tom用户

create user tom identified by tom;

使用ken用户登录后对tom授权, 语句执行成功

grant create session, create table to tom; Grant succeeded. 对tom授权,语句执行失败 grant create view to tom; grant create view to tom * ERROR at line 1: ORA-01031: insufficient privileges

回收权限

note 注意,回收权限不是级联的。

从ken回收登录权限

revoke create session from ken;

此时tom依然可以登录,但Ken无法登录了

ERROR: ORA-01045: user KEN lacks CREATE SESSION privilege; logon denied

常用的Object Privilege

查看系统中的Object Privilege

select distinct privilege from dba_tab_privs;

查看某用户具有的Object Privilege

select grantor, owner, table_name, privilege from dba_tab_privs where grantee = 'TOM';

授予人可以是该对象所有者或者sys和system用户。

grant select on t to tom

授予所有权限

grant all on emp to monkey;

授予列权限

grant update on emp(sal) to monkey

授予对于某个包的执行权限

grant execute on dbms_transaction to ken;

在别的schema中建立索引,必须具备以下权限

grant index on scott.emp to blake;

回收对象权限

revoke select on emp from blake

note 回收Object Privilege 会导致级联回收。

角色

角色Role,定义一组权限。

查询角色具备的权限

select * from role_sys_privs where role='角色名'

select * from role_sys_privs where role='CONNECT';

select * from role_sys_privs where role='RESOURCE';

DBA角色

dba角色具有所有的系统权限,及with admin option选项,默认的dba用户为sys和system,它们可以将任何系统权限授予其他用户。但是要注意的是dba角色不具备sysdba和sysoper的特权(启动和关闭数据库)

note 一般而言,创建用户后,给与connect角色和resource就够了。

自定义角色

建立角色(不验证)

create role 角色名 not identified;

建立角色(数据库验证)

create role 角色名 identified by 密码;

角色授权

grant create session to 角色名 with admin option grant select on scott.emp to 角色名; grant insert, update, delete on scott.emp to 角色名;

分配角色

grant 角色名 to blake with admin option;

select * from dba_roles;

select privilege, admin_option from role_sys_privs where role='角色名';

select granted_role, default_role from dba_role_privs where grantee = '用户名';

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯