摘要:
的可信上下文特性来保护数据库免受未经授权的访问,或者经授权的数据库用户的不当使用。
问题说明
Einstein 仅能通过 IP 地址 9.26.120.62 连接到数据库。
数据库角色
角色 就是一种数据库对象,组织了可以分配给用户、分组、特殊分组 PUBLIC、其他角色或可信上下文的一种或多种特权。角色简化了特权的管理,允许安全管理员在一个角色中组织授权和特权,并将角色授予需要这些授权和特性才能完成其工作的用户。此外,由于角色位于
DB2 数据库系统内,因此并非与分组具有相同的约束。
可以在一个数据库内授予的所有 DB2 特权和授权均可授予一个角色。举例来说,可为一个角色授予对某个表的
CONNECT 授权和 SELECT 特权。
可信上下文
这种信任关系基于以下一组属性:
系统授权 ID:代表建立数据库连接的用户
IP 地址(或域名):代表建立了数据库连接的主机
数据流加密:代表数据库服务器与数据库客户端之间的数据通信加密设置(如果有)
在用户建立数据库连接时,DB2 数据库系统将检查连接是否与数据库内的可信上下文对象的定义匹配。如果匹配,则将这样的数据库连接称为可信的。
可信上下文提供了一种功能,让可信上下文的用户能够继承一个数据库角色。举例来说,一名安全管理员可以选择将薪资表的
SELECT 特权授予一个角色,并确保该角色仅通过可信上下文可用。这也就是说,如果用户在可信上下文的范围之外操作,那么就无法利用这个角色(当然也无法获得薪资表的
SELECT 特权)。
解决方案描述
在 DB2 9.7 FixPak 3 之前,在数据库连接时检查 CONNECT
授权时不会考虑通过可信上下文发生的角色继承。如今,DB2 9.7 FP3 已经消除了这样的限制。这项增强的一项直接应用就是能够限制最终用户能够通过何处连接到数据库。
示例
我们有一名常规用户 Einstein,我们希望仅允许他通过 IP 9.26.120.62
(hotel46) 连接到位于 9.26.120.64 (hotel48) 的 T1 数据库。
第 1 步:在 9.26.120.64 (hotel48) 创建 T1
数据库
db2start db2 create database T1
验证数据库已创建: db2 list db directory。
图 2. 从 9.26.120.64 hotel48
连接
图 4. 从 9.26.120.64 hotel48
连接
图 6. 创建角色,连接并创建可信上下文
第 5 步:测试
严重用户 Einstein 是否能够通过 IP 9.26.120.62
(hotel46) 连接,但不能通过 IP 9.26.120.64 (hotel48) 连接。
图 8. 从 9.26.120.64 hotel48
连接
结束语
将可信上下文、角色和 CONNECT 授权的能力相结合,我们即可控制常规用户可从何处连接到数据库。请注意,这种解决方案并不适用于超级用户
SYSADM、SYSCTRL、SYSMAINT、SYSMON、DBADM 和 SECADM。这些用户具有隐式的
CONNECT 授权。
文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树数据库组成表32783 人正在系统学习中 相关资源:奇异果软件助手v2.7.zip_奇异果v9刷机教程-其它代码类资源-CSDN文库
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!