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

Материал из PayControl Wiki
Перейти к: навигация, поиск
(Новая страница: «=Введение= PayControl – программный комплекс, предназначенный для подтверждения пользовател…»)
 
 
(не показано 13 промежуточных версий 2 участников)
Строка 8: Строка 8:
 
Настоящий документ предназначен работникам организаций, выполняющим прикладные задачи по обслуживанию серверов PayControl.
 
Настоящий документ предназначен работникам организаций, выполняющим прикладные задачи по обслуживанию серверов PayControl.
 
=Общее описание=
 
=Общее описание=
Сервер PayControl функционирует на базе сервера приложений Wildfly выполняющейся в среде Java 8 и состоит из следующих частей:
+
Сервер PayControl функционирует на базе сервера приложений [[Wildfly]] выполняющейся в среде Java 8 и состоит из следующих частей:
 
* PayControl Server (PCS) – основной сервер PayControl. Располагается внутри локальной сети. Взаимодействует с прикладной системой. Хранит данные в БД PCS. Отправляет данные на PCIS Internal, получает данные с PCIS External.
 
* PayControl Server (PCS) – основной сервер PayControl. Располагается внутри локальной сети. Взаимодействует с прикладной системой. Хранит данные в БД PCS. Отправляет данные на PCIS Internal, получает данные с PCIS External.
 
* PayControl Interaction Server Internal (PCIS Internal) – сервер для отправки Push уведомлений о появлении неподтверждённой транзакции у пользователя (без содержания информации о транзакции). Как правило располагается в DMZ-зоне, имеющей доступ к сети Интернет. Требуется доступ к серверам Google и Apple. Может быть размещён в т.ч. на одном сервере с PCS или PCIS Extrnal (в зависимости от требований ИБ к ИТ инфраструктуре Банка и функциональных возможностей ИТ инфраструктуры Банка).
 
* PayControl Interaction Server Internal (PCIS Internal) – сервер для отправки Push уведомлений о появлении неподтверждённой транзакции у пользователя (без содержания информации о транзакции). Как правило располагается в DMZ-зоне, имеющей доступ к сети Интернет. Требуется доступ к серверам Google и Apple. Может быть размещён в т.ч. на одном сервере с PCS или PCIS Extrnal (в зависимости от требований ИБ к ИТ инфраструктуре Банка и функциональных возможностей ИТ инфраструктуры Банка).
Строка 40: Строка 40:
 
=Журналирование=
 
=Журналирование=
 
==Доступ к данным журнала==
 
==Доступ к данным журнала==
Журнал работы сервера PayControl записывается общий журнал функционирования Wildfly. В общем случае записываются только ошибки PayControl, при их возникновении.
+
Журнал работы сервера PayControl записывается общий журнал функционирования [[Wildfly]]. В общем случае записываются только ошибки PayControl, при их возникновении.
  
 
Файлы журналов за текущий день доступны по следующему пути:
 
Файлы журналов за текущий день доступны по следующему пути:
Строка 48: Строка 48:
 
*: C:\wildfly\standalone\log\server.log
 
*: C:\wildfly\standalone\log\server.log
 
Для просмотра журнала за другие дни, нужно добавить к имени файла требуемую дату в формате server.log.YYYY-MM-DD
 
Для просмотра журнала за другие дни, нужно добавить к имени файла требуемую дату в формате server.log.YYYY-MM-DD
 
 
==Включение вывода информационных данных работы PayControl==
 
==Включение вывода информационных данных работы PayControl==
В некоторых случаях может потребоваться вывод отладочной информации PayControl. Для включения её вывода в журнал необходимо:
+
В некоторых случаях может потребоваться вывод отладочной информации PayControl. Порядок её включения описан ниже для разных компонентов сервера PayСоntrol.
# Остановить службу wildfly.
+
===Для PCS и PCIS Internal===
 +
====Вывод отладочной информации====
 +
Для включения вывода отладочной информации необходимо:
 +
# В БД PCS или БД PCIS соответственно для нужного сервера, добавить/изменить запись в таблице pc_sys_property, установив следующие значения:
 +
#* setting_name='DEBUG_INFO'
 +
#* setting_value = '1'
 +
# Перезапустить службу wildfly.
 +
=====Добавление записи=====
 +
Примеры SQL запросов добавления записи для разных СУБД:
 +
* PostgreSQL <syntaxhighlight lang="sql">insert into pc_sys_property values (nextval('pc_setting_seq'), 'DEBUG_INFO', '1');</syntaxhighlight>
 +
