数据库安全性

数据库安全性概念:数据库的安全性指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。

数据库的不安全因素:

1.非授权用户对数据库的恶意存取和破坏

2.数据库中重要或敏感的数据被泄露

3.安全环境(计算机系统的安全性)的脆弱性

计算机系统的安全模型示意图:

计算机系统中,安全措施是一级一级层层设置

数据库安全性控制的常用方法:

1.用户标识和鉴定(Identification &  Authentication) 系统提供的最外层安全保护措施

用户身份鉴别的方法:

(1)静态口令鉴别

静态口令一般由用户自己设定,这些口令是静态不变的

(2)动态口令鉴别

口令是动态变化的,每次鉴别时均需使用动态产生的新口令登录数据库管理系统,即采用一次一密的方法

(3)生物特征鉴别

通过生物特征进行认证的技术,生物特征如指纹、虹膜和掌纹等

(4)智能卡鉴别

智能卡是一种不可复制的硬件,内置集成电路的芯片,具有硬件加密功能

2.存取控制

存取控制机制由 定义用户权限(授权) 和 合法权限检查 组成

常用的存取控制方法:

(1)自主存取控制(Discretionary Access Control ,简称DAC)

用户对不同的数据对象有不同的存取权限

不同的用户对同一对象也有不同的权限

用户还可将其拥有的存取权限转授给其他用户

可通过 SQL 的GRANT 语句和REVOKE 语句实现

自主存取控制缺点:

可能存在数据的“无意泄露”

原因:这种机制仅仅通过对数据的存取权限来进行安全控制,而数据本身并无安全性标记

解决:对系统控制下的所有主客体实施强制存取控制策略

(2)强制存取控制(Mandatory Access Control,简称 MAC)

每一个数据对象被标以一定的密级

每一个用户也被授予某一个级别的许可证

对于任意一个对象,只有具有合法许可证的用户才可以存取

在强制存取控制中,数据库管理系统所管理的全部实体被分为主体和客体两大类

主体是系统中的活动实体

客体是系统中的被动实体,受主体操纵

对于主体和客体,DBMS为它们每个实例(值)指派一个敏感度标记(Label)

主体的敏感度标记称为许可证级别(Clearance Level)

客体的敏感度标记称为密级(Classification Level)

强制存取控制规则:

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

(2)仅当主体的许可证级别小于或等于客体的密级时,该主体才能写相应的客体

先进行自主存取控制检查,通过自主存取控制检查的数据对象再由系统进行强制存取控制检查,只有通过强制存取控制检查的数据对象方可存取。

3.视图

把要保密的数据对无权存取这些数据的用户隐藏起来,对数据提供一定程度的安全保护

4.审计

审计日志(Audit Log)将用户对数据库的所有操作记录在上面

DBA利用审计日志找出非法存取数据的人、时间和内容

5.数据加密存储和加密传输

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

基本思想:根据一定的算法将原始数据—明文(Plain text)变换为不可直接识别的格式-—密文(Cipher text)

加密方法:

(1)存储加密

(2)传输加密

原文地址:https://www.cnblogs.com/paradis/p/9638494.html

时间: 2024-10-09 04:26:10

数据库安全性的相关文章

数据库chapter 4 数据库安全性

第四章 数据库安全性 数据库的数据保护主要包括数据的安全性和数据的完整性. 数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露.更改或破坏. 系统安全保护措施是否有效是数据库系统的主要技术标准之一. 数据库的安全性和计算机系统的安全性是紧密联系.相互支持的. 计算机系统安全性是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件.软件以及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等. 计算机系统的安全性问题可分为技术安全.管理安全和政策法律. 用

SQL语句(二十)—— 数据库安全性

数据库安全性 1. SQL Server 配置管理器  => 网络配置 MSSQLSERVER 协议,如果应用程序和SQL Server 在同一机器上,仅使用 Shared Memory (共享内存协议) 同一个局域网中,仅使用命名管道 修改IP地址端口号, 如: 1433 -> 6182

