Oracle数据库——数据库安全性管理
一、涉及内容
1.验证系统权限管理。
2.验证角色管理。
3.验证概要文件管理。
二、具体操作
(一)
1.根据以下要求进行系统权限的授予与回收操作。
(1)创建用户user1,并为它授予create table、create view 的系统权限以及connect 的系统角色。
(2)以user1用户的身份登录系统。
(3)回收user1 的create table、create view 的系统权限。
2. 根据以下要求进行角色的创建与授予操作。
(1)创建用户角色myrole。
(2)为角色myrole分别授予create table系统权限和在student 表中执行更新、删除和修改操作的对象权限。
为角色myrole分别授予create table系统权限:
先创建一个student 表,再在student 表中执行更新、删除和修改操作的对象权限:
(3)将角色myrole授予用户user1。
3. 根据以下要求进行概要文件的创建与分配操作。
(1)创建概要文件myprofile,设置密码的有效天数为100天,尝试登录3天失败将锁定账户。
语句:
create profile myprofile LIMIT password_life_time 100 password_lock_time 3;
截图:
(2)把该概要文件myprofile 分配给用户user1。
(二)
1.Oracle 数据库中安全性管理的策略有哪些?
答:Oracle 数据库中安全性管理的策略有:
(1)建立系统级的安全保证
(2)建立对象级的安全保证
(3)建立用户级的安全保证
2.grant 命令为用户授予系统权限和对象权限的区别是什么?
答:grant 命令为用户授予系统权限语法命令格式为:
GRANT system_privilege [,system_privilege] TO user_name [,user_name] [WITH ADMIN OPTION];
grant 命令为用户授予对象权限语法命令格式为:
GRANT object_privilege [,object_privilege] ON object_name TO user_name [,user_name] [WITH GRANT OPTION]
区别是:授予对象权限是需要指定权限操作的对象名称object_name
3.Oracle 数据库中几个常用的系统预定义角色是什么?它们分别具有什么样的权限?
答:Oracle 数据库中几个常用的系统预定义角色及其权限如下所示:
系统预定义角色 |
权限 |
DBA数据库管理员角色
|
1.拥有全部特权,是系统最高权限的角色 2.只有该角色的用户可以创建数据库结构 3.在数据库中拥有无限制的空间限额 |
RESOURCE数据库资源角色
|
1.只可以在自己的方案下创建各种数据库对象 2.没有和数据库创建会话的权限 |
CONNECT数据库连接角色
|
1.具有连接数据库 2.在自己的方案下创建各种数据库对象的系统权限 |
4.如何使用数据库概要文件设置系统的安全性?具体步骤有哪些?
答:
(1)概要文件(profile)是一种对用户能够使用的数据库和系统资源进行限制的文件。把概要文件分配给用户,Oracle就可以对该用户使用的资源进行限制。 Oracle中有一个默认的概要文件 “ DEFAULT ”, 默认概要文件中对所有的资源都是无限制的。创建用户时,如果没有分配概要文件,oracle自动把默认的概要文件分配给他。所以需要建立一些专门的概要文件,限制用户所使用的资源,实现oracle的安全管理。
(2)Oracle可以在两个层次上限制用户对系统资源的使用:
①会话级:若在一个会话时间段内超过了资源限制参数的最大值,Oracle将停止当前的操作,回退未提交的事务,并断开连接。
②调用级:若在调用级上,一条sql语句执行中超过了资源参数的限制,Oracle将终止并回退该语句的执行,但当前事务中已执行的所有语句不受影响,且用户会话仍然连接。
(3)具体步骤如下:
①使用ALTER SYSTEM命令修改初始化参数resource_limit,使资源限制生效。
ALTER SYSTEM set resource_limit=true;
②使用CREATE PROFILE命令创建概要文件 。
③使用CREATE USER命令 或ALTER USER命令把概要文件分配给用户。
posted on 2016-06-08 12:03 CuriousZero 阅读(4021) 评论(0) 编辑 收藏 举报