我正在使用IBM安全API(QSYGENPT,QSYRMVPT等)在用户进行身份验证时在iSeries系统上创建配置文件令牌,以便以用户身份启动作业。可以在系统上创建2,000,000个此类令牌的固定限制,因此需要小心删除在不再需要时创建的任何令牌。如果不这样做将构成关键系统资源的泄漏。
但是,我无法在系统上报告令牌的当前总数,列出由特定作业和/或用户创建的令牌,或类似的任何内容,因此我无法验证我的程序没有泄漏令牌。
到目前为止,唯一的方法似乎是使用系统的审计日记帐分录,并且繁琐地匹配令牌创建/删除审计条目。啊!
任何人都可以提出更好的想法吗?
答案 0 :(得分:1)
根据this page,配置文件令牌有效的最长时间为3600秒。我无法想象一个系统需要在一小时内生成2,000,000个配置文件令牌的合法情况。我之所以提到这一点,只是为了让您放松心情 - 我不认为您需要担心您的计划泄漏资源!
我不知道列出个人资料令牌的方法,但没有理由不能维护自己的列表。
1)创建一个表(iSeries用语中的物理文件)来存储令牌ID,用户ID和创建令牌的日期时间。如果您创建具有不同生命周期的令牌,也许它将过期的日期时间。
2)致电QSYGENPT
API。
3)如果成功,请在表格中添加记录。
4)定期运行并查看表中的所有记录。如果当前日期时间晚于配置文件令牌的到期日期时间,请调用QSYRMVPT
API。
然后,您将知道分配了多少令牌,以及他们何时以及何时到期。
如果有问题的iSeries有一个正常的夜间停机时间"它可以执行备份,修补程序或任何您可以调用QsyRemoveAllPrfTkns API的内容,并确保已删除所有令牌,以便在系统重新启动时启动完整的2,000,000。