授予 z/OS UNIX 系统服务的访问权限

CICS 需要访问 z/OS UNIX 系统服务以及文件系统中的目录和文件。 需要此访问权的 CICS 设施包括 TCP/IP 支持, Java™ 支持, CICS Web 支持以及通过 OPENAPI 选项启用的任务相关用户出口,包括 CICS Db2® 连接设施的任务相关用户出口。

开始之前

必须设置 z/OS UNIX System Services,如 z/OS UNIX System Services 规划中所述。

关于此任务

为满足 CICS 区域对 z/OS UNIX 功能的首次请求, RACF 会执行以下操作:
  • 验证用户( CICS 区域用户 ID)是否定义为 z/OS UNIX 用户。
  • 验证用户当前的连接组是否定义为 z/OS UNIX 组。
  • 初始化后续安全检查所需的控制块。
执行列出的步骤以确保每个 CICS 区域都满足安全要求:
  1. 选择一个 RACF 组,所有 CICS 区域都可使用该组访问 z/OS UNIX ,并为该 RACF 组赋予一个 z/OS UNIX 组标识符 (GID)。
  2. 为每个 CICS 地区用户 ID 赋予一个 z/OS UNIX 用户标识符 (UID)。
  3. 确保每个 CICS 区域用户标识都连接到您选择的 RACF 组。
  4. 在 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,并设置主目录:

  1. 选择可供所有 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 组如何工作。
  2. 为 RACF 组选择一个合适的 z/OS UNIX 组标识符 (GID),并将该 GID 分配给 RACF 组。 要分配 GID ,请在 RACF 组概要文件的 OMVS 段中指定 GID 值。
    例如,如果 RACF 组是 CICSTSAB ,并且要分配的 GID 是 9 ,请使用以下命令:
    ALTGROUP CICSTSAB OMVS(GID(9))
  3. 为每个 CICS 区域选择一个合适的 z/OS UNIX 用户标识符 (UID)。 实施 z/OS UNIX 文件的安全性说明了当 CICS 作为已启动任务、已启动作业或作业运行时,如何指定 CICS 运行所依赖的区域用户 ID。
    1. 将所选 UID 分配给每个 CICS 区域用户标识。 要分配 UID ,请在 RACF 用户概要文件的 OMVS 段中指定每个 CICS 区域用户标识的 UID 值。
    2. 还使用 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 分配文件访问权限。 但是,请记住以下几点:
    1. 共享 UID 允许每个 CICS 区域访问具有该共享 UID 的其他 CICS 区域可以访问的所有 z/OS UNIX 资源,而这种访问级别在您的系统中可能并不合适。
    2. 在 z/OS UNIX 系统中,通常不适合共享 UID。
    3. 如果选择共享 UID ,那么 z/OS UNIX System Services 参数 MAXPROCUSER 将限制单个用户 (即具有相同 UID) 可同时处于活动状态的最大进程数。
  4. 将您指定的每个 z/OS UNIX 目录设置为 CICS 区域的主目录。
    z/OS UNIX System Services 规划中提供了有关其中每个步骤的更多信息。
    1. 如果不使用自动挂载设施,请使用 mkdir 命令创建 z/OS UNIX 目录。
      例如,发出 UNIX 命令
      mkdir /u/cicshaa1
      创建 z/OS UNIX 目录 /u/cicshaa1。 如果正在使用 TSO 命令,那么将目录名包含在单引号中。
    2. 无论是否使用自动挂载设施,都要为每个目录分配一个 z/OS UNIX 数据集。
    3. 如果没有使用自动安装设施,那么安装您已分配的数据集。
    为 CICS 区域的主目录分配的 z/OS UNIX 数据集的大小是有限的。 如果特定 CICS 区域广泛使用主目录,那么您可能必须增加该区域的可用空间量。
  5. 验证为 /etc 目录定义的许可权是否设置为 755 ,以便 CICS 可以访问这些文件。 /etc 目录提供了 /SYSTEM/etc 目录的符号链接。 /SYSTEM/etc 目录是使用 700 许可权创建的,因此您需要检查 /SYSTEM/etc 目录许可权是否设置为 755。
    1. 从 Unix shell 检查 /SYSTEM/etc 目录中的许可权集:
      ls -ld /SYSTEM/etc
    2. 如果许可权不是 drwxr-xr-x,请发出以下 Unix shell 命令以将许可权设置为 755:
      chmod 755 /SYSTEM/etc
      如果许可权未设置为 755 ,那么您可能会收到 RACF 错误,指示您没有足够的权限供 CICS 访问文件。
  6. 确保 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