Перейти к содержанию

Руководство администратора PayControl v3: различия между версиями

Материал из PayControl Wiki
 
(не показано 12 промежуточных версий этого же участника)
Строка 1: Строка 1:
=Введение=
= Назначение документа =
PayControl программный комплекс, предназначенный для подтверждения пользователем операций в системах дистанционного банковского обслуживания и/или электронного документооборота.
Настоящее руководство предназначено для администраторов, выполняющих задачи по обслуживанию серверов PayControl: запуск и остановку служб, журналирование, установку лицензии, обновление и регламентные работы.
= О продукте =
PayControl — программный комплекс для подтверждения пользователем операций в системах дистанционного банковского обслуживания и электронного документооборота. По сравнению с SMS, одноразовыми паролями (OTP), скретч-картами и MAC-токенами PayControl обеспечивает более высокий уровень удобства и информационной безопасности.


PayControl призван, в первую очередь, повысить уровень удобства подтверждения и информационной безопасности по сравнению с такими способами подтверждения как SMS, одноразовые пароли (One-Time Password), скретч-карты, MAC-токены и пр.
= Общее описание =
Сервер PayControl работает на базе сервера приложений [[Wildfly]] в среде Java 11 и состоит из трёх компонентов:


При помощи PayControl могут подтверждаться волеизъявления на совершение банковских транзакций, аутентификация, создание и исполнение документов, факты получения и/или ознакомления с определённой информацией.
{| class="wikitable"
=Назначение=
! Компонент !! Назначение !! Расположение и требования
Настоящий документ предназначен работникам организаций, выполняющим прикладные задачи по обслуживанию серверов PayControl.
|-
=Общее описание=
| '''PayControl Server (PCS)''' || Основной сервер. Взаимодействует с прикладной системой, хранит данные в БД PCS. Отправляет данные на PCIS Internal, получает данные с PCIS External. || Локальная сеть.
Сервер PayControl функционирует на базе сервера приложений [[Wildfly]] выполняющейся в среде Java 8 и состоит из следующих частей:
|-
* PayControl Server (PCS) – основной сервер PayControl. Располагается внутри локальной сети. Взаимодействует с прикладной системой. Хранит данные в БД PCS. Отправляет данные на PCIS Internal, получает данные с PCIS External.
| '''PCIS Internal''' (PayControl Interaction Server Internal) || Отправляет Push-уведомления о появлении неподтверждённой транзакции (без сведений о самой транзакции). || Как правило, DMZ-зона, с доступом в Интернет - требуется доступ к серверам Google и Apple. Может размещаться на одном сервере с PCS или PCIS External - в зависимости от требований ИБ и возможностей ИТ-инфраструктуры банка.
* PayControl Interaction Server Internal (PCIS Internal) – сервер для отправки Push уведомлений о появлении неподтверждённой транзакции у пользователя (без содержания информации о транзакции). Как правило располагается в DMZ-зоне, имеющей доступ к сети Интернет. Требуется доступ к серверам Google и Apple. Может быть размещён в т.ч. на одном сервере с PCS или PCIS Extrnal (в зависимости от требований ИБ к ИТ инфраструктуре Банка и функциональных возможностей ИТ инфраструктуры Банка).
|-
* PayControl Interaction Server External (PCIS External). С этим сервером взаимодействуют приложения на мобильных устройствах для получения информации о данных платежа и отправки результатов подтверждения транзакций. Располагается в DMZ-зоне с доступом извне. Должен иметь внешний фиксированный IP-адрес. При необходимости использования TLS, должно быть присвоено доменное имя и выпущен сертификат внешним УЦ.
| '''PCIS External''' (PayControl Interaction Server External) || Взаимодействует с мобильными приложениями: передаёт данные платежа, принимает результаты подтверждения транзакций. || DMZ-зона с доступом извне; внешний фиксированный IP-адрес. Для TLS - доменное имя и сертификат внешнего УЦ.
=Запуск и остановка служб сервера PayControl=
|}
==Linux==
 
Запуск:
= Запуск и остановка служб =
== Linux ==
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
systemctl start wildfly.service
systemctl start wildfly.service     # запуск
systemctl stop wildfly.service      # остановка
systemctl restart wildfly.service  # перезапуск
</syntaxhighlight>
</syntaxhighlight>
Остановка:
<syntaxhighlight lang="bash">
== Windows ==
systemctl stop wildfly.service
Через консоль управления службами (''services.msc'') либо из командной строки:
</syntaxhighlight>
Перезапуск:
<syntaxhighlight lang="bash">
systemctl restart wildfly.service
</syntaxhighlight>
==Windows==
===Из графического интерфейса===
Запуск, остановка и перезапуск службы осуществляется из консоли управления службами сервером (консоль services.msc).
===С помощью командной строки===
Запуск:
<syntaxhighlight lang="bat">
<syntaxhighlight lang="bat">
net start wildfly
net start wildfly
</syntaxhighlight>
Остановка:
<syntaxhighlight lang="bat">
net stop wildfly
net stop wildfly
</syntaxhighlight>
</syntaxhighlight>
=Журналирование=
 
= Журналирование =
== Расположение журналов ==
== Расположение журналов ==
События работы сервера PayControl записываются в общий журнал [[Wildfly]]. По умолчанию фиксируются только ошибки PayControl.
События работы сервера PayControl записываются в общий журнал [[Wildfly]]. По умолчанию фиксируются только ошибки PayControl.
Строка 52: Строка 47:
Журналы за прошлые дни имеют суффикс с датой: <code>server.log.YYYY-MM-DD</code>.
Журналы за прошлые дни имеют суффикс с датой: <code>server.log.YYYY-MM-DD</code>.


==Включение вывода информационных данных работы PayControl==
== Включение вывода информационных данных работы PayControl ==
В некоторых случаях может потребоваться вывод отладочной информации PayControl. Порядок её включения описан ниже для разных компонентов сервера PayСоntrol.
В некоторых случаях может потребоваться вывод отладочной информации PayControl. Порядок её включения описан ниже для разных компонентов сервера PayControl.
===Для PCS и PCIS Internal===
=== Для PCS и PCIS Internal ===
====Вывод отладочной информации====
==== Вывод отладочной информации ====
Для включения вывода отладочной информации необходимо:
Для включения вывода отладочной информации необходимо:
# В БД PCS или БД PCIS соответственно для нужного сервера, добавить/изменить запись в таблице pc_sys_property, установив следующие значения:
# В БД PCS или БД PCIS соответственно для нужного сервера, добавить/изменить запись в таблице pc_sys_property, установив следующие значения:
Строка 63: Строка 58:




Примеры SQL запросов добавления записи для разных СУБД:
Примеры SQL-запросов добавления записи для разных СУБД:


{| class="wikitable"
{| class="wikitable"
Строка 75: Строка 70:
|}
|}


=====Изменение записи=====
===== Изменение записи =====
Пример SQL запроса для изменения записи (для всех перечисленных СУБД):
Пример SQL-запроса для изменения записи (для всех перечисленных СУБД):
<syntaxhighlight lang="sql">update pc_sys_property set setting_value = '1' where setting_name='DEBUG_INFO';</syntaxhighlight>
<syntaxhighlight lang="sql">update pc_sys_property set setting_value = '1' where setting_name='DEBUG_INFO';</syntaxhighlight>


====Вывод содержимого SOAP-запросов и ответов====
==== Вывод содержимого SOAP-запросов и ответов ====
{{Предупреждение|Опция не работает в [[Wildfly]] версии 13.0.0-Final.}}
{{Предупреждение|Опция не работает в [[Wildfly]] версии 13.0.0-Final.}}
Для включения вывода содержимого SOAP-запросов и ответов службой wildfly необходимо:
Для включения вывода содержимого SOAP-запросов и ответов службой wildfly необходимо:
# Добавить после блока <extensions> ... </extensions> в файл
# Добавить после блока <code><nowiki><extensions> ... </extensions></nowiki></code> в файл
#* Linux: <code>/opt/wildfly/standalone/configuration/standalone.xml</code>  
#* Linux: <code>/opt/wildfly/standalone/configuration/standalone.xml</code>  
#* Windows: <code>C:\wildfly\standalone\configuration\standalone.xml</code>
#* Windows: <code>C:\wildfly\standalone\configuration\standalone.xml</code>
Строка 92: Строка 87:
# Перезапустить службу wildfly.
# Перезапустить службу wildfly.


