本文已参与「新人创作礼」活动,一起开启掘金创作之路。
本文介绍了数据库的安全及完整性知识点
数据库安全
数据库的安全性是指保护数据库以防止不合法使用所造成的数据泄露、更改或损坏。系统安全保护措施是否有效是数据库系统的主要技术指标之一。
1.用户身份鉴别是数据库管理系统提供的最外层安全保护措施,每个用户在系统中都有一个用户标识(由用户名和用户标识号组成),用户标识号(UID)在系统的生命周期内是唯一的,并且系统内部记录这所有合法用户的标识,系统鉴别是指由系统提供一定的方式让用户标识自己的身份或名字。用户进入系统时由系统进行核对,通过鉴定后才提供使用数据库管理系统的权限。
生物特征鉴别
采用图像处理和模式识别等技术,相当于指纹识别或者脸部识别。
优缺点:产生质的飞跃,安全性较高。
智能卡识别
智能卡是一种不可复制的硬件,内置集成电路的芯片,具有硬件加密功能。实际应用中一般采用个人身份识别码(PIN)和智能卡相结合的方式。
2、存取控制
数据库安全最重要的一点就是确保只授权给有资格的用户访问数据库的权限,同时令所有未授权的人员无法接近数据,这主要通过数据库系统存取控制机制实现。
存取控制机制主要包括定义用户权限,并将用户权限登记到数据字典中和合法权限检查。两者机制一起组成数据库管理系统的存取控制子系统。
3、自主存取控制方法
自主存取控制方法主要通过SQL的GRANT语句和REVOKE语句来实现。
\
数据库完整性设计
1.完整性约束的添加、删除
约束是强制数据完整性的首选方法。约束有6种类型:非空约束、默认值约束、Check约束、主键约束、外键约束、唯一性约束。
(1)使用企业管理器实施约束
1)为表customers的即所在系字段,设置默认值约束,默认值取‘CS’。
添加默认约束的操作步骤:
删除默认约束的操作步骤:
2)(若原有约束,请在企业管理器中删除Student表的主键约束)在企业管理器中将Sno重设为主键。(会操作即可,操作步骤可略)
3)为customers表的Cname字段添加唯一性约束。
4)(若原有约束,请在企业管理器中删除原有的外键约束)在企业管理器中删除SC原有的外键约束,在企业管理器中对Sno,Cno字段设置外键约束,约束名自己取。并允许级联删除与级联更新。