Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

citizen,
отправили вам инструкцию на почту, указанную при регистрации.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Добрый день.
Использую сценарий подписи с помощью jsign отсюда https://support.globalsign.com/code-sig … rutoken-30
При выполнении из командной строки процедура проходит успешно.

При выполнении из CI/CD (TeamCity) - ошибки.
Причем из под TeamCity даже opensc-tool не видит ни одного токена.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

dm_eg, добрый день.
Скорее всего дело в настройках службы TeamCity. А именно в пользователе, от которого запускается эта служба.
Описали как можно настроить службу для подписи https://dev.rutoken.ru/pages/viewpage.a … =169967624
Возможно, вам поможет в настройке вашей службы.

(2024-04-26 13:05:29 отредактировано dm_eg)

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Аверченко Кирилл, Да, так и есть, спасибо

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Здравствуйте, прошу выслать мне инструкцию по использованию Рутокен ЭЦП 3.0 в среде CI. Сейчас при запуске signtool постоянно требует ввести PIN

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Здравствуйте, romank,
отправили вам инструкцию на почту, указанную при регистрации.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Здравствуйте, коллеги.
Также прошу выслать инструкцию по использованию Рутокен ЭЦП 3.0 в среде CI. Аналогично столкнулись с проблемой постоянного ввода PIN.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

a.n.babinov,
отправили вам инструкцию на почту, указанную при регистрации.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Здравствуйте, прошу выслать мне инструкцию по использованию Рутокен в автоматическом режиме, чтобы постоянно не вводить PIN при подписании signtool с не экспортируемым сертификатом.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Здравствуйте, ntkachenko,
отправили вам инструкцию на почту, указанную при регистрации.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Добрый день!

Ранее здесь уже неоднократно обсуждали проблему подписи из-под службы Windows для автоматизации CI/CD. У меня аналогичная ситуация – подпись работает, только если signtool запускается в интерактивной сессии.

Имеется команда

signtool.exe sign /n xxxx /debug C:\sign\assembly.dll

Если её запускать из командной строки (руками), то всё работает. При чём, даже если вызывать команду через runas без загрузки профиля (runas /noprofile). Вывод:

The following certificates were considered: ...

After EKU filter, 1 certs were left.
After expiry filter, 1 certs were left.
After Subject Name filter, 1 certs were left.
After Private Key filter, 1 certs were left.
The following certificate was selected: xxxx

Done Adding Additional Store
Successfully signed: C:\sign\assembly.dll

Number of files successfully Signed: 1
Number of warnings: 0
Number of errors: 0

Если вызывать её через службу Windows (создать службу при помощи NSSM для signtool или же батника), то закрытый ключ не находится, и в любой комбинации инструментов вывод получается следующим:

The following certificates were considered: ...

After EKU filter, 1 certs were left.
After expiry filter, 1 certs were left.
After Subject Name filter, 1 certs were left.
After Private Key filter, 0 certs were left.
SignTool Error: No certificates were found that met all the given criteria.

В свойствах службы указан пользователь, в хранилище которого установлен сертификат.

Галочка "Разрешить взаимодействие с рабочим столом" в свойствах службы на поведение signtool не повлияла (добавлял системной УЗ сертификат в хранилище сертификатов для этого эксперимента).

К слову, в статье https://dev.rutoken.ru/pages/viewpage.a … =169967624 описано подписание из-под службы Windows, но по факту это не работает, ошибка та же.
Утилита psexec тоже не помогает.

Целевое решение – CI/CD с подписью кода на основе: Jenkins + signtool + Рутокен. В идеале на built-in node , хотя через агента тоже допустимо. Сейчас можно заставить это работать только подключившись к рабочему столу Windows-машины и запустив на ней агента через командную строку руками. Если же агент запускается службой или пытаться подписывать на built-in node (основной Jenkins в виде службы), то закрытый ключ находиться не будет.

Подскажите, пожалуйста, существует ли решение этой распространённой задачи по автоматизации подписи кода при помощи "Рутокен ЭЦП 3.0"?

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

georgiy.karpov, какую ОС вы используете?

georgiy.karpov пишет:

Если же агент запускается службой или пытаться подписывать на built-in node (основной Jenkins в виде службы), то закрытый ключ находиться не будет.

Служба запускается от того пользователя, от которого зарегистрирован сертификат?

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Используется Windows 7.

Служба запускается от пользователя, в хранилище которого установлен сертификат.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Здравствуйте, прошу выслать мне инструкцию по использованию Рутокен в автоматическом режиме, чтобы постоянно не вводить PIN при подписании signtool с не экспортируемым сертификатом.

Re: Использование signtool c Рутокен ЭЦП 3.0 с не экспортируемым сертифика

Здравствуйте smigors.
Ответил вам на почту указанную при регистрации.