tnblog
首页
视频
资源
登录

Oracle 数据库的系列权限命令+权限传递

6029人阅读 2019/12/26 13:12 总访问:419534 评论:0 收藏:0 手机
分类: Oracle数据库

  今天我们继续分享关于Oracle 数据库的一些相关的命令操作。

  为了权限之间互相支配的方便,建议同时打开Oracle控制台和Developer界面进行命令操作;

  


一系列的命令如下:

创建新用户的命令

Create user 新用户名      identified by 密码;

授予用户创表的权限;

Grant create to 用户名

授予用户创建用户的权限;

Grant create user to 用户名;


假如system创建了一个新用户cz;


给用户cz授予查询自己表的权限

Grant select on scott.emp to cz with grant option;

撤销该查询权限

Revoke select on scott.emp from cz;


创建的新用户需要system授予登录的权限才可以登录;


用户的登录权限

Grant create session to 用户名;

Grant create session to 用户名 with admin option;  (系统权限)

Grant create session to 用户名 with grant option;   (对象权限)

撤销登录权限  revoke create session from 用户名;


Oracle 权限传递

权限传递的前提:

1,     自己具有该权限,

2,     权限配置的权限

With admin option(系统权限)

With grant option(对象权限)


用户cz登录后,依上操作,在cz用户下新建用户waj。

因为waj表为cz下的子表。

假设system撤销cz查询scott.emp表的权限,那么waj是否也没有了该查询权限?

         

经过撤销cz查询scott.emp表权限后,waj也不能查询

但是我们发现,当撤销cz的登录时,我们conn waj/123456  登录waj,依然可以连接。

 这个是什么原因导致的呢?

原因:在权限回收的时候,如果对象权限回收会连带取消,如果是系统权限则不会连带取消。

这里查询权限属于对象级别的,登录则属于系统级别的。


角色:

一组权限,为了方便授权DBA,CONNECT,RESOURCE  记得都要大写

dba

Resource

connect


打开sql+window

查询角色拥有的所有权限(system用户)

select * from scott.emp;

--查询所有的角色

 

--DBA,CONNECT,RESOURCE  记得都要大写

select * from dba_roles;

--查询某个角色的系统权限

select * from dba_sys_privs where grantee='DBA';

--查询某个角色的对象权限

select * from dba_tab_privs where grantee='DBA';

--查询某个角色的角色权限

select * from dba_role_privs where grantee='CONNECT';


Oracle自定义角色

创建角色

Create role 角色名;

  假设我们这里创建的角色为myrole,

system授予角色查询scott.emp 表的权限  (可控制台授权一系列命令)

Grant select on scott.emp to myrole;

授予角色myrole 的RESOURCE的权限

Grant RESOURCE to myrole;


授予cz创表的空间

Grant unlimited tablespace to cz;

撤销cz的创建表权限

Revoke create table from cz;


        Oracle授权命令

        grant 权限/角色 to 用户名/角色

        Oracle撤销命令

        revoke 权限/角色 from 权限/角色



授予myrole的dba角色权限

Grant dba to myrole;

撤销myrole 的resource和dba角色权限

revoke dba from myrole;


下面做一个测试:

system给cz授予dba角色权限  grant dba to cz;

删除用户:  drop 用户名;

cz给waj授予dba角色权限  grant dba to waj;

然后我们连接waj 删除cz用户drop user cz;

结果成功了,waj删除自己却不能成功。


结果证明:像dba这些高级权限,不要轻易授予其他用户,否则它可能反过来删除自己。

就相当于农夫与蛇的故事,最终结局还是挺悲催的。



        好啦,今天分享到这里啦。


评价

oracle数据库中没有scott用户

使用SYS用户登录conn sys/密码 as sysdba(默认密码123456)然后找到oracle安装目录下scott.sql的这个文件然后执行命令:@+...

oracle自定义函数的简单使用

一.最最最简单的返回一个数字的函数createorreplacefunctionfun_show returnint--申明返回值 as begin return1; end;...

oracle存储过程

一个简单的带输入输出参数的存储过程(求两数之和)createorreplaceprocedureproc_sum(p1int,p2int,presultoutint) as be...

oracle事务的简单使用

事务:  事务是一个整体,这些操作要么全部执行成功,要么全部不执行。使用事务的原因:保证数据的安全有效。事务的四个特...

oracle编程基础

简单介绍一下oracle中if,else,case when,循环,异常处理等用法if,elsedeclareptypeint:=2; begin ifptype=1then dbms_out...

oracle使用游标

其实游标就是把查询的结果放入游标中,然后在去游标里边读取。相当于使用游标做了一个中转,而游标是可以作为参数进行传递...

oracle程序包

当项目越来越大的时候,数据库中的函数,存储过程等越来越多。为了方便管理,Oracle建议使用程序包的管理机制。实现业务模...

oracle中MERGE INTO,for,start with,decode用法

1. MERGEINTO:MERGEINTOT_TD_BU_MODIFY_NOTICE_LSA USING( selectMODIFY_NOTICE_ID,REJECT_REASONfromT_TD_BU_MODIFY_NOT...

oracle+命令

oracle常用命令SQLPLUS进入oracle撤销命令revoke 权限 form 用户名show user查询当前登录账户锁定账户命令Alter user 用户...

oracle 11g数据库的安装+空间管理

如果你在圣诞节没有收到礼物,请不要伤心也不要难过,因为接下来还有元旦,春节,还有情人节,还有元宵节......慢慢的你就...

oracle--常用命令、条件语句、循环语句、SQL函数

Oracle常用命令1、登录数据库默认账户 默认密码 拥有权限sys 123456 as sysdba 拥有数据库的最高权限system ...

oracle数据库的基本操作

Oracle数据库Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域...

oracle数据库的认识和基本使用

推荐一个Oracle数据库的一个学习网站:http://www.oraclejsq.com/article/010100110.html一、对Oracle数据库的认识1、数据...

oracle操作

Oracle数据库操作1、创建数据库create database databasename2、删除数据库drop database dbname3、备份数据库完全备份exp ...

oracle 安装和常用的命令

Oracle 安装如下:https://jingyan.baidu.com/article/f79b7cb32095f79144023eae.html默认账户Sys 123456 as sysdba 数据...

oracle数据库的同义词与视图

同义词概念:同义词顾名思义,是数据库方案对象的一个别名。这里的数据库方案对象指表、视图、序列、存储过程、包等。创建...
你之所以觉得时间一年比一年过得快,是因为时间对你一年比一年重要。
排名
13
文章
64
粉丝
20
评论
30
MUI框架页面间的传值指针
XingDy姐 : 不错哦
MUI框架页面间的传值指针
剑轩 : 接口的真实地址可以用xx/yy什么的代替哦,真实地址还是隐藏一下好
.NET EF 用户按钮权限
YOU : 可以,在写文章的时候,有需要写代码的地方,可以选择编辑器上的代...
.NET EF 用户按钮权限
剑轩 : 哈哈哈哈,你这个追女生的逻辑
EF三种模式解析
剑轩 : 好文采!
重要sql语句和linq,lamdba分组条件查询语句
剑轩 : 开头那句诗句写得很好哇!
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术