本文介绍如何更改证书颁发机构(CA)颁发的证书的有效期。
原始 KB 数: 254632
总结
默认情况下,由独立证书颁发机构 CA 颁发的证书的生存期为一年。 一年后,证书过期且不受信任以供使用。 在某些情况下,必须替代中间或颁发 CA 颁发的证书的默认到期日期。
注册表中定义的有效期会影响由独立 CA 和企业 CA 颁发的所有证书。 对于企业 CA,默认注册表设置为两年。 对于独立 CA,默认注册表设置为一年。 对于由独立 CA 颁发的证书,有效期由本文后面介绍的注册表项确定。 此值适用于 CA 颁发的所有证书。
对于由企业 CA 颁发的证书,有效期在用于创建证书的模板中定义。 Windows 2000 和 Windows Server 2003 标准版不支持修改这些模板。 Windows Server 2003 企业版支持可以修改的版本 2 证书模板。 模板中定义的有效期适用于 Active Directory 林中任何企业 CA 颁发的所有证书。 CA 颁发的证书在以下时间段内至少有效:
本文前面提到的注册表有效期。
这适用于独立 CA 和企业 CA 颁发的从属 CA 证书。
模板有效期。
这适用于企业 CA。 Windows 2000 和 Windows Server 2003 标准版支持的模板无法修改。 Windows Server 企业版(版本 2 模板)支持的模板支持修改。
对于企业 CA,颁发的证书的有效期设置为以下所有证书的最小值:
CA 的注册表有效期(例如: ValidityPeriod == Years, ValidityPeriodUnits == 1)
模板有效期
CA 签名证书的剩余有效期
如果在策略模块的 EditFlags 注册表值中启用了EDITF_ATTRIBUTEENDDATE位,则通过请求属性指定的有效期(ExpirationDate:Date 或 ValidityPeriod:Years\nValidityPeriodUnits:1)
注意
在 Windows Server 2008 之前不支持 ExpirationDate:Date 语法。
对于独立 CA,不会处理任何模板。 因此,模板有效期不适用。
CA 证书的到期日期
CA 无法颁发有效期长于其自己的 CA 证书的证书。
注意
请求属性名称由请求附带的值字符串对组成,并指定有效期。 默认情况下,只有独立 CA 上的注册表设置才能启用此设置。
更改 CA 颁发的证书的到期日期
若要更改 CA 的有效期设置,请执行以下步骤。
重要
此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,按以下步骤操作时请务必谨慎。 作为额外保护措施,请在修改注册表之前先将其备份。 如果之后出现问题,您就可以还原注册表。 有关如何备份和还原注册表的详细信息,请参阅:如何备份和还原 Windows 中的注册表。
单击“开始”,然后单击“运行”。
在 “打开 ”框中,键入 regedit,然后单击“ 确定”。
找到以下注册表项并单击该注册表项:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\CertSvc\Configuration\
在右窗格中,双击 ValidityPeriod。
在 “值”数据 框中,键入以下内容之一,然后单击“ 确定” :
日
周
数月
年数
在右窗格中,双击 ValidityPeriodUnits。
在 “值”数据 框中,键入所需的数值,然后单击“ 确定”。 例如,类型 2。
停止,然后重启证书服务服务。 为此,请执行以下操作:
单击“开始”,然后单击“运行”。
在 “打开 ”框中,键入 cmd,然后单击“ 确定”。
在命令提示符处,键入以下行。 在每个行后按 Enter。
net stop certsvc
net start certsvc
键入退出以退出命令提示符。