我目前尝试使用 EV 证书自动化和集成文件签名过程msi
。我们有一台安装了 cygwin 的 Windows 机器,我们从 CI 机器连接到该机器。exe 文件在 CI 上构建,然后复制到 Windows 机器以从中创建 msi 文件,然后对 msi 文件进行签名。
问题在于签名过程的自动化。我们必须使用一个叫做“safenet authentication client
解锁证书”的软件,该软件位于 USB 上。
我用来签名的命令是C:\\Program Files (x86)\\Windows Kits\\10\\bin\\10.0.17763.0\\x86\\signtool.exe sign /tr http://timestamp.comodoca.com /td sha256 /fd sha256 /a \"c:\\Users\\hero\\installer.msi\"
当我通过 VNC 登录时,SafeNet 会弹出一个窗口,要求我输入令牌/证书的密码。但是当通过 ssh 登录到计算机时,没有弹出窗口,而是signtool
立即出现错误:Error information: "Error: SignerSign() failed." (-2147023673/0x800704c7)
我猜这是因为无法提供密码。
我们还考虑过使用类似https://getautoma.com输入密码,但如果没有显示弹出窗口,那么这也不起作用。
有人知道我怎样才能自动化这个工作流程吗?