Navicat 用什么方法检测 Oracle 数据库安全性

Navicat for Oracle 作为一套超强的Oracle数据库系统管理工具.它可以在Oracle数据库8i以上的版本中运行,并支持其大部分最新功能.并且帮助Oracle新手们快速的学习掌握使用方法.一些用户对Navicat 用什么方法检测 Oracle 数据库安全性比较疑惑,下面我们就来针对这个问题来给大家分享一下. Navicat 用户 除了用户创建的帐号,数据库包括在安裝时自动创建数个用户管理帐号,即 SYS.SYSTEM.SYSMAN 和DBSNMP.管理帐号是有较高权限的帐号,可

8.9数据库安全性 Day27

---note--- 数据库安全性(安全性,完整性,并发性,数据库恢复) 授权表三个属性:用户标识,数据对象,操作类型 授权粒度:关系,记录,属性 粒度越细,授权子系统越灵活,安全性越完善 public 通用 NO audit all on S  对S表关闭审计 audit select,insert,delete,update on S whenever successful  打开审计 完整性约束:触发条件,约束条件,违约响应 事物:执行的一个工作单位 (原子性,一致性,隔离性,持久性) b

Atitit。数据库 安全性 重要敏感数据加密存储解决方案

1.1. 加密存储的重要性1 1.2. 使用的加密算法aes1 1.3. 数据加密以后会有一些问题.1 1.3.1. 一个是统计,比如统计资金总额..就无法直接使用sql的sum等数据库内部聚合函数来处理了..1 1.3.2. 还有一个就是按照金额检索,比如多少资金以下的用户..1 1.1. 加密存储的重要性 特别是对于一些金融相关的,账户模块 资金模块等. 可以防止数据库管理员或者黑客直接使用数据库管理工具看到重要敏感的数据.. 必须把程序和数据库结合才能看到解密数据.大大提升安全性.. 1.

图书管理系统总结——数据库操纵(三):数据库安全性

最后一次记录,说一说数据库的安全性. 一.一致性控制 为了保证事务的一致性,可以采用显示事务语句以及在数据库中添加完整性约束.比如在还书时候,要同时修改用户的用户表中的剩余借书本数,借阅记录中的已还选项以及图书表中剩余本数.这个时候可以有两个策略: 1.采用触发器,在MySQL中定义触发器:(仅举个例子) DELIMITER $$ CREATE /*[DEFINER = { user | CURRENT_USER }]*/ TRIGGER `db_book`.`Borrow` AFTER INS

数据库安全性操作——操作原则及SQL注入

今天在进行支付宝开发时,看到支付宝开发文档<开放平台第三方应用安全开发指南>中关于数据库操作的安全性.特此记录! 1.数据库操作 (1)原则:用户密码存储须加盐存储,各用户盐值不同. (2)原则:若涉及证件号等敏感信息的存储,须使用AES-128算法加密存储. (3)编写的SQL必须预编译,不允许通过字符串拼接的方式合成. 说明:1.部分特殊场景,必须通过拼接合成,则拼接的变量必须经过处理,只允许[a-zA-Z0-9_-.]+字符. 2.参考SQL注入漏洞. 2.SQL注入漏洞 SQL注入攻击

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

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

《数据库系统概论》 -- 4. 数据库安全性

背景 非授权用户对数据库的恶意存取和破坏 数据库中重要或敏感数据被泄露 安全环境的脆弱性 概念 保护数据库以防止不合法使用所造成的数据泄露.更改或破坏 安全标准 1985--TCSEC (Trusted Computer System Evaluation Criteria) 1996--CC (Common Criteria) 1999--CC V2.1成为国际标准 TSSEC 4组7个等级 D.C(C1,C2).B(B1,B2,B3).A(A1) 安全程度由低到高 CC 三部分组成:简介和一