简化DB2 9.7的安全模型

原文地址:http://lpetr.org/blog/archives/simplify-the-db2-9-7-security-model

开始学习DB2 9.7, 在此版本中,DB2的安全模型与以往不同。安全管理员(SECADM)已从数据库管理员(DBADM)中分离了出来,并且不再默认具有查看数据权限。这样的默认安全机制在实践中是非常好的,特别是部署数据库用于金融产业。但是,对于一个新手来说,这样的设置就显得麻烦了。
在WinXP中,默认以SYSTEM用户打开控制中心时会遇到这样的错误:

SQL0551N  "SYSTEM" does NOT have the required authorization OR privilege TO perform operation "SELECT" ON object "LEONSP.ACT".    
SQLSTATE=42501

让我们通过赋予各种权限来补救这样的错误。
打开DB2命令行窗口。
用已经具有权限的用户连接数据库,比如我的是leonsp:

db2 connect TO samptest user leonsp USING password 

然后给SYSTEM赋予所有的权限:

db2 GRANT  DBADM, SECADM, CREATETAB, BINDADD, CONNECT, CREATE_NOT_FENCED_ROUTINE, IMPLICIT_SCHEMA, LOAD, CREATE_EXTERNAL_ROUTINE, QUIESCE_CONNECT ON DATABASE  TO USER system 

当你在你的Windows上安装DB2的时候有没有创建DB2ADMIN或者一些其他的ID?让我们同样赋予所有的权限:

db2 GRANT  DBADM, SECADM, CREATETAB, BINDADD, CONNECT, CREATE_NOT_FENCED_ROUTINE, IMPLICIT_SCHEMA, LOAD, CREATE_EXTERNAL_ROUTINE, QUIESCE_CONNECT ON DATABASE  TO USER db2admin

如此这般,你应该就不会再看到SELECT权限错误了。但是请注意,最好不要在生产环境中做这样的权限操作,因为这样做的话会导致安全性比默认的还低。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值