我有一个cics应用程序,我不想开发登录屏幕,而是我想通过获取用户ID来限制访问,然后验证是否允许他们运行我的应用程序。这可能吗?谢谢
答案 0 :(得分:3)
可能有更好的方法来限制对CICS环境中某些事务的访问,而不是通过获取USER ID并与列表进行比较。大多数商店都开发了限制CICS内交易访问的标准技术。但是,如果您必须找到用户ID,请尝试以下操作:
EXEC CICS ASSIGN
USERID(WS-USERID)
END-EXEC.
其中WS-USERID
是工作存储PIC X(8)字段。
这是CICS ASSIGN文档的链接。
修改强>
如何检查多个用户ID?您需要一个授权用户列表来比较当前用户ID。如果 用户ID在列表中,用户有权使用该事务。通常,您有两个选项来管理此类列表:
WORKING-STORAGE表解决方案的灵活性最低,因为每次添加或删除新用户时都可能需要更新和重新编译程序。
但是,正如我和cschneid所指出的,访问安全性最好在应用程序之外处理 使用像RACF或ACF2这样的东西。你的本地系统 管理部门应该能够帮助您实现这一目标。
答案 1 :(得分:3)
CICS可以与外部安全管理器通信,例如RACF,CA-ACF2或CA-Top Secret。通过在外部安全管理器中使用正确的规则或配置文件,应用程序通常在事务级别受到保护。
这样,安全操作在应用程序逻辑外部执行。访问权限由安全人员授予,而不是由应用程序开发人员授予。
答案 2 :(得分:2)
要继续对NealB's有关多个用户的评论发表评论:您的安全管理员可以将相关的所有用户ID添加到组中,然后为您的交易定义该组的访问权限。
您真的应该让安全管理员处理事务访问。良好的系统设计将安全管理置于应用程序之外。
答案 3 :(得分:2)
使用CICS TS V4.2及更高版本的安全扩展功能包(集成在V5.2中),您可以使用来自分布式应用程序的SAML断言来提供更细粒度的访问控制。