===PCIS External (с версии 3.6)===
=== PCIS External (с версии 3.6) ===
Начиная с версии 3.6 PCIS External может журналировать запросы к <code>/jsonrequest_v2</code>.  
Начиная с версии 3.6 PCIS External может журналировать запросы к <code>/jsonrequest_v2</code>.  


Строка 102: Строка 97:
Затем перезапустите службу wildfly.
Затем перезапустите службу wildfly.


=Отправка информации о событиях=
= Отправка информации о событиях =
Адрес для отправки информации об устройстве и событиях взаимодействия мобильного приложения или SDK PayControl с сервером PayControl устанавливается в БД PCS, таблица pc_system, поле events_post_url.
Адрес для отправки информации об устройстве и о событиях взаимодействия мобильного приложения (SDK) с сервером PayControl задаётся в БД PCS: таблица <code>pc_system</code>, поле <code>events_post_url</code>.
<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
update pc_system set events_post_url='http://example.com/pc_events_reciever';
update pc_system set events_post_url = 'http://example.com/pc_events_reciever' where systemid = 'ИДЕНТИФИКАТОР СИСТЕМЫ';
</syntaxhighlight>
</syntaxhighlight>
После этого нужно перезапустить WildFly PCS для применения изменений.
После изменения перезапустите WildFly PCS.
{{Предупреждение|Для сбора информации о событиях при создании ключа должен быть установлен флаг сбора информации о событиях, а для передачи данных об устройстве — дополнительно флаг сбора информации об устройстве. Подробнее — в описании API сервера.}}
 
= Установка лицензии =
Без лицензионного файла сервер работает в демонстрационном режиме: можно завести не более 20 активных пользователей PayControl.  


{{Предупреждение|Обязательным требованием для сбора информации о событиях является установка флага сбора информации о событиях при создании ключа, а для передачи данных об устройстве — ещё и флага сбора информации об устройстве. Подробнее — в описании API сервера.}}
При включённой отладочной информации в журнал выводятся сообщения вида:
=Установка лицензии=
Если установка лицензионного файла не проводилась на сервер, то он работает в демонстрационном режиме, ограничивающем возможность заведения более 20 пользователей PayControl.
Также при включённом выводе информационных данных работы PayControl, в журнал выводятся сообщения сообщения вида:
<pre>
<pre>
2018-12-07 11:51:07,295 INFO  [ru.safetech.ws.PayControl.services.utils.licenseManager.LicenseManager] (default task-2)    --- no license found in database
2018-12-07 11:51:07,295 INFO  [ru.safetech.ws.PayControl.services.utils.licenseManager.LicenseManager] (default task-2)    --- no license found in database
Строка 119: Строка 117:
</pre>
</pre>


==Запросом к БД==
== Запросом к БД ==
Для установки лицензии необходимо выполнить SQL-запрос к БД PCS, поместив в него содержимое файла лицензии указав идентификатор системы
Поместите содержимое файла лицензии в SQL-запрос к БД PCS, указав идентификатор системы:
* до версии 3.5 включительно:
* до версии 3.5 включительно:<syntaxhighlight lang="sql">update pc_system set license = 'СОДЕРЖИМОЕ ФАЙЛА ЛИЦЕНЗИИ' where systemid = 'ИДЕНТИФИКАТОР СИСТЕМЫ';</syntaxhighlight>
*: <syntaxhighlight lang="sql">update pc_system set license='СОДЕРЖИМОЕ ФАЙЛА ЛИЦЕНЗИИ' where systemid='ИДЕНТИФИКАТОР СИСТЕМЫ';</syntaxhighlight>
* с версии 3.6:<syntaxhighlight lang="sql">update pc_system_params set license = 'СОДЕРЖИМОЕ ФАЙЛА ЛИЦЕНЗИИ' where systemid = 'ИДЕНТИФИКАТОР СИСТЕМЫ';</syntaxhighlight>
* с версии 3.6:
*: <syntaxhighlight lang="sql">update pc_system_params set license='СОДЕРЖИМОЕ ФАЙЛА ЛИЦЕНЗИИ' where systemid='ИДЕНТИФИКАТОР СИСТЕМЫ';</syntaxhighlight>


