2

我正在开发一个由 DB2 通过 IBM System i (AS/400) 支持的 spring(IoC/MVC/Security)/JTOpen 项目。由于我无法在此讨论的原因,应用程序的每个用户都在 IBM i (i5/OS) 操作系统上获得了一个帐户,这样他的交易就会根据他的身份记录在 Journal(DB2 日志文件)中。为了实现这一点,一旦有人使用他的凭据登录系统,我们就会建立连接,并相应地在 Journal 中根据他的姓名获取他的交易。

问题: 最近,我们一直在研究建立一个连接池而不是每个会话的连接现状。如果一旦应用程序开始使用通用 i5/OS 帐户(例如:SystemAccount)池建立这些连接,那么用户登录请求这些连接之一,有没有办法以用户的身份执行事务,尽管它是使用通用系统帐户建立?

4

2 回答 2

2

com.ibm.as400.security.auth包提供的类允许在使用AS400连接类时使用 IBM i 概要文件令牌和凭证类交换用户概要文件。

如果您使用JDBC,您可以调用与安全相关的 API以在连接上采用配置文件。

  • 获取配置文件句柄(QSYGETPH) 验证用户 ID 和密码,并为该用户配置文件创建称为配置文件句柄的加密缩写。
  • 设置配置文件句柄(QWTSETP) 将作业切换为在新配置文件下运行。
  • 生成配置文件令牌(QSYGENPT) 验证调用者有权为所请求的配置文件生成配置文件令牌,然后生成配置文件令牌。
  • 设置为配置文件令牌(QSYSETPT) 验证配置文件令牌并更改当前线程以在配置文件令牌表示的用户和组配置文件下运行。
于 2014-03-12T15:48:15.227 回答
0

您是否验证了交易实际上被不正确地记录了?我没想到他们会这样。

于 2014-03-22T01:40:36.300 回答