由安全性软件进行认证

RACF 会执行一些检查来认证证书并返回相关联的用户标识。注意,其他安全性产品可能会以不同方式完成此任务。请参阅安全性产品文档,以了解有关用于执行认证(查询方式)的 initACEE 功能的更多信息。
  1. RACF 检查是否在 DIGTCERT 类中定义了证书。如果已定义,那么它会在将证书添加至 RACF 数据库时返回与此证书相关联的用户标识。
    使用 RACDCERT 命令将证书定义至 RACF,如以下示例中所示:
    RACDCERT ID(userid) ADD(dsn) TRUST WITHLABEL('label')
  2. 如果未定义证书,那么 RACF 会检查 DIGTNMAP 和/或 DIGTCRIT 类中是否定义了匹配的证书名称过滤器。如果已定义,那么它会返回与最具体的匹配过滤器相关联的用户标识。
    注: 因为名称过滤器会将所有证书映射至单个用户标识,所以建议不要对 Developer for System z 使用的证书使用名称过滤器。结果是所有 Developer for System z 用户将使用同一用户标识登录。
  3. 如果没有匹配的名称过滤器,那么 RACF 会查找 HostIdMappings 证书扩展并抽取嵌入式用户标识/主机名对。如果找到了 HostIdMappings 扩展并进行了验证,那么 RACF 会返回该扩展中定义的用户标识。
    如果符合下列所有条件,那么用户标识/主机名对有效:
    • 用于签署此证书的 CA 证书在 DIGTCERT 类中标记为 HIGHTRUST。
    • 存储在扩展中的用户标识的长度有效(1 到 8 个字符)。
    • 指定给 RSE 守护程序的用户标识对 SERVAUTH 类中的 IRR.HOST.hostname 概要文件(至少)具有 READ 权限,其中 hostname 是存储在扩展中的主机名。它通常是域名,如 CDFMVS08.RALEIGH.IBM.COM。
    ASN.1 语法中 HostIdMappings 扩展的定义为:
    id-ce-hostIdMappings OBJECT IDENTIFIER::= {1 3 18 0 2 18 1}
    HostIdMappings::= SET OF HostIdMapping
    HostIdMapping::= SEQUENCE{
       hostName        IMPLICIT[1] IA5String,
       subjectId         IMPLICIT[2] IA5String,
       proofOfIdPossession IdProof OPTIONAL
     }
     IdProof::= SEQUENCE{
       secret        OCTET STRING,
       encryptionAlgorithm OBJECT IDENTIFIER
     }
    注: 如果目标用户标识是在包含 HostIdMappings 扩展的证书的有效期开始后创建的,那么不接受该 HostIdMappings 扩展。因此,如果要专门为带有 HostIdMappings 扩展的证书创建用户标识,应确保在提交证书请求之前创建用户标识。

请参阅 Security Server RACF Security Administrator's Guide(SA22-7683)以了解有关 X.509 证书、RACF 如何管理这些证书以及如何定义证书名称过滤器的更多信息。请参阅 Security Server RACF Command Language Reference(SA22-7687)以了解有关 RACDCERT 命令的更多信息。