考点17数据库安全
数据库安全性一般指保护数据库不受恶意访问,而完整性指由于意外而破坏数据的一致性。数据库存储的数据应防止未受权用户的访问、恶意破坏或修改等操作
l 安全性措施的层次
防止对数据库的恶意访问比防止意外破坏数据一致性要困难下面是一些恶意访问的形式:
(1)未经授权读取数据。
(2)末经授权修改数据。
(3)未经授权删除数据。
为了数据库的安全,应从以下几个层次上对数据库采取措施:
(1)物理层。计算机系统所位于的节点(一个或多个)必须在物理上受到保护,以防止入侵者强行闯人或暗中潜人。
(2)人员层。对用户的授权必须格外小心,以减少授权用户接受贿赂或其他好处而给入侵者提供访问机会的可能性。
(3)操作系统层。不管数据库系统多安全,操作系统安全性方面的弱点总是可能成为对数据库进行未授权访问的一种手段。
(4)网络层:由于几乎所有的数据库系统都允许通过终端或网络进行远程访问,网络软件的软件层安全性和物理安全性一样重要,不管在Internet上还是在企业私有的网络内。
(5)数据库系统层。数据库系统的某些用户获得的授权可能只允许他访问数据库中有限的部分,而另外一些用户获得的授权可能允许他查询,但不允许他修改数据。保证这样的授权限制不被侵犯是数据库系统的责任。
2 权限和授权
用户对数据库可以有多种不同形式的访问权限,其中包括read权限insert权限update权限deleted权限index权限,resource权限alteration权限及drop权限。
3 在 SQI二中进行安全性说明
SQI数据定义语言中包含了权限授予和回收的命令。SQL标准包括delete ,insert ,select和update权限。
SQL一92标准定义了数据库模式的基本授权机制:只有模式属主才能对模式进行修改。因此,模式的修改(如关系的创建和删除,增加或去掉关系中的属性,以及增加或去掉索引)只能由模式属主来执行。