提高数据库系统目录视图安全性的两个建议

DB2系统目录视图存在着安全隐患,那么其安全性该如何提高呢?下面提出了两个建议,供您参考,希望可以对您有所帮助。

创新互联致力于成都网站制作、网站设计,成都网站设计,集团网站建设等服务标准化,推过标准化降低中小企业的建站的成本,并持续提升建站的定制化服务水平进行质量交付,让企业网站从市场竞争中脱颖而出。 选择创新互联,就选择了安全、稳定、美观的网站建设服务!

***个是比较简单的处理方法,即从public中撤销对系统默认视图的select特权。然后给需要访问这些信息的用户再授予他们对于这些系统默认视图的select查询权限。在DB2数据库中这些DB2系统目录视图也是视图的一种,所以无论是授权还是撤销权限都是跟其他任何普通视图的授予与撤销权限的方法是一致的。

***的区别就是操作用户权限上的区别。对于普通的视图,只要视图的所有者或者具有视图权限控制的用户都可以更改视图的相关权限。而对于DB2系统目录视图来说,操作员必须有sysadm或者DBADM的权限,才能够更改系统目录视图的权限。即收回某些用户的特权,或者重新赋予某些用户具有对系统目录视图的查询权限。

第二个方法实现起来比较复杂,但是比较实用。简单的说,就是按照Oracle数据库系统的解决方式,将系统目录视图分为三类。***类是user系统目录视图。即在查询系统目录视图的时,以当前用户为查询条件,在系统目录视图中反映出来的是用户自己建立的对象。其他用户建立的对象,即使这个用户具有查询或者其他更加高级的权限,在这个视图中也无法显示出来。

这对于用户维护自己创建的对象比较方便。第二类视图是ALL视图。这个视图在运行时,也是以当前用户为查询条件。不过在这个视图中主要反映两类信息。一是反映用户自己所创建的对象,二是当前用户具有查询等相关权限的对象信息。也就说,只要用户有权查询的对象都会在这个类别的系统目录视图中列出来。

第三类视图是DBA视图,即显示所有数据库对象以及相关的授权信息。这类视图只有数据库管理员才有查询权限,其他用户不具有这个视图的查询权限。分类分好后,可以先取消所有用户对DB2系统目录视图Select权限。注意在授权的时候,不是将系统目录视图的查询权限赋予给其他的用户。

而是以DB2系统目录视图为基本对象,在此基础上再根据上面的分类来建立对应的视图。然后在授权的时候,笔者是将这些新建立的视图权限赋予给相关的用户。也就说,用户并不是直接查询系统目录视图,而是通过查询数据库管理员所建立的视图来查询DB2系统目录视图中的相关内容。

这不仅可以在系统目录视图与用户之间多建立一道安全的屏障,而且还可以实现对目录视图内容更加精细的控制。为了操作上的方便,笔者建议将建立视图和赋予权限的语句保存下来。以后若需要重新部署数据库,或者数据库管理员跳槽后需要维护一个新的DB2数据库系统,那么可以直接通过这个语句来重建相关的视图。

如果DB2数据库部署比较简单,只有一个数据库管理员的话,那么只需要采用***种简便的处理方式既可。但是如果DB2数据库应用比较复杂,有多个数据库管理员各司其职,共同负责数据库应用的时候,笔者建议采用第二种处理方式。添加了过滤条件之后,即可以保障DB2系统目录视图数据的安全,还方便了用户的操作。

此时即使某个数据库管理员的帐号与密码被泄露,那么其最终受影响的也只有这个数据库管理员创建或者拥有查询等权限的对象。而不会将其他用户创建的对象或者这个用户具有查询等权限的对象信息泄露给其他人。其实这第二种方案只是***次操作的时候比较复杂。

以后还有机会再次维护数据库系统的话,只需要直接执行***次保存下来的SQL语句即可。所以不少有经验的数据库管理员,还都是比较乐于使用第二种解决方案的。因为对于他们来说,可能第二种解决方案比***种解决方案更加的简单,使用起来更加的方便。

【编辑推荐】

DB2查询管理实用程序

带您学习DB2数据仓库中心

DB2数据仓库产品简介

DB2分页的实现

DB2表空间的管理方式

新闻名称:提高数据库系统目录视图安全性的两个建议
当前路径:http://www.shufengxianlan.com/qtweb/news48/253448.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联