Сейчас это немного устарело, но у меня была похожая проблема, которую стоит задокументировать, как я думал.
У меня есть сервер Jenkins CI, работающий на Win2008R2 в качестве службы, которая не может найти сертификат при выполнении задания, но вручную я могу подписать что-либо на той же машине.
signtool sign /sha1 ### file.dll
SignTool Error: No certificates were found that met all the given criteria.
Проблема заключалась в том, что служба Jenkins работала как локальный компьютер - поэтому я подумал, что с помощью приведенного выше ответа будет работать.
signtool sign /sm /sha1 ### file.dll
Та же ошибка. /a
тоже ничего не делал.
Я заработал, создав пользователя «Jenkins» в качестве члена группы «Администраторы», запустив службу в качестве пользователя «Jenkins», войдя в систему как пользователь Jenkins и установив сертификат в хранилище пользователей.
Да, я установил сертификат для локального хранилища компьютеров. Я даже подтвердил, что у магазина услуг есть сертификат, используя mmc
и добавив учетную запись службы - магазин Jenkins.