频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

Sybase数据库安全性控制策略

作者: 佚名 出处:IT专家网  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2007-06-01 11:26
关 键 词:Sybase  数据库  安全  策略
阅读提示:本文以Sybase数据库为例简要介绍在大型数据库中常见的安全性控制策略……

计算机系统的安全性一直都是令开发者头痛的问题,特别是在数据库系统中,由于数据大量集中存放,且为众多用户直接共享,安全性问题更为突出。安全性问题给我们带来的危害无须多言,世界上多家大型银行都在不同程度上遭受到非法入侵者的袭击,但由于商业原因,这些银行都不愿意公布损失程度,使安全性问题更难以解决。Sybase作为一种大型数据库系统,其安全性控制策略较为典型。

安全性控制的层次结构

Sybase数据库为开发者提供了有效的安全性控制策略,既注重数据访问的安全性和监督用户的登录,又兼顾了用户在使用数据时对速度的要求。Sybase中的安全性是依靠分层解决的,它的安全措施也是一级一级层层设置的,真正做到了层层设防。第一层是注册和用户许可,保护对服务器的基本存取;第二层是存取控制,对不同用户设定不同的权限,使数据库得到最大限度的保护;第三层是增加限制数据存取的视图和存储过程,在数据库与用户之间建立一道屏障。

安全性问题的基本原则

Sybase基于上述层次结构的安全体系,提出以下几点实施安全的原则:

1、选择性访问控制(Discretionary Access Controls DAC),DAC用来决定用户是否有权访问数据库对象;
2、验证,验证就是保证只有授权的合法用户才能注册和访问;
3、授权,对不同的用户访问数据库授予不同的权限;
4、审计,监视系统发生的一切事件。

Sybase的安全控制策略

基于上述四点原则,Sybase提供了四种基本策略进行安全性控制。

在创建服务器时,Sybase将所有权限都分配给系统管理员,系统管理员可以在服务器上增加注册者(Logins)(只有系统管理员有此权限)。Logins可以登录服务器但不能访问数据库。数据库属主(DBO)有权增加用户(users),users可以使用分配给它的数据库。当users访数据库时,首先以Logins身份进入服务器,系统自动打开默认数据库,Logins身份转化为users身份。

在用户登录后,系统要通过口令进行验证,以防止非法用户盗用他人的用户名进行登录。这一验证步骤在登录时的注册对话框中出现,注册与验证同时进行,用户名与口令有一个不符,登录请求被拒绝。

权限使得用户在数据库中活动范围仅被容许在小范围内,大大提高了数据库的安全性。在Sybase系统中,对象的所有者或创建者自动被授予对对象的许可权。所有者则有权决定把许可权授予其他用户。Sybase提供了GRANT和REVOKE命令,以便授予或取消许可权。数据库所有者和系统管理员享有特殊许可权,包括数据库所有者(Database Owner,DBO)对自己所拥有的数据库中的一切对象具有全部许可权;系统管理员(System Administrantion,SA)享有服务器内的所有数据库的一切对象的许可权。

Sybase提供了Audit Server,它是能够全面审计跟踪服务器上一切活动的工具,在某些情况下,我们难以阻止非法操作的发生,但至少可以监视非法操作,并采取跟踪措施,找出非法执行操作的人。

除了以上四点基本策略,Sybase数据库中还提供了两种对象——视图和存储过程用于增强系统的安全性。

视图和存储过程像数据库中的其他对象,也要进行权限设定,这样用户只能取得对视图和存储过程的授权,而无法访问底层表。视图可以限制底层表的可见列,从而限制用户能查询的数据列的种类,还能通过应用Where子句限制表返回的行。

下面以具体实例说明Sybase的安全性控制策略。假设开发一个新项目,需要建一个服务器,命名为Server,系统自动产生SA,并要求输入口令(在此我们均假设口令为Null)。SA通过Logins对话框(或用SQL语句)为服务器增加注册Logins,则Logins有权访问Sybase,SA创建数据库DB(SA在数据库DB中的身份为数据库所有者DBO),同时创建两个用户USER1(设置登录名为Login,默认服务器为DB)和USER2这两个用户只能访问数据库DB。DB中有两张表TABLE1(COLUMN1 INT,COLUMN2 CHAR(5))和TABLE 2。

USER 1要访问DB时,首先以Login登录服务器,默认数据库DB被打开,Login的身份就会化为USER-1。在完成了登录和验证后,我们可以通过授权进行安全性控制。授权命令要由数据库属主SA发出:GRANT ALL ON TABLE-1,TABLE-2 TO USER-1则USER-1拥有对TABLE-1,TABLE-2的所有权限。当然,SA也可以收回权限:REVODE DELETE ON TABLE1 FROM USER-1,样,USER-1就不能对TABLE-1进行删除操作。

视图和存储过程就象架设在用户与底层表之间的一道桥梁,用户只能对视图和存储过程进行操作,而无法直接访问底层表。下面创建一个视图人为例子。

CREATE VIEW VIEW-1 
AS SELECT COLUMN-1 FROM TABLE-1
GRANT ALL ON VIEW-1 TO USER-2

USER-2通过VIEW-1可以访问COLUMN-1而无法访问COLUMN-2,这就是VIEW-1的屏作用。再用存储过程举一个屏蔽行的例子。

CREATE PROCEDURE PROC-1 
AS SELECT FROM TABLE-1
WHERE (COLUMN-11)
GRANT EXECUTE ON PROC-1 TO USER-2

当用户查询时,只能看到COLUMN-1列值为1的行,其他行已经被PROC-1屏蔽掉了。

虽然Sybase为我们提供了强大的安全体系保障,但我们也要看到,安全问题不可能通过系统得到彻底解决,并且过分注重安全问题反而会降低系统效率。如何运用系统提供的安全策略就有赖于开发者的智慧了。

【相关文章】

【责任编辑:火凤凰 TEL:(010)68476606-8007】

发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有