Oracle DB 权限与角色

• 授予和撤销权限
• 创建和管理角色
 
 
1、权限
 
用户权限有两类:
• 系统:允许用户在数据库中执行特定的操作
• 对象:允许用户访问和操纵特定的对象
“权限”是用于执行特定类型的SQL 语句或访问其他用户的对象的一种权限。Oracle DB 可以控制用户在数据库中能够(或无法)执行的操作。
 
权限可分为以下两种类别:
 
• 系统权限:每种系统权限都允许用户执行一个特定的数据库操作或一类数据库操作。
例如,创建表空间的权限就是一种系统权限。系统权限可由管理员授予,或者由被显式授权其管理权限的用户授予。有一百多种不同的系统权限。很多系统权限都包含
ANY子句。
 
• 对象权限:用户可以使用对象权限对特定对象(如表、视图、序列、过程、函数或程序包)执行特定的操作。在没有特定权限的情况下,用户只能访问他们自己拥有的对象。对象权限可以由对象的所有者或管理员授予,也可以由被显式授予了权限,可以为其他人员分配对某个对象的权限的人员授予。
 
2、系统权限
 
 
要授予系统权限,请单击“Edit User(编辑用户)”页上的“Systems Privileges(系统权限)”选项卡。从可用权限列表中选择适当的权限,然后通过单击“Move(移动)”箭头将其移至“Selected System Privileges(选定的系统权限)”列表中。
 
使用ANY子句授予权限意味着权限可以跨越方案。例如,如果具有CREATE TABLE权限,则可以创建表,但只能在自己的方案中创建。使用SELECT ANY TABLE权限就可从其他用户拥有的表中进行选择。
 
SYS用户和具有DBA角色的用户被授予了所有ANY权限;因此,它们可以对任何数据对象执行任何操作。
可以使用Oracle Database Vault 选件来控制ANY系统权限的作用域。
如果选中了“Admin Option(管理选项)”复选框,则用户可以管理权限并将系统权限授予给其他用户。
 
授予系统权限的SQL 语法如下:
GRANT <system_privilege> TO <grantee clause> [WITH ADMIN OPTION]
例如:
grant create session to emi;
grant create session to emi with admin option;
 
在授予系统权限之前仔细考虑安全要求。某些系统权限通常只能授予给管理员:
 
• RESTRICTED SESSION:使用这个权限可以登录,即使数据库是在受限模式下打开时也是如此。
 
• SYSDBA和SYSOPER:使用这两个权限可以在数据库中执行关闭、启动、恢复及其它管理任务。
用户使用SYSOPER可执行基本操作任务,但不能查看用户数据。
这个权限包括以下系统权限:
- STARTUP和SHUTDOWN
- CREATE SPFILE
- ALTER DATABASE OPEN/MOUNT/BACKUP
- ALTER DATABASE ARCHIVELOG
- ALTER DATABASE RECOVER(仅限完全恢复。任何形式的不完全恢复,如UNTIL TIME|CHANGE|CANCEL|CONTROLFILE,都需要以SYSDBA身份建立连接。)
- RESTRICTED SESSION
除此之外,SYSDBA系统权限还允许执行不完全恢复和删除数据库。用户使用SYSDBA系统权限可以SYS用户身份有效地建立连接。
 
 
• SYSASM:使用此权限可以启动、关闭和管理ASM 实例。
 
• DROP ANY对象:用户使用DROP ANY权限可删除其他用户拥有的对象。
 
• CREATE、MANAGE、DROP和ALTER TABLESPACE:这些权限允许进行表空间管理,包括创建、删除和更改表空间的属性。
 
• CREATE LIBRARY:Oracle DB 允许开发人员在PL/SQL 内创建和调用外部代码(例如C 库)。此库必须由数据库中的LIBRARY对象指定。CREATE LIBRARY权限允
许用户创建可从PL/SQL 执行
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值