数据库安全

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库安全相关的知识,希望对你有一定的参考价值。

一、概述

  1. 计算机系统系统安全性问题分类:技术安全、管理安全、政策法律。

  2. 安全标准

    1. TCSEC(又称桔皮书)是美国国防部1985年正式颁布的《DoD可信计算机系统评估准则》;

    2. CTCPEC、FC、TCSEC、ITSEC于1993年开始联合行动,集合成一组单一的、能被广泛使用的IT安全准则,这一行为被称为CC项目;

    3. CC V2.1版1991年被ISO采用为国际标准,2001年被我国采用为国家标准。


    4. CC评估保证级划分


      评估保证级定义TCSEC安全级别(近似)
      EAL1功能测试
      EAL2结构测试C1
      EAL3系统地测试和检查C2
      EAL4系统地设计、测试和复查B1
      EAL5半形式化设计和测试B2
      EAL6半形式化验证的设计和测试B3
      EAL7形式化验证的设计和测试A1
    5. TCSEC/TDI

      安全级别定义实际系统eg
      AA1验证设计(Verified Design)
      BB3安全域
      B2结构化保护
      B1标记安全保护
      C
      C2受控的存取保护
      C1自主安全保护
      DD最小保护
  3. 数据库安全性控制

    1. 用户标识和鉴别

      1. 用户标识:用用户名或者用户标识号(UID)

      2. 口令:为了进一步核实用户,用户在终端上输入的口令不显示在屏幕上。

    2. 存取控制包括两部分:

      1. 定义用户权限,将用户权限登记到数据字典;

      2. 合法权限检查:一般大型DBMS都支持C2级中的自助存取控制(DAC:Discretionary Access Control),有些DBMS支持B1中的强制存取控制(MAC:Mandatory Access Control)

        1. 自主存取控制:用户对不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限,用户还可以将其拥有的存取权限转授给其他用户

        2. 强制存取控制:每个数据库对象被标以一定的密级,每个用户也被授予某一个级别的许可。对任意一个对象,只有具有合法许可证的用户才可以存取。

    3. 自主存取控制(DAC)方法:

      1. 目前SQL标准也对自主存取控制提供支持。

      2. SQL的GRANT语句用来授权,REVOKE语句收回授予的权限。

    4. 强制存取控制(MAC)方法:

      1. 在MAC中DBMS管理的全部实体被分为主体和课题两类:

        1. 主体:系统中的活动实体,包括:①DBMS所管理的实际用户;②代表用户的各进程;

        2. 客体:系统中的被动实体,是受主体操纵的。包括:①文件;②基本表;③索引;④视图。

        3. DBMS为每个客体的每个实例(值)只拍一个敏感度标记(Label)

        4. 当某一用户以标记Label注册入系统时,系统要求他对任何客体的存取必须遵循如下规则:

          1. 仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体;

          2. 仅当主体的许可证级别小于客体的密级时,该主体才能写相应的客体。

  4. 视图和审计

    1. 可以为不同用户定义不同视图,可以通过视图机制把要保密的数据对无权限存取的用户隐藏起来。

    2. 审计功能:把用户对数据库的所有操作自动记录下来存入审计日志。

  5. 加密安全:根据一定的算法将原始数据(明文)变换为不能直接识别的格式(密文)

    1. 加密方法:①替换法,使用密钥将明文中的每个字符转换为密文;②置换方法。



本文出自 “数据库理论知识” 博客,谢绝转载!

以上是关于数据库安全的主要内容,如果未能解决你的问题,请参考以下文章

信息安全工程师笔记-大数据安全威胁与需求分析

数据安全的必由之路——数据安全治理

数据库安全性-第一节:数据库安全性概述

网络数据库安全论文范文

数据库安全性

Java项目中如何实现数据的安全性,比如安全锁之类的,求代码