在 DB2 9.5 中实现新的安全功能,第 2 部分: 理解可信上下文
2009-11-20 00:00:00 来源:WEB开发网这里假设所有脚本和程序都位于 DB2TC 目录中。如果您更改过目录名称,那么可能需要编辑一下脚本。
设置远程数据库
要模拟一个远程数据库,可以使用还回(loopback),并将本地数据库定义为远程。有一种方法可以完成这一任务,其步骤如下:
启动 DB2 Control Center。
右键单击 All Databases,选择 Add...。
输入 127.0.0.1 作为 hostname,选择 Search 按钮。
选择 SAMPLE 数据库,输入 SAMPLER 作为 DB alias,单击 OK。
右键单击数据库 SAMPLER,选择 Connect。
当提示测试连接时,输入您选择的用户 id 和密码。
建议您编辑 Hosts 文件,以便为这些测试创建必要的条目:
可信上下文通信协议
注意,可信上下文惟一支持的协议是 TCP/IP。地址可以以 IPv4、IPv6 或 DNS 格式指定。建议使用 DNS 格式,以避免将地址硬编码至数据库中。
127.0.0.1 localhost
192.168.73.134 host1.Admin.LUWent.com
其中 host1 的 IP 地址 是计算机的物理 IP 地址。
下面探索一下可信上下文的创建、修改和删除:
使用 SECADM userid 连接到数据库。(如果使用第 1 部分中使用的用户 id,那么这个用户 id 为 DB2SEC)。然后尝试创建第一个可信上下文:
清单 6. 创建第一个可信上下文CREATE TRUSTED CONTEXT MktgTrustedContext
BASED UPON CONNECTION USING SYSTEM AUTHID Ally
ATTRIBUTES (
ADDRESS 'qwerty',
ENCRYPTION 'HIGH')
DEFAULT ROLE Mktg
ENABLE;
或者使用 MktgTCFail.sql 脚本。该脚本应该会失败,并返回 DB21034E,因为指定的地址不能通过验证。
清单 7. 第一个可信上下文失败CREATE TRUSTED CONTEXT MktgTrustedContext BASED UPON CONNECTION USING SYSTEM
AUTHID Ally ATTRIBUTES ( ADDRESS 'qwerty', ENCRYPTION 'HIGH') DEFAULT ROLE Mktg
ENABLE
DB21034E The command was processed as an SQL statement because it was not a
valid Command Line Processor command. During SQL processing it returned:
SQL0644N Invalid value specified for keyword "ADDRESS" in statement "TRUSTED
CONTEXT". SQLSTATE=42615
更多精彩
赞助商链接