Oracle中的权限分类 |
您所在的位置:网站首页 › sql中有哪几种权限 › Oracle中的权限分类 |
权限是用户对一项功能的执行权力。在Oracle中,根据系统管理方式不同,将Oracle权限分为系统权限与实体权限两类。 一、Oracle权限分类 系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言) 实体权限:某种权限用户对其他用户的表或视图的存取权限。(是针对表或视图而言的) 二、系统权限 1.系统权限分类: DBA:拥有全部权限,是系统最高权限。只有DBA才可以创建数据库结构。 resource:拥有resource权限的用户只可以创建实体,不可以创建数据库结构。 connect:拥有connect权限的用户只可以登录Oracle,不可以创建实体, 不可以创建数据库结构。 ------ 对于普通用户:授予connect,resource权限。 对于DBA管理用户:授予connect,resource,dba权限。 2.系统权限授权命令: 系统权限只能由DBA用户授出:sys,system(最开始只能是这两个用户) 授权命令:SQL>grant connect,resource,dba to username1[,username2]...; [普通用户通过授权可以具有与system相同的权限,但永远不能达到与sys用户相同的 权限,system用户的权限也可以被回收。] SQL> connect system/qaz123@orcl; SQL> create user test identified by test; SQL> grant connect,resource to test1;查询用户拥有哪里权限: SQL> select * from dba_role_privs;SQL> select * from dba_sys_privs; SQL> select * from role_sys_privs; 查询用户拥有哪些系统权限: SQL> select * from session_privs; 删除用户: SQL> drop user username cascade; //cascade 会将用户连同其创建的东西 全部删除。 3.系统权限传递,增加WITH ADMIN OPTION选项 SQL> grant connect,resource to test with admin option; 4.系统权限回收:系统权限只能由DBA用户回收 SQL> revoke connect,resource from test; 二、Oracle实体权限 1. 实体权限分类: select,update,insert,alter,index,delete,all //all包括所有权限 execute //执行存储过程权限 2.授权 *user_1: SQL> grant select,update,insert on product to user_2; SQL> grant all on product to user_2; *user_2: SQL> select * from user_1.product; //user_2查user_tables,不包括user_1.product这个表,如果查看all_tables //可以查看到,因为它有权限访问。 *将表的权限赋予全体用户: SQL> grant all on product to public; //public表示所有用户,这里的all权限不包括drop。 *实体权限数据字典: SQL> select owner,table_name from all_tables;//用户可以查询的表 SQL> select table_name from user_tables;//用户创建的表 SQL> select grantor,table_schema,table_name,privilege from all_tab_privs; //获取可以存取的表(被授权的) SQL> select grantee,owner,table_name,privilege from user_tab_privis; //授出权限的表(授出的权限) *实体权限回收: user01: SQL>Revoke select, update on product from user02;
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |