Включение формирования имитовставки — различия между версиями

Материал из PayControl Wiki
Перейти к: навигация, поиск
(Добавление модуля в WildFly)
 
(не показано 14 промежуточных версий 2 участников)
Строка 1: Строка 1:
=Установка JCP=
+
Значение имитовставки будет возвращаться в коллбэке и информации о подтверждённой транзакции в HEX-кодировке в поле <code>gost_imit</code>.
* Нужно установить модуль WF - https://repo.paycontrol.org/cdn/artefacts/builder/wildfly_modules/modules/ru.cryptopro.jcp/
 
  
Имя модуля - ''ru.cryptopro.jcp''
+
Для включения необходимо:
  
Можно установить либо копированием всех загруженных по ссылке файлов в соответствующий путь(''wildfly/modules/ru/cryptopro/jcp/main''), либо через ''jboss-cli''.
+
* обновить модули сервера PC,
 +
* модифицировать окружение сервера PC,
 +
* включить формирование имитовставки в PC.
  
 +
= Обновление модулей сервера PC =
  
* В файл
+
Поддержка формирования имитовставки добавлена с версий ''3.9.х'' и ''5.5.х''. Необходимо обновить модули сервера до версий не ниже указанных. Перед обновлением серверных компонентов необходимо убедиться, что конечные пользователи используют мобильные приложения, в которых версия SDK в первых двух разрядах не ниже версии сервера (например, при обновлении сервера на 5.5, версии SDK мобильных приложений должны быть не ниже 5.5).
  
''wildfly/standalone/configuration/standalone.xml''
+
= Модификация окружения сервера PC =
  
в тег
+
== Docker ==
  
