##[错误]EXEC(0,0):错误信息:“错误:SignerSign() 失败。” (-2146893779/0x8009002d)

问题描述 投票:0回答:2

在我们的构建服务器(Windows Server 2019)azure-devops 管道上使用 Signtool 时出现以下错误,它是 DotNetCoreCLI@2 任务:

    ##[error]EXEC(0,0): Error information: "Error: SignerSign() failed." (-2146893779/0x8009002d)
EXEC : error information: "Error: SignerSign() failed." (-2146893779/0x8009002d) 
##[error]EXEC(0,0): Error : An unexpected internal error has occurred.
EXEC : SignTool error : An unexpected internal error has occurred. 
Error MSB3073: The command "if Release == Release ("C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin\Signtool.exe" sign /sha1 abcd1234 /v /fd sha256 /td sha256 /tr http://timestamp.digicert.com "abcd.dll")" exited with code 1.

我尝试将signtool更新到最新版本,但仍然出现与管道完全相同的错误。在服务器上手动运行会出现相同的错误。该任务的参数是:

arguments: '-c $(buildConfiguration) -p:PX_CERT_SNK_PATH=/cert/cert.snk /p:VersionNumber=$(applicationVersion) /p:Platform=x86 /p:CodeSigningCertificateFingerprint=$(codeSigningCertificateFingerprint)'
azure-devops tfs yaml signtool
2个回答
0
投票

谢谢你。问题已解决。对于来自 Digicert 的最新证书,他们有这样的需求:签名不能在单个项目文件级别上进行,而必须在构建代码的管道中进行。因此,将签名代码位移出我们的 .csproj 文件后,它就起作用了。


0
投票

在尝试使用 DigiCert Keylocker 使用其 smctl 软件签署证书时,我也遇到了问题。

问题是我必须首先设置环境变量,最值得注意的是 SM_HOSTSM_CLIENT_CERT_FILE 变量。

他们的 documentation 说要这样做,但是他们的示例在命令行中使用 set 命令,该命令仅为该一个会话设置它,这意味着,如果命令行关闭,它将忘记您设置的变量.

© www.soinside.com 2019 - 2024. All rights reserved.