B.2. 约束参考
约束用于定义证书的允许内容以及与该内容关联的值。本节列出了带有每个完整定义的预定义约束。
B.2.1. 基本约束扩展约束 复制链接链接已复制到粘贴板!
Basic Constraints 扩展约束检查证书请求中的基本约束是否满足此约束中设置的条件。
参数 | 描述 |
---|---|
basicConstraintsCritical |
指定扩展是否可以标记为 critical 还是非关键。选择 |
basicConstraintsIsCA |
指定证书主题是否为 CA。对于此参数,选择 |
basicConstraintsMinPathLen | 指定允许的最少路径长度,其最大 CA 证书可以串联到以下的 CA 证书数(从属到)被签发的 CA 证书。路径长度会影响证书验证过程中使用的 CA 证书数量。链从验证和移动的最终证书开始。 如果在最终用户证书中设置扩展,则此参数无效。
允许的值是
N 必须是大于零的整数。这是使用下级 CA 证书下允许的下级 CA 证书的最小数量。 |
basicConstraintsMaxPathLen | 指定最大允许的路径长度、可发布的 CA 证书的最大数量(从属到)被签发的 CA 证书。路径长度会影响证书验证过程中使用的 CA 证书数量。链从验证和移动的最终证书开始。 如果在最终用户证书中设置扩展,则此参数无效。
允许的值是
N 必须是大于零的整数。这是使用下级 CA 证书下允许的最大从属 CA 证书数。 如果字段为空,则路径长度默认为由签发者证书中基本约束扩展上设置的路径长度的值。如果签发者的路径长度为无限,则从属 CA 证书中的路径长度也没有限制。如果签发者的路径长度大于零,则从属 CA 证书中的路径长度被设置为小于签发者路径长度的值;例如,如果签发者的路径长度为 4,则下级 CA 证书中的路径长度被设置为 3。 |
B.2.2. CA Validity 约束 复制链接链接已复制到粘贴板!
CA Validity 约束检查证书模板中的有效期周期是否在 CA 的有效周期内。如果证书的有效期超过 CA 证书的有效性周期,则约束将被拒绝。
B.2.3. 扩展的密钥用法扩展约束 复制链接链接已复制到粘贴板!
扩展的密钥用法扩展约束检查证书上的扩展密钥用法扩展是否满足此约束中设置的条件。
参数 | 描述 |
---|---|
exKeyUsageCritical |
当设置为 |
exKeyUsageOIDs | 指定用于标识键使用目的的允许的 OID。可以在以逗号分隔的列表中添加多个 OID。 |
B.2.4. 扩展约束 复制链接链接已复制到粘贴板!
此约束实现了常规扩展约束。它检查是否存在扩展。
参数 | 描述 |
---|---|
extCritical |
指定扩展是否可以标记为 critical 还是非关键。选择 |
extOID | 必须存在于证书中的扩展 OID 才能传递约束。 |
B.2.5. 键约束 复制链接链接已复制到粘贴板!
此约束检查 RSA 密钥的密钥大小,以及 EC 密钥的 elliptic curve 的名称。与 RSA 密钥一起使用时,
参数包含以逗号分隔的法律密钥大小列表,而 EC 键参数包含以逗号分隔的可用 ECC curves 列表。
KeyParameters
参数 | 描述 |
---|---|
keyType |
提供一个密钥类型;这默认设为 |
KeyParameters |
定义特定的密钥参数。为键设置的参数有所不同,具体取决于
|
B.2.6. 关键用法扩展约束 复制链接链接已复制到粘贴板!
Key Usage 扩展约束检查证书请求中的密钥使用量约束是否满足此约束中设置的条件。
参数 | 描述 |
---|---|
keyUsageCritical |
选择 |
keyUsageDigitalSignature |
指定是否签署 SSL 客户端证书和 S/MIME 签名证书。选择 |
kleyUsageNonRepudiation |
指定是否设置 S/MIME 签名证书。选择 警告 使用这个位是相似的。在为任何证书设置前,请仔细考虑其使用的法律后果。 |
keyEncipherment |
指定是否为 SSL 服务器证书和 S/MIME 加密密钥设置扩展。选择 |
keyUsageDataEncipherment |
指定在主题的公钥用于加密用户数据而不是关键材料时设置扩展。选择 |
keyUsageKeyAgreement |
指定在主题的公钥用于密钥协议时是否设置扩展。选择 |
keyUsageCertsign |
指定扩展是否适用于所有 CA 签名证书。选择 |
keyUsageCRLSign |
指定是否为用于签署 CRL 的 CA 签名证书设置扩展。选择 |
keyUsageEncipherOnly |
指定是否在将公钥用于加密数据时设置扩展。如果设置了此位,则还应设置 |
keyUsageDecipherOnly |
指定是否在将公钥用于解码数据时设置扩展。如果设置了此位,则还应设置 |
B.2.7. Netscape 证书类型扩展约束 复制链接链接已复制到粘贴板!
这个约束已过时。使用 Key Usage 扩展或扩展的密钥用法扩展,而不是使用 Netscape 证书类型扩展。
Netscape Certificate Type 扩展约束检查证书请求中的 Netscape Certificate Type 扩展是否满足此约束中设置的条件。
B.2.8. 没有约束 复制链接链接已复制到粘贴板!
此约束没有实施约束。当与默认值一起选择时,在此默认值上没有限制。
B.2.9. 续订 Grace Period 约束 复制链接链接已复制到粘贴板!
当用户可以根据其过期日期续订证书时,Renewal Grace Period Constraint 会设置规则。例如,用户无法在证书过期前或其过期时间过期前更新证书。
使用此约束时要记住的一个事项是,此约束是在 原始注册配置集 上设置的,而不是续订配置集。续订宽限期的规则是原始证书的一部分,并针对后续续订执行并应用。
此约束仅适用于 No Default 扩展。
参数 | 描述 |
---|---|
renewal.graceAfter | 在证书过期 后 设置可以提交续订的周期(以天为单位)。如果证书已过期了这一时间,则续订请求将被拒绝。如果没有给出值,则没有限制。 |
renewal.graceBefore | 设置在可以提交以进行续订的证书过期前的天数(以天为单位)。如果证书不是接近其过期日期,则拒绝续订请求。如果没有给出值,则没有限制。 |
B.2.10. 签名算法约束 复制链接链接已复制到粘贴板!
Signing Algorithm 约束检查证书请求中的签名算法是否满足此约束中设置的条件。
参数 | 描述 |
---|---|
signingAlgsAllowed | 设置可以指定签署证书的签名算法。该算法可以是以下任何或全部:
|
B.2.11. 主题名称约束 复制链接链接已复制到粘贴板!
Subject Name 约束检查证书请求中的主题名称是否满足条件。
参数 | 描述 |
---|---|
pattern | 指定用于构建主题 DN 的正则表达式或其他字符串。 |
主题名称和正则表达式
Subject Name Constraint 的正则表达式与 Java 工具匹配,以匹配正则表达式。这些正则表达式的格式列在 https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html 中。这允许通配符(如星号(*))搜索任意字符和句点(..
)搜索任意类型字符。
例如,如果主题名称约束的模式被设置为 uid=.
*,则证书配置文件框架会检查证书请求中的主题名称是否与模式匹配。uid=user, o=Example, c=US
等主题名称满足模式 uid=.
以前。主题名称 cn=user, o=example,c=US
不符合模式。uid=.
* 表示主题名称必须以 uid
属性开头; period-asterisk (198.51.100.0/24)通配符允许任何类型和字符数跟随 uid
。
可能需要内部模式,如 .ou=Engineering。
它需要 ou=Engineering
属性,其前后带有任何类型的字符串。这与 cn=jdoe,ou=internal,ou=west coast,ou=engineering,o="Example Corp",st=NC
以及 uid=bjensen,ou=engineering,dc=example,dc=com
匹配。
最后,也可以通过在选项之间设置 pipe 符号(|
)来允许是一个字符串或另一个字符串的请求。例如,要允许包含 ou=engineering,ou=people
或 ou=engineering,o="Example Corp"
的主题名称,模式为 .ou=engineering,ou=people. | .ou=engineering,o="Example Corp
"。
对于构建使用特殊字符(如句点(.
))的模式,请使用反斜杠(\)转义字符。例如,要搜索字符串 o="Example Inc."
,请将模式设置为 o="Example Inc\. "。
证书请求中的主题名称和 UID 或 CN
用于构建主题 DN 的模式也可以基于请求证书的人员的 CN 或 UID。Subject Name Constraint 设置 CN (或 UID)的 patter 来识别证书请求的 DN,然后该 CN 上的 Subject Name Default 构建使用预定义的目录树创建证书的主题 DN。
例如,使用证书请求的 CN:
B.2.12. 唯一的键约束 复制链接链接已复制到粘贴板!
此约束检查公钥是否是唯一的。
参数 | 描述 |
---|---|
allowSameKeyRenewal |
请求被视为续订,如果此参数设为
当 参数设置为 |
B.2.13. 唯一的 Subject Name 约束 复制链接链接已复制到粘贴板!
unique Subject Name 约束限制服务器使用相同的主题名称发布多个证书。提交证书请求时,服务器会自动针对其他发布的证书别名检查 nickname。此约束可以通过终端实体页面应用到证书注册和续订。
证书不能具有相同的主题名称,除非一个证书已过期或撤销(而不在冻结时)。因此,活跃证书无法共享主题名称,但例外:如果证书具有不同的密钥使用位,则它们可以共享相同的主题名称,因为它们具有不同的用途。
参数 | 描述 |
---|---|
enableKeyUsageExtensionChecking |
可选设置,允许证书具有与密钥使用设置相同的主题名称。这是 |
B.2.14. 有效期约束 复制链接链接已复制到粘贴板!
Validity 约束检查证书请求中的有效期是否满足标准。
提供的参数必须是可配置的值。例如,一个提供已传递的时间的 notBefore
参数不会被接受,以及一个 notAfter
参数,它提供的时间比 notBefore
时间不会被接受。
参数 | 描述 |
---|---|
range |
有效周期的范围。这是一个整数,用于设置天数。notBefore 时间和 |
notBeforeCheck |
验证范围不在宽限期内。当 |
notBeforeGracePeriod |
|
notAfterCheck |
验证给定时间是否在过期期后没有。当 |