




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Oracle安全性管理Oracle安全性管理用户与权限管理概述对于任意一个多用户计算机系统来说,访问和访问安全都是至关重要的。既要允许很多用户访问计算机系统,又要防止未授权的用户访问。Oracle数据库的安全性可以被分成3个层次:系统安全性数据安全性网络安全性用户与权限管理概述对于任意一个多用户计算机系统来说,访问和访用户管理用户与方案
在Oracle中,数据库用户和方案是安全的最基本的单元。术语“用户”和“方案”经常互换使用,然而它们是有区别的:数据库方案定义为数据库对象的集合。方案的名称就是拥有或控制这些数据库对象集合的用户名称所有的数据库对象,包括表、视图、索引、触发器、Java存储过程、PL/SQL程序包、函数等,都归Oracle数据库中的某一个用户所有。甚至Oracle的数据字典、系统目录也是名称为sys的方案的一部分。用户管理用户与方案
在Oracle中,数据库用户和方案是安全用户管理默认的数据库用户
每个Oracle数据库都有两个默认的数据库用户帐号SYS和SYSTEMSYS帐号拥有数据字典的基本表和视图.SYSTEM帐号一般用于创建显示管理信息的表和视图,或被Oracle数据库选项和工具使用的内部表和试图,不要在SYSTEM方案中存储并不用于数据库管理的表.用户管理默认的数据库用户
每个Oracle数据库都有两个默认用户管理建立用户帐号CREATEUSER
username
IDENTIFIEDBY
password[DEFAULTTABLESPACE
default_tablespace][TEMPORARYTABLESPACE
temp_tablespace]
[QUOTA[数值K|M]|[UNLIMITED]ON默认表空间][QUOTA[数值K|M]|[UNLIMITED]ON其他表空间][PASSWORDEXPIRE][ACCOUNT{LOCK|UNLOCK}] CREATEUSER
Michael
IDENTIFIEDBY
lincoln用户管理建立用户帐号CREATEUSERusernameCONNECTsys/passwordASsysdbaCREATETABLESPACEmytbs01DATAFILE'e:\mytbs01_1.dbf'SIZE5MAUTOEXTENDONNEXT3MMAXSIZEUNLIMITED;CREATEUSERmyuser1IDENTIFIEDBYwelcomeDEFAULTTABLESPACEmytbs01TEMPORARYTABLESPACEtempQUOTA2MONmytbs01PASSWORDEXPIRE;CONNECTsys/passwordASsysdba用户管理修改用户帐号口令删除用户帐号 ALTERUSER
Michael
IDENTIFIEDBY
saraDROPUSER
Michael如果将Cascade关键字用于dropuser命令的末尾,则在从数据库中删除用户之前,删除用户的所有对象。该关键字不仅可以删除所有的用户对象,而且还可以删除其他用户模式中对已删除对象表进行引用的约束,使其他用户所拥有的引用了已删除对象的对象无效。用户管理修改用户帐号口令 ALTERUSERMichae用户管理用户的默认表空间与临时表空间ALTERUSER
username
DEFAULTTABLESPACE
default_tablespace
TEMPORARYTABLESPACE
temp_tablespace如果不进行指定,则用户的默认表空间为USERS表空间;默认的临时表空间是TEMP表空间,如果没有创建TEMP表空间,则SYSTEM表空间为用户临时表空间用户管理用户的默认表空间与临时表空间ALTERUSERu用户管理锁定和解锁用户帐号
被锁定的帐号不能进行数据库访问操作ALTERUSER
usernameACCOUNT{LOCK|UNLOCK}为什么要锁定用户帐号而不是将其删除?用户管理锁定和解锁用户帐号
被锁定的帐号不能进行数据库访问操用户管理修改用户的磁盘空间配额ALTERUSER
username
DEFAULTTABLESPACE
default_tablespace
QUOTAnnondefault_tablespace用户管理修改用户的磁盘空间配额ALTERUSERusDBA可以通过动态性能视图来查看用户在数据库中的活动信息,限制用户对系统资源的使用,以保证数据库的运行安全.Selectsid,serial#,logon_time,username,machinefromv$session;DBA可以通过动态性能视图来查看用户在数据库中的活动信息,限权限管理除非用户具有执行特定的数据库操作权限,否则,用户既不能与数据库服务器连接,也不能做任何事情例如:除非用户具有CREATESESSION系统权限,否则用户不能与Oracle数据库连接除非用户具有CREATETABLE系统权限,否则用户不能在自己的模式中创建表权限管理除非用户具有执行特定的数据库操作权限,否则,用户既不权限管理在Oracle数据库中,有两类权限:对象权限和系统权限。对象级别权限:指在对象级控制数据库的存取和使用的机制,即访问其他用户的方案对象的能力.例如,用户可以存取哪个用户方案中的哪个对象,是否能对该对象查询,插入或更新等.系统权限:指在系统级控制数据库的存取和使用的机制,即执行某种SQL语句的能力.例如:是否能启动,停止数据库,是否能连接到数据库,是否能创建,删除,更改方案对象.权限管理在Oracle数据库中,有两类权限:对象权限和系统权DBMS通过权限实现数据库安全保护的过程是:DBA或对象的创建者通过SQL语言的GRANT和REVOKE语句,把授予(回收)权限的定义告知DBMS.DBMS把授予(回收)权限的结果存入(取出)数据字典.当用户提出操作请求时,DBMS根据数据字典中保留的权限定义进行检查,以决定是否可以执行该操作请求.权限可以通过两种方式授予用户:直接授予:直接将权限授予用户;间接授予:先将权限授予角色,然后将角色授予用户.DBMS通过权限实现数据库安全保护的过程是:权限管理数据库权限的类型--系统权限
系统权限(SystemPrivilege)向用户提供了执行某一种或某一类型的数据库操作的能力,有近100种系统权限。基本的系统权限如表14-1
权限管理数据库权限的类型--系统权限
系统权限(Syste权限管理系统权限的授予和撤销—一般由DBA完成REVOKE{sys_priv_1[,sys_priv_2]...|ALL[PRIVILEGES]}FROM{user_1[,user_2]...|PUBLIC};GRANT{sys_priv_1[,sys_priv_2]...|ALL[PRIVILEGES]}TO{user_1[,user_2]...|PUBLIC}[WITHADMINOPTION];权限管理系统权限的授予和撤销—一般由DBA完成REVOKE查看系统权限SELECT*FROMUSER_SYS_PRIVSSELECT*FROMDBA_SYS_PRIVS查看系统权限权限管理使用系统权限时,需要注意以下几点:一般情况下,都应该将CREATESESSION权限授予用户用户需要CREATETABLE权限来在自己的模式中创建、修改、删除或查询任何表如果要删除其他模式中的表,用户必须具有DROPANYTABLE系统权限CREATEANYPROCEDURE允许用户创建、修改、删除或执行任何存储过程、程序包和函数开发人员一般需要几个系统权限,包括CREATETABLE,CREATEVIEW,CREATETYPE等,以创建支持前台应用程序的数据库模式权限管理使用系统权限时,需要注意以下几点:权限管理数据库权限的类型--对象权限
对象权限控制用户是否能在特定数据库对象(如表、视图或存储过程)上执行特定类型的操作对象权限适用对象允许的操作SELECT表、视图、序列查询UPDATE表、视图或其中的字段更新DELETE表和视图删除行INSERT表、视图或其中的字段插入行EXECUTE存储过程,存储函数与程序包执行PL/SQL存储对象READ目录读取目录INDEX表在表上建立索引REFERENCES表或其中字段在其他表中创建的外键能引用表或表中的字段ALTER表或序列修改表或序列的结构权限管理数据库权限的类型--对象权限
对象权限控制用户是否能权限管理对象权限的授予和撤销REVOKE{obj_priv_1[,obj_priv_2]...|ALL[PRIVILEGES]}
ON
{[schema.]object[(column1[,column2])]}FROM{user_1[,user_2]...|PUBLIC}
GRANT{obj_priv_1[,obj_priv_2]...|ALL[PRIVILEGES]}
ON
{[schema.]object[(column1[,column2])]}TO{user_1[,user_2]...|PUBLIC}[WITHGRANTOPTION]
权限管理对象权限的授予和撤销REVOKE{obj_priv查看对象权限colGRANTEEformata15colOWNERformata10colGRANTORformata10colPRIVILEGEformata10select*fromuser_tab_privs;select*fromdba_tab_privs;得到基本表的权限状况查看对象权限其中:GRANTEE表示接受对象权限的用户OWNER表示表的拥有者GRANTOR为授权用户PRIVILEGE表示对象权限GRANTABLE表示该用户是否能向其他用户授予对象权限其中:权限管理使用对象权限时需要注意以下几个问题(选学):如果一个视图引用了其他模式中的表或视图,则该视图的拥有者必须以WITHGRANTOPTION方式获得这些表或视图的权限,才能将该视图的对象权限授予其他用户SELECT对象权限只能授予整个表而不能授予表中的字段权限管理使用对象权限时需要注意以下几个问题(选学):角色与权限管理数据库角色就是权限的命名集合。使用角色可以大大降低用户权限的维护负担。角色可以是对象权限或系统权限的命名集合。数据库管理员只需创建特定的数据库角色,使其反映组织或应用的安全权限,就可以将这些角色赋予用户。系统内置角色CONNECT,RESOURCE,DBA等角色与权限管理数据库角色就是权限的命名集合。使用角色可以大大角色与权限管理利用角色进行权限管理权限1权限2权限3角色1角色2用户1用户2用户3角色与权限管理利用角色进行权限管理权限1权限2权限3角色1角角色与权限管理创建角色如:Createrolepublic_role创建一个公用角色删除角色 CREATEROLErole_name;DROPROLE
role;角色与权限管理创建角色 CREATEROLErole_n对角色授权将系统权限授予角色将对象权限授予角色GRANT{sys_priv_1[,sys_priv_2]...|ALL[PRIVILEGES]}TOrole_1[,role_2]...[WITHADMINOPTION]GRANT{obj_priv_1[,obj_priv_2]...|ALL[PRIVILEGES]}
ON
{[schema.]object[(column1[,column2])]|DIRECTORY
dir}TO{role_1[,role_2]...|PUBLIC}[WITHGRANTOPTION]对角色授权将系统权限授予角色GRANT{sys_priv_Grantcreatesessiontopublic_rolewithadminoption;Connectscott/tiger;Grant
select,insert,updateondepttopublic_role;connectsys/pwd@bvtc4assysdba;Grantpublic_roletomyuser1;Connectmyuser1/welcomeselect*fromscott.dept;Grantcreatesessiontopubli角色与权限管理撤销角色的系统权限撤销角色的对象权限REVOKE{sys_priv_1[,sys_priv_2]...|ALL[PRIVILEGES]}FROM{role_1[,role_2]...};REVOKE{obj_priv_1[,obj_priv_2]...|ALL[PRIVILEGES]}
ON
{[schema.]object[(column1[,column2])]|DIRECTORY
dir}FROM{user_1[,user_2]...}
角色与权限管理撤销角色的系统权限REVOKE{sys_pr角色与权限管理将角色授予用户或其他角色撤销授予用户或其他角色的角色GRANTrole_1[,role_2]...
TO{user_1[,user_2]...|PUBLIC|role_1[,role_2]}[WITHADMINOPTION];REVOKErole_1[,role_2]...
FROM{user_1[,user_2]...|PUBLIC|role_1[,role_2]};角色与权限管理将角色授予用户或其他角色GRANTrole_查看角色信息可以通过数据字典视图USER_TAB_PRIVS查看角色拥有的权限如:select*fromUSER_TAB_PRIVSwheregrantee='PUBLIC_ROLE';查看角色信息Oracle中的数据字典Oracle中的数据字典概述数据字典用于存放有关数据库描述信息的数据。比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息等。当用户在对数据库中的数据进行操作时遇到困难就可以访问数据字典来查看详细的信息。概述数据字典用于存放有关数据库描述信息的数据。比如一个表的创概述基本的数据字典表由sys用户所有,并且保存在system表空间中。用户不能直接访问这些表,只能通过一系列视图访问数据字典表中的信息。概述基本的数据字典表由sys用户所有,并且保存在system数据字典的分类Oracle中的数据字典有静态和动态之分。
静态数据字典主要是在用户访问数据字典时不会发生改变的,但动态数据字典是依赖数据库运行的性能的,反映数据库运行的一些内在信息,所以在访问这类数据字典时往往不是一成不变的。数据字典的分类Oracle中的数据字典有静态和动态之分。
静静态数据字典这类数据字典主要是由表和视图组成,应该注意的是,数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。静态数据字典中的视图分为三类,它们分别由三个前缀够成:
user_*
all_*
dba_*静态数据字典这类数据字典主要是由表和视图组成,应该注意的是,静态数据字典user_*
该视图存储了关于当前用户所拥有的对象的信息。(即所有在该用户方案下的对象)静态数据字典静态数据字典all_*
该视图存储了当前用户能够访问的对象的信息。(与user_*相比,all_*并不需要拥有该对象,只需要具有访问该对象的权限即可)静态数据字典静态数据字典dba_*
该视图存储了数据库中所有对象的信息。(前提是当前用户具有访问这些数据库的权限,一般来说必须具有管理员权限)静态数据字典静态数据字典三者之间存储的数据有重叠,除了访问范围的不同以外,其他均具有一致性。
具体来说,数据字典视图是由SYS(系统用户)所拥有的,所以在缺省情况下,只有SYS和拥有DBA系统权限的用户可以看到所有的视图。没有DBA权限的用户只能看到user_*和all_*视图。如果未被授予相关的SELECT权限的话,他们不能看到dba_*视图。静态数据字典三者之间存储的数据有重叠,除了访问范围的不同以外常用user_*视图(目录和对象)user_tables视图
主要描述当前用户拥有的所有表的信息,主要包括表名、表空间名、簇名等。通过此视图可以清楚了解当前用户可以操作的表有哪些。SELECT*FROMUSER_TABLES常用user_*视图(目录和对象)user_tables视图常用user_*视图(目录和对象)user_objects视图
主要描述当前用户拥有的所有对象的信息,对象包括表、视图、存储过程、触发器、包、索引、序列等。该视图比user_tables视图更加全面。 SELECTOBJECT_TYPE, STATUS FROMUSER_OBJECTS WHEREOBJECT_NAME=UPPER(‘package1’);常用user_*视图(目录和对象)user_objects视常用user_*视图(用户和权限)user_users视图
主要描述当前用户的信息,主要包括当前用户名、帐户id、帐户状态、表空间名、创建时间等。例如执行下列命令即可返回这些信息:SELECT*FROMUSER_USERS常用user_*视图(用户和权限)user_users视图
常用user_*视图(用户和权限)user_tab_privs视图
该视图主要是存储当前用户下对所有表的权限信息。为了了解当前用户对table1的权限信息,可以执行如下命令: SELECT*
FROMUSER_TAB_PRIVS WHERETABLE_NAME=UPPER(‘table1’);常用user_*视图(用户和权限)user_tab_priv静态数据字典前面的视图均为user_开头的,其实all_开头的也完全是一样的,只是列出来的信息是当前用户可以访问的对象而不是当前用户拥有的对象。对于dba_开头的需要管理员权限,其他用法也完全一样静态数据字典前面的视图均为user_开头的,其实all_开头动态数据字典Oracle包含了一些潜在的由系统管理员如SYS维护的表和视图,由于当数据库运行的时候它们会不断进行更新,所以称它们为动态数据字典(或者是动态性能视图)。这些视图提供了关于内存和磁盘的运行情况,所以只能对其进行只读访问而不能修改它们。动态数据字典Oracle包含了一些潜在的由系统管理员如SYS几个主要的动态性能视图v$instance
该视图主要描述当前例程的相关信息。依然可以使用select语句来观察该信息。
descv$instance;colhost_nameformata20selectinstance_name,host_name,statusfromv$instance;
几个主要的动态性能视图v$instance
该视图主要描述几个主要的动态性能视图v$context
该视图列出当前会话的属性信息。比如命名空间、属性值等。几个主要的动态性能视图v$context
该视图列出当前会小结运用好数据字典技术,可以让数据库开发人员能够更好的了解数据库的全貌,这样对于数据库优化、管理等有极大的帮助。小结运用好数据字典技术,可以让数据库开发人员能够更好的了解数Oracle安全性管理Oracle安全性管理用户与权限管理概述对于任意一个多用户计算机系统来说,访问和访问安全都是至关重要的。既要允许很多用户访问计算机系统,又要防止未授权的用户访问。Oracle数据库的安全性可以被分成3个层次:系统安全性数据安全性网络安全性用户与权限管理概述对于任意一个多用户计算机系统来说,访问和访用户管理用户与方案
在Oracle中,数据库用户和方案是安全的最基本的单元。术语“用户”和“方案”经常互换使用,然而它们是有区别的:数据库方案定义为数据库对象的集合。方案的名称就是拥有或控制这些数据库对象集合的用户名称所有的数据库对象,包括表、视图、索引、触发器、Java存储过程、PL/SQL程序包、函数等,都归Oracle数据库中的某一个用户所有。甚至Oracle的数据字典、系统目录也是名称为sys的方案的一部分。用户管理用户与方案
在Oracle中,数据库用户和方案是安全用户管理默认的数据库用户
每个Oracle数据库都有两个默认的数据库用户帐号SYS和SYSTEMSYS帐号拥有数据字典的基本表和视图.SYSTEM帐号一般用于创建显示管理信息的表和视图,或被Oracle数据库选项和工具使用的内部表和试图,不要在SYSTEM方案中存储并不用于数据库管理的表.用户管理默认的数据库用户
每个Oracle数据库都有两个默认用户管理建立用户帐号CREATEUSER
username
IDENTIFIEDBY
password[DEFAULTTABLESPACE
default_tablespace][TEMPORARYTABLESPACE
temp_tablespace]
[QUOTA[数值K|M]|[UNLIMITED]ON默认表空间][QUOTA[数值K|M]|[UNLIMITED]ON其他表空间][PASSWORDEXPIRE][ACCOUNT{LOCK|UNLOCK}] CREATEUSER
Michael
IDENTIFIEDBY
lincoln用户管理建立用户帐号CREATEUSERusernameCONNECTsys/passwordASsysdbaCREATETABLESPACEmytbs01DATAFILE'e:\mytbs01_1.dbf'SIZE5MAUTOEXTENDONNEXT3MMAXSIZEUNLIMITED;CREATEUSERmyuser1IDENTIFIEDBYwelcomeDEFAULTTABLESPACEmytbs01TEMPORARYTABLESPACEtempQUOTA2MONmytbs01PASSWORDEXPIRE;CONNECTsys/passwordASsysdba用户管理修改用户帐号口令删除用户帐号 ALTERUSER
Michael
IDENTIFIEDBY
saraDROPUSER
Michael如果将Cascade关键字用于dropuser命令的末尾,则在从数据库中删除用户之前,删除用户的所有对象。该关键字不仅可以删除所有的用户对象,而且还可以删除其他用户模式中对已删除对象表进行引用的约束,使其他用户所拥有的引用了已删除对象的对象无效。用户管理修改用户帐号口令 ALTERUSERMichae用户管理用户的默认表空间与临时表空间ALTERUSER
username
DEFAULTTABLESPACE
default_tablespace
TEMPORARYTABLESPACE
temp_tablespace如果不进行指定,则用户的默认表空间为USERS表空间;默认的临时表空间是TEMP表空间,如果没有创建TEMP表空间,则SYSTEM表空间为用户临时表空间用户管理用户的默认表空间与临时表空间ALTERUSERu用户管理锁定和解锁用户帐号
被锁定的帐号不能进行数据库访问操作ALTERUSER
usernameACCOUNT{LOCK|UNLOCK}为什么要锁定用户帐号而不是将其删除?用户管理锁定和解锁用户帐号
被锁定的帐号不能进行数据库访问操用户管理修改用户的磁盘空间配额ALTERUSER
username
DEFAULTTABLESPACE
default_tablespace
QUOTAnnondefault_tablespace用户管理修改用户的磁盘空间配额ALTERUSERusDBA可以通过动态性能视图来查看用户在数据库中的活动信息,限制用户对系统资源的使用,以保证数据库的运行安全.Selectsid,serial#,logon_time,username,machinefromv$session;DBA可以通过动态性能视图来查看用户在数据库中的活动信息,限权限管理除非用户具有执行特定的数据库操作权限,否则,用户既不能与数据库服务器连接,也不能做任何事情例如:除非用户具有CREATESESSION系统权限,否则用户不能与Oracle数据库连接除非用户具有CREATETABLE系统权限,否则用户不能在自己的模式中创建表权限管理除非用户具有执行特定的数据库操作权限,否则,用户既不权限管理在Oracle数据库中,有两类权限:对象权限和系统权限。对象级别权限:指在对象级控制数据库的存取和使用的机制,即访问其他用户的方案对象的能力.例如,用户可以存取哪个用户方案中的哪个对象,是否能对该对象查询,插入或更新等.系统权限:指在系统级控制数据库的存取和使用的机制,即执行某种SQL语句的能力.例如:是否能启动,停止数据库,是否能连接到数据库,是否能创建,删除,更改方案对象.权限管理在Oracle数据库中,有两类权限:对象权限和系统权DBMS通过权限实现数据库安全保护的过程是:DBA或对象的创建者通过SQL语言的GRANT和REVOKE语句,把授予(回收)权限的定义告知DBMS.DBMS把授予(回收)权限的结果存入(取出)数据字典.当用户提出操作请求时,DBMS根据数据字典中保留的权限定义进行检查,以决定是否可以执行该操作请求.权限可以通过两种方式授予用户:直接授予:直接将权限授予用户;间接授予:先将权限授予角色,然后将角色授予用户.DBMS通过权限实现数据库安全保护的过程是:权限管理数据库权限的类型--系统权限
系统权限(SystemPrivilege)向用户提供了执行某一种或某一类型的数据库操作的能力,有近100种系统权限。基本的系统权限如表14-1
权限管理数据库权限的类型--系统权限
系统权限(Syste权限管理系统权限的授予和撤销—一般由DBA完成REVOKE{sys_priv_1[,sys_priv_2]...|ALL[PRIVILEGES]}FROM{user_1[,user_2]...|PUBLIC};GRANT{sys_priv_1[,sys_priv_2]...|ALL[PRIVILEGES]}TO{user_1[,user_2]...|PUBLIC}[WITHADMINOPTION];权限管理系统权限的授予和撤销—一般由DBA完成REVOKE查看系统权限SELECT*FROMUSER_SYS_PRIVSSELECT*FROMDBA_SYS_PRIVS查看系统权限权限管理使用系统权限时,需要注意以下几点:一般情况下,都应该将CREATESESSION权限授予用户用户需要CREATETABLE权限来在自己的模式中创建、修改、删除或查询任何表如果要删除其他模式中的表,用户必须具有DROPANYTABLE系统权限CREATEANYPROCEDURE允许用户创建、修改、删除或执行任何存储过程、程序包和函数开发人员一般需要几个系统权限,包括CREATETABLE,CREATEVIEW,CREATETYPE等,以创建支持前台应用程序的数据库模式权限管理使用系统权限时,需要注意以下几点:权限管理数据库权限的类型--对象权限
对象权限控制用户是否能在特定数据库对象(如表、视图或存储过程)上执行特定类型的操作对象权限适用对象允许的操作SELECT表、视图、序列查询UPDATE表、视图或其中的字段更新DELETE表和视图删除行INSERT表、视图或其中的字段插入行EXECUTE存储过程,存储函数与程序包执行PL/SQL存储对象READ目录读取目录INDEX表在表上建立索引REFERENCES表或其中字段在其他表中创建的外键能引用表或表中的字段ALTER表或序列修改表或序列的结构权限管理数据库权限的类型--对象权限
对象权限控制用户是否能权限管理对象权限的授予和撤销REVOKE{obj_priv_1[,obj_priv_2]...|ALL[PRIVILEGES]}
ON
{[schema.]object[(column1[,column2])]}FROM{user_1[,user_2]...|PUBLIC}
GRANT{obj_priv_1[,obj_priv_2]...|ALL[PRIVILEGES]}
ON
{[schema.]object[(column1[,column2])]}TO{user_1[,user_2]...|PUBLIC}[WITHGRANTOPTION]
权限管理对象权限的授予和撤销REVOKE{obj_priv查看对象权限colGRANTEEformata15colOWNERformata10colGRANTORformata10colPRIVILEGEformata10select*fromuser_tab_privs;select*fromdba_tab_privs;得到基本表的权限状况查看对象权限其中:GRANTEE表示接受对象权限的用户OWNER表示表的拥有者GRANTOR为授权用户PRIVILEGE表示对象权限GRANTABLE表示该用户是否能向其他用户授予对象权限其中:权限管理使用对象权限时需要注意以下几个问题(选学):如果一个视图引用了其他模式中的表或视图,则该视图的拥有者必须以WITHGRANTOPTION方式获得这些表或视图的权限,才能将该视图的对象权限授予其他用户SELECT对象权限只能授予整个表而不能授予表中的字段权限管理使用对象权限时需要注意以下几个问题(选学):角色与权限管理数据库角色就是权限的命名集合。使用角色可以大大降低用户权限的维护负担。角色可以是对象权限或系统权限的命名集合。数据库管理员只需创建特定的数据库角色,使其反映组织或应用的安全权限,就可以将这些角色赋予用户。系统内置角色CONNECT,RESOURCE,DBA等角色与权限管理数据库角色就是权限的命名集合。使用角色可以大大角色与权限管理利用角色进行权限管理权限1权限2权限3角色1角色2用户1用户2用户3角色与权限管理利用角色进行权限管理权限1权限2权限3角色1角角色与权限管理创建角色如:Createrolepublic_role创建一个公用角色删除角色 CREATEROLErole_name;DROPROLE
role;角色与权限管理创建角色 CREATEROLErole_n对角色授权将系统权限授予角色将对象权限授予角色GRANT{sys_priv_1[,sys_priv_2]...|ALL[PRIVILEGES]}TOrole_1[,role_2]...[WITHADMINOPTION]GRANT{obj_priv_1[,obj_priv_2]...|ALL[PRIVILEGES]}
ON
{[schema.]object[(column1[,column2])]|DIRECTORY
dir}TO{role_1[,role_2]...|PUBLIC}[WITHGRANTOPTION]对角色授权将系统权限授予角色GRANT{sys_priv_Grantcreatesessiontopublic_rolewithadminoption;Connectscott/tiger;Grant
select,insert,updateondepttopublic_role;connectsys/pwd@bvtc4assysdba;Grantpublic_roletomyuser1;Connectmyuser1/welcomeselect*fromscott.dept;Grantcreatesessiontopubli角色与权限管理撤销角色的系统权限撤销角色的对象权限REVOKE{sys_priv_1[,sys_priv_2]...|ALL[PRIVILEGES]}FROM{role_1[,role_2]...};REVOKE{obj_priv_1[,obj_priv_2]...|ALL[PRIVILEGES]}
ON
{[schema.]object[(column1[,column2])]|DIRECTORY
dir}FROM{user_1[,user_2]...}
角色与权限管理撤销角色的系统权限REVOKE{sys_pr角色与权限管理将角色授予用户或其他角色撤销授予用户或其他角色的角色GRANTrole_1[,role_2]...
TO{user_1[,user_2]...|PUBLIC|role_1[,role_2]}[WITHADMINOPTION];REVOKErole_1[,role_2]...
FROM{user_1[,user_2]...|PUBLIC|role_1[,role_2]};角色与权限管理将角色授予用户或其他角色GRANTrole_查看角色信息可以通过数据字典视图USER_TAB_PRIVS查看角色拥有的权限如:select*fromUSER_TAB_PRIVSwheregrantee='PUBLIC_ROLE';查看角色信息Oracle中的数据字典Oracle中的数据字典概述数据字典用于存放有关数据库描述信息的数据。比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息等。当用户在对数据库中的数据进行操作时遇到困难就可以访问数据字典来查看详细的信息。概述数据字典用于存放有关数据库描述信息的数据。比如一个表的创概述基本的数据字典表由sys用户所有,并且保存在system表空间中。用户不能直接访问这些表,只能通过一系列视图访问数据字典表中的信息。概述基本的数据字典表由sys用户所有,并且保存在system数据字典的分类Oracle中的数据字典有静态和动态之分。
静态数据字典主要是在用户访问数据字典时不会发生改变的,但动态数据字典是依赖数据库运行的性能的,反映数据库运行的一些内在信息,所以在访问这类数据字典时往往不是一成不变的。数据字典的分类Oracle中的数据字典有静态和动态之分。
静静态数据字典这类数据字典主要是由表和视图组成,应该注意的是,数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。静态数据字典中的视图分为三类,它们分别由三个前缀够成:
user_*
all_*
dba_*静态数据字典这类数据字典主要是由表和视图组成,应该注意的是,静态数据字典
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度联营股本借款合同全文
- 2025铝合金门窗制作合同
- 2025商务合作合同模板
- 2025全新版委托维修合同
- 2025年签订股权转让合同的要点分析及合同范本
- 2025年上海房屋租赁合同范本
- 2025年:探讨合同规范化管理对企业发展的长远意义
- 《危重患者的观察要点》课件
- 《艺术史概述:唐宋元明清》课件
- 《供应链管理》课件
- GB/T 25150-2010工业设备化学清洗中奥氏体不锈钢钝化膜质量的测试方法蓝点法
- GB/T 20641-2006低压成套开关设备和控制设备空壳体的一般要求
- GB/T 18618-2002产品几何量技术规范(GPS)表面结构轮廓法图形参数
- GB/T 10183.1-2018起重机车轮及大车和小车轨道公差第1部分:总则
- 波形梁钢护栏检测记录表
- 大田作物生产技术标
- 数学命题教学设计课件
- 叶芝《当你老了》赏析课件上课讲义
- 护士角色的转换与适应
- 危险化学品生产经营企业安全知识培训
- 混凝土构件之梁配筋计算表格(自动版)
评论
0/150
提交评论