我有一个客户正在使用自签名证书(用于签署 InfoPath 表单)。证书是使用 Windows 2008 内置的证书服务创建的。他们说证书总是在一年后过期。如何更改证书的到期日期,还是必须颁发新证书?(模板中的默认值是一年吗)?
我认为他们唯一可用的工具是 Windows 自带的工具:certmgr、certutil 和 certreq。(我遗漏了什么吗?)
此外,该证书是代码签名证书,这有区别吗?
答案1
Microsoft 知识库中有一篇关于此问题的文章:
如何更改由 Windows Server 2003 或 Windows 2000 Server 证书颁发机构颁发的证书的到期日期
您无法更改现有证书的到期日期。但您可以更改证书颁发机构的默认有效期。
本文介绍如何更改由 Windows Server 2003 或 Windows 2000 Server 证书颁发机构 (CA) 颁发的证书的有效期。
默认情况下,独立证书颁发机构 CA 颁发的证书的有效期为一年。一年后,证书将过期,不再受信任。在某些情况下,您可能需要覆盖中间 CA 或颁发 CA 颁发的证书的默认过期日期。
和:
CA不能颁发有效期比其自己的CA证书更长的证书。
答案2
一般情况下,您无法更改现有证书的有效期。您可以重新颁发一个具有新有效期的新证书(当然,可能超过一年,具体取决于您的工具),但您无法更改已颁发的证书。