数据库角色

数据库角色:被命名的一组与数据库操作相关的权限
角色是权限的集合
可以为一组具有相同权限的用户创建一个角色
简化授权的过程

一、角色的创建

CREATE  ROLE  <角色名> 

二、给角色授权

 GRANT  <权限>[,<权限>]… ON <对象类型>对象名  TO <角色>[,<角色>]…

三、将一个角色授予其他的角色或用户

GRANT  <角色1>[,<角色2>]…
TO  <角色3>[,<用户1>]…
[WITH ADMIN OPTION] 

四、角色权限的收回

REVOKE <权限>[,<权限>]…
ON <对象类型> <对象名>
FROM <角色>[,<角色>]…
[例11] 通过角色来实现将一组权限授予一个用户。
步骤如下:
1. 首先创建一个角色 R1CREATE  ROLE  R1;
2. 然后使用GRANT语句,使角色R1拥有Student表的SELECT、UPDATE、INSERT权限GRANT SELECT,UPDATE,INSERT ON TABLE Student TO R1;
3. 将这个角色授予王平,张明,赵玲。使他们具有角色R1所包含的全部权限GRANT  R1 TO 王平,张明,赵玲;
4. 可以一次性通过R1来回收王平的这3个权限REVOKE  R1 FROM 王平;

[例12] 角色的权限修改GRANT DELETE ON TABLE StudentTO R1
[例13] REVOKE SELECT ON TABLE StudentFROM  R1;
可能存在数据的“无意泄露”
原因:这种机制仅仅通过对数据的存取权限来进行安全控制,而数据本身并无安全性标记
解决:对系统控制下的所有主客体实施强制存取控制策略

强制存取控制(MAC)

保证更高程度的安全性
用户能不能直接感知或进行控制
适用于对数据有严格而固定密级分类的部门
军事部门
政府部门
主体是系统中的活动实体
DBMS所管理的实际用户
代表用户的各进程

客体是系统中的被动实体,是受主体操纵的
文件
基表
索引
视图

敏感度标记(Label)
绝密(Top Secret)
机密(Secret)
可信(Confidential)
公开(Public)