==Добавлением файла лицензии==
== Добавлением файла лицензии ==
Скопируйте файл лицензии на сервер PCS:
Скопируйте файл лицензии на сервер PCS:
* Linux — в <code>/opt/wildfly/</code>;
* Linux — в <code>/opt/wildfly/</code>;

Текущая версия от 18:58, 7 июля 2026

Назначение документа

Настоящее руководство предназначено для администраторов, выполняющих задачи по обслуживанию серверов PayControl: запуск и остановку служб, журналирование, установку лицензии, обновление и регламентные работы.

О продукте

PayControl — программный комплекс для подтверждения пользователем операций в системах дистанционного банковского обслуживания и электронного документооборота. По сравнению с SMS, одноразовыми паролями (OTP), скретч-картами и MAC-токенами PayControl обеспечивает более высокий уровень удобства и информационной безопасности.

Общее описание

Сервер PayControl работает на базе сервера приложений Wildfly в среде Java 11 и состоит из трёх компонентов:

Компонент Назначение Расположение и требования
PayControl Server (PCS) Основной сервер. Взаимодействует с прикладной системой, хранит данные в БД PCS. Отправляет данные на PCIS Internal, получает данные с PCIS External. Локальная сеть.
PCIS Internal (PayControl Interaction Server Internal) Отправляет Push-уведомления о появлении неподтверждённой транзакции (без сведений о самой транзакции). Как правило, DMZ-зона, с доступом в Интернет - требуется доступ к серверам Google и Apple. Может размещаться на одном сервере с PCS или PCIS External - в зависимости от требований ИБ и возможностей ИТ-инфраструктуры банка.
PCIS External (PayControl Interaction Server External) Взаимодействует с мобильными приложениями: передаёт данные платежа, принимает результаты подтверждения транзакций. DMZ-зона с доступом извне; внешний фиксированный IP-адрес. Для TLS - доменное имя и сертификат внешнего УЦ.

Запуск и остановка служб

Linux

systemctl start wildfly.service     # запуск
systemctl stop wildfly.service      # остановка
systemctl restart wildfly.service   # перезапуск

Windows

Через консоль управления службами (services.msc) либо из командной строки:

net start wildfly
net stop wildfly

Журналирование

Расположение журналов

События работы сервера PayControl записываются в общий журнал Wildfly. По умолчанию фиксируются только ошибки PayControl.

ОС Путь к журналу за текущий день
Linux /opt/wildfly/standalone/log/server.log
Windows C:\wildfly\standalone\log\server.log

Журналы за прошлые дни имеют суффикс с датой: server.log.YYYY-MM-DD.

Включение вывода информационных данных работы PayControl

В некоторых случаях может потребоваться вывод отладочной информации PayControl. Порядок её включения описан ниже для разных компонентов сервера PayControl.

Для PCS и PCIS Internal

Вывод отладочной информации

Для включения вывода отладочной информации необходимо:

  1. В БД PCS или БД PCIS соответственно для нужного сервера, добавить/изменить запись в таблице pc_sys_property, установив следующие значения:
    • setting_name='DEBUG_INFO'
    • setting_value = '1'
  2. Перезапустить службу wildfly.


Примеры SQL-запросов добавления записи для разных СУБД:

СУБД Запрос
PostgreSQL insert into pc_sys_property values (nextval('pc_setting_seq'), 'DEBUG_INFO', '1');
Oracle insert into pc_sys_property values (PC_SETTING_SEQ.NEXTVAL, 'DEBUG_INFO', '1');
MS SQL insert into pc_sys_property values (NEXT VALUE FOR PC_SETTING_SEQ, 'DEBUG_INFO', '1');
Изменение записи

Пример SQL-запроса для изменения записи (для всех перечисленных СУБД):

update pc_sys_property set setting_value = '1' where setting_name='DEBUG_INFO';

Вывод содержимого SOAP-запросов и ответов

В работе
В работе
Предупреждение! Опция не работает в Wildfly версии 13.0.0-Final.

Для включения вывода содержимого SOAP-запросов и ответов службой wildfly необходимо:

  1. Добавить после блока <extensions> ... </extensions> в файл
    • Linux: /opt/wildfly/standalone/configuration/standalone.xml
    • Windows: C:\wildfly\standalone\configuration\standalone.xml
    следующий блок:
        <system-properties>
            <property name="org.apache.cxf.logging.enabled" value="pretty"/>
        </system-properties>
    
  2. Перезапустить службу wildfly.

