可信连接是一种解决方案,可将正在请求的用户标识传递给 DB2® 并同时充分利用连接池。通过利用 DB2 可信上下文对象,使用可信连接将用于建立连接的标识与访问 DB2 服务器服务的标识分隔开。连接由其凭证受 DB2 服务器授权并因此能够打开连接的用户进行建立,并被 DB2 服务器信任以声明从应用程序访问 DB2 服务器时正在请求的用户的标识。
开始之前
要使用可信连接功能,必须在安装有
DB2 数据库 Linux、UNIX 和
Windows 9.5 版或更高版本或
DB2 数据库
z/OS® 9.1 版或更高版本的数据库服务器中运行。如果在 iSeries 系统上安装了应用程序服务器,那么只要在非 iSeries 系统的平台上安装了一个受支持的 DB2 版本且使用了 DB2 通用驱动程序,就可以使用可信连接。有关更多支持信息,请参阅应用程序服务器所支持的软件的列表。必须存在现有的 J2EE 连接器 (J2C) 数据别名,以便在建立连接时将用户凭证传递至 DB2 服务器,这意味着必须使用容器授权。
请阅读对 DB2 数据库启用可信上下文,以了解有关将应用程序服务器配置为使用可信连接的步骤。
关于此任务
可信连接支持客户机标识传播,并同时利用连接池来减少由于使用其他标识关闭和重新打开连接时带来的性能损失。如果为连接映射选择了
使用可信连接(一对一映射),那么将创建五个定制属性。请检查这些属性以确保这些属性的缺省值与预期设置相符。
过程
- 在管理控制台中,单击面板。
- 选择正确的企业 Bean,然后单击映射属性以查看您在配置可信连接时缺省设置的属性。
- 确认对这些属性指定的缺省值对于您的环境是否正确。
表 1. 安全属性. 此表列示安全属性值:属性 |
缺省值 |
信息 |
com.ibm.mapping.authDataAlias |
none |
对此属性指定的值是您从菜单列表中选择的值。 |
com.ibm.mapping.propagateSecAttrs |
False |
此属性的 False 值指定不传播安全性属性。可将此值更改为 true 以便将 RunAs 主体集添加为 IdentityPrincipal 对象中的不透明令牌。 |
com.ibm.mapping.targetRealmName |
null |
如果此值未指定或为 null,那么安全性运行时进程将使用当前的用户领域名。此过程假定企业信息系统 (EIS) 正在使用当前的用户领域。在此上下文中,域是用户资源库的逻辑表示。如果应用程序服务器和 DB2 服务器正使用不同的用户存储库,那么应该将此属性的值设置为 DB2 服务器的领域名。这使得主体或凭证映射可以被设置为目标 EIS。 |
com.ibm.mapping.unauthenticatedUser |
UNAUTHENTICATED |
此属性是一个用户标识,EIS 使用该标识来指示一个未经授权的用户标识。此属性在以下位置定义:com.ibm.ISecurityUtilityImpl.SecConstants.java public final static String
UnauthenticatedString = "UNAUTHENTICATED" |
com.ibm.mapping.useCallerIdentityproperty |
False |
此属性的 False 值指定在 IdentityPrincipal 对象中声明 RunAs 标识。如果要在 IdentityPrincipal 对象中声明调用者标识,而不是声明 RunAs 标识,请将此属性的值更改为 true。 |
- 单击确定以确认所有当前值。
- 在“资源引用”面板上单击确定和保存以将更改保存至主配置。
结果
完成这些步骤并重新启动应用程序服务器后,将使用可信连接和所选映射属性以与 DB2 数据库服务器进行连接。