热门关键字:  ubuntu  分区  函数  Fedora  linux系统进程

详细讲述Sybase数据库的安全性控制策略

来源: 作者: 时间:2008-05-18 Tag: 点击:

 

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进行删除操作。

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册