PayControl3.x Внесение настроек по умолчанию
Версия от 17:57, 23 ноября 2018; P.melnichenko (обсуждение | вклад) (Новая страница: «'''Сервер PayControl''' это совокупность нескольких серверов: * '''PayControl Server (PCS)''' – основной серв…»)
Сервер PayControl это совокупность нескольких серверов:
- PayControl Server (PCS) – основной сервер PayControl. Располагается внутри локальной сети. Взаимодействует с прикладной системой (например, BSS Корректс, iSimple и т.д.). Хранит данные в БД PCS. Отправляет данные на PCIS Internal, получает данные с PCIS External.
- PayControl Interaction Server Internal (PCIS Internal) – сервер для отправки Push уведомлений о появлении неподтверждённой транзакции у пользователя (без содержания информации о транзакции). Как правило располагается в DMZ-зоне, имеющей доступ к сети Интернет. Серверу требуется доступ к серверам Google и Apple.
- PayControl Interaction Server External (PCIS External). С этим сервером взаимодействуют приложения на мобильных устройствах для получении информации о данных платежа и отправки результатов подтверждения транзакций. Располагается в DMZ-зоне с доступом извне. Должен иметь внешний фиксированный IP-адрес. При необходимости использования TLS, должно быть присвоено доменное имя и выпущен сертификат внешним УЦ.
Содержание
Варианты включения в инфраструктуру
Допустимо объединение серверов PCIS на одной машине при выполнении условий
- на входе извне будет установлен фильтр HTTP-запросов, обеспечивающий:
- доступность снаружи только адреса <IP или имя сервера>/PayControl-interaction-rest/
- доступность адреса <IP или имя сервера>/wsis/PayControlInteractionService?wsdl только изнутри.
- при использовании TLS, фильтр HTTP-запросов должен обладать функцией терминирования TLS.
Параметры настройки
PCS
Параметры системы
Настройки сервера PCS устанавливаются в БД PCS, таблица pc_sys_property, путём добавления/изменения записей. Запись состоит из setting_name и setting_value. Возможные значения setting_name:
setting_name | Тип | По умолчанию | Описание |
---|---|---|---|
REPORT_TEMPLATE | string | Путь к шаблону отчёта. | |
KILT | long | 365 | Время жизни ключевой информации пользователя (в днях). Сокращение от "KEY_INFO_LIFE_TIME". |
BILL_PERIOD | long | 365 | Период биллинга (в днях). |
DEBUG_INFO | long | 0 | Выводить отладочную информацию (0 – не выводить, 1 - выводить). |
CRYPTO_PROVIDER | string | BC | Криптопровайдер. Устаревший параметр. Значение только "BC" (сокращение от Bouncy Castle) |
T_AUTH_CODE | long | 180 | Интервал дескритизации для кода аутентификации (auth_code) (в секундах). |
T_CONFIRM_CODE | long | 180 | Интервал дескритизации для кода подтверждения (в секундах). |
KEY_QR_SIZE | long | 300 | Размер QR-кода ключа (в пикселях). |
TRANSACTION_QR_SIZE | long | 300 | Размер QR-кода транзакции (в пикселях). |
CLEAN_TRANSACTION | long | 1 | Очищать данные транзакции после подтверждения. |
DEFAULT_TRANSACTION_TTL | long | 0 | Время жизни транзакций по умолчанию в секундах. 0 – без ограничений. |
COLLECT_EVENTS | long | 0 | Включает сбор информации о событиях для сервера. |
COLLECT_DEVICE_INFORMATION | long | 0 | Включает сбор информации об устройстве для сервера. |
CHECK_HTTP_AUTH_HEADER | long | 1 | Включает проверку аутентификации HTTP запросов от МП по значению, передаваемому в HTTP заголовке. |
IOS_PUSH_PAYLOAD_TEMPLATE | string | Шаблон push-сообщений для iOS. Используются только при отправке через PCInform. | |
ANDROID_PUSH_PAYLOAD_TEMPLATE | string | Шаблон push-сообщений для Android. Используются только при отправке через PCInform. |
Примеры запросов для изменения параметров
PostgreSQL
Добавление значения с помощью SQL-запроса (После выполнения запроса требуется перезапуск службы):
insert into pc_sys_property values (nextval('pc_setting_seq'), 'COLLECT_EVENTS', 1);
Изменение значения для включения расширенного логирования с помощью SQL-запроса (После выполнения запроса требуется перезапуск службы):
update pc_sys_property set setting_value = '1' where setting_name='DEBUG_INFO';
Oracle
insert into pc_sys_property values (PC_SETTING_SEQ.NEXTVAL, 'COLLECT_EVENTS', '1');
MS SQL
insert into pc_sys_property values (NEXT VALUE FOR PC_SETTING_SEQ, 'COLLECT_EVENTS', '1');
PCIS Internal
Параметры системы
Настройки сервера PCIS устанавливаются в БД PCIS, таблица pc_sys_property, путём добавления/изменения записей. Запись состоит из setting_name и setting_value. Возможные значения setting_name:
setting_name | Тип | По умолчанию | Описание |
---|---|---|---|
DEBUG_INFO | long | 0 | Выводить отладочную информацию (0 – не выводить, 1 - выводить). |
GOOGLE_SERVER_KEY | string | Ключ для аутентификации на серверах Google FCM при отправке push-сообщений | |
IOS_KS_PATH | string | Путь к ключевому файлу в формате pkcs-12. Ключ в этом контейнере используется для аутентификации на APNS при отправке push-сообщений | |
IOS_KS_PASSWORD | string | Пароль к ключевому файлу, заданному в IOS_KS_PATH | |
IOS_PUSH_PAYLOAD_TEMPLATE | string | Шаблон push-сообщений для iOS. Используются только при отправке через PCInform. | |
ANDROID_PUSH_PAYLOAD_TEMPLATE | string | Шаблон push-сообщений для Android. Используются только при отправке через PCInform. | |
PROXY_HOST | string | Адрес прокси-сервера | |
PROXY_PORT | long | 0 | Порт прокси-сервера |
PROXY_USERNAME | string | Имя учётной записи для аутентификации на прокси-сервере | |
PROXY_PASSWORD | string | Пароль учётной записи для аутентификации на прокси-сервере |