Форум OlegON > Программы и оборудование для автоматизации торговли > ЕГАИС в опте и рознице

jcEmulator - эмулятор Джакарты : ЕГАИС в опте и рознице

02.05.2024 12:39


12.01.2024 10:46
JC Emulator
 
Цитата:
_R2D2_ В как УТМ понимает какой контур ему использовать? Это же в секретном конфиге где-то прописывается?
А вы установите сначала тестовый УТМ (сохраните папку куда-нибудь) а потом удалите его и установите продуктивный, сравните содержимое папок. Бинарники - 1-в-1, различие только в батнике инсталляции сервиса. Собственно, по "секретному" параметру конфигурации при инсталляции и понимает
12.01.2024 10:56
_R2D2_
 
Так он и после инсталляции понимает, какой контур надо использовать. Вот и думал, что может вы знаете, как он это понимает. Я не нашел библиотеку, в которой это прописано
12.01.2024 11:01
JC Emulator
 
Еще раз. Содержимое папок после инсталляции разных УТМ-ов - 1-в-1 (сравниваем побайтово файлы в том же тотал коммандере). Единственное отличие - содержимое файла ‪C:\UTM\transporter\bin\install.bat - файл исполняется уже после раскатки бинарников и регистрирует сервис в системе. И именно там прописывается, какой контур УТМ будет использовать в своей работе
12.01.2024 11:04
volk13
 
Цитата:
JC Emulator В предположении что надо "донастроить" экземпляр УТМ, работающим по порту 8081 через эмулятор рутокена: Файл C:\UTM\8081\rtPKCS11ECP.ini
Секция [Emulator]
Добавить строки
Необходимы уточнения...
Итак:
У меня эмулятор установлен не в системную локацию, а в "c:\ADMIN\UTMs\RutokenEmulator"
Каталог для экземпляров УТМ выбран такой: "c:\ADMIN\UTMs"
Соответственно для экземпляра УТМ, работающего по порту 8081 - файлы (в т.ч. и rtPKCS11ECP.ini) находятся тут: "c:\ADMIN\UTMs\8081".
В данном файле rtPKCS11ECP.ini - нет секции [Emulator], его содержимое вот такое:
Цитата:
[Token]
GOST=6df248044b5399db39e10ff42d449dd8aaa11cab
GOSTPin=0
PKI=65a9cb9614edbd7211d7e215f9088715de122372
Если посмотреть файл rtPKCS11ECP.ini не в экземпляре УТМ по порту 8081, а в локации установленного УТМ (в "c:\ADMIN\UTMs\RutokenEmulator"), то там - есть эта секция:
Цитата:
[Token]
GOSTPin=0
GOST=6df248044b5399db39e10ff42d449dd8aaa11cab
[Emulator]
SerialNumber=30000001
Label=Rutoken ECP <no label>
Теперь вопросы:
1. Везде, в этих ini, я смотрю прописан конкретный сертификат ГОСТ (который копируемый на физлицо), т.е. помимо всего прочего - нужно ещё руками прописать номер ГОСТ с рутокена вместо того, что прописан сейчас (который из реестра), верно?
2. Как всё-таки должен выглядеть файл ini для экземпляра УТМ, работающего по порту 8081 ("c:\ADMIN\UTMs\8081\rtPKCS11ECP.ini")? Чтобы именно этот экземпляр использовал ГОСТ из Рутокена, а другие экземпляры - использовали ГОСТ из реестра?
12.01.2024 11:10
JC Emulator
 
Цитата:
volk13 Необходимы уточнения...
Итак:
У меня эмулятор установлен не в системную локацию, а в "c:\ADMIN\UTMs\RutokenEmulator"
Каталог для экземпляров УТМ выбран такой: "c:\ADMIN\UTMs"
Соответственно для экземпляра УТМ, работающего по порту 8081 - файлы (в т.ч. и rtPKCS11ECP.ini) находятся тут: "c:\ADMIN\UTMs\8081".
В данном файле rtPKCS11ECP.ini - нет секции [Emulator], его содержимое вот такое:

Если посмотреть файл rtPKCS11ECP.ini не в экземпляре УТМ по порту 8081, а в локации установленного УТМ (в "c:\ADMIN\UTMs\RutokenEmulator"), то там - есть эта секция:

Теперь вопросы:
1. Везде, в этих ini, я смотрю прописан конкретный сертификат ГОСТ (который копируемый на физлицо), т.е. помимо всего прочего - нужно ещё руками прописать номер ГОСТ с рутокена вместо того, что прописан сейчас (который из реестра), верно?
2. Как всё-таки должен выглядеть файл ini для экземпляра УТМ, работающего по порту 8081 ("c:\ADMIN\UTMs\8081\rtPKCS11ECP.ini")? Чтобы именно этот экземпляр использовал ГОСТ из Рутокена, а другие экземпляры - использовали ГОСТ из реестра?
ГОСТ прописывается утилитой конфигурирования - либо при переключении УТМа на нужную торговую точку из списка торговых точек либо при переключении в утилите локации на требуемую с последующим выбором сертификата
В ini нужно отредактировать (при отсутствии - создать) секцию [Emulator], в ней прописать пути к родным для рутокена DLL-ям. В предположении что родная rtPKCS11ECP.dll лежит по пути C:\Windows\SysWOW64\rtPKCS11ECP.dll а необходимая для работы УТМа реплика (без реплики рутокеновской длл УТМ не зашуршит) rtPKCS11ECP-replica.dll - по пути C:\Windows\SysWOW64\rtPKCS11ECP-replica.dll, в указанной секции надо вписать строки
rtPKCS11ECP-replica.dll=C:\Windows\SysWOW64\rtPKCS11ECP-replica.dll
rtPKCS11ECP.dll=C:\Windows\SysWOW64\rtPKCS11ECP.dll
12.01.2024 12:08
volk13
 
Цитата:
JC Emulator ГОСТ прописывается утилитой конфигурирования
Для 8001 - сделал файл:
Цитата:
[Token]
GOST=6df248044b5399db39e10ff42d449dd8aaa11cab
GOSTPin=0
PKI=65a9cb9614edbd7211d7e215f9088715de122372
[Emulator]
SerialNumber=30000001
Label=Rutoken ECP <no label>
tPKCS11ECP-replica.dll=C:\Windows\System32\rtPKCS11ECP-replica.dll
rtPKCS11ECP.dll=C:\Windows\System32\rtPKCS11ECP.dll
запустил утилиту конфигурирования эмулятора, выбрал локацию 8081, выбираю ГОСТ - на вкладке "Токен" - вижу ГОСТ с Рутокена, выбираю его - и... утилита "заисает" намертво. (в шапке окна утилиты - "не отвечает").
Процесс - "убиваю", смотрю файл ini - там да, прописался ГОСТ из Рутокена, и файл стал выглядеть так:
Цитата:
[Token]
GOST=38b54c27#bb557ca5529a4e97e0ee838f5bc0526534fe7e43
GOSTPin=0
PKI=65a9cb9614edbd7211d7e215f9088715de122372
[Emulator]
SerialNumber=30000001
Label=Rutoken ECP <no label>
tPKCS11ECP-replica.dll=C:\Windows\System32\rtPKCS11ECP-replica.dll
rtPKCS11ECP.dll=C:\Windows\System32\rtPKCS11ECP.dll
После этого - утилита конфигурирования не запускается (т.е. в процессах и в трее она появляется, но окно не открывается)
Если в ini удалить этот кусок в GOST: 38b54c27#, результат тот-же.. - утилитой пользовать невозможно (окна нет, приходится прибивать процесс из диспетчера задач).
Вернул на место ini c сертификатом из реестра - стало всё нормально запускаться (утилита не запускалась именно из-за того, что в этой локации был вот этот новый ini и она не могла прожевать эту локацию при запуске).
Сменил локацию эмулятора на другую (отличную от 8081) - вновь поменял ini экземпляра 8081 (уже с сертификатом Рутокена), но в списке локаций УТМ (меню "управление УТМ") - не отображается для этой локации Владелец, ну и при попытке запуска этого экземпляра - УТМ останавливается, т.к. не найден сертификат (в логах пишет).
Короче - вернул в локацию 8081 ini с сертификатом из реестра, ну и этот экземпляр УТМ заработал естественно.

Вывод - так и не получилось подключить ГОСТ из Рутокена, поэтому спрошу - когда примерно планируете доработать и отладить этот вариант?
12.01.2024 12:10
JC Emulator
 
Цитата:
volk13 Вывод - так и не получилось подключить ГОСТ из Рутокена, поэтому спрошу - когда примерно планируете доработать и отладить этот вариант?
В текущий момент времени мне проще как-нибудь к вам по энидеску подключиться
12.01.2024 12:43
volk13
 
Цитата:
JC Emulator В текущий момент времени мне проще как-нибудь к вам по энидеску подключиться
ну давайте сейчас, смотрите почту
12.01.2024 13:52
JC Emulator
 
Цитата:
volk13 ну давайте сейчас, смотрите почту
Как-нибудь и сейчас - вещи все-таки разные, особенно, если учесть что и почта не постоянно читается (как, впрочем, и у вас - минут 10 не могу ни подключиться ни дописаться), и работа имеется. Да и ПМСМ не стоит сюда уже такого уровня переписку выводить
12.01.2024 16:07
_R2D2_
 
Цитата:
JC Emulator Еще раз. Содержимое папок после инсталляции разных УТМ-ов - 1-в-1 (сравниваем побайтово файлы в том же тотал коммандере). Единственное отличие - содержимое файла ‪C:\UTM\transporter\bin\install.bat - файл исполняется уже после раскатки бинарников и регистрирует сервис в системе. И именно там прописывается, какой контур УТМ будет использовать в своей работе
Да, вы правы. Все зависит от наличия тега Dspring.profiles.active=prod в install.bat
Если он есть, УТМ будет работать в продуктивном контуре. Если его нет, то в тестовом.
Часовой пояс GMT +3, время: 12:39.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.