
第十六章-系统安全管理.ppt
26页Inspur GroupInspur Education 第第1616章章 系统安全管理系统安全管理Inspur Education 知识点回顾知识点回顾u触发器的概念触发器的概念u触发器类型及创建方法触发器类型及创建方法u理解和应用触发器理解和应用触发器2Inspur Education 本章目标本章目标 u掌握用户的创建与管理掌握用户的创建与管理u理解理解权限的创建与管理权限的创建与管理u理解理解角色的创建与管理角色的创建与管理u了解了解概要文件和数据字典视图概要文件和数据字典视图u了解了解审计功能审计功能3Inspur Education 用户管理用户管理u为了保证为了保证数据及其操作的安全数据及其操作的安全,,数据库系统必须具备完数据库系统必须具备完善善的的安全管理机制安全管理机制OracleOracle有一套严格的用户管理机制,有一套严格的用户管理机制,新创建的用户只有通过管理员授权才能获得系统数据库新创建的用户只有通过管理员授权才能获得系统数据库的使用权,否则该用户只有连接数据库的权利的使用权,否则该用户只有连接数据库的权利u创建用户创建用户:可采用:可采用CREATE USERCREATE USER命令创建一个新用户命令创建一个新用户4CREATE USER user_name IDENTIFIED BY pass_word[or identified exeternally][or identified globally as ‘CN=user’][default tablespace tablespace_default][temporary tablespace tablespace_temp][quota [integer k[m]] [unlimited] ] on tablesapce_ specify1[,quota [integer k[m]] [unlimited] ] on tablesapce_ specify2[,…]…ON tablespace_specifyn[profiles profile_name][account lock or account unlock]Inspur Education 用户管理用户管理u创建用户创建用户5CREATE USER inspur IDENTIFIED BY tigerDEFAULT TABLESPACE usersTEMPORARY TABLESPACE tempQUOTA 10M ON users;Inspur Education 用户管理用户管理————管理用户管理用户2-12-1u管理用户管理用户就是就是对已有的用户信息进行修改和删除等操作对已有的用户信息进行修改和删除等操作。
1.1.修改用户修改用户创建创建好用户后有时会对用户的设置有所改变,比如说修改好用户后有时会对用户的设置有所改变,比如说修改用户口令,改变用户默认表空间、临时表空间、资源限制和磁用户口令,改变用户默认表空间、临时表空间、资源限制和磁盘配额盘配额等等. .示例示例1 1::修改用户inspur密码示例示例2 2::解锁被锁住的用户6ALTER USER inspur IDENTIFIED BY 123456;ALTER USER inspur ACCOUNT UNLOCK;Inspur Education 用户管理用户管理————管理用户管理用户2-22-22.2.删除用户删除用户数据库管理员有时会需要删除一些废弃的用户,删除的同时该用户下所有的数据文件会被一起删除,所以谨慎使用具体删除的示例如下:CASCADECASCADE: :级联删除选项当删除的用户中没有任何数据库对象,该关键字可以省略;如果用户包含数据库对象,则必须加CASCADE选项,此时会连同该用户所拥有的对象一起删除7DROP USER inspur CASCADE;Inspur Education 权限管理权限管理u在在OracleOracle数据库中,权限有系统权限和对象权限两类。
数据库中,权限有系统权限和对象权限两类对数据库系统级的操作都可以称为系统权限,对表对象、对数据库系统级的操作都可以称为系统权限,对表对象、序列、触发器等操作的权限称为对象权限序列、触发器等操作的权限称为对象权限8Inspur Education 权限管理权限管理————系统权限管理系统权限管理2-12-1u授予授予权限权限,语法如下:,语法如下:示例:示例:授予授予用户系统权限用户系统权限sessionsession9GRANT sys_privi | role TO user | role | public [WITH ADMIN OPTION]GRANT CREATE session TO inspur WITH ADMIN OPTIONInspur Education 权限管理权限管理————系统权限管理系统权限管理2-22-2u撤销撤销权限权限,语法如下:,语法如下:示例:示例:撤销撤销inspurinspur的的sessionsession权限权限10REVOKE sys_privi | role FROM user | role | publicREVOKE create session FROM inspurInspur Education 权限管理权限管理————对象权限管理对象权限管理2-12-1u授予授予权限权限,语法格式如下:,语法格式如下:示例:示例:给用户给用户inspurinspur授予表授予表soctt.empsoctt.emp的的selectselect、、insertinsert、、deletedelete和和updateupdate权限权限11GRANT obj_privi | all column ON schema.object TO user | role | public [WITH ADMIN OPTION] | [WITH HIERARCHY OPTION]GRANT select,insert,delete,update ON scott.emp TO inspur;Inspur Education 权限管理权限管理————对象权限管理对象权限管理2-22-2u撤销权限撤销权限,语法格式如下:,语法格式如下:•obj_privi:表示对象的权限。
•public:保留字,代表Oracle系统的所有权限•CASCADE CONSTRAINTS级联,表示有关联关系的权限也被撤销示例:示例:从从inspurinspur用户中撤销用户中撤销scott.empscott.emp表的表的updateupdate和和deletedelete权限权限12REVOKE obj_privi | all ON schema.object FROM user | role | public CASCADE CONSTRAINTSREVOKE delete,update ON scott.emp TO inspur;Inspur Education 角色管理角色管理u在数据库中角色并不是某个用户独有,而是用户可以根据权在数据库中角色并不是某个用户独有,而是用户可以根据权限的需求不同,授予用户不同的角色限的需求不同,授予用户不同的角色u角色角色就就是在数据库中由数据库管理员定义的权限集合,方便是在数据库中由数据库管理员定义的权限集合,方便对不同用户的权限授予,仅一条语句就能授予或回收权限,对不同用户的权限授予,仅一条语句就能授予或回收权限,而不用对用户一一授权。
而不用对用户一一授权角色、用户和权限的关系如下图:角色、用户和权限的关系如下图:13Inspur Education 角色管理角色管理————创建角色创建角色u语法格式如下语法格式如下::u示例:示例:创建一个名为创建一个名为designerdesigner的角色,该角色的口令为的角色,该角色的口令为12345612345614CREATE ROLE role_name [ not identified | identified by [password] | [exeternally] | [globally]];CREATE ROLE designer IDENTIFIED BY 123456;Inspur Education 角色管理角色管理————管理角色管理角色3-13-11 1 查看角色包含的权限查看角色包含的权限示例:示例:查询查询DBADBA角色有哪些权限角色有哪些权限2 2 修改角色密码修改角色密码包括取消角色密码和修改角色密码两种情况包括取消角色密码和修改角色密码两种情况示例:示例:首先取消首先取消designerdesigner角色的密码,然后再重新给该角色设置角色的密码,然后再重新给该角色设置一个密码一个密码15ALTER ROLE designer NOT IDENTIFIED;SELECT * FROM ROLE_SYS_PRIVS WHERE role = 'DBA';ALTER ROLE designer IDENTIFIED BY 456789;Inspur Education 角色管理角色管理————管理角色管理角色3-23-23 3 设置当前用户要生效的角色设置当前用户要生效的角色。
示例:示例:把designer角色授予inspur用户由于一个用户可以同时拥有多个角色,所以也可以设置哪些角色生效哪些角色不生效示例:示例:设置带有密码的角色designer生效16SET ROLE designer IDENTIFIED BY 123456;GRANT designer TO inspur;Inspur Education 角色管理角色管理————管理角色管理角色3-33-34 4 删除角色删除角色示例:示例:删除角色designer删除角色使用删除角色使用DROP ROLEDROP ROLE语句删除角色后,原来拥有该角色语句删除角色后,原来拥有该角色的用户将不再拥有该角色,也将失去角色对应的权限的用户将不再拥有该角色,也将失去角色对应的权限17DROP ROLE designer;Inspur Education 概要文件和数据字典视图概要文件和数据字典视图u所谓概要文件,就是一份描述如何使用系统资源的配置文所谓概要文件,就是一份描述如何使用系统资源的配置文件将概要文件赋予某个数据库用户,在用户连接并访问件将概要文件赋予某个数据库用户,在用户连接并访问数据库服务器时,系统就按照概要文件给他分配系统资源。
数据库服务器时,系统就按照概要文件给他分配系统资源有的时候我们也称之为配置文件,其主要作用包括如下两有的时候我们也称之为配置文件,其主要作用包括如下两点:点:1 1、管理数据库口令及验证方式管理数据库口令及验证方式2 2、管理数据库系统资源管理数据库系统资源18Inspur Education 使用概要文件管理密码使用概要文件管理密码3-13-1u创建创建PROFILEPROFILE文件文件,,语法语法格式格式如下如下::参数说明:参数说明:resource_parameters:要设置的资源参数password_parameters:要设置的密码参数19CREATE PROFILE profile_name LIMIT{resource_parameters | password_parameters}[resource_parameters | password_parameters]...;Inspur Education 使用概要文件管理密码使用概要文件管理密码3-23-2账户锁定账户锁定::是指用户在连续输入多少次错误密码后,数据库系统会自动锁定该用户的账户,同时可以规定账户的锁定时间。
uFAILED_LOGIN_ATEMPTSFAILED_LOGIN_ATEMPTS::该参数表示用户在登录到数据库时允许密码错误的次数uPASSWORD_LOCK_TIMEPASSWORD_LOCK_TIME::该参数用于指定账户被锁定的天数示例示例:创建PROFILE文件,要求设置连续失败次数为5,超过该次数后,账户将被锁定7天,并使用ALTER USER语句将PROFILE文件分配给用户inspur,代码如下20CREATE PROFILE lock_account LIMITFAILED_LOGIN_ATTEMPTS 5PASSWORD_LOCK_TIME 7;ALTER USER inspur PROFILE lock_account;Inspur Education 使用概要文件管理密码使用概要文件管理密码3-33-3密码密码过期时间过期时间::为了防止其他人员破解账户的密码,管理员可以强制普通用户定期改变密码uPASSWORD_LIFE_TIMEPASSWORD_LIFE_TIME::设置用户密码的有效时间,单位为天数uPASSWORD_GRACE_TIMEPASSWORD_GRACE_TIME::该参数用于设置口令失效的“宽限时间”。
示例示例:创建PROFILE文件,要求设置用户的密码有效期为90天,密码宽限期为10天,并将该PROFILE文件分配给用户inspur21CREATE PROFILE password_lift_time LIMITPASSWORD_LIFE_TIME 90PASSWORD_GRACE_TIME 10;ALTER USER inspur PROFILE password_lift_time;Inspur Education 使用概要文件管理使用概要文件管理资源资源在大而复杂的多用户数据库环境中,系统资源可能会成在大而复杂的多用户数据库环境中,系统资源可能会成为影响性能的主要瓶颈,为了有效地利用系统资源,应该根为影响性能的主要瓶颈,为了有效地利用系统资源,应该根据用户所承担任务的不同为其分配合理资源据用户所承担任务的不同为其分配合理资源PROFILEPROFILE不仅不仅可用于管理用户密码,还可以用于管理用户资源可用于管理用户密码,还可以用于管理用户资源 22Inspur Education 数据字典数据字典u数据字典是数据字典是OracleOracle存放数据库内部信息的地方,用来描存放数据库内部信息的地方,用来描述数据库内部的运行和管理情况。
比如一个数据表的所述数据库内部的运行和管理情况比如一个数据表的所有者、所属表空间、创建时间、用户访问权限等,这些有者、所属表空间、创建时间、用户访问权限等,这些信息都可以在数据字典中查找到信息都可以在数据字典中查找到23Inspur Education 审计审计u审计用来监视和记录所选用户的数据活动审计通常用审计用来监视和记录所选用户的数据活动审计通常用于调查可疑活动以及监视与收集特定数据库活动的数据于调查可疑活动以及监视与收集特定数据库活动的数据审计操作类型包括登录企图、对象访问和数据库操作审计操作类型包括登录企图、对象访问和数据库操作审计操作项目包括执行成功的语句或执行失败的语句,审计操作项目包括执行成功的语句或执行失败的语句,以及在每个用户会话中执行一次的语句和所有用户或者以及在每个用户会话中执行一次的语句和所有用户或者特定用户的活动审计记录包括被审计的操作、执行操特定用户的活动审计记录包括被审计的操作、执行操作的用户、操作的时间等信息审计记录被存储在数据作的用户、操作的时间等信息审计记录被存储在数据字典中24Inspur Education 总结总结u掌握用户的创建与管理掌握用户的创建与管理u理解理解权限的创建与管理权限的创建与管理u理解理解角色的创建与管理角色的创建与管理u了解了解概要文件和数据字典视图概要文件和数据字典视图u了解了解审计功能审计功能25Inspur GroupInspur Education 谢谢谢谢! !26。