主体的敏感度标记称为许可证级别(Clearance Level)
客体的敏感度标记称为密级(Classification Level)
强制存取控制规则
(1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体
(2)仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体
修正规则
主体的许可证级别 <=客体的密级  主体能写客体
规则的共同点
禁止了拥有高许可证级别的主体更新低密级的数
据对象
DAC与MAC共同构成DBMS的安全机制
实现MAC时要首先实现DAC
原因:较高安全性级别提供的安全保护要包含较低级别的所有保护
把要保密的数据对无权存取这些数据的用户隐藏起来,对数据提供一定程度的安全保护
主要功能是提供数据独立性,无法完全满足要求
间接实现了支持存取谓词的用户权限定义

[例14]建立计算机系学生的视图,把对该视图的SELECT权限授于王平,把该视图上的所有操作权限授于张明 先建立计算机系学生的视图CS_StudentCREATE VIEW CS_StudentAS SELECT  *FROM   StudentWHERE  Sdept='CS';
在视图上进一步定义存取权限GRANT  SELECTON  CS_Student  TO 王平 ;GRANT ALL PRIVILIGESON  CS_Student  TO  张明;
什么是审计
审计日志(Audit Log)将用户对数据库的所有操作记录在上面
DBA利用审计日志找出非法存取数据的人、时间和内容
C2以上安全级别的DBMS必须具有
审计分为
用户级审计
针对自己创建的数据库表或视图进行审计
记录所有用户对这些表或视图的一切成功和(或)不成功的访问要求以及各种类型的SQL操作
系统级审计
DBA设置
监测成功或失败的登录要求
监测GRANT和REVOKE操作以及其他数据库级权限下的操作
AUDIT语句:设置审计功能 NOAUDIT语句:取消审计功能
[例15]对修改SC表结构或修改SC表数据的操作进行审计AUDIT ALTER,UPDATE  ON  SC;[例16]取消对SC表的一切审计NOAUDIT  ALTER,UPDATE  ON  SC;

数据加密

防止数据库中数据在存储和传输中失密的有效手段

加密的基本思想

加密方法
替换方法
置换方法
混合方法

DBMS中的数据加密

统计数据库安全性

统计数据库
允许用户查询聚集类型的信息(如合计、平均值等)
不允许查询单个记录信息

统计数据库中特殊的安全性问题
隐蔽的信息通道
能从合法的查询中推导出不合法的信息

规则1:任何查询至少要涉及N(N足够大)个以上的记录
规则2:任意两个查询的相交数据项不能超过M个
规则3:任一用户的查询次数不能超过1+(N-2)/M
数据库安全机制的设计目标:
试图破坏安全的人所花费的代价 >> 得到的利益

数据的共享日益加强,数据的安全保密越来越重要
DBMS是管理数据的核心,因而其自身必须具有一整套完整而有效的安全性机制

TCSEC和CC

实现数据库系统安全性的技术和方法
存取控制技术
视图技术
审计技术
自主存取控制功能
通过SQL 的GRANT语句和REVOKE语句实现
角色
使用角色来管理数据库权限可以简化授权过程
CREATE ROLE语句创建角色
GRANT 语句给角色授权

数据库 - 数据库角色相关推荐

  1. SQL Server中的角色(服务器级别和数据库级别角色)

    参考文献 http://msdn.microsoft.com/zh-cn/library/ms188659.aspx 服务器级别角色 为帮助您管理服务器上的权限,SQL Server 提供了若干角色. ...

  2. Oracle数据库用户角色、表空间创建、删除命令

    Oracle数据库用户角色.表空间创建.删除命令 //创建数据表空间 create tablespace BCC datafile 'D:\oracle\oradata\BCC\BCC.dbf' si ...

  3. mysql中create role_GP数据库中角色(Role)的创建和管理

    一.GP数据库中角色(Role)的创建和管理 1.客户端通过角色(role)来访问数据库.什么是角色?角色相当于linux系统中用户和组的概念,角色可以是GP数据库的一个用户,也可以是一个组,也可以是 ...

  4. mongo数据库-mongo角色权限

    Built-In Roles(内置角色):     1. 数据库用户角色:read.readWrite;     2. 数据库管理角色:dbAdmin.dbOwner.userAdmin:     3 ...

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

    一.涉及内容 1.验证系统权限管理. 2.验证角色管理. 3.验证概要文件管理. 二.具体操作 (一) 1.根据以下要求进行系统权限的授予与回收操作. (1)创建用户user1,并为它授予create ...

  6. 数据库-数据库的常用术语

    数据库-原理部分 常用的术语 数据模型 数据模型(Data model)是数据库结构的基础,是用来描述数据的一组概念和定 义,数据模型主要有三个要素:数据结构.数据操作.数据约束条件. 数据结构:对象 ...

  7. 数据库-数据库的介绍

    什么是数据库 数据库:保存数据的仓库.它体现我们电脑中,就是一个文件系统.然后把数据都保存这些特殊的文 件中,并且需要使用固定的语言(SQL语言)去操作文件中的数据. 技术定义: 数据库(Databa ...

  8. 数据库查询前十条数据_西门子PLC1200组态王-Access数据库-⑨数据库查询

    西门子PLC1200-组态王跟Access数据库--⑨数据库查询 组态王记录不同类型变量到数据库,和数据库数据查询到组态王界面 1.0 从左边栏选择表格模板,level1和level2分别设置整型和布 ...

  9. 服务器显示数据库,显示数据库服务器上的数据库数据库

    显示数据库服务器上的数据库数据库 内容精选 换一换 文档数据库服务支持开启公网访问功能,通过弹性IP进行访问.您也可通过弹性云服务器的内网访问文档数据库.要将已有的MongoDB数据库迁移到文档数据库 ...

  10. go kegg_对miRNA进行go和kegg等功能数据库数据库注释

    如果大家对go和kegg等功能数据库注释有一定了解,就应该是知道kegg其实里面就记录各个物种不到一半的蛋白编码基因功能,比如人类, 约2万个蛋白编码基因,也就七千多个是有kegg功能注释的.其它物种 ...

最新文章

  1. 学习笔记-Redis设计与实现-跳跃表
  2. 为容器提供持久存储,这个方法试试看
  3. mysql 触发器trigeer_MySQL触发器trigger的使用-阿里云开发者社区
  4. oracle vm 加大存储,Oracle VM VirtualBox下ubuntu虚拟机存储空间不够解决方案
  5. matlab 给参数赋值,未对输出参数赋值 求大神帮忙解惑
  6. python多线程刷网站流量(含ip代理池文档,可制作成exe文件挂服务器代刷)
  7. ChartControl控件绘制折线图
  8. 基于Hadoop的电商用户分析系统
  9. Java 操作 Office:POI之word图片处理
  10. 华为手机助手 android,华为手机助手(安卓版)
  11. 五款支持Mac的设计软件
  12. Space/Aerial-Assisted Computing Offloading for IoT Applications: A Learning-Based论文复现
  13. 性能监控工具-----ServerAgent
  14. Google又逆天:语音输入离线实时输出文字,仅占80MB!然而……
  15. VMSB200A16电视墙配置指导
  16. 在线测试屏幕软件康佳,硬件配置强大 不是说说而已
  17. 数学在计算机密码学中的运用,计算机密码学的数学引论.ppt
  18. 【Unity 3D】常用插件DOTween、Haste、Exploder、KGFMapSystem介绍(图文解释)
  19. j2se培训第一天内容
  20. [收藏]VS2008下载(包含中文MSDN)序列号 破解版

热门文章

  1. 机房气体消防系统设计重点
  2. 记录人生第一个网站,以及相对路径图片无法显示的问题
  3. 厂房消防宣传设置要求和注意事项
  4. C语言 互斥量(加锁)解决同步问题
  5. 判断一个月之前的是星期几
  6. 天马G6二期、腾龙光谷数据中心 落户武汉东湖高新区
  7. 那个让你头大的数据结构,用Python学会变简单吗?
  8. 字符串(一) | 剑指 Offer 58 - II. 左旋转字符串、541. 反转字符串 II、剑指 Offer 05. 替换空格、151. 反转字符串中的单词
  9. OS20190301
  10. java连接neo4j(使用spring data neo4j)