VBA项目上的Excel 2003数字签名

时间:2011-07-13 17:35:46

标签: excel vba certificate digital-signature

我有一个宏项目,将发送给需要高宏安全性的用户。如果我使用自签名证书,我可以签署我的代码,但它不是受信任的证书。

我向我们的安全团队请求并收到了企业证书,但是当我尝试签署代码时,收到错误消息

  

'数字证书存在问题。 VBA项目   无法签名。签名将被丢弃。'

证书请求是从IIS生成的,因为这是任何人都知道如何生成企业级证书的唯一方法。我的猜测是,由于我没有与证书相关的私钥,Excel拒绝它。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

我已经处理了同样的问题4天,我尝试用openssl和makecert.exe工具做我自己的CA,但没有任何效果,我意识到我没有用私钥安装我的证书! !!

与国际空间站团队交谈并要求他们为您提供为您的证书生成的私钥......

或者您可以尝试制作一个: http://www.digitallycreated.net/Blog/38/using-makecert-to-create-certificates-for-development (快速提示..在创建证书时包括-eku 1.3.6.1.5.5.7.3.3) 记得做最后一部分“pvk2pfx”。

最好的问候

答案 1 :(得分:0)

首先,是的,您需要证书的私钥才能签署任何内容。

然后,证书必须包含密钥用法和扩展密钥用法扩展中的某些标记。

最后一个(但可能是最重要的)是证书或其CA证书应该由验证签名的应用程序信任。

为了缩短故事时间,从一个已知的CA(例如GlobalSign)购买证书是最佳选择。