* Oracle <syntaxhighlight lang="sql">insert into pc_sys_property values (PC_SETTING_SEQ.NEXTVAL, 'DEBUG_INFO', '1');</syntaxhighlight>
 +
* MS SQL <syntaxhighlight lang="sql">insert into pc_sys_property values (NEXT VALUE FOR PC_SETTING_SEQ, 'DEBUG_INFO', '1');</syntaxhighlight>
 +
=====Изменение записи=====
 +
Пример SQL запроса для изменения записи (подходит для всех перечисленных в предыдущем подразделе СУБД):
 +
<syntaxhighlight lang="sql">update pc_sys_property set setting_value = '1' where setting_name='DEBUG_INFO';</syntaxhighlight>
 +
====Вывод содержимого SOAP-запросов и ответов====
 +
{{Предупреждение|Включение опции вывода содержимого SOAP-запросов не работает в [[Wildfly]] версии 13.0.0-Final.}}
 +
Для включения вывода содержимого SOAP-запросов и ответов службой wildfly необходимо:
 
# Добавить после блока <extensions> ... </extensions> в файл
 
# Добавить после блока <extensions> ... </extensions> в файл
 
#* Linux:
 
#* Linux:
Строка 62: Строка 78:
 
     </system-properties>
 
     </system-properties>
 
</syntaxhighlight>
 
</syntaxhighlight>
# Запустить службу wildfly.
+
# Перезапустить службу wildfly.
 +
 
 +
===PCIS External (с версии 3.6)===
 +
Начиная с версии PCIS External 3.6 компонент может журналировать запросы, приходящие на /jsonrequest_v2.
 +
 
 +
Для включения журналирования необходимо в опции Java-машины добавить параметр ''paycontrol.logRequests=yes'' следующим образом:
 +
* для Linux:
 +
*: в файл /opt/wildfly/bin/standalone.conf добавить <syntaxhighlight lang="bash">JAVA_OPTS="$JAVA_OPTS -Dpaycontrol.logRequests=yes"</syntaxhighlight>
 +
* для Windows:
 +
*: в файл C:\wildfly\bin\standalone.conf.bat добавить <syntaxhighlight lang="bat">set "JAVA_OPTS=%JAVA_OPTS% -Dpaycontrol.logRequests=yes"</syntaxhighlight>
 +
затем перезапустить службу wildfly.
 +
=Отправка информации о событиях=
 +
Адрес для отправки информации об устройстве и событиях взаимодействия мобильного приложения или SDK PayControl с сервером PayControl устанавливается в БД PCS, таблица pc_system, поле events_post_url.
 +
<syntaxhighlight lang="sql">
 +
update pc_system set events_post_url='http://example.com/pc_events_reciever';
 +
</syntaxhighlight>
 +
После этого нужно перезапустить WildFly PCS для применения изменений.
  
 +
{{Предупреждение|Обязательным требованием для сбора информации о событиях является установка флага сбора информации о событиях при создании ключа, а для передачи данных об устройстве — ещё и флага сбора информации об устройстве. Подробнее — в описании API сервера.}}
 
=Установка лицензии=
 
=Установка лицензии=
 
Если установка лицензионного файла не проводилась на сервер, то он работает в демонстрационном режиме, ограничивающем возможность заведения более 20 пользователей PayControl.
 
Если установка лицензионного файла не проводилась на сервер, то он работает в демонстрационном режиме, ограничивающем возможность заведения более 20 пользователей PayControl.
 
Также при включённом выводе информационных данных работы PayControl, в журнал выводятся сообщения сообщения вида:
 
Также при включённом выводе информационных данных работы PayControl, в журнал выводятся сообщения сообщения вида:
<syntaxhighlight>
+
<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
 
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)    --- 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
 
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
</syntaxhighlight>
+
</pre>
  
 
==Linux==
 
==Linux==
 
Файл лицензии необходимо скопировать в /opt/wildfly/ на сервер PCS.
 
Файл лицензии необходимо скопировать в /opt/wildfly/ на сервер PCS.
 
==Windows==
 
==Windows==
Для установки лицензии необходимо выполнить SQL-запрос к БД PCS, поместив в него содержимое файла лицензии указав идентификатор системы:  
+
===Запросом к БД===
<syntaxhighlight lang="sql">update pc_system set license='СОДЕРЖИМОЕ ФАЙЛА ЛИЦЕНЗИИ' where systemid='ИДЕНТИФИКАТОР СИСТЕМЫ';</syntaxhighlight>
+
Для установки лицензии необходимо выполнить SQL-запрос к БД PCS, поместив в него содержимое файла лицензии указав идентификатор системы
 +
* до версии 3.5 включительно:
 +
*: <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>
 +
===Добавлением файла лицензии===
 +
Файл лицензии необходимо скопировать на сервер PCS в одну из папок:
 +
 
 +
*C:\wildfly\
 +
*C:\PayControl\
 +
 
 +
= Процесс обновления в рамках одной версии =
 +
Для обновления необходимо заменить на серверах файлы модулей PC Server, PC Pusher и PC External в директории ''deployments'' сервера приложений [[Wildfly]]. Они имеют названия вида:
 +
* PayControl-services-module-3.9.452.ear - PC Server;
 +
* pc-pusher-5.5.348.war - PC Pusher;
 +
* PayControl-interaction-rest-3.9.452.war - PC External.
 +
Файлы сервера предыдущей версии настоятельно рекомендуем сохранить для возможности отката на предыдущую версию.
 +
 
 +
После замены файлов и развёртывания новых, в директории ''deployments'' будут созданы файлы с названиями:
 +
* *.undeployed, где вместо * будет указано название убранного из директории файла модуля сервера. Файлы с расширением undeployed рекомендуется удалить.
 +
* и с расширением *.deployed, где вместо * будут указаны названия новых модулей.
 +
При появлении файлов с расширением *.failed, необходимо [[Руководство_администратора_PayControl_v3#Запуск и остановка служб сервера PayControl|перезапустить Wildfly]].
  
 
=Контроль=
 
=Контроль=

Текущая версия на 16:27, 3 июня 2024

Введение

PayControl – программный комплекс, предназначенный для подтверждения пользователем операций в системах дистанционного банковского обслуживания и/или электронного документооборота.

PayControl призван, в первую очередь, повысить уровень удобства подтверждения и информационной безопасности по сравнению с такими способами подтверждения как SMS, одноразовые пароли (One-Time Password), скретч-карты, MAC-токены и пр.

При помощи PayControl могут подтверждаться волеизъявления на совершение банковских транзакций, аутентификация, создание и исполнение документов, факты получения и/или ознакомления с определённой информацией.

Назначение

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

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

Сервер PayControl функционирует на базе сервера приложений Wildfly выполняющейся в среде Java 8 и состоит из следующих частей:

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

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

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. Порядок её включения описан ниже для разных компонентов сервера PayСоntrol.

Для 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-запросов и ответов

В работе
Предупреждение! Включение опции вывода содержимого 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)

Начиная с версии PCIS External 3.6 компонент может журналировать запросы, приходящие на /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 с сервером PayControl устанавливается в БД PCS, таблица pc_system, поле events_post_url.

update pc_system set events_post_url='http://example.com/pc_events_reciever';

После этого нужно перезапустить WildFly PCS для применения изменений.

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

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

Если установка лицензионного файла не проводилась на сервер, то он работает в демонстрационном режиме, ограничивающем возможность заведения более 20 пользователей PayControl. Также при включённом выводе информационных данных работы 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

Linux

Файл лицензии необходимо скопировать в /opt/wildfly/ на сервер PCS.

Windows

Запросом к БД

Для установки лицензии необходимо выполнить SQL-запрос к БД PCS, поместив в него содержимое файла лицензии указав идентификатор системы

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

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

Файл лицензии необходимо скопировать на сервер PCS в одну из папок:

  • C:\wildfly\
  • C:\PayControl\

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

Для обновления необходимо заменить на серверах файлы модулей PC Server, PC Pusher и PC External в директории deployments сервера приложений Wildfly. Они имеют названия вида:

  • PayControl-services-module-3.9.452.ear - PC Server;
  • pc-pusher-5.5.348.war - PC Pusher;
  • PayControl-interaction-rest-3.9.452.war - PC External.

Файлы сервера предыдущей версии настоятельно рекомендуем сохранить для возможности отката на предыдущую версию.

После замены файлов и развёртывания новых, в директории deployments будут созданы файлы с названиями:

  • *.undeployed, где вместо * будет указано название убранного из директории файла модуля сервера. Файлы с расширением undeployed рекомендуется удалить.
  • и с расширением *.deployed, где вместо * будут указаны названия новых модулей.

При появлении файлов с расширением *.failed, необходимо перезапустить Wildfly.

Контроль

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

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

Плановые работы

Плановыми работами по обслуживанию является:

  • Замена сертификата для обеспечения HTTPS защиты сервера PCIS External;
  • Замена сертификатов для обеспечения HTTPS защиты на серверах PCS и PCIS Internal при их наличии.