




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章 Oracle数据库安全 目标 了解 :Oracle数据库的基本安全体系,基 本的数据库管理知识,数据字典。 理解:Oracle数据库安全体系的基本元素及 相互关联,Oracle数据库管理与应用的相关 知识。 掌握:数据库安全基本要素如:账户、权 限、角色。 概述、专业术语 在当今信息领域,数据库的安全性是至关 重要的。 本章从Oracle数据库的角度讲解信息领域中 数据库的安全要素:数据库账户、密码、 权限控制、角色控制等 术语词汇表 定义在此章节中使用的术语 Oracle用户管理 当使用Oracle客户端访问Oracle数据库时必 须提供密码和帐号 用户(User)是定义在数据库中的一个 名称,是Oracle的基本访问控制机制 。 Oracle用户管理 用户与模式 SCOTT SYSTEM 模式SCOTT 模式SYSTEM 模式(Schema)是用户所拥有对象的集合 用户与模式是一一对应的关系, 并且二者名称相同 Oracle用户管理 建立用户:数据库验证 Oracle中的用户主要由DBA来创建,使 用CREATE USER命令 其他用户需要有CREATE USER系统权 限才能创建新用户 Oracle采用数据库验证方式 Oracle用户管理 建立用户的语法: CREATE USER 自定义用户名 IDENTIFIED BY 帐户密码 DEFAULT TABLESPACE 表空间名 TEMPORARY TABLESPACE 临时表空间名 QUOTA 使用空间大小 ON 表空间名; 建立用户示例: CREATE USER test IDENTIFIED BY test DEFAULT TABLESPACE users_ts TEMPORARY TABLESPACE temp_ts QUOTA 3m ON users_ts ; Oracle用户管理 连接到数据库执行初步操作 -给数据库帐户授予会话权限 SQLconnect system/manager SQLgrant create session to test SQLconnect test/test 新建的用户在创建初无任何权限,需要授 予create session权限才能连接到Oracle -给数据库帐户授予create table的权限 SQLconnect system/manager SQLgrant create table to test SQLconnect test/test SQLcreate table Oracle用户管理 特权用户:具有特殊权限的数据库用户(如: SYSDBA 或 SYSOPER ) 特权用户主要执行数据库维护操作: 启动和关闭Oracle Server 建立数据库 备份和恢复数据库等 Oracle用户管理 修改用户 -修改用户口令 CONNECT test/testtest ALTER USER test IDENTIFIED BY test; -修改用户空间配额 sqlplus system/managertest SQLALTER USER test QUOTA 10m ON users_ts 用户的信息一般由DBA来修改 用户口令可以由用户自身修改 Oracle用户管理 删除用户 DROP USER test ; 删除用户一般是由DBA来完成. 如果模式中包含有数据库对象,则必须带 有CASCADE选项. DROP USER test CASCADE ; 管理权限 权限(privilege):执行特定类型的SQL命令 或访问其他模式对象的权利。它限制用户 可执行的操作 。 权限包括: 系统权限(system privilege) 对象权限(object privilege) 系统权限 系统权限:执行特定类型SQL命令的权限 权权限说说明 create tablespace创建表空间的权限 create user创建用户的权限 create session创建会话的权限 create role创建角色的权限 create table为用户创建表的权限 create view为用户创建视图的权限 create procedure为用户创建存储过程的权限 create sequence为用户创建序列的权限 create synonym为用户创建同义词的权限 create any table为任意用户创建表的权限 create any view为任意用户创建视图的权限 Oracle中包含了一类ANY系统权限,当用户具有 该类权限时,可以在任何模式中执行相应的操作 系统权限 初始用户没有任何权限,需要由DBA(或有 DBA权限的用户)授予系统权限 授予系统权限语法: grant 系统权限列表(多个权限用“,”分隔) to 用户 sqlplus system/managertest SQLgrant create session, create table to test ; 授权示例: 系统权限 回收系统权限 revoke 系统权限列表 from 用户 sqlplus system/managertest SQLrevoke create session, create table from test; 回收权限示例: 系统权限 显示当前用户和当前会话的系统权限 select * from user_sys_privs GRANTEE PRIVILEGE - TEST CREATE SESSION TEST CREATE TABLE TEST CREATE CUSTER TEST CREATE VIEW TEST CREATE SYNONYM TEST CREATE SEQUENCE TEST CREATE USER 显示当前用户权限(user_sys_privs) select * from session_privs PRIVILEGE - CREATE SESSION CREATE TABLE CREATE CUSTER CREATE VIEW CREATE SYNONYM CREATE SEQUENCE CREATE USER 显示当前会话权限(session_privs) GRANTEE:权限拥有者 PRIVILEGE:权限名称 对象权限 对象权限:访问其它模式对象的权利。它 用于控制一个用户对另一个用户的访问 A帐户 B帐户 B.TX 访问表B.TX 权限? Oracle中常用对象权限: SELECT INSERT UPDATE DELETE EXECUTE 对象权限 授予对象权限 GRANT 权限列表 ON 对象 TO 帐户 ; 示例: SQLconnect b/b -连接B帐户 SQLGRANT SELECT, INSERT ON TX TO A; 对象权限 回收对象的权限 REVOKE 权限列表 ON 对象 FROM 帐户 ; 示例: connect b/b -连接B帐户 REVOKE SELECT, INSERT ON TX FROM A; 对象权限 显示当前用户所具有的对象权限 select * from user_tab_privs GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE - TEST SYSTEM TEMP TEST SELECT 管理角色 角色:权限的集合。角色的目的:简化权限管理 。 ABC 权限 X 权限 Y 权限 Z 权限 H ABC 权限 X 角色 权限 Y 权限 Z 权限 H 四种权限授予三个账户需 要执行大量的授权过程 步骤: 1.创建角色,把单个的权 限赋值给角色 2.把角色赋给不同的用户 管理角色 Oracle预定义角色 CONNECT 权 限 ALTER SESSION CREATE SESSION CREATE CLUSTER CREATE DATABSE LINK CRAETE SEQUENCE CREATE SYNONYM CREATE TABLE CREATE VIEW RESOURCE 权 限 CREATE INDEXTYPE CREATE OPERATOR CREATE PROCEDURE CREATE TRIGGER CREATE TYPE CREATE CLUSTER CREATE TABLE DBA拥有所有系统权限 权限 管理角色 创建角色 CREATE ROLE 自定义角色名字; 示例: CREATE ROLE test_role ; 管理角色 给角色授权 GRANT 权限列表 TO 自定义角色名字; 示例: GRANT CRAETE SESSION, CREATE TABLE TO test_role; 使用角色给用户授权 GRANT 角色列表 TO 自定义用户名字; 示例: GRANT test_role TO test ; 管理角色 删除角色 DROP ROLE 自定义角色名字; 示例: DROP ROLE test_role ; 数据字典 数据字典是Oracle的最重要组成部分,它用 于提供数据库的相关信息。 数据字典主要是由表和视图组成 数据字典中的表是不能直接被访问的,但 可以访问数据字典中的视图 数据字典的维护和修改是由系统自动完成 的,用户只能执行SELECT查询系统信息 数据字典属于SYS模式,并且存放在表空 间SYSTEM。 Oracle中的数据字典有静态和动态之分 静态数据字典 静态数据字典中的视图分为三类 user_* (当前用户所拥有对象的信息) all_* (当前用户能够访问的对象的信息 ) dba_* (数据库中所有对象的信息,需要有 DBA权限才能访问 ) 静态数据字典 常用的静态视图示例: select * from user_users user_users 描述当前用户的信息,包括用户名、帐户id、帐户状态、表空间名、创建时间等 select * from user_tables user_tables 描述当前用户拥有的所有表的信息,主要包括表名、表空间名、簇名等 select object_type, status from user_objects where object_name = upper(package1) user_objects 当前用户拥有的所有对象的信息,包括表、视图、存储过程、触发器、索引等 动态数据字典 动态数据字典(通常称为:动态性能视图 ), 由系统管理员维护(如:SYS) 当数据库运行的时候它们会不断进行更新 只能对其进行只读访问而不能修改它们 动态性能视图都是以v$开头的视图 静态数据字典 常用的动态性能视图: v$access 显示数据库中锁定的数据库对象以及访问这些对象的会话对象(session) v$session 列出当前会话的详细信息。 该视图字段较多,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年国企服务部面试题目及答案
- 2025年新能源汽车自动驾驶政策法规适应性研究报告
- 高校国家资助合同模板(3篇)
- 高铁站设计施工合同模板(3篇)
- 高清合同模板(3篇)
- 安徽辅警笔试题库及答案
- 爱心女孩心理测试题及答案
- 网络游戏合同终止及虚拟物品处理补充协议
- 航空航天项目单项目技术保密合同
- 体育机构运动员职业规划与权益保障合同范本
- 吉林:用水定额(DB22-T 389-2019)
- 威士忌餐吧策划书3
- 大宗商品贸易管理制度
- 《应用语文(第三版)》课件 第三单元 特殊情境口语交际
- 果农电商合同协议
- 武汉网约车从业资格证考试题库及答案
- DB1411T 65-2024 旱垣地高粱田间测产操作规程
- 数码印花操作培训课件
- GB/T 44808.2-2024人类工效学无障碍设计第2部分:考虑颜色视觉随年龄变化的颜色组合方法
- 七年级上册人教版历史知识点总结
- GB/T 30137-2024电能质量电压暂升、电压暂降与短时中断
评论
0/150
提交评论