Oracle数据库——数据库安全性管理

一、实验目的及要求

1.验证系统权限管理。
2.验证角色管理。
3.验证概要文件管理。
二、实验内容
1.根据以下要求进行系统权限的授予与回收操作。
(1)创建用户user1,并为它授予create table、create view 的系统权限以及connect 的系统角色。
Oracle数据库——数据库安全性管理_第1张图片
(2)以user1用户的身份登录系统。
在这里插入图片描述
(3)回收user1 的create table、create view 的系统权限。
此时可能会出现这种情况:
在这里插入图片描述遇到这种情况,输入exit;退出后,再以sqlplus "/as syadba"进入,输入以下语句即可:
在这里插入图片描述
2.根据以下要求进行角色的创建与授予操作。
(1)创建用户角色myrole。
在这里插入图片描述
(2)为角色myrole分别授予create table系统权限和在student 表中执行更新、删除和修改操作的对象权限。
为角色myrole分别授予create table系统权限:
在这里插入图片描述
先创建一个student 表,再在student 表中执行更新、删除和修改操作的对象权限:
Oracle数据库——数据库安全性管理_第2张图片
(3)将角色myrole授予用户user1。
在这里插入图片描述
3. 根据以下要求进行概要文件的创建与分配操作。
(1)创建概要文件myprofile,设置密码的有效天数为100天,尝试登录3天失败将锁定账户。
语句:
create profile myprofile
LIMIT
password_life_time 100
password_lock_time 3;
截图:
Oracle数据库——数据库安全性管理_第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 数据库中几个常用的系统预定义角色及其权限如下所示:
Oracle数据库——数据库安全性管理_第4张图片
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命令把概要文件分配给用户。

你可能感兴趣的:(oracle)