CICS 需要访问 z/OS UNIX 系统服务以及文件系统中的目录和文件。 需要此访问权的 CICS 设施包括 TCP/IP 支持, Java™ 支持, CICS Web 支持以及通过 OPENAPI 选项启用的任务相关用户出口,包括 CICS Db2® 连接设施的任务相关用户出口。
关于此任务
为满足 CICS 区域对 z/OS UNIX 功能的首次请求, RACF 会执行以下操作:
- 验证用户( CICS 区域用户 ID)是否定义为 z/OS UNIX 用户。
- 验证用户当前的连接组是否定义为 z/OS UNIX 组。
- 初始化后续安全检查所需的控制块。
执行列出的步骤以确保每个 CICS 区域都满足安全要求:
- 选择一个 RACF 组,所有 CICS 区域都可使用该组访问 z/OS UNIX ,并为该 RACF 组赋予一个 z/OS UNIX 组标识符 (GID)。
- 为每个 CICS 地区用户 ID 赋予一个 z/OS UNIX 用户标识符 (UID)。
- 确保每个 CICS 区域用户标识都连接到您选择的 RACF 组。
- 在 z/OS UNIX 上为每个 CICS 区域设置一个主目录。
UID 和 GID 是可以在 0 到 16 777 216 范围内的数字。 0 是超级用户标识。 请考虑一下命名约定以及 z/OS UNIX 系统中现有的 UID 和 GID。 有关如何管理 z/OS UNIX 系统的 UID 和 GID 的信息,请参阅 z/OS UNIX System Services 规划。
过程
为 CICS 地区分配 z/OS UNIX UID 和 GID,并设置主目录:
- 选择可供所有 CICS 区域使用的 RACF 组。 例如,您可以使用定义为 CICS 区域用户标识的缺省组的 RACF 组,也可以将 RACF 组设置为仅用于访问 z/OS UNIX System Services。
在设置 Java 支持或 CICS Web 支持等设施时,可能需要使用 RACF 组来授予 z/OS UNIX 上的文件访问权限,在这种情况下, RACF 组的 z/OS UNIX 组标识符 (GID) 与这些目录和文件相关联。 这个关联意味着这些目录和文件的所有者,以及虽然不是所有者但需要对这些文件执行操作的任何人,都需要让 RACF 组成为自己的组或成为自己的补充组之一。
资源的RACF 类和概要文件 说明 RACF 组如何工作。
- 为 RACF 组选择一个合适的 z/OS UNIX 组标识符 (GID),并将该 GID 分配给 RACF 组。 要分配 GID ,请在 RACF 组概要文件的 OMVS 段中指定 GID 值。
例如,如果 RACF 组是 CICSTSAB ,并且要分配的 GID 是 9 ,请使用以下命令:
ALTGROUP CICSTSAB OMVS(GID(9))
- 为每个 CICS 区域选择一个合适的 z/OS UNIX 用户标识符 (UID)。 实施 z/OS UNIX 文件的安全性说明了当 CICS 作为已启动任务、已启动作业或作业运行时,如何指定 CICS 运行所依赖的区域用户 ID。
- 将所选 UID 分配给每个 CICS 区域用户标识。 要分配 UID ,请在 RACF 用户概要文件的 OMVS 段中指定每个 CICS 区域用户标识的 UID 值。
- 还使用 HOME 选项指定每个 CICS 区域的主目录的名称。 目录名格式为
/u/CICS region
user ID。
保护 CICS 告知您如何使用
ALTUSER 命令更新 RACF 用户概要文件。
例如,如果 CICS 区域用户标识为 CICSHAA1,并且要分配的 UID 为 2001 ,请使用以下命令:
ALTUSER CICSHAA1 OMVS(UID(2001) HOME('/u/cicshaa1'))
如果要了解除 UID 和主目录之外的用户概要文件中的 OMVS 段参数中可以指定的其他信息,请参阅
z/OS Security Server RACF Command Language Reference。 可以将相同的 UID 分配给多个 CICS 区域用户标识。 如果您的所有 CICS 区域必须使用相同的 z/OS UNIX 文件(例如,Java 支持所需的文件),您可以为所有 CICS 区域分配相同的 UID,然后使用该 UID 为 z/OS UNIX 分配文件访问权限。 但是,请记住以下几点:
- 共享 UID 允许每个 CICS 区域访问具有该共享 UID 的其他 CICS 区域可以访问的所有 z/OS UNIX 资源,而这种访问级别在您的系统中可能并不合适。
- 在 z/OS UNIX 系统中,通常不适合共享 UID。
- 如果选择共享 UID ,那么 z/OS UNIX System Services 参数 MAXPROCUSER 将限制单个用户 (即具有相同 UID) 可同时处于活动状态的最大进程数。
- 将您指定的每个 z/OS UNIX 目录设置为 CICS 区域的主目录。
- 如果不使用自动挂载设施,请使用 mkdir 命令创建 z/OS UNIX 目录。
例如,发出 UNIX 命令
mkdir /u/cicshaa1
创建 z/OS UNIX 目录
/u/cicshaa1。 如果正在使用 TSO 命令,那么将目录名包含在单引号中。
- 无论是否使用自动挂载设施,都要为每个目录分配一个 z/OS UNIX 数据集。
- 如果没有使用自动安装设施,那么安装您已分配的数据集。
为 CICS 区域的主目录分配的 z/OS UNIX 数据集的大小是有限的。 如果特定 CICS 区域广泛使用主目录,那么您可能必须增加该区域的可用空间量。
- 验证为 /etc 目录定义的许可权是否设置为 755 ,以便 CICS 可以访问这些文件。 /etc 目录提供了 /SYSTEM/etc 目录的符号链接。 /SYSTEM/etc 目录是使用 700 许可权创建的,因此您需要检查 /SYSTEM/etc 目录许可权是否设置为 755。
- 从 Unix shell 检查 /SYSTEM/etc 目录中的许可权集:
- 如果许可权不是
drwxr-xr-x,请发出以下 Unix shell 命令以将许可权设置为 755:如果许可权未设置为 755 ,那么您可能会收到 RACF 错误,指示您没有足够的权限供 CICS 访问文件。
- 确保 CICS 区域的每个用户 ID 都连接到为其分配了 z/OS UNIX 组标识符 (GID) 的 RACF 组。 如果 CICS 区域用户标识连接到多个 RACF 组,那么组的 RACF 列表必须在系统中处于活动状态。
下一步操作
现在,您的 CICS 区域可以访问 z/OS UNIX System Services。 在设置 Java 支持或 CICS Web 支持等设施时,使用 UID 或 GID 赋予 CICS 区域访问 z/OS UNIX 上的目录和文件的权限。
要检查用户的 UID 和 GID 详细信息,请在 UNIX 环境中使用
id 命令。 例如,针对示例 CICS 区域用户标识 CICSHAA1 发出
id 命令会产生以下结果:
uid=2001(CICSHAA1) gid=9(CICSTSAB)
有关用于控制对 z/OS UNIX System Services的访问的 RACF 设施的更多常规信息,请参阅 z/OS Security Server RACF Security Administrator 's Guide。