1

当用户进行身份验证以便以用户身份启动作业时,我使用 IBM 安全 API(QSYGENPT、QSYRMVPT 等)在 iSeries 系统上创建配置文件令牌。系统上可以创建 2,000,000 个此类令牌的固定限制,因此需要小心删除不再需要时创建的任何令牌。否则将构成关键系统资源的泄漏。

但是,我无法在系统上报告令牌的当前总数、列出由特定作业和/或用户创建的令牌或类似的东西,所以我无法验证我的程序没有泄漏令牌。

到目前为止,唯一的方法似乎是使用系统的审计日志条目并乏味地匹配令牌创建/删除审计条目。啊!

谁能提供更好的想法?

4

1 回答 1

1

根据此页面,配置文件令牌有效的最长时间为 3600 秒。我无法想象系统需要在一小时内生成 2,000,000 个配置文件令牌的任何合法情况。我提到这一点只是为了让您放心 - 我认为您不必担心您的程序泄漏资源!

我不知道列出个人资料令牌的任何方式,但没有理由不能维护自己的列表。

1) 创建一个表(iSeries 术语中的物理文件)来存储令牌 ID、用户 ID 和创建令牌的日期时间。如果您创建具有不同生命周期的令牌,它可能也会过期。

2)调用QSYGENPTAPI。

3)如果成功,将记录添加到您的表中。

4)有一个定期运行并查看表中所有记录的作业。QSYRMVPT如果当前日期时间晚于 Profile Token 的到期日期时间,则让它调用API。

然后您将知道分配了多少代币,分配给谁以及何时到期。

如果有问题的 iSeries 有一个正常的“夜间停机时间”,它会在其中执行备份、补丁或任何您可以调用QsyRemoveAllPrfTkns API的操作,并确保您已删除所有令牌,这样您将拥有完整的 2,000,000 个令牌。系统恢复。

于 2012-10-12T18:53:10.050 回答