重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
授权分为:授予者(grantor)被授予者(grantee)
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站制作、做网站、外贸营销网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的关岭网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
授予和撤销权限
权限分为:系统权限和对象权限
一、系统权限
系统权限约有200种,大多数都影响数据字典的操作。常用的权限如下:
CREATE SESSION (创建会话) --允许用户连接
RESTRICTED SESSION(受限制的会话) --如果使用STARTUP RESTRICT启动数据库,或者使用ALTER SYSTEM ENABLE RESTRICTED SESSION进行调整,则仅拥有此权限的用户可以连接。
ALTER DATABASE (更改数据库)--允许访问多个修改物理结构所需的命令
ALTER SYSTEM(更改系统)--允许控制实例参数和内存结构
CREATE TABLESPACE (创建表空间)--ALTER TABLESPACE 和 DROP TABLESPACE权限允许用户管理表空间
CREATE TABLE(创建表)--需要更改和删除表,在其上允许SELECT和DML命令,以及在其上创建、更改或删除索引。
GRANT ANY OBJECT PRIVILEGE (授予任何对象权限)--允许被授权人将其本身不拥有的对象的对象权限授予他人,但不能授予自己。
CREATE ANY TABLE (创建任何表)--被授权人可以创建属于其他用户的表。
DROP ANY TABLE (删除任何表 )
INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLE (插入任何表,更新任何表,删除任何表)
SELECT ANY TABLE(选择任何表) 被授权人可以对数据库中的任何表执行select操作。
1、授予权限的语法如下:
GRANT privilege [,privilege …] TO username;
创建用户账户以后,下面的命令将授予通常分配给用户(参与应用程序开发的用户)的系统权限;
Grant create session ,alter session, create table , create view, create synonym , create cluster,create database link , create sequence , create trigger, create type , create procedure, create operator TO username;
2、此语法的一个变体允许被授权人将权限传递给第三方,例如:
SQL>connect system/oracle;
SQL>grant create table to scott with admin option;
SQL>connect scott/tiger
SQL> grant create table to jonce;
注:如果用户被授予带有ADMIN OPTION的权限,那么即使对其做了撤销,他授予了权限的任何用户将保留权限。
系统权限的撤销不会级联(这与撤销对象权限不同)。
二、对象权限
对象权限允许针对表相关对象执行SELECT,INSERT,UPDATE和DELETE命令,也允许执行PL/SQL对象。
注:ANY权限针对数据库中的每个用户账户中的每个对象授权,是系统权限,而不是对象权限。
1、语法如下:
GRANT privilege ON [schema.]object TO username [WITH GRANT OPION];
EG. grant select on store.customers to scott;
变化包括ALL(将所有相关权限应用于对象类型),以及命名视图或表的特定列;
SQL>grant select on store.orders to scott;
SQL> grant update (order_status) on store.orders to scott;
SQL> grant all on store.regions to scott;
使用WITH GRANT OPTION,可使用户将其对象权限传给第三方。
三、撤销权限
撤销对象权限语法:
REVOKE privilege[,privilege…] on tablename from username;
撤销系统权限的语法:
REVOKE privilege[,privilege…] from username;