《8 安全与备份.ppt》由会员分享,可在线阅读,更多相关《8 安全与备份.ppt(31页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、安全性管理安全与备份安全管理数据库备份数据库恢复1、数据库安全性概述 数据库的安全性主要包括两个方面的含义:数据库的安全性主要包括两个方面的含义:一方面是防止非法用户对数据库的访问,未授权的用户不能登录数据库;一方面是防止非法用户对数据库的访问,未授权的用户不能登录数据库;另一方面是每个数据库用户都有不同的操作权限,只能进行自己权限范另一方面是每个数据库用户都有不同的操作权限,只能进行自己权限范围内的操作。围内的操作。OracleOracle数据安全控制机制数据安全控制机制 用户管理用户管理 权限管理权限管理 角色管理角色管理 表空间设置和配额表空间设置和配额 用户资源限制用户资源限制 数据库
2、审计数据库审计 OracleOracle数据库的安全可以分为两类:数据库的安全可以分为两类:系统安全性系统安全性 系统安全性是指在系统级控制数据库的存取和使用的机制,系统安全性是指在系统级控制数据库的存取和使用的机制,包括有效的用户名与口令的组合、用户是否被授权可连接数包括有效的用户名与口令的组合、用户是否被授权可连接数据库、用户创建数据库对象时可以使用的磁盘空间大小、用据库、用户创建数据库对象时可以使用的磁盘空间大小、用户的资源限制、是否启动了数据库审计功能,以及用户可进户的资源限制、是否启动了数据库审计功能,以及用户可进行哪些系统操作等。行哪些系统操作等。数据安全性数据安全性 数据安全性是
3、指在对象级控制数据库的存取和使用机制,包数据安全性是指在对象级控制数据库的存取和使用机制,包括用户可存取的模式对象和在该对象上允许进行的操作等。括用户可存取的模式对象和在该对象上允许进行的操作等。数据库安全性概述2、用户管理 OracleOracle数据库初始用户数据库初始用户 SYSSYS:是数据库中具有最高权限的数据库管理员,可以启动、修:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典;改和关闭数据库,拥有数据字典;SYSTEMSYSTEM:是一个辅助的数据库管理员,不能启动和关闭数据库,:是一个辅助的数据库管理员,不能启动和关闭数据库,但可以进行其他一些管
4、理工作,如创建用户、删除用户等。但可以进行其他一些管理工作,如创建用户、删除用户等。SCOTTSCOTT:是一个用于测试网络连接的用户,其口令为:是一个用于测试网络连接的用户,其口令为TIGERTIGER。PUBLICPUBLIC:实质上是一个用户组,数据库中任何一个用户都属于该:实质上是一个用户组,数据库中任何一个用户都属于该组成员。要为数据库中每个用户都授予某个权限,只需把权限授组成员。要为数据库中每个用户都授予某个权限,只需把权限授予予PUBLICPUBLIC就可以了。就可以了。用户管理 用户属性用户属性 用户身份认证方式用户身份认证方式 数据库身份认证数据库身份认证 外部身份认证外部身
5、份认证 全局身份认证:全局身份认证:使用网络中的安全管理使用网络中的安全管理服务器(服务器(Oracle Enterprise Security Oracle Enterprise Security ManagerManager)对用户进行身份认证)对用户进行身份认证 默认表空间默认表空间 临时表空间临时表空间 表空间配额:限制用户在永久表空间中可使用的存储空间大小表空间配额:限制用户在永久表空间中可使用的存储空间大小 概要文件:从会话级和调用级两个层次限制用户对数据库系统资概要文件:从会话级和调用级两个层次限制用户对数据库系统资源的使用,同时设置用户的口令管理策略源的使用,同时设置用户的口令
6、管理策略 账户状态账户状态(1)创建用户 基本语法基本语法CREATE USER CREATE USER user_nameuser_name IDENTIFIED IDENTIFIED BY BY password|EXTERNALLY|GLOBALLYpassword|EXTERNALLY|GLOBALLY AS AS external_nameexternal_name DEFAULT TABLESPACE DEFAULT TABLESPACE tablespace_nametablespace_name TEMPORARY TABLESPACE TEMPORARY TABLESPACE
7、 temp_tablesapce_nametemp_tablesapce_name QUOTA n K|M|UNLIMITED ON QUOTA n K|M|UNLIMITED ON tablespace_nametablespace_name PROFILE PROFILE profile_nameprofile_name PASSWORD EXPIREPASSWORD EXPIREACCOUNT LOCK|UNLOCK;ACCOUNT LOCK|UNLOCK;基本语法基本语法ALTER USER ALTER USER user_nameuser_name IDENTIFIED IDENTI
8、FIEDBY BY password|EXTERNALLY|GLOBALLYpassword|EXTERNALLY|GLOBALLY AS AS external_nameexternal_name DEFAULT TABLESPACE DEFAULT TABLESPACE tablespace_nametablespace_name TEMPORARY TABLESPACE TEMPORARY TABLESPACE temp_tablesapce_nametemp_tablesapce_name QUOTA n K|M|UNLIMITED ON QUOTA n K|M|UNLIMITED O
9、N tablespace_nametablespace_name PROFILE PROFILE profile_nameprofile_name DEFAULT ROLE DEFAULT ROLE role_list|ALLrole_list|ALL EXCEPT EXCEPT role_listrole_list|NONE|NONEPASSWORD EXPIREPASSWORD EXPIREACCOUNT LOCK|UNLOCK;ACCOUNT LOCK|UNLOCK;(2)修改用户(3)删除用户 基本语法基本语法 DROP USER DROP USER user_nameuser_nam
10、e CASCADE;CASCADE;步骤步骤 先删除用户所拥有的对象先删除用户所拥有的对象 再删除用户再删除用户 将参照该用户对象的其他数据库对象标志为将参照该用户对象的其他数据库对象标志为INVALIDINVALID(4)查询用户信息 系统数据字典视图系统数据字典视图 ALL_USERSALL_USERS:包含数据库所有用户的用户名、用户:包含数据库所有用户的用户名、用户IDID和用户创建时和用户创建时间。间。DBA_USERSDBA_USERS:包含数据库所有用户的详细信息。:包含数据库所有用户的详细信息。USER_USERSUSER_USERS:包含当前用户的详细信息。:包含当前用户的详
11、细信息。DBA_TS_QUOTASDBA_TS_QUOTAS:包含所有用户的表空间配额信息。:包含所有用户的表空间配额信息。USER_TS_QUOTASUSER_TS_QUOTAS:包含当前用户的表空间配额信息。:包含当前用户的表空间配额信息。V$SESSIONV$SESSION:包含用户会话信息。:包含用户会话信息。V$OPEN_CURSORV$OPEN_CURSOR:包含用户执行的:包含用户执行的SQLSQL语句信息。语句信息。查询用户信息 查看数据库所有用户名及其默认表空间。查看数据库所有用户名及其默认表空间。SELECT SELECT USERNAME,DEFAULT_TABLESPA
12、CEUSERNAME,DEFAULT_TABLESPACE FROM DBA_USERS;FROM DBA_USERS;查看数据库中各用户的登录时间、会话号。查看数据库中各用户的登录时间、会话号。SELECT SELECT SID,SERIAL#,LOGON_TIME,USERNAME SID,SERIAL#,LOGON_TIME,USERNAME FROM V$SESSION;FROM V$SESSION;3、权限管理 权限分类权限分类 系统权限系统权限 一类是对数据库某一类对象的操作能力,通常带有一类是对数据库某一类对象的操作能力,通常带有ANYANY关键字。关键字。例如,例如,CREAT
13、E ANY INDEXCREATE ANY INDEX,ALTER ANY INDEXALTER ANY INDEX,DROP ANY INDEX DROP ANY INDEX。另一类系统权限是数据库级别的某种操作能力。例如,另一类系统权限是数据库级别的某种操作能力。例如,CREATE CREATE SESSIONSESSION。对象权限:对象权限是指对某个特定的数据库对象执对象权限:对象权限是指对某个特定的数据库对象执行某种操作的权限。行某种操作的权限。权限管理 授权方法直接授权:利用直接授权:利用GRANTGRANT命令直接为用户授权。命令直接为用户授权。间接授权:先将权限授予角色,然后再
14、将角色间接授权:先将权限授予角色,然后再将角色授予用户。授予用户。(1)系统权限的授权 授权语法为授权语法为GRANT GRANT sys_priv_listsys_priv_list TO TO user_list|role_list|PUBLICuser_list|role_list|PUBLIC WITH ADMIN OPTIONWITH ADMIN OPTION;参数说明:参数说明:WITHWITH ADMIN OPTION ADMIN OPTION:表示允许系统权限接收者再把此权限授予:表示允许系统权限接收者再把此权限授予其他用户。其他用户。系统权限回收语法为系统权限回收语法为REV
15、OKE sys_priv_list REVOKE sys_priv_list FROM user_list|role_list|PUBLIC;FROM user_list|role_list|PUBLIC;(2)对象权限的授权对对 象象 权权 限限适适 合合 对对 象象对对象象权权限功能限功能说说明明SELECTSELECT表、表、视图视图、序列、序列查询查询数据操作数据操作UPDATEUPDATE表、表、视图视图更新数据操作更新数据操作DELETEDELETE表、表、视图视图删删除数据操作除数据操作INSERTINSERT表、表、视图视图插入数据操作插入数据操作REFERENCESREFER
16、ENCES表表在其他表中在其他表中创创建外建外键时键时可以引用可以引用该该表表EXECUTEEXECUTE存存储过储过程、函数、包程、函数、包执执行行PL/SQLPL/SQL存存储过储过程、函数和包程、函数和包READREAD目目录录读读取目取目录录ALTERALTER表、序列表、序列修改表或序列修改表或序列结结构构INDEXINDEX表表为为表表创创建索引建索引ALLALL具有具有对对象象权权限的所有模式限的所有模式对对象象某个某个对对象所有象所有对对象象权权限操作集合限操作集合对象权限的授权 授权语法授权语法GRANT GRANT obj_priv_list|ALLobj_priv_lis
17、t|ALL ON ON schema.objectschema.objectTO TO user_list|role_listuser_list|role_list WITH GRANT OPTION;WITH GRANT OPTION;参数说明参数说明 WITHWITH GRANT OPTION GRANT OPTION:表示允许对象权限接收者把此对象权限授予:表示允许对象权限接收者把此对象权限授予其他用户。其他用户。回收语法回收语法 REVOKE obj_priv_list|ALL ON schema.object FROM REVOKE obj_priv_list|ALL ON sche
18、ma.object FROM user_list|role_list;user_list|role_list;(3)查询权限信息 数据字典视图数据字典视图 DBA_TAB_PRIVSDBA_TAB_PRIVS:包含数据库所有对象的授权信息包含数据库所有对象的授权信息 A ALL_TAB_PRIVSLL_TAB_PRIVS:包含数据库所有用户和包含数据库所有用户和PUBLICPUBLIC用户组的对象授权用户组的对象授权信息信息 USER_TAB_PRIVSUSER_TAB_PRIVS:包含当前用户对象的授权信息包含当前用户对象的授权信息 DBA_COL_PRIVSDBA_COL_PRIVS:包含
19、所有字段已授予的对象权限包含所有字段已授予的对象权限 ALL_COL_PRIVSALL_COL_PRIVS:包含所有字段已授予的对象权限信息包含所有字段已授予的对象权限信息 USER_COL_PRIVSUSER_COL_PRIVS:包含当前用户所有字段已授予的对象权限信息。包含当前用户所有字段已授予的对象权限信息。DBA_SYS_PRIVSDBA_SYS_PRIVS:包含授予用户或角色的系统权限信息:包含授予用户或角色的系统权限信息 USER_SYS_PRIVSUSER_SYS_PRIVS:包含授予当前用户的系统权限信。:包含授予当前用户的系统权限信。4、角色管理l l角色:一系列相关权限的集
20、合角色:一系列相关权限的集合角色管理 预定义角色预定义角色 预定义角色是指在预定义角色是指在OracleOracle数据库创建时由系统自动创建的一些常用数据库创建时由系统自动创建的一些常用的角色,这些角色已经由系统授予了相应的权限。的角色,这些角色已经由系统授予了相应的权限。DBADBA可以直接利用预定义的角色为用户授权,也可以修改预定义角可以直接利用预定义的角色为用户授权,也可以修改预定义角色的权限。色的权限。OracleOracle数据库中有数据库中有3030多个预定义角色。多个预定义角色。可以通过数据字典视图可以通过数据字典视图DBA_ROLESDBA_ROLES查询当前数据库中所有的预
21、定查询当前数据库中所有的预定义角色,通过义角色,通过DBA_SYS_PRIVSDBA_SYS_PRIVS查询各个预定义角色所具有的系统权查询各个预定义角色所具有的系统权限。限。角角 色色角色具有的部分角色具有的部分权权限限CONNECTCONNECTCREATE DATABASE_LINKCREATE DATABASE_LINK,CREATE SESSIONCREATE SESSION,ALTER SESSIONALTER SESSION,CREATE TABLECREATE TABLE,CREATE CLUSTERCREATE CLUSTER,CREATE SEQUENCECREATE SE
22、QUENCE,CREATE SYNONYMCREATE SYNONYM,CREATE VIEWCREATE VIEWRESOURCERESOURCECREATE CLUSTERCREATE CLUSTER,CREATE OPERATORCREATE OPERATOR,CREATE CREATE TRIGGERTRIGGER,CREATE TYPECREATE TYPE,CREATE SEQUENCECREATE SEQUENCE,CREATE INDEXTYPECREATE INDEXTYPE,CREATE PROCEDURECREATE PROCEDURE,CREATE TABLECREAT
23、E TABLEDBADBAADMINISTER DATABSE TRIGGERADMINISTER DATABSE TRIGGER,ADMINISTER RESOURCE MANAGEADMINISTER RESOURCE MANAGE,CREATECREATE,CREATE ANYCREATE ANY,ALTERALTER,ALTER ANYALTER ANY,DROPDROP,DROP ANYDROP ANY,EXECUTEEXECUTE,EXECUTE ANYEXECUTE ANYEXP_FULL_EXP_FULL_DATABASEDATABASEADMINISTER RESOURCE
24、MANAGEADMINISTER RESOURCE MANAGE,BACKUP ANY TABLEBACKUP ANY TABLE,EXECUTE ANY PROCEDUREEXECUTE ANY PROCEDURE,SELECT ANY TABLESELECT ANY TABLE,EXECUTE ANY TYPEEXECUTE ANY TYPEIMP_FULL_IMP_FULL_DATABASEDATABASEADMINISTER DATABSE TRIGGERADMINISTER DATABSE TRIGGER,ADMINISTER RESOURCE MANAGEADMINISTER RE
25、SOURCE MANAGE,CREATE ANYCREATE ANY,ALTER ANYALTER ANY,DROPDROP,DROP ANYDROP ANY,EXECUTE ANYEXECUTE ANY角色管理 创建角色CREATE ROLE CREATE ROLE role_namerole_name NOT NOT IDENTIFIEDIDENTIFIED BY IDENTIFIEDIDENTIFIED BY password;password;角色授权与回收:同用户授权与回收 删除角色DROP ROLE role_name;DROP ROLE role_name;角色管理 运用角色对用
26、户权限管理运用角色对用户权限管理 可以将角色授予用户或其他角色,则角色的权限集体可以将角色授予用户或其他角色,则角色的权限集体赋予用户或其他角色,也可以回收赋予用户或其他角色,也可以回收 授予角色授予角色 GRANT GRANT role_listrole_list TO TO user_list|role_listuser_list|role_list;回收角色回收角色 REVOKE role_list FROM user_list|role_listREVOKE role_list FROM user_list|role_list;查询角色信息 DBA_ROLESDBA_ROLES:包含数
27、据库中所有角色及其描述包含数据库中所有角色及其描述;DBA_ROLE_PRIVSDBA_ROLE_PRIVS:包含为数据库中所有用户和角色授予的角色信息包含为数据库中所有用户和角色授予的角色信息;USER_ROLE_PRIVSUSER_ROLE_PRIVS:包含为当前用户授予的角色信息;:包含为当前用户授予的角色信息;ROLE_ROLE_PRIVSROLE_ROLE_PRIVS:为角色授予的角色信息;:为角色授予的角色信息;ROLE_SYS_PRIVSROLE_SYS_PRIVS:为角色授予的系统权限信息;:为角色授予的系统权限信息;ROLE_TAB_PRIVSROLE_TAB_PRIVS:为角色授予的对象权限信息;:为角色授予的对象权限信息;SESSION_PRIVSSESSION_PRIVS:当前会话所具有的系统权限信息;:当前会话所具有的系统权限信息;SESSION_ROLESSESSION_ROLES:当前会话所具有的角色信息。:当前会话所具有的角色信息。5、利用OEM进行安全管理 用户管理 角色管理 概要文件管理 审计设置(1)用户管理(2)角色管理 单击“角色”链接后进入角色管理界面,可以完成数据库角色的创建、编辑、查看、删除等操作。对角色的管理过程与用户管理过程基本相似,可以参考用户管理。
限制150内