''subsystem xmlns="urn:jboss:domain:ee:[version]''
+
Необходимо загрузить и использовать свежий [https://repo.paycontrol.org/server/doc/latest/pc-install-guide/ru/#образы образ] (не старше чем от 08 декабря 2022 г.).
  
нужно добавить глобальную область видимости этого модуля путём тегов
+
== ОС ==
  
<syntaxhighlight lang="xml">
+
=== Установка модуля КриптоПро JCP ===
 +
 
 +
==== Добавление модуля в WildFly ====
 +
 
 +
Можно установить двумя способами:
 +
* путём копирования загруженных файлов модуля и добавления описания модуля в файл конфигурации WildFly
 +
* с помощью ''jboss-cli'' - [https://www.mastertheboss.com/jbossas/jboss-script/installing-a-jboss-as-7-module-using-the-cli/ ссылка на инструкцию] по установке модулей.
 +
 
 +
Имя модуля - '''ru.cryptopro.jcp'''
 +
 
 +
Файлы модуля доступны по ссылке https://repo.paycontrol.org/cdn/artefacts/wildfly/wf-module-ru.cryptoro.jcp.zip
 +
 
 +
{{Уведомление|При неправильной установке модуля и конфигурации области его видимости подтверждение транзакций будет завершаться с ошибкой.}}
 +
 
 +
===== Путём ручного копирования =====
 +
 
 +
* Скопировать файлы из загруженного архива в ''wildfly/modules/ru/cryptopro/jcp/main''
 +
* В файл <syntaxhighlight lang="text">wildfly/standalone/configuration/standalone.xml</syntaxhighlight>в тег<syntaxhighlight lang="text">subsystem xmlns="urn:jboss:domain:ee:[version]</syntaxhighlight> нужно добавить глобальную область видимости этого модуля путём добавления<syntaxhighlight lang="xml">
 
<global-modules>
 
<global-modules>
 
   <module name="ru.cryptopro.jcp" slot="main"/>
 
   <module name="ru.cryptopro.jcp" slot="main"/>
 
</global-modules>
 
</global-modules>
</syntaxhighlight>
+
</syntaxhighlight>Пример секции:<syntaxhighlight lang="xml">
 
 
Пример секции:
 
<syntaxhighlight lang="xml">
 
 
<subsystem xmlns="urn:jboss:domain:ee:6.0">
 
<subsystem xmlns="urn:jboss:domain:ee:6.0">
 
<global-modules>
 
<global-modules>
Строка 33: Строка 49:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
* В таблицу ''pc_sys_property'' внести настройку
+
=== Создание временной директории для Linux ===
<syntaxhighlight lang="xml">
+
 
 +
Необходимо создать "временную" директорию ''/var/opt/cprocsp/tmp'' с правом сервиса Wildfly на запись в неё.
 +
 
 +
= Включение формирования имитовставки в PC =
 +
 
 +
В таблицу ''pc_sys_property'' внести настройку<syntaxhighlight lang="xml">
 
-[ RECORD 1 ]-+-------------------
 
-[ RECORD 1 ]-+-------------------
 
setting_id    | ...
 
setting_id    | ...
Строка 40: Строка 61:
 
setting_value | CryptoPro JCP 2.0
 
setting_value | CryptoPro JCP 2.0
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
** Postgresql:<syntaxhighlight lang="sql">
Postgresql:
 
<syntaxhighlight lang="sql">
 
 
insert into pc_sys_property (setting_id, setting_name, setting_value) values (nextval('pc_setting_seq'), 'GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');
 
insert into pc_sys_property (setting_id, setting_name, setting_value) values (nextval('pc_setting_seq'), 'GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
** Oracle:<syntaxhighlight lang="sql">
Oracle:
+
insert into pc_sys_property values (PC_SETTING_SEQ.NEXTVAL, 'GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');
<syntaxhighlight lang="sql">
 
insert into pc_sys_property values (PC_SETTING_SEQ.NEXTVAL, ‘GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
** MSSQL:<syntaxhighlight lang="sql">
MSSQL:
+
insert into pc_sys_property values (NEXT VALUE FOR PC_SETTING_SEQ, 'GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');
<syntaxhighlight lang="sql">
 
insert into pc_sys_property values (NEXT VALUE FOR PC_SETTING_SEQ, ' GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
=Создание директории=
 
Cоздать директорию ''/var/opt/cprocsp/tmp'' и дать Wildfly права на запись в неё.
 
=Примечания=
 
# Если не выполнить ''пункт 3'', то имитовставка вычисляться не будет
 
# При неправильной установке модуля и конфигурации области его видимости подтверждение транзакций будет падать с ошибкой
 
# Значение имитовставки есть в коллбэке рядом с подписью, а также в таблице ''pc_confirm_attempt'' (для PC 5.1 и выше - выводится через endpoint РКС - hex-строка)
 

Текущая версия на 12:28, 2 мая 2023

Значение имитовставки будет возвращаться в коллбэке и информации о подтверждённой транзакции в HEX-кодировке в поле gost_imit.

Для включения необходимо:

  • обновить модули сервера PC,
  • модифицировать окружение сервера PC,
  • включить формирование имитовставки в PC.

Обновление модулей сервера PC

Поддержка формирования имитовставки добавлена с версий 3.9.х и 5.5.х. Необходимо обновить модули сервера до версий не ниже указанных. Перед обновлением серверных компонентов необходимо убедиться, что конечные пользователи используют мобильные приложения, в которых версия SDK в первых двух разрядах не ниже версии сервера (например, при обновлении сервера на 5.5, версии SDK мобильных приложений должны быть не ниже 5.5).

Модификация окружения сервера PC

Docker

Необходимо загрузить и использовать свежий образ (не старше чем от 08 декабря 2022 г.).

ОС

Установка модуля КриптоПро JCP

Добавление модуля в WildFly

Можно установить двумя способами:

  • путём копирования загруженных файлов модуля и добавления описания модуля в файл конфигурации WildFly
  • с помощью jboss-cli - ссылка на инструкцию по установке модулей.

Имя модуля - ru.cryptopro.jcp

Файлы модуля доступны по ссылке https://repo.paycontrol.org/cdn/artefacts/wildfly/wf-module-ru.cryptoro.jcp.zip

В работе
Уведомление. При неправильной установке модуля и конфигурации области его видимости подтверждение транзакций будет завершаться с ошибкой.


Путём ручного копирования
  • Скопировать файлы из загруженного архива в wildfly/modules/ru/cryptopro/jcp/main
  • В файл
    wildfly/standalone/configuration/standalone.xml
    
    в тег
    subsystem xmlns="urn:jboss:domain:ee:[version]
    
    нужно добавить глобальную область видимости этого модуля путём добавления
    <global-modules>
       <module name="ru.cryptopro.jcp" slot="main"/>
    </global-modules>
    
    Пример секции:
    <subsystem xmlns="urn:jboss:domain:ee:6.0">
    	<global-modules>
    		<module name="ru.cryptopro.jcp" slot="main"/>
    	</global-modules>
    	...
    </subsystem>
    

Создание временной директории для Linux

Необходимо создать "временную" директорию /var/opt/cprocsp/tmp с правом сервиса Wildfly на запись в неё.

Включение формирования имитовставки в PC

В таблицу pc_sys_property внести настройку

-[ RECORD 1 ]-+-------------------
setting_id    | ...
setting_name  | GOST_IMIT_PROVIDER
setting_value | CryptoPro JCP 2.0
    • Postgresql:
      insert into pc_sys_property (setting_id, setting_name, setting_value) values (nextval('pc_setting_seq'), 'GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');
      
    • Oracle:
      insert into pc_sys_property values (PC_SETTING_SEQ.NEXTVAL, 'GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');
      
    • MSSQL:
      insert into pc_sys_property values (NEXT VALUE FOR PC_SETTING_SEQ, 'GOST_IMIT_PROVIDER', 'CryptoPro JCP 2.0');