Red Hat Training

A Red Hat training course is available for RHEL 8

62.7. 证书配置文件配置参数

证书配置文件配置参数存储在 CA 配置文件目录 /var/lib/pki/pki-tomcat/ca/profiles/ca 中的 profile_name.cfg 文件中。配置文件的所有参数 - 默认值、输入、输出和约束 - 都在单个策略集中配置。为证书配置集设置的策略具有名称 policyset.policyName.policyNumber例如,对于策略设置 serverCertSet

policyset.list=serverCertSet
policyset.serverCertSet.list=1,2,3,4,5,6,7,8
policyset.serverCertSet.1.constraint.class_id=subjectNameConstraintImpl
policyset.serverCertSet.1.constraint.name=Subject Name Constraint
policyset.serverCertSet.1.constraint.params.pattern=CN=[^,]+,.+
policyset.serverCertSet.1.constraint.params.accept=true
policyset.serverCertSet.1.default.class_id=subjectNameDefaultImpl
policyset.serverCertSet.1.default.name=Subject Name Default
policyset.serverCertSet.1.default.params.name=CN=$request.req_subject_name.cn$, OU=pki-ipa, O=IPA
policyset.serverCertSet.2.constraint.class_id=validityConstraintImpl
policyset.serverCertSet.2.constraint.name=Validity Constraint
policyset.serverCertSet.2.constraint.params.range=740
policyset.serverCertSet.2.constraint.params.notBeforeCheck=false
policyset.serverCertSet.2.constraint.params.notAfterCheck=false
policyset.serverCertSet.2.default.class_id=validityDefaultImpl
policyset.serverCertSet.2.default.name=Validity Default
policyset.serverCertSet.2.default.params.range=731
policyset.serverCertSet.2.default.params.startTime=0

每个策略集都包含按照策略 ID 号为证书配置文件配置的策略列表,以它们的评估顺序排列。服务器为其收到的每个请求评估每个策略集。收到单个证书请求时,将评估一个集合,并忽略配置文件中的任何其他集合。发布双密钥对后,对第一个证书请求评估第一个策略集,对第二个证书请求评估第二个策略集。在发布双密钥对时,在发布单个证书或多个集合时,您不需要多个策略集。

表 62.1. 证书配置文件参数

参数描述

desc

证书配置文件的自由文本描述,显示在终端实体页面上。例如,desc=This certificate profile 用于使用代理身份验证注册服务器证书

enable

启用配置文件,使它可通过终端实体页面访问。例如:enable=true

auth.instance_id

设置身份验证管理者插件,用来验证证书请求。要进行自动注册,如果身份验证成功,CA 会立即发布证书。如果身份验证失败或者没有指定身份验证插件,则会将请求排队,来由代理手动批准。例如,auth.instance_id=AgentCertAuth

authz.acl

指定授权约束。这主要用于设置组评估访问控制列表(ACL)。例如,caCMCUserCert 参数要求 CMC 请求的签名者属于证书管理者代理组:

authz.acl=group="Certificate Manager Agents

在基于目录的用户证书续订中,此选项用于确保原始请求者和当前验证的用户是同一个。在评估授权前,实体必须验证(绑定或登录到系统)。

name

证书配置文件的名称。例如,name=Agent-Authenticated Server Certificate Enrollment。此名称显示在最终用户注册或续订页面上。

input.list

按名称列出证书配置文件允许的输入。例如,input.list=i1,i2

input.input_id.class_id

按输入 ID(在 input.list 中列出的输入名称)表示输入的 java 类名称。例如, input.i1.class_id=certReqInputImpl

output.list

按名称列出证书配置文件可能的输出格式。例如 output.list=o1

output.output_id.class_id

为在 output.list 中命名的输出格式指定 java 类名称。例如: output.o1.class_id=certOutputImpl

policyset.list

列出配置的证书配置文件规则。对于双证书,一组规则适用于签名密钥,另一组规则适用于加密密钥。单个证书仅使用一组证书配置文件规则。例如,policyset.list=serverCertSet

policyset.policyset_id.list

按照策略 ID 号,按评估的顺序,列出为证书配置文件配置的策略集合中的策略。例如: policyset.serverCertSet.list=1,2,3,4,5,6,7,8

policyset.policyset_id.policy_number.constraint.class_id

表示配置文件规则中配置的默认约束插件集的 java 类名称。例如, policyset.serverCertSet.1.constraint.class_id=subjectNameConstraintImpl。

policyset.policyset_id.policy_number.constraint.name

提供用户定义的约束名称。例如,policyset.serverCertSet.1.constraint.name=Subject Name Constraint。

policyset.policyset_id.policy_number.constraint.params.attribute

为约束的允许的属性指定值。可能的属性因约束类型而异。例如, policyset.serverCertSet.1.constraint.params.pattern=CN=.*.

policyset.policyset_id.policy_number.default.class_id

给出配置文件规则中默认集的 java 类名称。例如, policyset.serverCertSet.1.default.class_id=userSubjectNameDefaultImpl

policyset.policyset_id.policy_number.default.name

给出用户定义的默认值的名称。例如: policyset.serverCertSet.1.default.name=Subject Name Default

policyset.policyset_id.policy_number.default.params.attribute

为默认值的允许的属性指定值。可能的属性因默认类型而异。例如: policyset.serverCertSet.1.default.params.name=CN=(Name)$request.requestor_name$。