oracle中的权限
一、权限
系统权限: 取得操作数据库的权限,如表的创建(目前理解好像只有create命令是系统级的)
Object权限:对数据对象object的内容进行操作的权限,如表的insert delete update select,可以将object的权限授予user或role
二、用户
(一)创建:
语法:
CREATE USER user
IDENTIFIED {BY password | EXTERNALLY|GLOBALLY AS external name}
[ DEFAULT TABLESPACE tablespace ]
[ TEMPORARY TABLESPACE tablespace ]
[ QUOTA {integer [K | M ] | UNLIMITED } ON tablespace
[ QUOTA {integer [K | M ] | UNLIMITED } ON tablespace ]...]
[ PASSWORD EXPIRE ]
[ ACCOUNT { LOCK | UNLOCK }]
[ PROFILE { profile | DEFAULT }]
例子:
SYS>create user user_a identified by user_a
SYS>alter user user_a account unlock;
(二) 删除:
SYS> drop user user_a cascade;
(三)修改密码
SYS>alter user app identified by app123;
三、给用户授予系统权限
(1) 语法:
GRANT privilege [, privilege...]
TO user [, user| role, PUBLIC...];
例子:
SYS>grant create session to user_a;//此时user_a可以与数据库进行对话了
SYS> grant create table to user_a;//授权create table的权利
SYS> alter user user_a quota 5m on users;//user_a可以用数据库中5M空间 5m可以用unlimited替换,表示没空间限制
(2)系统权限WITH ADMIN OPTION
用户只有具有了admin option后才可以将系统权限授予其他用户,
sys将系统权限如create table授予user_a,而user_a将权限再授予user_b
create table
sys-->user_a--->user_b
当sys回收revoke权限时,user_b中还create table权限,user_b可以将create table的权限重新给user_b;
例子:
SYS>grant create table to user_a with admin option;
user_a>grant create table to user_b with admin option;
user_a>create table t1(id int);//OK
user_b>create table t1(id int);//OK
SYS>revoke create table from user_a;
user_a>create table t2(id int);//fail user_b权限已被回收
user_b>create table t2(id int);//OK user_a权限没有被级联回收
user_b>grant create table to user_a with admin option;// user_b具有asmin option 可以将系统权限授予其他用户
user_a>create table t2(id int);//OK
四、Object权限privilege
(一)创建
语法:
GRANT object_priv [(columns)]
ON object
TO {user|role|PUBLIC}
[WITH GRANT OPTION]
[WITH ADMIN OPTION];
例子:
grant select on user_a.t1 to user_b;
(二)回收
语法:
REVOKE {privilege [, privilege...]|ALL}
ON object
FROM {user[, user...]|role|PUBLIC};
例子:
REVOKE select,insert ON departments FROM scott;
五、
角色(role)
角色可以看做是带有一堆权限的抽象用户
(一)创建
sys>create role role_test identified by test;
(二)授权
grant role_test to scott
(三)删除
drop role role_test;
(四)回收
sys>revoke role_test from scott;
六、涉及到的数据字典
用户:
USER_ROLE_PRIVS
USER_SYS_PRIVS
session:
session_privs
session_roles
dba:
dba_roles
dba_role_privs
role:
role_role_privs
role_sys_privs
role_tab_privs
练习见附件
- 大小: 40.8 KB
- 大小: 40.8 KB
- 大小: 43.6 KB
- 大小: 59.6 KB
- 大小: 50.5 KB
分享到:
相关推荐
Oracle 权限大全是 Oracle 数据库管理系统中的一种安全机制,用于控制用户对数据库的访问权限。该机制包括用户管理、权限授予、撤销、查看、权限传递、角色的增删改查等多方面的内容。 用户管理是 Oracle 权限大全...
在Oracle环境中,权限控制是通过授权(GRANT)和回收(REVOKE)操作来实现的,以决定用户或角色可以访问哪些资源以及他们可以执行的操作。 首先,让我们详细了解一下Oracle中的权限类型: 1. **系统权限**:这些...
### Oracle权限管理详解 在Oracle数据库管理中,权限管理是一项重要的功能,它涉及到数据库的安全性和数据访问控制。本文将基于提供的文件信息,详细介绍Oracle中如何创建用户、分配及撤销权限等关键操作,并深入...
在Oracle数据库管理中,了解和控制用户权限是至关重要的任务之一。这不仅涉及到数据库的安全性,也直接影响到数据的完整性和系统的高效运行。通过查询Oracle中的特定视图,我们可以详细了解用户的权限分配情况,包括...
根据题目提供的内容,主要涉及到的是对象权限中的插入、更新和删除操作。下面将详细介绍如何通过SQL语句来实现这些操作。 #### 3. SQL语句示例 题目中给出了具体的SQL语句示例,用于授予用户`ah_yjcz`对几个表的...
Oracle 系统权限是 Oracle 数据库中的一种安全机制,用于控制用户对数据库对象的访问权限。了解这些权限对于开发人员来说非常重要,因为它们可以帮助开发人员更好地控制数据库的安全性和访问权限。 Create Session ...
在Oracle中,用户权限分为多个级别,不同的权限级别允许用户执行不同的操作。 1. **DBA (Database Administrator)**:拥有最高级别的权限,可以执行所有数据库操作,包括创建数据库结构。 2. **RESOURCE**:具有...
Oracle 权限设置 一、权限分类: 系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。 实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。 二、系统权限管理: 1、...
Oracle数据库权限系统是指Oracle数据库中的一套完整的权限管理机制,旨在确保数据库安全和数据完整性。该系统分为系统权限和对象权限两大类。 系统权限(Database System Privilege) --------------------------- ...
在 Oracle 数据库中,有多种类型的权限,包括系统权限和对象权限。系统权限控制着用户可以在数据库中执行的操作,如创建、修改和删除对象等。对象权限控制着用户可以对特定对象执行的操作,如 select、insert、...
### Oracle权限函数详解 在Oracle数据库管理中,权限管理是一项重要的任务,它涉及到对用户、角色及对象等数据库实体的访问控制。通过合理地分配权限,可以有效地保护数据的安全性和完整性,同时确保业务流程的正常...
本文将基于提供的文件信息中的内容,详细介绍Oracle权限设置的相关知识点。 #### 一、Oracle常用权限概述 在Oracle数据库中,权限主要分为系统权限(System Privileges)和对象权限(Object Privileges)两大类。 ...
在这个“Oracle权限全集”中,我们将深入探讨Oracle数据库中的各种权限类型、权限的授予与撤销、角色的使用以及与权限相关的其他关键概念。 1. **权限类型** - **对象权限**:针对特定对象(如表、视图、序列、...
Oracle数据库的权限管理是关系数据库管理系统(RDBMS)中非常关键的一部分。它允许数据库管理员(DBA)对用户进行精细化的权限控制,以确保数据的安全性和完整性。在Oracle中,权限可以细分为系统权限(System Privileges...
Oracle权限管理是指对用户和模式的权限管理。权限可以授予用户或模式,可以控制用户和模式对数据库对象的访问和操作权限。权限管理是 Oracle 安全机制的核心组件,可以确保数据库的安全和可靠性。 Oracle用户与...
### Oracle权限管理详解 #### 一、Oracle权限概述 Oracle数据库通过权限管理机制来确保数据的安全性和完整性。权限主要包括系统权限(SYS PRIVILEGES)和对象权限(OBJECT PRIVILEGES)。系统权限允许用户执行特定...
在本文中,我们将使用 PLSQL 创建 Oracle 数据库用户并设置权限,包括创建用户、设置权限和创建表。 一、创建用户 在 PLSQL Developer 中,首先需要连接到 Oracle 数据库。在连接到数据库时,需要输入数据库名称、...
本文将详细介绍Oracle中的系统权限和对象权限,并结合给定的部分内容,深入解析其中的关键概念。 #### 二、系统权限(System Privileges) 系统权限是指授予用户的能够执行某些特定数据库操作的权利。这些权限通常不...
我现在想从我的存储过程中使用其他 schema 表来执行 SQL 语句。存储过程是一个 Schema,表是在另一个 Schema。...是在同一个 Oracle 实例中,数据库是 Oracle 10g。 答:你的两个 Schema 是在同一个 Oracle 实