使用命令安全性来控制对 DB2CONN, DB2ENTRY和 DB2TRAN 资源定义发出 SPI 命令

使用 CICS® 命令安全性机制来保护 DB2CONN, DB2ENTRY和 DB2TRAN 资源定义。

关于此任务

CICS 命令安全性机制控制用户针对与 Db2®相关的资源类型发出特定 SPI 命令的能力。 例如,您可以使用它来控制允许哪些用户针对 DB2ENTRY 资源定义发出 CREATE 和 DISCARD 命令。 与资源安全性不同, CICS 命令安全性无法保护个别指定的资源; 它旨在保护资源类型。 可以使用命令安全性来保护 DB2CONN, DB2ENTRY和 DB2TRAN 资源定义。

对事务启用命令安全性时,外部安全性管理器将检查与该事务关联的用户标识是否有权使用该命令来修改所涉及的资源类型。 CICS 命令安全性 具有有关此过程的更多信息。

如果对特定事务同时启用了资源安全性和命令安全性,那么 RACF® 会针对用户标识执行两次安全性检查。 例如,如果事务涉及用户针对 DB2ENTRY 定义 db2ent1发出 DISCARD 命令,那么 $TAG4 RACF $TAG5 将检查:
  1. 该用户标识有权针对 DB2ENTRY 资源类型发出 DISCARD 命令 (ALTER AUTHORITY)。
  2. 该用户标识有权使用 ALTER 权限访问 DB2ENTRY 定义 db2ent1

要使用命令安全性来保护 Db2相关资源,请完成以下步骤。

过程

  1. 要对 CICS 区域启用 RACF或等效的外部安全性管理器,请指定 SEC=YES 作为该区域的系统初始化参数。
  2. Db2 资源名称 DB2CONN, DB2ENTRY和 DB2TRAN 添加为 CICS 命令, CCICSCMD 或 VCICSCMD 的其中一个 IBM®提供的 RACF 资源类中的资源标识。
    或者,您可以将用户定义的常规资源类用于 CICS 命令。 CICS 资源受命于命令安全性检查 告诉您有关这方面的更多信息。
    例如,可以使用 REDEFINE 命令在缺省类 VCICSCMD 中定义名为 CMDSAMP 的概要文件,并使用 ADDMEM 操作数指定此概要文件将保护 Db2 资源类型,如下所示:
    
     RDEFINE  VCICSCMD CMDSAMP UACC(NONE)
                      NOTIFY(sys_admin_userid)
                      ADDMEM(DB2CONN, DB2ENTRY, DB2TRAN)
  3. 要使命令安全性可用于 CICS 区域:
    1. 如果已将 IBM提供的 RACF 资源类 CCICSCMD 或 VCICSCMD 用于 CICS 命令概要文件,请指定 XCMD=YES 作为区域的系统初始化参数。
      指定 YES 表示 CCICSCMD 和 VCICSCMD 用于构建 RACF的存储器内概要文件。
    2. 如果已将用户定义的常规资源类用于 CICS 命令,请指定 XCMD=user_class 作为区域的系统初始化参数,其中 user_class 是用户定义的常规资源类的名称。
  4. 在资源定义中指定 CMDSEC=YES ,用于涉及您要对其启用命令安全性的 Db2相关资源的任何事务。 现在,当用户尝试使用其中一个事务来发出命令以修改您已保护的某个 Db2相关资源时, RACF 将检查用户标识是否有权针对该类型的资源发出该命令。
  5. 授予 CICS 用户或用户组针对每种类型的 Db2相关资源发出相应命令的许可权。 为了实现命令安全性,您需要授予与 DB2TRAN 资源类型以及 DB2ENTRY 资源类型相关的单独许可权。 您还可以保护 DB2CONN 资源类型 (即 CICS 区域的 DB2CONN 定义)。
    用户需要发出某些命令的访问权如下所示:
    INQUIRE 命令
    需要 READ 权限
    SET 命令
    需要 UPDATE 权限
    CREATE 命令
    需要 ALTER 权限
    DISCARD 命令
    需要 ALTER 权限
    例如,如果您在 CMDSAMP 概要文件中定义了 Db2 资源类型,如步骤 2 中的示例所示,那么可以使用 PERMIT 命令授权一组用户对 Db2 资源类型发出 EXEC CICS INQUIRE 命令,如下所示:
    
    PERMIT CMDSAMP CLASS(VCICSCMD) ID(operator_group) ACCESS(READ)
    在事务中,您可以使用 EXEC CICS QUERY SECURITY RESTYPE(SPCOMMAND) 命令并通过指定 DB2CONN, DB2ENTRY或 DB2TRAN的 RESID 参数来查询用户标识是否有权访问 Db2 资源类型。