gpt4 book ai didi

excel - 如何从 Excel 2016 签署带有时间戳的 XLA?

转载 作者:行者123 更新时间:2023-12-03 16:52:11 25 4
gpt4 key购买 nike

我正在努力从 Excel 2016 签署带有时间戳的 XLA。这很重要,因为没有时间戳,当使用的代码签名证书过期时,签名就会失效。不幸的是,默认情况下 Excel 不会对签名应用时间戳。

Microsoft 的文档 (https://docs.microsoft.com/en-us/deployoffice/security/use-digital-signatures-with-office) 指出:

To use the time stamp functionality with digital signatures, you must complete the following tasks:

  • Set up a time stamp server that is compliant with RFC 3161

  • Use the Group Policy setting, Specify server name, to enter the location of the time stamp server on the network.



我的证书颁发者 Comodo 声明他们的时间戳服务器 ( http://timestamp.comodoca.com ) 支持 RFC 3161 ( https://support.comodo.com/index.php?/Knowledgebase/Article/View/68/0/time-stamping-server )。

我从 https://go.microsoft.com/fwlink/p/?LinkID=626001 下载并安装了 Office 2016 管理模板文件 (ADMX/ADML)为了应用组策略设置。然后,在本地组策略编辑器中,我可以访问用户配置、管理模板、Microsoft Office 2016、安全设置、数字签名,其中找到了相关的组策略设置。

我最初设置了以下内容:
  • 将时间戳服务器名称指定为 http://timestamp.comodoca.com
  • 将时间戳服务器超时设置为 20

  • ...然后当这些不起作用时(见下文),我还设置:
  • 将数字签名生成的最低 XAdES 级别指定为 XAdES-T
  • 请求生成签名的 XAdES 级别到 XAdES-T

  • ...因为 XAdES-T“在签名的 XML-DSig 和 XAdES-EPES 部分添加时间戳,这有助于防止证书过期”——这听起来像是我需要的。

    我正在使用工具菜单中的数字签名登录 VBA 编辑器。

    但是,当我检查签名时, 我仍然看不到时间戳 .

    我正在检查签名如下(我不知道更简单的方法):
  • 在开发人员功能区中,单击宏安全性,选择加载项,然后选中要求应用程序加载项由受信任的发布者签名。单击确定,然后关闭 Excel。 (我不是受信任的发布者,所以我故意使我的加载项被禁用。)
  • 重新启动 Excel,并创建一个空工作簿。 (我的加载项配置为自动加载。)由于第 1 步而显示安全警告。

  • Excel security warning
  • 根据提示点击查看更多详情,然后选择高级选项 从启用内容菜单。

  • File  Info
  • Microsoft Office 安全选项 对话框,向下滚动到已签名的加载项,然后单击显示签名详细信息。这将打开显示签名时间的数字签名详细信息对话框:Not available ,表示缺少时间戳:

  • no signing time

    我的理解是带有时间戳的签名会在此处显示,例如

    signature with timestamp

    ...但我无法用我的 XLA 实现这一目标。

    最佳答案

    我发现除了我的问题中详述的组策略更改之外:

    User Configuration\Administrative Templates\Microsoft Office 2016\Security Settings\Digital Signatures\


    Group Policy Editor


    Timestamp server name


    ...还需要设置一些我之前发现但没有单独工作的注册表项:
    reg add "HKCU\Software\Microsoft\VBA\Security" /v "TimeStampURL" /f /d "http://timestamp.comodoca.com/authenticode"
    reg add "HKCU\Software\Microsoft\VBA\Security" /v "TimeStampRetryCount" /f /t REG_DWORD /d 2
    reg add "HKCU\Software\Microsoft\VBA\Security" /v "TimeStampRetryDelay" /f /t REG_DWORD /d 1
    另请注意,组策略更改似乎只是为了编辑注册表,因此可以对上述注册表进行更改,并且:
    reg add "HKCU\Software\Policies\Microsoft\office\16.0\common\signatures" /v tsalocation /f /d "http://timestamp.comodoca.com"
    reg add "HKCU\Software\Policies\Microsoft\office\12.0\common\signatures" /v tsalocation /f /d "http://timestamp.comodoca.com"
    reg add "HKCU\Software\Policies\Microsoft\office\14.0\common\signatures" /v tsalocation /f /d "http://timestamp.comodoca.com"
    reg add "HKCU\Software\Policies\Microsoft\office\15.0\common\signatures" /v tsalocation /f /d "http://timestamp.comodoca.com"
    (也支持一些较旧的 Excel 版本)。
    上面的设置适用于我的证书颁发者 Comodo。所有对 的引用timestamp.comodoca.com 将需要酌情更新。

    关于excel - 如何从 Excel 2016 签署带有时间戳的 XLA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50652100/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com