`

【转】Oracle中的权限管理

 
阅读更多
Oracle中的权限管理

说明:Oracle中权限分为系统权限和对象权限

1.Oracle中有3个默认的用户
	1.sys用户 change_on_install DBA用户 (登录是必须加 as sysdba)
	2.system用户 manager 管理员用户
	3.scott用户 tiger 普通用户
	4.创建新的用户
		create user myUser identified by myPwd;
		
2.Oracle中3个重要的系统权限
	1.Oracle连接数据库权限
		新创建的用户(myUser)是不能连接数据库的,需要管理员给他赋予连接数据库的权限
		grant create session to myUser;
		授权成功以后就可以连接数据库了。
		
	2.Oracle中对表的权限
		grant create table to myUser;(只能给自己创建表,当给自己创建表以后,就相当于对自己的表拥有修改和删除的权限)
		grant create any table to myUser;(可以给任何人创建表)
		grant alter any table to myUser;
		grant drop any table to myUser;
		没有alter table 和 drop table 权限。
		授权成功以后就可以创建表。
		此时,当前用户就可以拥有自己的表,然后他可以对自己的表拥有增删改查权限,不用再授权。
		
	3.Oracle中不受上限的表空间使用权限
		grant unlimited tablespace;
		
	4.撤销各种权限
		revoke create session from myUser;
		revoke create table from myUser;
		revoke create any table from myUser;
		revoke alter any table from myUser;
		revoke drop any table from myUser;
		revoke unlimited tablespace from myUser;
		
	5.将系统权限授予所有人
		grant create session to public;
		grant create table to public;
		grant create any table to public;
		grant drop any table to public;
		grant alter any table to public;
		grant unlimited tablespace to public;
	
	6.查看当前用户拥有哪些系统权限
		select * from user_sys_privs;
		从视图中查看用户的系统权限。
		
			
3.Oracle中对象权限
	1.授予对象权限
		grant select on myTable to otherUser;
		grant select any table to otherUser;
		grant update on myTable to otherUser;
		grant update any table to otherUser;
		grant insert on myTable to otherUser;
		grant insert any table to otherUser;
		grant delete on myTable to otherUser;
		grant delete any table to otherUser;
		grant all on myTable to otherUser;
		grant all on myTable to public;
		
	2.撤销对象权限
		revoke select on myTable from otherUser;
		revoke select any table from otherUser;
		revoke update on myTable form otherUser;
		revoke update any table from otherUser;
		revoke insert on myTable form otherUser;
		revoke insert any table from otherUser;
		revoke delete on myTable fomr otherUser;
		revoke delete any table from otherUser;
		revoke all on myTable from otherUser;
		revoke all on myTable from public;
			
	3.对象权限可以控制到列(除了查询和删除)
		grant update(colName) on myTable to otherUser;
		grant insert(colName) on myTable to otherUser;
		当然也可以收回列的控制权限。
				
	4.查看当前用户拥有哪些对象权限
		select * from user_tab_privs;
		从视图中查看用户的对象权限
		select * from user_col_privs;
		从视图中查看用户对列的控制权限
		
4.ddl\dml\dcl介绍
	1.ddl.数据定义语言
		例如:创建表(create),修改表(alter),删除表等语句(drop)。
		
	2.dml.数据操作语言
		例如:插入数据(insert),删除数据(delete,truncate),更新数据(update),查询数据语句(select)。
	
	3.dcl.数据控制语言
		例如:授权(grant)和撤销权限(revoke)等语句。
	
	注意:只有dml需要commit,当然查询语句不需要commit。
	
5.Oracle中权限的传递
	1.对于系统权限
		不允许权限传递
			grant create session to myUser;
		允许权限传递
			grant create session to myUser with admin option;
		
	2.对于对象权限
		不允许权限传递
			grant select on myTable to otherUser;
		允许权限传递
			grant select on myTable to otherUser with grant option;
			
6.Oracle中的角色管理
	1.创建角色
		create role myRole;
	2.给角色授权
		grant create session to myRole;
		grant create table to myRole;
	3.给用户指定角色
		grant myRole to myUser;
	4.删除角色
		drop role myRole;
	5.有些权限很高,不能通过角色分配给用户,只能直接分配给用户
		比如:unlimited tablespace 
		grant unlimited tablespace to myUser;

7.Oracle中的3中验证机制
	1.操作系统验证
		SYSDBA,SYSOPER两个角色的用户(比如sys用户)都是用操作系统和密码文件验证
		用操作系统验证时,可以不需要用户名和密码
	2.密码文件验证
		当操作系统用户不存在时,就会进行密码文件验证,就需要正确的用户名密码。
	3.数据库验证
		一般数据库用户都是数据库验证,因为是在数据库启动以后才能普通用户登录	
	4.数据库的启动顺序
		1.启动监听
			lsnrctl start;
		2.进行sys用户登录
			sqlplus sys/password as sysdba;
			conn sys/password as sysdba;
			当监听器监听到是as sysdba 时候,就进行操作系统和密码文件验证。
		3.启动数据库(启动实例)
			startup;
		4.普通用户登录
			conn scott/tiger;
			当数据库启动以后,用户登录的时候就可以使用数据库验证。
转自: http://dyygusi.iteye.com/blog/1979662
分享到:
评论

相关推荐

    Mysql转oracle工具

    MySQL的权限管理相对简单,而Oracle有更复杂的用户、角色和权限体系。在转换时,需要考虑用户权限和角色的迁移。 4. **表空间和分区**: Oracle支持表空间和分区,这是MySQL不具有的特性。在转换过程中,可能需要...

    mysql 数据库转 oracle

    MySQL到Oracle的数据迁移是一项常见的任务,特别是在企业级应用中,可能因为各种原因需要从MySQL迁移到功能更强大的Oracle数据库系统。下面将详细讲解这个过程涉及的关键知识点。 首先,我们需要了解MySQL和Oracle...

    oracle数据库权限管理

    在Oracle环境中,权限控制是通过授权(GRANT)和回收(REVOKE)操作来实现的,以决定用户或角色可以访问哪些资源以及他们可以执行的操作。 首先,让我们详细了解一下Oracle中的权限类型: 1. **系统权限**:这些...

    韩顺平玩转oracle视频教程笔记

    在Oracle的用户管理中,创建新用户需要使用create user语句,并赋予适当的密码。修改密码可以用alter user命令,删除用户通常需要dba权限,使用drop user命令。如果用户已创建对象,如表,删除时需添加cascade选项以...

    Oracle企业管理器OEM

    Oracle 企业管理器(OEM 2.1)使用指南内容 Oracle 企业管理器(OEM 2.1)是 Oracle 公司提供的一款企业管理软件,旨在帮助用户对 Oracle 数据库和相关的系统进行监控和管理。下面是对 Oracle 企业管理器(OEM 2.1...

    oracle用户账号管理和权限控制

    在实际操作中,DBA通常会结合Oracle企业管理器(OEM)进行图形化管理,这使得操作更为直观和便捷,同时配合SQL命令进行更精细的控制。通过理解并熟练掌握这些知识点,DBA可以有效地管理和保护Oracle数据库的用户账号...

    oracle用户权限管理

    本节将重点介绍几个常用的Oracle权限管理命令,并结合实例进行说明: 1. **登录权限**: - `CREATE SESSION`:允许用户登录到数据库。 ```sql GRANT CREATE SESSION TO zhangsan; ``` - `UNLIMITED TABLESPACE...

    Oracle数据库学生管理系统

    管理员还需要处理系统的安全性和权限控制,如设置不同用户角色的访问权限,防止未经授权的数据访问或修改。 教师在系统中的主要任务是成绩登记和成绩统计。这需要系统具备录入、修改和查询成绩的功能,同时,为确保...

    oracle中的权限

    Oracle权限分为两种基本类型:系统权限和对象权限。系统权限涉及到对数据库整体操作的访问,如创建表、执行DML(数据操纵语言)语句、备份数据库等。对象权限则针对特定数据库对象,如查看、修改、删除某张表的数据...

    oracle 权限管理中系统权限管理

    oracle 权限管理中系统权限管理,挺不错的

    ORACLE数据库权限管理改进措施.doc

    ORACLE数据库权限管理是指在ORACLE数据库中对用户、角色和权限的管理,以确保数据库的安全和可靠性。下面是ORACLE数据库权限管理改进措施的详细解释: 编写目的 ORACLE数据库权限管理改进措施的编写目的是为了提高...

    Oracle9i企业管理器详解,是学习Oracle9i企业管理器的最好教程。

    在这个详尽的教程中,我们将深入探讨Oracle9i企业管理器的各项特性,帮助你掌握这个强大工具的使用。 一、Oracle9i企业管理器概述 Oracle9i企业管理器,简称OEM,是Oracle9i版本中的一个关键组件,用于简化数据库的...

    oracle9i企业管理器详解

    5. **安全管理**:企业管理器允许管理数据库用户、角色和权限,确保只有授权用户可以访问特定的数据。此外,它还能跟踪和记录数据库活动,以便进行审计和合规性检查。 6. **配置管理**:通过企业管理器,你可以轻松...

    mysql数据库转oracle数据库工具

    5. 权限和安全设置:Oracle数据库有更复杂的用户权限管理,转换过程中需考虑用户、角色和权限的迁移,以保证新环境下的访问控制。 6. 测试和验证:迁移前应进行充分的测试,确保数据完整无误,并在目标Oracle数据库...

    韩顺平玩转oracle课件

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,它在企业级应用中占据了重要地位。通过韩顺平的课程,学习者可以系统地了解Oracle的架构、管理、查询优化和性能调优等多个方面。 课件内容可能涵盖以下...

    oracle 12c数据库管理

    根据给定的文件信息,...上述知识是Oracle 12c数据库管理中的关键知识点。在实际操作过程中,数据库管理员(DBA)需要根据企业的需求和数据库的具体情况,灵活运用上述知识点,以确保数据库的稳定性、安全性和高效性。

    oracle用户管理PPT

    Oracle用户管理是数据库管理系统中的核心组成部分,它涉及到数据库的安全性、权限控制以及不同角色的划分。在Oracle中,用户管理主要包括创建、管理、权限分配和撤销等操作,以确保数据库的稳定运行和数据的安全。 ...

    韩顺平玩转Oracle视频笔记

    Oracle数据库系统是全球广泛使用的数据库管理系统之一,尤其在企业级应用中占据重要地位。"韩顺平玩转Oracle视频笔记"是一份非常适合初学者的学习资料,通过视频教程的形式,深入浅出地讲解Oracle的基础知识和实际...

    sqlserver转oracle

    标题“sqlserver转oracle”指的是将SQL Server数据库中的数据迁移或同步到Oracle数据库的过程。这个过程通常发生在组织更换数据库系统,或者需要在不同数据库平台之间共享数据时。下面将详细介绍这个过程中涉及的...

    oracle数据库用户管理

    在用户管理中,口令管理是一项基础任务。Oracle允许管理员通过`ALTER USER`命令来设定口令的过期、锁定或解锁用户账户。例如,`ALTER USER blue PASSWORD EXPIRE`将使用户蓝色的密码立即过期,`ALTER USER blue ...

Global site tag (gtag.js) - Google Analytics