PCIS External (с версии 3.6)

Начиная с версии 3.6 PCIS External может журналировать запросы к /jsonrequest_v2.

Для включения добавьте в опции Java-машины параметр paycontrol.logRequests=yes:

  • Linux — в файл /opt/wildfly/bin/standalone.conf:
    JAVA_OPTS="$JAVA_OPTS -Dpaycontrol.logRequests=yes"
    
  • Windows — в файл C:\wildfly\bin\standalone.conf.bat:
    set "JAVA_OPTS=%JAVA_OPTS% -Dpaycontrol.logRequests=yes"
    

Затем перезапустите службу wildfly.

Отправка информации о событиях

Адрес для отправки информации об устройстве и о событиях взаимодействия мобильного приложения (SDK) с сервером PayControl задаётся в БД PCS: таблица pc_system, поле events_post_url.

update pc_system set events_post_url = 'http://example.com/pc_events_reciever' where systemid = 'ИДЕНТИФИКАТОР СИСТЕМЫ';

После изменения перезапустите WildFly PCS.

В работе
В работе
Предупреждение! Для сбора информации о событиях при создании ключа должен быть установлен флаг сбора информации о событиях, а для передачи данных об устройстве — дополнительно флаг сбора информации об устройстве. Подробнее — в описании API сервера.


Установка лицензии

Без лицензионного файла сервер работает в демонстрационном режиме: можно завести не более 20 активных пользователей PayControl.

При включённой отладочной информации в журнал выводятся сообщения вида:

2018-12-07 11:51:07,295 INFO  [ru.safetech.ws.PayControl.services.utils.licenseManager.LicenseManager] (default task-2)    --- no license found in database
2018-12-07 11:51:07,295 INFO  [ru.safetech.ws.PayControl.services.impl.PayControlServiceV3Impl] (default task-2)    --- Error load License, cheking if free users count exceeded
2018-12-07 11:51:07,295 INFO  [ru.safetech.ws.PayControl.services.impl.PayControlServiceV3Impl] (default task-2)    --- ATTENTION! LICENSE NOT FOUND! You are using unlicensed demo-only version of the service

Запросом к БД

Поместите содержимое файла лицензии в SQL-запрос к БД PCS, указав идентификатор системы:

  • до версии 3.5 включительно:
    update pc_system set license = 'СОДЕРЖИМОЕ ФАЙЛА ЛИЦЕНЗИИ' where systemid = 'ИДЕНТИФИКАТОР СИСТЕМЫ';
    
  • с версии 3.6:
    update pc_system_params set license = 'СОДЕРЖИМОЕ ФАЙЛА ЛИЦЕНЗИИ' where systemid = 'ИДЕНТИФИКАТОР СИСТЕМЫ';
    

Добавлением файла лицензии

Скопируйте файл лицензии на сервер PCS:

  • Linux — в /opt/wildfly/;
  • Windows — в C:\wildfly\ или C:\PayControl\.

Процесс обновления в рамках одной версии

Обновление выполняется заменой файлов модулей в директории deployments сервера приложений Wildfly:

Модуль Пример имени файла
PC Server PayControl-services-module-3.9.452.ear
PC Pusher pc-pusher-5.5.348.war
PC External PayControl-interaction-rest-3.9.452.war

Порядок действий:

  1. Сохраните файлы модулей текущей версии — они понадобятся для отката.
  2. Замените файлы модулей в директории deployments на новые.
  3. Дождитесь развёртывания. В директории появятся файлы-маркеры:
    • *.undeployed — для убранных модулей; такие файлы рекомендуется удалить;
    • *.deployed — для успешно развёрнутых новых модулей.
  4. Если появились файлы *.failedперезапустите Wildfly.

Регламентное обслуживание

Администратору PayControl необходимо в плановом режиме:

  • контролировать достаточность свободного места на серверах PayControl;
  • контролировать достаточность дискового пространства, выделенного базам данных (БД PCS и БД PCIS);
  • своевременно заменять сертификат HTTPS сервера PCIS External;
  • своевременно заменять сертификаты HTTPS серверов PCS и PCIS Internal (при их наличии).