ORACLE 权限管理(针对开发人员)
作者:网络转载 发布时间:[ 2016/7/25 10:56:01 ] 推荐标签:数据库 Oracle
权限管理 新用户授权
create tablespace xt_test datafile 'F:ORACLEORADATAORCLXT_TEST.DBF' SIZE 10M AUTOEXTEND ON NEXT 5M;
CREATE USER privilege_test identified by privilege_test DEFAULT TABLESPACE xt_test;
GRANT CREATE SESSION TO privilege_test;
--创建表时权限不足
GRANT CREATE TABLE TO privilege_test;--此权限可以允许修改、删除表,为表添加主键、索引
REVOKE CREATE TABLE FROM privilege_test;--如果删除此权限之后,还能进行drop操作
--再次创建表时对默认表空间没有配额 可以通过dba_ts_quotas表查看表空间配置信息
ALTER USER privilege_test QUOTA UNLIMITED ON xt_test;--或创建用户时直接加QUOTA UNLIMITED ON xt_test 如下
CREATE USER privilege_test identified by privilege_test DEFAULT TABLESPACE xt_test QUOTA UNLIMITED ON xt_test;
--创建触发器时权限不足
GRANT CREATE TRIGGER TO privilege_test;--同理也可以进行修改和删除
--创建存储过程权限不足
GRANT CREATE PROCEDURE TO privilege_test;--同时也拥有了create funtion的权限
REVOKE CREATE PROCEDURE FROM privilege_test;--如果删除此权限之后,还能进行drop操作
--创建序列权限不足
GRANT CREATE SEQUENCE TO privilege_test;
--登陆SYS用户查看各角色所对应的权限
SELECT * FROM role_sys_privs t;--登录自己创建的用户,查看的是当前用户的权限
--查看CONNECT角色的权限
SELECT * FROM role_sys_privs t where t.role='CONNECT';
CREATE SESSION
--查看RESOURCE角色的权限
SELECT * FROM role_sys_privs t where t.role='RESOURCE';
1 RESOURCE CREATE SEQUENCE NO
2 RESOURCE CREATE TRIGGER NO
3 RESOURCE CREATE CLUSTER NO
4 RESOURCE CREATE PROCEDURE NO
同时在对应用赋予RESOURCE角色时,会自动给用户添加UNLIMITED TABLESPACE权限,可以通过user_sys_privs表来查看,同时也可以使用user_role_privs来查看当前用户的角色信息。
总结:
所以一般只用把CONNECT和RESOURCE角色的权限赋于新用户够使用了,如果还需要其它权限,再用户一项项的添加
删除权限
revoke dba from USER_NAME;--删除权限
权限继承
with admin option
with admin option的意思是被授予该权限的用户有权将某个权限(如create any table)授予其他用户或角色,取消是不级联的。
如授予A系统权限create session with admin option,然后A又把create session权限授予B,但管理员收回A的create session权,B依然拥有create session的权限。但管理员可以显式收回B create session的权限,即直接revoke create session from B.
System privilege比如有:create session、create table、create synonym、alter session等用于在数据库中执行特定的操作。
with grant option
with grant option的意思是:权限赋予/取消是级联的,如将with grant option用于 对象授权 时,被授予的用户也可把此对象权限授予其他用户或角色,不同的是但管理员收回用with grant option授权的用户对象权,权限会因传播而失效,如grant select on table with grant option to A,A用户把此权限授予B,但管理员收回A的权,B的权限也会失效,但管理员不可以直接收回B的SELECT ON TABLE 权限。
Object privilege比如给某些对象(table,index,function..)授予执行某些特定的操作(select,update,delete)
其它知识点 sys用户与system用户的区别
sys用户管理的是底层的的东西,登录时必需是以sysdba身份登录
sys用户可以启动关闭数据库,而 system用户 不可以
临时表空间
由于Oracle工作时经常需要一些临时的磁盘空间,这些空间主要用作查询时带有排序(Group by,Order by等)等算法所用,当用完后立即释放,对记录在磁盘区的信息不再使用,因此叫临时表空间。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11