WEB-приложение Сведение отчетности (одним файлом) (12.10.2024) |
1. Общие сведения |
Сервис обеспечивает доступ удаленных пользователей к базе данных Системы Парус 8. С использованием предлагаемого решения удаленные пользователи получают возможность работать с базой данных Системы Парус 8, применяя все функциональные возможности модуля "Сведение отчетности - Центр учета" Системы. Как показано на схеме, сервис "WEB-приложение "Сведение отчетности - Центр учета" реализует интерфейс между базой данных Парус 8 и удаленными пользователями, являясь фактически шлюзом между корпоративной сетью и внешним миром. Сервис дает возможность реализовать сбор и сведение отчетности с удаленных абонентских пунктов, используя все преимущества Web-технологий, а именно:
|
1.1. Технические требования к аппаратно-программному обеспечению | ||||||||||||||||||||||||||||
В данном разделе будет описана рекомендуемая конфигурация аппаратно- программного обеспечения, необходимого для развертывания и последующего функционирования системы. Описанная ниже конфигурация является минимальной для обеспечения функционирования сервиса. Если все сервера расположены в одной стойке, то возможно использование одного ИБП повышенной мощности. Необходимо обратить внимание, что в серверах должны быть установлены сетевые адаптеры надежного производителя. Внимание: сервера некоторых производителей поставляются с сетевыми картами, имеющими программные ограничения и требующие активации для функционирования в полнодуплексном режиме. Рекомендуется обеспечить доступ к Интернет через провайдера, имеющего прямой выход на общефедеральные каналы связи. Ваш доступ к Интернету должен иметь минимальные ограничения со стороны провайдера. Крайне нежелательно подключение системы с использованием прокси-сервера. Канал выделяемый провайдером должен быть "выделенным" (т.е. не разделен с другими клиентами). Провайдер должен обеспечивать доступ к Интернет с полосой пропускания не менее 1 Мбит/с. Ниже приведены минимальные требования к каналу связи по количеству пользователей.
В таблице ниже отражена зависимость скорости доступа к Интернет центрального сервера и задержки системы при удаленной работе пользователей.
Желательно заключить с провайдером дополнительное соглашение о доступе в режиме 24х7. Все технические перерывы должны быть прописаны и известны заранее. Необходимо также учитывать, что Интернет-трафик в период сбора отчетности может достигать нескольких десятков Гигабайт (80% трафика - исходящий). Рекомендуется позаботится о выборе/смене тарифного плана. Для выбора оптимальной схемы работы аппаратного обеспечения сервиса в зависимости от предполагаемого количества пользователей перейдите по соответствующей ссылке: |
1.1.1. 1-150 пользователей | |||||||||
Рекомендуется использовать схему с одним WEB-сервером: Минимальные требования к аппаратному обеспечению: Процессор: Intel Core 2 Duo (2 ГГц) Память: 1 ГБ Минимальные требования к каналу связи: 1 Мб/сек Программное обеспечение:
|
1.1.2. 150-500 пользователей | |||||||||
Рекомендуется использовать схему с одним WEB-сервером: Минимальные требования к аппаратному обеспечению: Процессор: Intel Core i5 или i7 или Intel Xeon (2 ГГц) Память: 2 ГБ Минимальные требования к каналу связи: 10 Мб/сек Программное обеспечение:
|
1.1.3. 500-1000 пользователей |
В данном случае рекомендуется использовать кластерную схему работы. Однако можно использовать и отдельный WEB-сервер. |
1.1.3.1. Отдельный WEB-сервер | |||||||||
Минимальные требования к аппаратному обеспечению: Процессор: 2 x Intel Xeon E5606 или E5620 (2 ГГц) Память: 4 ГБ Минимальные требования к каналу связи: 100 Мб/сек Программное обеспечение:
|
1.1.3.2. Кластерная схема | |||||||||||||||
Схема применяется для снижения вычислительной нагрузки на отдельный WEB-сервер и может объединять в себе несколько WEB-серверов (узлов кластера). Кластер обычно используется только для перенаправления запросов пользователей на узлы с определенной в настройках вероятностью. Основная вычислительная нагрузка ложится на узлы кластера. Минимальные требования к аппаратному обеспечению для кластера и узлов кластера: Процессор: Intel Core i5 или i7, Intel Xeon (2 ГГц) Память: 2 ГБ Минимальные требования к каналу связи: 100 Мб/сек Программное обеспечение для кластера:
Программное обеспечение для узлов кластера:
|
1.1.4. более 1000 пользователей |
В данном случае рекомендуется использовать кластерную схему работы. Однако можно использовать и отдельный WEB-сервер. |
1.1.4.1. Отдельный WEB-сервер | |||||||||
Минимальные требования к аппаратному обеспечению: Процессор: 2 или 4 x Intel Xeon E5-2600 или E5-4600 (2 ГГц) Память: >= 8 ГБ Минимальные требования к каналу связи: 1 Гб/сек Программное обеспечение:
|
1.1.4.2. Кластерная схема | |||||||||||||||||||||||||
Схема применяется для снижения вычислительной нагрузки на отдельный WEB-сервер и может объединять в себе несколько WEB-серверов (узлов кластера). Кластер обычно используется только для перенаправления запросов пользователей на узлы с определенной в настройках вероятностью. Основная вычислительная нагрузка ложится на узлы кластера. Минимальные требования к аппаратному обеспечению для кластера: Процессор: Intel Core i5 или i7, Intel Xeon (2 ГГц) Память: 2 ГБ Минимальные требования к аппаратному обеспечению для узлов кластера: Требования к каждому узлу кластера определяются исходя из предполагаемого количества пользователей перенаправленных на данный узел кластером. Для определения минимальных требований к процессору и ОЗУ можно ориентироваться на таблицу:
Минимальные требования к каналу связи: 1 Гб/сек Программное обеспечение для кластера:
Программное обеспечение для узлов кластера:
|
2. Установка |
2.1. Windows | ||
Порядок установки:
|
2.1.1. Состав поставки |
После установки Сервиса "Сведение отчетности OnLine" в папке, заданной на этапе установки, будут созданы следующие папки и файлы:
Кроме того, в меню Start (Пуск) будет создана группа ярлыков: Здесь:
|
2.2. Linux | ||||
Поддерживаемые дистрибутивы Linux:
На текущий момент доступна только 64-разрядная версия сервиса. Порядок установки:
|
2.2.1. Состав поставки |
После распаковки архива в каталоге будут созданы следующие папки и файлы:
|
3. Конфигурирование | ||
Windows редакция Основное окно конфигуратора: Элементы управления:
Linux редакция При запуске конфигуратора будет показана его версия и дата сборки, информация о текущем состоянии сервиса, а также основное меню действий:
|
3.1. Создание конфигурации |
Для начала работы с сервисом необходимо задать настройки его конфигурации. В главном окне нажать значок "Тип конфигурации": При наличии существующей конфигурации будет задан вопрос об ее использовании или начале новой конфигурации: При выборе "Yes" ("Да") - вводимые настройки будут применяться к существующей конфигурации. При выборе "No" ("Нет") - будет создана новая конфигурация сервера. "Cancel" ("Отмена") - будет осуществлен возврат к предыдущему шагу настроек. В следующем окне необходимо определить, какую роль будет исполнять сервер, на котором производится настройка конфигурации: |
3.1.1. Контроллер кластера |
Контроллер кластера - при большом количестве ожидаемых запросов от удаленных пользователей рекомендуется организовать кластерную структуру. Для этого, один из серверов выделятся под контроллер кластера (сервер, распределяющий соединения по другим серверам). При этом, выделенный сервер может не обладать высокой производительностью, так как будет использоваться исключительно для перенаправления запросов удаленных пользователей на другие рабочие сервера. В окне прописываются доменные имена серверов (узлов кластера), на которые кластер должен перенаправлять запросы удаленных пользователей, а также вероятность перенаправления. На скриншоте-примере указаны три сервера с определенными доменными именами. При этом на сервер svody3.svody.ru будет перенаправляться 50% запросов, а на другие два по 25%. Это может быть связано с большей производительностью третьего сервера. Установка флага "Автоматическая балансировка" позволяет распределять нагрузку на узлы кластер в автоматическом режиме. Балансировка возможна по времени отклика, по количеству сессий или по количеству соединений. Для выполнения автоматической балансировки серверу необходимо обладать информацией о текущей нагрузке на каждом из узлов кластера, для этого контроллер будет с указанной периодичностью опрашивать узлы. Для получения информации о текущей нагрузке, контроллеру необходимо авторизоваться на этих узлах используя указанные данные пользователя ОС Windows или Linux, который должен входить в группу "Администраторы". В случае с Windows это одноименная группа "Администраторы", в случае с Linux это группа wheel (для Red Hat и производных) или sudo (для Ubuntu и производных). После того как будут заданы все узлы кластера, необходимо нажать ссылку "Завершить". Будет предложено сохранить изменения. Настройка контроллера кластера на этом завершена и необходимо перейти к настройке узлов кластера. |
3.1.2. Самостоятельный сервер/Узел кластера |
Самостоятельный сервер / Узел кластера - данный вариант используется в случае если не планируется большое количество одновременных подключений удаленных пользователей или настраивается конкретный узел кластера. После выбора данного пункта будет запущена пошаговая процедура настройки конфигурации. |
3.1.3. Сервер с настройками по умолчанию |
Для упрощения и ускорения процедуры настройки конфигурации предусмотрен вариант установок сервера по умолчанию. При выборе этого пункта все настройки устанавливаются в соответствии с наиболее часто употребляемыми. Необходимо указать только путь к базе данных, пользователя и пароль (Параметры подключения к базе данных). После того, как все настройки внесены, нажмите ссылку "Далее". Будет предложено сохранить созданную конфигурацию. Настройки по умолчанию: - Протокол обмена данными - HTTP - Номер порта TCP - 80 - Время ожидания после старта системы - 0 сек - Время бездействия сессии - 3600 сек - Повторно использовать сессии - включено - Сжимать трафик - включено - Рабочий каталог (стартовая страница) - путь на жестком диске, указанный при установке Сервиса - Количество лицензий - максимальное, равномерно распределенное с доступом ко всем организациям, без удаленного доступа для приложения Win32 - Без возможности обмена сообщениями как в web-приложениях, так и в приложениях Windows - Без протоколирования |
3.2. Параметры сетевых настроек | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Для установки сетевых настроек нажмите Откроется окно выбора протокола обмена данными: Доступны два варианта:
Настройки для HTTP: - Порт TCP: указывает номер порта TCP/IP, который будет прослушиваться сервисом для приема входящих запросов на всех имеющихся на момент старта сервиса в системе сетевых интерфейсах. Поскольку сервис реализует протокол HTTP, то рекомендуется использовать порт 80. В случае, если Web-сервер использует третьестороннее серверное программное обеспечение (Microsoft IIS, Apache, и т. п.), которое обслуживает 80 порт (и "занимает" его), то необходимо использовать порт, отличный от 80 (и при этом свободный). Обращаться к сервису в таком случае необходимо, указывая порт в строке адреса после двоеточия. При помощи команды Windows netstat можно узнать текущее состояние портов TCP. - Количество потоков прослушивателя: определяет количество потоков обслуживаемых входящие соединения (по умолчанию используется 16 потоков). При неустойчивом канале связи, значение этого параметра настраивается согласно рекомендациям. - Время ожидания после старта службы: определяет количество секунд, в течение которых сервис будет ожидать завершения инициализирующих действий других компонент системы, после чего приступит к собственной инициализации. В случае, если web-сервер и сервер БД установлены на одной машине, то необходимо дождаться перехода БД в состояние "open", прежде, чем открывать сессии Oracle и приступать к обработке запросов удаленных пользователей. Время, необходимое для этого, нужно выразить в секундах и задать в значении этого параметра.
- Время бездействия сессии: определяет количество секунд, в течение которых сессия веб сервера (серверный объект, владеющий информацией о состоянии удаленного подключения) сохраняется в памяти сервера в случае отсутствия активности удаленного пользователя. После истечения этого времени сессия будет уничтожена вместе со всей несохраненной клиентом информацией (в том числе и аутентификационной). Категорически не рекомендуется устанавливать это значение меньше, чем 300 секунд (5 минут). Значение по умолчанию - 3600 секунд (1 час). Все ненулевые значения, меньшие 60, трактуются как 60 секунд. - Время бездействия сессии Парус 8: устанавливает ограничение по времени бездействия в секундах, во время создания веб сессии Парус 8 в БД. Значение по умолчанию, соответствует времени бездействия сессии веб сервера. При использовании значения 0 - ограничение на время бездействия не накладывается. Но во время завершения сессии веб сервера по истечению времени бездействия, сессия Парус 8 автоматически также будет завершена. То же самое касается случая, когда значение времени бездействия сессии Парус 8, будет превышать время бездействия сессии сервера приложений. Все ненулевые значения, меньшие 60, трактуются как 60 секунд. Используемые значения конкретных сессий можно увидеть в интерфейсе Парус 8 - Администратор -> Учет -> Управление сеансами.
- Повторно использовать сессии: позволяет не переоткрывать соединения после каждого обмена "запрос-ответ" между клиентом и сервером. Повторно используются соединения только в том случае, если такие соединения поддерживаются клиентом и сервером согласованно. Время ожидания нового запроса на зарезервированном соединении составляет 75 секунд. Рекомендуется выключать этот параметр при обслуживании более 300 одновременных соединений, поскольку слишком большой ресурс сервера начинает тратиться на проверку состояния зарезервированных соединений, что отрицательно сказывается на производительности системы в целом. - Сжимать трафик: позволяет серверу использовать архивацию передаваемых данных. Архивация применяется только в том случае, если браузер удаленного клиента способен корректно обрабатывать сжатые данные. Для сжатия трафика используется библиотека zlib. Минимальная тестированная на совместимость версия - 1.0.4, она включается в стандартную поставку сервиса. - Отключать алгоритм Nagle для соединений: Выключает алгоритм Nagle для TCP соединений, путем включения опции TCP_NO_DELAY у сокетов. Данная опция будет работать только при включенной опции "Повторно использовать сессии". - Способ идентификации сессии: позволяет указать каким способом будет отслеживаться сервером открытая сессия. Возможны варианты отслеживания по идентификатору сессии, по IP-адресу удаленного пользователя, а также одновременное отслеживание по идентификатору и IP-адресу. Настройки для HTTPS: - Порт TCP: указывает номер порта TCP/IP, который будет прослушиваться сервисом для приема входящих запросов на всех имеющихся на момент старта сервиса в системе сетевых интерфейсах. Поскольку сервис реализует протокол HTTPS, то рекомендуется использовать порт 443. В случае, если Web-сервер использует третьестороннее серверное программное обеспечение (Microsoft IIS, Apache, и т. п.), которое обслуживает 443 порт (и "занимает" его), то необходимо использовать порт, отличный от 443 (и при этом свободный). Обращаться к сервису в таком случае необходимо, указывая порт в строке адреса после двоеточия. При помощи команды Windows netstat можно узнать текущее состояние портов TCP. - Количество потоков прослушивателя: определяет количество потоков обслуживаемых входящие соединения (по умолчанию используется 16 потоков). При неустойчивом канале связи, значение этого параметра настраивается согласно рекомендациям. - Время ожидания после старта службы: определяет количество секунд, в течение которых сервис будет ожидать завершения инициализирующих действий других компонент системы, после чего приступит к собственной инициализации. В случае, если web-сервер и сервер БД установлены на одной машине, то необходимо дождаться перехода БД в состояние "open", прежде, чем открывать сессии Oracle и приступать к обработке запросов удаленных пользователей. Время, необходимое для этого, нужно выразить в секундах и задать в значении этого параметра.
- Время бездействия сессии: определяет количество секунд, в течение которых сессия веб сервера (серверный объект, владеющий информацией о состоянии удаленного подключения) сохраняется в памяти сервера в случае отсутствия активности удаленного пользователя. После истечения этого времени сессия будет уничтожена вместе со всей несохраненной клиентом информацией (в том числе и аутентификационной). Категорически не рекомендуется устанавливать это значение меньше, чем 300 секунд (5 минут). Значение по умолчанию - 3600 секунд (1 час). Все ненулевые значения, меньшие 60, трактуются как 60 секунд. - Время бездействия сессии Парус 8: устанавливает ограничение по времени бездействия в секундах, во время создания веб сессии Парус 8 в БД. Значение по умолчанию, соответствует времени бездействия сессии веб сервера. При использовании значения 0 - ограничение на время бездействия не накладывается. Но во время завершения сессии веб сервера по истечению времени бездействия, сессия Парус 8 автоматически также будет завершена. То же самое касается случая, когда значение времени бездействия сессии Парус 8, будет превышать время бездействия сессии сервера приложений. Все ненулевые значения, меньшие 60, трактуются как 60 секунд. Используемые значения конкретных сессий можно увидеть в интерфейсе Парус 8 - Администратор -> Учет -> Управление сеансами.
- Повторно использовать сессии: позволяет не переоткрывать соединения после каждого обмена "запрос-ответ" между клиентом и сервером. Повторно используются соединения только в том случае, если такие соединения поддерживаются клиентом и сервером согласованно. Время ожидания нового запроса на зарезервированном соединении составляет 75 секунд. Рекомендуется выключать этот параметр при обслуживании более 100 одновременных соединений, поскольку слишком большой ресурс сервера начинает тратиться на проверку состояния зарезервированных соединений, что отрицательно сказывается на производительности системы в целом. - Сжимать трафик: позволяет серверу использовать архивацию передаваемых данных. Архивация применяется только в том случае, если браузер удаленного клиента способен корректно обрабатывать сжатые данные. Для сжатия трафика используется библиотека zlib (http://www.zlib.net/). Минимальная тестированная на совместимость версия - 1.0.4, она включается в стандартную поставку сервиса. - Отключать алгоритм Nagle для соединений: Выключает алгоритм Nagle для TCP соединений, путем включения опции TCP_NO_DELAY у сокетов. Данная опция будет работать только при включенной опции "Повторно использовать сессии". - Способ идентификации сессии: позволяет указать каким способом будет отслеживаться сервером открытая сессия. Возможны варианты отслеживания по идентификатору сессии, по IP-адресу удаленного пользователя, а также одновременное отслеживание по идентификатору и IP-адресу. - Сертификат центра сертификации: указать путь на жестком диске к файлу *.pem, скачанному с сайта Центра сертификации на этапе получения SSL-сертификата. - Сертификат домена: указать путь на жестком диске к файлу, полученному на этапе получения SSL-сертификата в личном кабинете на сайте RU-CENTER . - Закрытый ключ: указать путь на жестком диске к файлу закрытого ключа, сгенерированному в процессе получения SSL-сертификата. - Пароль закрытого ключа: указать при необходимости. Подробнее про процесс получения SSL-сертификата написано здесь. Особенности специфичные для Linux редакции описаны с соответствующем разделе. |
3.3. Дополнительные прослушиватели |
При необходимости переадресации с каких-либо TCP портов и http(s) протоколов, на фактически используемый порт и протокол сервиса (например, с 80, 8080 портов на 443 порт по https протоколу), сформируйте необходимую таблицу переадресации. Переадресация будет реализована, за счет дополнительных прослушивателей для каждой строки таблицы переадресации. Они будут принимать входящие запросы по указанному протоколу (http или https - описано ниже) и с указанного TCP порта, и затем перенаправлять их на фактически используемый порт и протокол сервиса. В зависимости от того, какой фактический протокол будет использовать сервис (http или https), таблица настройки переадресации, будет иметь вид: В случае настройки сервиса для работы по HTTP протоколу: В случае настройки сервиса для работы по HTTPS протоколу: Описание значений колонок:
|
3.4. Стартовая страница |
Здесь необходимо указать каталог на жестком диске, в котором находятся исполняемые скрипты сервиса. По умолчанию (Стандартная) - папка PARUSJS в каталоге установки сервиса. Для переопределения стартовой страницы на свою укажите каталог ее размещения. Процесс изменения стартовой страницы описан в соответствующем разделе "Самостоятельное создание стартовой страницы". |
3.4.1. Самостоятельное создание стартовой страницы | ||||
При конфигурировании сервиса вы можете указать каталог, содержащий файлы вашей собственной стартовой страницы: В указываемом вами каталоге должен находится файл с именем index.html, который будет выдан сервером в ответ на запрос. Внутри этого html-документа вы можете организовать взаимодействие с поставляемым web-приложением одним из следующих способов:
|
3.5. Страница документации удаленного пользователя | ||
При конфигурировании сервиса вы можете указать url, по которому размещены файлы страниц документации: После настройки страницы документации будут доступны удаленному пользователю по нажатию кнопки "Справка" во всех диалоговых окнах. Для отображения будет использован браузер, установленный в Системе по умолчанию.
Если вы хотите разместить файлы документации непосредственно на том же сервере, на котором устанавливаете сервис, то можно положить их в каталог parusjs, и указать соответствующий url в виде "/parusjs/mydocument.html" (без кавычек). Если ваша документация размещена у удаленного хостера, то укажите полный url, например, "http://goo.gl/1yWBR" (без кавычек). |
3.6. Интерфейсная схема по умолчанию |
При конфигурировании сервиса вы можете указать интерфейсную схему и масштаб, используемый по умолчанию. Обратите внимание, что при выборе вам доступны цветовые темы, которые вы разработали самостоятельно и выгрузили на тот сервер, который вы конфигурируете. |
3.7. Интеграция с Парус-Онлайн Web 2.0 |
При конфигурировании сервиса можно указать, что его работа будет осуществляться в режиме интеграции с Парус-Онлайн Web 2.0. Более подробно об этом режиме и его возможностях описано в статье Интеграция с Парус-Онлайн Web 2.0. |
3.8. OpenID аутентификация |
Если вы планируете разрешить удаленным пользователям аутентифицироваться с помощью OpenID, установите соответствующий флажок. Если вы планируете разрешить удаленным пользователям самостоятельно регистрировать свои OpenID логины, то установите соответствующий флажок. Далее необходимо указать наименование и примечание внешнего поставщика информационных услуг, который будет использоваться для ассоциации аккаунтов пользователей с OpenID аккаунтами. В случае отсутствия указанного поставщика в БД, он будет создан во время сохранения конфигурации. Посмотреть существующие поставщики можно в интерфейсе Парус 8: Администратор -> Учет -> Внешние поставщики информационных услуг. Посмотреть информацию о привязках OpenID-идентификаторов к текущему пользователю сервиса, а также удалить некоторые из них, можно в Web-интерфейсе: Первичные отчеты -> Действия (или контекстное меню) -> Расширения -> Логины внешних провайдеров. |
3.9. Доменная аутентификация | ||
Если вы планируете разрешить удаленным пользователям аутентифицироваться с помощью доменной аутентификации, установите соответствующий флажок. Если вы планируете разрешить удаленным пользователям самостоятельно регистрировать свои учетные записи пользователей домена, то установите соответствующий флажок. Так же необходимо указать имена доменов (в случае нескольких используйте системный разделитель списков), пользователям которых вы хотите разрешить аутентифицироваться.
Далее необходимо указать наименование и примечание внешнего поставщика информационных услуг, который будет использоваться для ассоциации аккаунтов пользователей с аккаунтами пользователей домена. В случае отсутствия указанного поставщика в БД, он будет создан во время сохранения конфигурации. Посмотреть существующие поставщики можно в интерфейсе Парус 8: Администратор -> Учет -> Внешние поставщики информационных услуг. Посмотреть информацию о привязках аккаунтах пользователей домена к текущему пользователю сервиса, а также удалить некоторые из них, можно в Web-интерфейсе: Первичные отчеты -> Действия (или контекстное меню) -> Расширения -> Логины внешних провайдеров. Настройка браузеров пользователей для включения возможности автоматической доменной аутентификации, описана в разделе Настройка браузеров для использования доменной аутентификации. В приложении Win32 работающего в режиме удаленного доступа, можно зарегистрировать текущую учетную запись пользователя домена Windows в качестве внешнего идентификатора для текущего пользователя учетной системы в интерфейсе Парус 8: Файл -> Сервис -> Параметры -> Расширения -> Пользовательские приложения -> "Зарегистрировать текущего пользователя домена Windows для удаленного доступа по доменной аутентификации". |
3.10. Аутентификация клиентскими SSL сертификатами |
Если вы планируете разрешить удаленным пользователям аутентифицироваться с помощью клиентских SSL сертификатов, установите соответствующий флажок. Разрешить регистрацию SSL сертификатов пользователей: Разрешает или запрещает удаленным пользователям самостоятельно регистрировать свои SSL сертификаты для связывания их со своими учетными записями Парус 8. Наименование и примечание внешнего поставщика информационных услуг: указанный поставщик будет использоваться для ассоциации учетных записей пользователей с отпечатками (thumbprint) клиентских SSL сертификатов. В случае отсутствия указанного поставщика в БД, он будет создан во время сохранения конфигурации. Посмотреть существующие поставщики можно в интерфейсе Парус 8: Администратор -> Учет -> Внешние поставщики информационных услуг. Посмотреть информацию о привязанных SSL сертификатах к текущему пользователю сервиса, а также удалить некоторые из них, можно в Web-интерфейсе: Первичные отчеты -> Действия (или контекстное меню) -> Расширения -> Логины внешних провайдеров. Сертификаты доверенных центров сертификации: Укажите путь к файлу в PEM-формате, содержащий публичные сертификаты доверенных центров сертификации, клиентские сертификаты которых необходимо проверять. Клиентские сертификаты могут быть выпущены не только напрямую указанными центрами, но и их дочерними центрами, а также и их дочерними, в свою очередь. Каждый такой промежуточный центр сертификации считается довренным на том основании, что он выпущен доверенным корневым центром. Соответственно, нет необходимости включать их (промежуточные центры) в файл доверенных центров сертификации. В случае необходимости доверять нескольким центрам сертификации, то их сертификаты можно сохранить в один файл, в котором раcположить их друг за другом, т.е. обычной конкатенацией. Список отозванных сертификатов: При необходимости, укажите путь к файлу в PEM-формате, содержащий отозванные сертификаты (признаваемые недействительными раньше срока своего окончания). Получение CRL файла в PEM формате. Если используется собственный центр сертификации на основе инфраструктуры OpenSSL: openssl ca -gencrl -out ca.crlВ результате будет сформирован CRL файл в PEM формате, содержащий список отозванных сертификатов на основе данных внутреннего хранилища сертификатов OpenSSL. В случае использования клиентских сертификатов полученных от стороннего центра сертификации, необходимо получить URL по которому можно скачать CRL файл данного центра сертификации. Данный URL обычно присутствует в любом из публичных сертификатов. Просмотр с помощью OpenSSL, при условии, что файл сертификата в PEM формате (в примере просматривается сертификат c:\ca.pem): openssl x509 -noout -text -in c:\ca.pemСреди всех свойств сертификата найти с именем X509v3 CRL Distribution Points - в нем будет указано необходимое значение URI:http://... Просмотр с помощью средств Windows (файл сертификата может быть в любом формате, но должен иметь раширение.crt):
После скачивания CRL файла по полученному URL, его необходимо сконвертировать в PEM формат (в примере исходный файл в DER формате - crl.der, итоговый файл в PEM формате - crl.pem): openssl crl -inform DER -in crl.der -outform PEM -out crl.pem Глубина проверки в цепочке сертификатов: Укажите глубину проверки в цепочке сертификатов. Глубина проверки устанавливает лимит на количество сертификатов между конечным сертификатом пользователя и доверенным центром, находящимся в файле доверенных центров сертификации. Если цепочка сертификатов, необходимая для получения доверенного эмитента, длиннее указанной глубины + 2, то пользовательский сертификат будет признан недействительным. Как осуществляется проверка: На каждом уровне проверки цепочки сертификата проверяется действительность этого сертификата. Если будет обнаружен хоть 1 просроченный, недействительный, недоверенный сертификат (отсутствует связь с сертификатами из файла доверенных центров сертификации) или отозванный (присутствующий в файле Список отозванных сертификатов), или будет превышена указанная глубина проверки, то пользовательский сертификат также будет считаться недействительным. |
3.11. Удаленный доступ для приложения Win32 |
Если удаленный пользователь планирует использовать для работы с Сервисом приложение для Win32 в данном окне указываются настройки приложения. Для использования приложения необходимо установить соответствующий флаг. После этого станут доступны поля настройки приложения: - Собирать статистику действий удаленного клиента - при включении этого флажка агенты доступа к приложениям Win32 будут автоматически собирать статистику действий удаленного клиента. Подробности о работе этого механизма описаны в соответствующем разделе. - Не устанавливать соединения с Oracle при старте - при включении этого, сервис при старте, не будет устанавливать соединение с Oracle, а отложит это действие до первого обращения клиента к соответствующему обработчику. - Таймаут соединения с Oracle (в сек.) - параметр определяет количество секунд, в течении которых, определенный обработчик (серверный объект, отвечающий за обслуживание запросов от клиентов) может находится в состоянии ожидания запросов. При отсутствии запросов, в течении указанного времени, соединение с Oracle завершится, и будет заново установлено при первом обращении клиента к соответствующему обработчику. - Каталог - указывается папка на жестком диске, которая содержит стартовую страницу загрузки Win32 клиента. - Путь к файлам - указываются пути к файлам, необходимым для работы клиента. |
3.11.1. Статистика действий удаленного клиента |
Сбор статистики осуществляется удаленным клиентом при запуске приложения p8application.exe с ключом командной строки -writeuserlog. Если вы установили соответствующий флажок в конфигураторе, он будет вызывать p8application.exe в этом режиме. Статистика действий пользователя собирается в файл %ProgramData%\Techmill\parususerlog.bin. Если этот файл отсутствует, то он будет создан, и ему будет присвоен внутренний глобально-уникальный идентификатор. При дальнейших действиях с файлом идентификатор не изменится. Статистика действий удаленного пользователя сохраняется в этом файле в контексте сеанса. Если общий размер файла превысит 100 MB, то информация о наиболее старых сеансах будет из файла удалена. Сессии, хранящиеся в файле, нумеруются последовательными числами. Несколько процессов, работающих одновременно, разделят файл статистики. Информация, накопленная в файле статистики, должна быть отправлена на сервер приложений. Для этого можно использовать любой из следующих способов:
|
3.11.2. Сервера удаленного доступа | ||
После настройки удаленного доступа для приложения Win32, необходимо указать один или несколько серверов обеспечивающих удаленный доступ. В случае задания нескольких серверов, все они будут доступны для выбора в окне логина в качестве параметра "База данных".
- Наименование - указывается наименование, которое будет показано пользователю в окне логина Win32 приложения в параметре "База данных". В случае если наименование не будет указано, то вместо него будет использоваться соответствующий параметр Хост сервера. - Хост сервера - указывается адрес как минимум настраиваемого сервера (в случае необходимости, можно указать несколько дополнительных серверов), они должны быть доступны удаленным пользователям по указанным именам. Если доступ осуществляется по нестандартному порту, после двоеточия необходимо указать порт. Если протокол доступа к хосту отличается от протокола настраиваемого сервиса, то укажите префикс протокола (http:// или https://) в этом поле перед адресом. - Путь серверного proxy - указывается путь синонима серверного proxy, по которому сервис будет доступен удаленному пользователю. Подробнее об использовании серверного proxy можно узнать здесь. |
3.11.3. Дополнительные модули и переменные окружения в составе удаленного клиента | ||||
В случае необходимости включать в состав клиента удаленного доступа для приложения Win32 дополнительные модули/файлы, или указать переменные окружения, которые должны быть установлены в момент старта клиента, укажите их. Диалог указания дополнительных модулей/файлов : - Путь к файлу - указывается путь к файлу, который должен быть включен в состав файлов распространяемых вместе в клиентом удаленного доступа для приложения Win32. Диалог указания дополнительных переменных окружения : - Имя - указывается имя переменной окружения, которая будет установлена, вместе со своим значением, в момент запуска процесса удаленного клиента. - Значение - указывается значение переменной окружения, которая будет установлена в момент запуска процесса удаленного клиента.
|
3.12. Параметры подключения к базе данных | ||||
Для установки параметров подключения к базе данных нажмите Откроется окно настроек параметров подключения к базе данных: В поле СУБД необходимо указать используемую СУБД - Oracle или Postgres. В поле База данных необходимо указать адрес БД в формате локального именования (псевдоним БД из файла tnsnames.ora) или Easy Connect (строка подключения вида host:port/SID, например 192.168.1.42:1521/ORCL1).
Параметр Пользователь-владелец данных определяет имя схемы БД Парус 8, данные которой становятся доступны удаленным пользователям. По традиции это имя - "parus" без кавычек. Параметр Пароль определяет пароль пользователя- владельца схемы БД Парус 8, данные которой становятся доступны удаленным пользователям. Пароль хранится в файле конфигурации в домашней папке сервиса в открытом виде - будьте осторожны при выдаче прав на эту папку ненадежным людям. Параметр Использовать иного пользователя сервиса позволяет указать пользователя, от имени которого должен работать сервис. По умолчанию, сервис работает от имени владельца схемы, указываемого в соответствующем параметре чуть выше. В случае, если включена эта галка, и действительно указан пользователь сервиса отличный от пользователя владельца-данных, то в конце конфигурирования этому пользователю будут выданы необходимые права на используемые сервисом объекты схемы (файл с выполненным скриптом будет сохранен в каталоге установки с именем GrantSchemaRights.sql). Предполагается, что данный пользователь к этому моменту уже будет создан в СУБД и зарегистрирован в Парус 8 как анонимный пользователь с назначением лицензии (в которой есть серверные лицензионные соединения для приложения BalanceOnline). Параметр Пользователь сервиса и Пароль позволяют задать реквизиты доступа для пользователя от имени которого будет работать сервис. Данный пользователь должен быть зарегистрирован в Парус 8 как анонимный пользователь.
|
3.13. Распределение соединений |
Для установки параметров, в главном окне выберите: На данном шаге настроек осуществляется распределение общего числа лицензий по серверным лицензиям. Информацию о наименованиях Организаций и общем количестве соединений конфигуратор получает из БД указанной в настройках подключения к БД. По умолчанию, равномерно для всех организаций распределяется 100% доступных соединений для web-приложений (используются WIN-лицензии приложения BalanceOnline), и 100% доступных соединений для Win32-приложения (если работа с ним разрешена, используются WIN-лицензии приложения MillAppServer). По умолчанию, полученные таким образом соединения, доступны для всех организаций.
Если Вы распределили не все доступные соединения из лицензии, то появится сообщение: На этом шаге можно вернуться к распределению снова. Или нажать "Yes" ("Да") для подтверждения операции. Для каждого клиентского соединения будет использоваться 1 WEB-лицензия соответствующего приложения:
В случае отсутствия WEB-лицензий для приложения Balance или Monitoring, появится сообщение об ошибке: В случае, если на предыдущих этапах настройки сервиса было указано, что удаленным пользователям разрешено использовать для работы Win32 приложение, то окно распределения примет следующий вид: |
3.14. Загрузка отчетов |
При необходимости использовать загрузку отчетов из внешних файлов, укажите их расположение: Описание поддерживаемых типов файлов, и примеры их использования описаны в разделе Загрузка отчетов. Добавить или удалить строку в таблицах можно с помощью контекстного меню. |
3.15. Конвертация трафаретов | ||
При необходимости сконвертировать трафареты с примечаниями или без, а также создать миниатюры трафаретов, при сохранении конфигурации, установите соответствующие флаги.
|
3.16. Максимальное время обработки | ||
Вы можете ограничить максимальное время обработки различных тяжелых операций: Ограничение времени конвертации трафарета "сработает" также для любой конвертации рабочей книги в формат PDF или html (например, истории значений или выгрузки отчета в Excel). Ограничение времени выгрузки отчета в Excel относится только ко времени формирования рабочей книги. Если после формирования необходима конвертация, то ее время рассчитывается независимо. Ограничение времени выполнения процедуры/запроса ограничивает только время сервера БД. На последующие операции загрузки результата ("fetch") ограничение не распространяется. Ограничение времени сетевого запроса ограничивает только время передачи уже сформированного ответа от сервера к клиенту.
|
3.17. Отправка подписанных отчетов по электронной почте |
Если вы планируете отправлять подписанные отчеты по электронной почте, установите соответствующий флажок. Данный функционал требует наличие служебной схемы базы данных. Процесс создания и инициализации служебной схемы рассмотрен в соответствующем разделе. Для формирования сообщений электронной почты необходимо в пользовательскую процедуру, формирующую неподписанный XML-файл отчета, добавить выходной параметр с именем "SPOST_PROCESS_USER_PROC" . Если после выполнения процедуры формирования отчета, значение этого параметра будет содержать мнемокод пользовательской процедуры, то она будет вызвана, и в качестве параметров в нее будет переданы параметры самой процедуры формирования отчета, а также если в ней присутствуют параметры с привязкой: - к организации - значение организации. - к регистрационному номеру записи - значение регистрационного номера отчета по которому формируется выгрузка. - к идентификатору отмеченных записей - значение идентификатора отмеченных записей, содержащий имя сформированного файла и сам файл. В качестве наглядного примера можно использовать пользовательскую процедуру "SendReportByMail", которая создается конфигуратором в корневом каталоге раздела "Пользовательские процедуры". Она, в служебной схеме базы данных, создает письма и во вложение добавляет переданные ей файлы. Сервер, в свою очередь, отправляет созданные письма по протоколу SMTP непосредственно получателям, либо на выделенный почтовый сервер. Настройка отправки сообщений электронной почты Непосредственно получателям - Номер порта TCP указывает номер порта TCP/IP, на который сервис будет отправлять исходящие почтовые сообщения. - Периодичность рассылки очереди определяет периодичность в секундах, с которой сервис проверяет наличие писем поставленных в очередь на отправку. - Домен почтового сервера указывает домен, от имени которого сервер будет рассылать письма. - Отправитель по умолчанию устанавливает заданное значение отправителя во всех отправляемых письмах, в которых он не указан. На выделенный почтовый сервер - Номер порта TCP указывает номер порта TCP/IP, на который сервис будет отправлять исходящие почтовые сообщения. - Периодичность рассылки очереди определяет периодичность в секундах, с которой сервис проверяет наличие писем поставленных в очередь на отправку. - Домен почтового сервера указывает домен, от имени которого сервер будет рассылать письма. - Отправитель по умолчанию устанавливает заданное значение отправителя во всех отправляемых письмах, в которых он не указан. - Хост почтового сервера рассылки указывает сервер на который будут отправляться все исходящие письма для их дальнейшей рассылки по конечным пользователям. - Пользователь - аккаунт пользователя на сервере рассылки. - Пользователь - пароль пользователя на сервере рассылки. |
3.17.1. Экспорт сообщений электронной почты из БД |
При необходимости, есть возможность экспортировать сообщения электронной почты из базы данных в файлы формата eml. |
3.18. Возможность обмена сообщениями |
Сервис предоставляет возможность обмена сообщениями между пользователями. Такую возможность можно предоставить пользователям следующих типов приложений:
Управление возможностью обмена сообщениями, для каждого отдельного пользователя: Для управления возможностью обмена сообщениями, для каждого конкретного пользователя, в разделе "Пользователи" приложения "Администратор", будут доступны следующие пользовательские процедуры (должны выполняться пользователем-владельцем схемы Парус):
Данный функционал обмена сообщениями, требует наличие служебной схемы базы данных. Процесс создания и инициализации служебной схемы рассмотрен в соответствующем разделе. |
3.19. Параметры протоколирования нагрузки |
Для установки параметров протоколирования событий сервера нажмите: В открывшемся окне необходимо выбрать способ протоколирования: |
3.19.1. В файл | ||
- В файл - записи о событиях сервера будут сохраняться в текстовый файл в формате W3CExtended. После начала работы сервера в рабочем каталоге будет создана папка LOGS, в которой будут сохранятся log-файлы с наименованием w3cext.log.
В начале файла идет служебная информация об используемом ПО для генерации log-файла. Далее каждая строка описывает одно событие сервера, и содержит дату и время события, время выполнения, объем данных, ip-адрес клиента, используемый метод и т.д. В дальнейшем, при необходимости, есть возможность экспортировать log-файл в базу данных. |
3.19.2. В базу данных |
- В базу данных - записи о событиях сервера будут сохраняться в служебную схему рабочей базы данных. Процесс создания и инициализации служебной схемы рассмотрен в соответствующем разделе. |
3.19.2.1. Экспорт протоколов из БД |
При необходимости, есть возможность экспортировать протоколы сервиса из базы данных в файл формата W3C. |
3.19.3. Не протоколировать |
- Не протоколировать - отключить возможность протоколирования событий сервера. |
3.20. Создание и инициализация служебной схемы базы данных | ||
Создание служебной схемы базы данных требуется в следующих случаях: - разрешена отправка подписанных отчетов по электронной почте. - разрешен обмен сообщениями, как в web-приложениях, так и в приложениях Windows. - настроено протоколирование в БД. - разрешен сбор статистики действий удаленного клиента. - использование Linux редакции сервиса - Пользователь-владелец данных - имя пользователя-владельца схемы. - Пароль - пароль для пользователя - Пароль пользователя SYS - пароль пользователя, наделенного правами создания/изменения пользователя и схемы БД. Вы можете не указывать пароль пользователя SYS. В этом случае вы должны самостоятельно создать служебную схему. При сохранении конфигурации будет создана (в случае ее отсутствия) и проинициализирована служебная схема БД.
|
3.20.1. Самостоятельное создание служебной схемы | ||
Администратор БД может самостоятельно создать схему для служебных данных. Необходимо проделать следующее:
|
3.21. Проверка наличия обновлений |
При нажатии на конфигуратор автоматически проверит наличие обновлений и, при необходимости, предложит скачать новую версию конфигуратора: При нажатии кнопки "Yes" ("Да") будет произведено автоматическое скачивание новой версии сервиса. По окончании скачивания подтвердите установку: обновления будут установлены в фоновом режиме. При этом конфигуратор будет выгружен из памяти компьютера. После установки конфигуратор снова будет запущен и готов к работе. Если при проверке обновлений найдено не было, будет выведено сообщение: |
3.22. Параметры, устанавливаемые в соответствующих разделах ПП Парус 8 |
3.22.1. Кэширование значений словарей контрагентов |
Вы можете отключить кэширование значений словарей контрагентов. В этом режиме изменения, сделанные администратором в дополнительных словарях (и в дополнительных словарях контрагентов), будут сразу отображаться в web-интерфейсе удаленного пользователя. Установить настройку можно в интерфейсе Парус 8 (Файл -> Сервис -> Параметры). |
3.22.2. Предельное количество записей дополнительного словаря для автоподбора |
Вы можете установить предельное количество записей дополнительного словаря для автоподбора. Если количество записей дополнительного словаря превышает значение, указанное в этой настройке, автоподбор при вводе значений этих словарей будет выключен. Автоподбор: Автоподбор в больших дополнительных словарях делает работу пользователя дискомфортной. Отключение автоподбора в том или ином словаре с помощью этой настройки не оказывает влияния на остальные возможности работы с дополнительными словарями (выбор значения из словаря, контроль соответствия значения словарю, выбор данных из примечаний словаря и т. п.). Если вы хотите включить автоподбор для всех словарей, независимо от их размера, очистите значение этой настройки. |
3.22.3. Включение защиты листа в выгружаемых рабочих книгах Excel |
Вы можете предписать сервису включать защиту листа в выгружаемых рабочих книгах Excel. Для управления этой возможностью введена настройка "Включать защиту листов экспортируемых рабочих книг" в разделе "Первичные/сводные отчеты" (код настройки - BalanceOnlineProtectExportWorkBooks). Установить настройку можно в интерфейсе Парус 8 (Файл -> Сервис -> Параметры). |
3.22.4. Доступность сводных отчетов |
Доступность или недоступность сводных отчетов определяется на основании доступности роли или пользователю псевдораздела "Сводные отчеты (Сведение отчетности On Line)". Чтобы сделать сводные отчеты доступными, назначьте соответствующим пользователям и/или ролям этот раздел в приложении "Администратор". |
3.22.5. Пользовательская процедура сохранения выгруженных отчетов в БД |
Использование этого параметра, описано в разделе Сохранение сформированных отчетов в базе данных. |
3.22.6. Служебная схема базы данных для работы сервера приложений |
Параметр предназначен для хранения наименования служебной схемы базы данных для работы сервера приложений. В случае, инициализации этой схемы в конфигураторе, значение будет установлено, в противном случае оно будет пустое. |
3.22.7. Интервалы проверки новых сообщений | ||
Параметры предназначены для настройки интервалов проверки новых сообщений (см. раздел Возможность обмена сообщениями). В интерфейсе Парус 8 (Файл -> Сервис -> Параметры), в корневом разделе "Параметры":
|
3.23. Особенности специфичные для Linux редакции | ||||
Конфигуратор При работе с конфигуратором, для перехода между действиями, возврата к предыдущему меню или выходу из конфигуратора можно использовать комбинацию клавиш Ctrl+C. Конфигуратор при необходимости установит и настроит (предварительно спросив пользователя):
Во время сохранения конфигурации, в Парус 8 будут созданы пользовательские приложения для конвертирования трафаретов, их миниатюр, данных шрифтов для конвертации в PDF, и модулей справочной системы для их дальнейшего использования в Linux редакции сервиса. Конвертация трафаретов может быть выполнена в приложении "Сведение отчетности. Центр учета" в разделе "Словари" -> "Формы отчетов":
Конвертация шрифтов может быть выполнена:
Конвертация модулей справочной системы может быть выпонена:
Настройка Firewall и SeLinux Во время указания слушаемого порта сервиса или дополнительных прослушивателей, в момент конфигурирования параметров сетевых настроек, будут проверены настройки Firewall, и в случае если указанные порты не добавлены в его исключения (не будут доступны из внешней сети, в том числе клиентам), то будет предложено добавить порт с помощью конфигуратора. В случае отказа администратор должен самостоятельно обеспечить корректную настройку Firewall для доступности слушаемых портов. |
3.23.1. Протоколирование отладочных сообщений | ||
Поддерживается 2 вида протоколирования:
При запуске сервиса в конфигураторе можно включить или выключить протоколирование (подерживаются оба вида). По умолчанию, протоколирование выключено, и в системный журнал записываются только критические сообщения, так же как это происходит в Windows. Для "ручного" включения полного протоколирования отладочных сообщений, необходимо добавить ключи запуска для требуемого приложения:
Для отбора из системного журнала отладочных сообщений, которые бы попали в Отладочный монитор в случае работы сервиса на Windows, можно использовать фильтрацию по аттрибуту SYSLOG_SDID=DebugMessage (без данной фильтрации будут отобраны сообщения от любых приложений/служб с данного хоста), а также указать другие критерии отбора.
Настройка Отладочного монитора, запущенного на Windows, в качестве syslog сервера, описана с статье Использование отладочного монитора. Также стоит отметить, что по умолчанию в ОС все сообщения отправленные в системный журнал, автоматически попадают и на локальный syslog сервер (служба rsyslog). В свою очередь, rsyslog может быть настроен на пересылку локальных сообщений на некий внешний syslog сервер. Это дает дополнительную возможность пересылать отладочные сообщения с Linux в Отладочный монитор, который запущен на Windows. Для этого можно добавить конфиг-файл (с любым именем, но расширением.conf) в каталог конфигов rsyslog ("/etc/rsyslog.d/") со следующим содержанием: 01template(name="SyslogProtocol23FormatFromCEE" type="list") { 02 constant(value="<") 03 property(name="pri") 04 constant(value=">1 ") 05 property(name="timestamp" dateFormat="rfc3339") 06 constant(value=" ") 07 property(name="hostname") 08 constant(value=" ") 09 property(name="programname") 10 constant(value=" ") 11 property(name="$!_PID") 12 constant(value=" ") 13 property(name="$!SYSLOG_MESSAGE_ID") 14 constant(value=" [") 15 property(name="$!SYSLOG_SDID") 16 constant(value="@77737676") 17 constant(value=" ModuleName=\"") 18 property(name="$!MODULENAME") 19 constant(value="\" TID=\"") 20 property(name="$!TID") 21 constant(value="\" Sender=\"") 22 property(name="$!SENDER") 23 constant(value="\"] ") 24 property(name="$bom") 25 property(name="$!MESSAGE") 26 constant(value="\n") 27} 28 29if $inputname == "imjournal" then { 30 if $!SYSLOG_SDID == "DebugMessage" then { 31 action(type="omfwd" Target="192.168.1.50" protocol="tcp" Port="514" TCP_Framing="octet-counted" Template="SyslogProtocol23FormatFromCEE") 32 } 33} |
3.24. Пользовательские цветовые темы | ||
Предусмотрена возможность использования пользовательских цветовых тем. Доступные пользователю цветовые темы перечислены в документе PARUSJS\theme\themes.xml. При установке документ имеет следующее содержание: 1 <themes> 2 <theme id="parus8" loaded="1" title="Парус 8"/> 3 <theme id="durer" loaded="1" title="Контрастная"/> 4 </themes>Это означает, что пользователю доступны две цветовые темы с соответствующими идентификаторами и наименованиями. Атрибут loaded указывает на то, что цветовая тема загружается автоматически и доступна всегда. Темы, которые должны загружаться из дополнительных файлов, должны иметь атрибут loaded, равный 0. Если ввести в документ узел <theme id="mytheme" loaded="0" title="Пользовательская тема"/>то произойдет следующее:
Разработка и сопровождение CSS-файла, содержащего описание темы, представляет собой значительную трудность. Стили, определяемые в CSS-файле темы определяют не только цветовую гамму, но и множество аспектов поведения пользовательского интерфейса. При обновлении ПО до более новой версии сервиса в CSS-файл придется вносить нетривиальные изменения. Для решения этих задач мы советуем использовать "Редактор цветовых тем".
Вы можете также удалить из документа PARUSJS\theme\themes.xml строки, соответствующие темам, которые хотите сделать недоступными для выбора. При обновлении ПО документ PARUSJS\theme\themes.xml будет записан "поверх" ваших изменений, изменения не будут сохранены. Вам нужно будет повторить все те изменения, которые вы делали вручную, или выгрузить на обновленный сервер повторно те темы, которые вы разработали с помощью редактора. |
3.24.1. Редактор цветовых тем |
В состав ПО включен инструмент "Редактор цветовых тем". Информация о цветовой теме сохраняется в файлах с расширением .PCSH. Каждый такой файл содержит изменения, внесенные разработчиком темы, относительно некоторой выбранной им базовой темы на базовом сервере разработки. После завершения разработки можно выгрузить тему на рабочий сервер, и сделать ее тем самым доступной пользователям. Также вы сможете установить разработанную тему в качестве темы по умолчанию на соответствующей странице конфигуратора. Для начала работы с редактором запустите ярлык "Редактор цветовых тем". Вы увидите окно выбора базового сервера и базовой темы: Откроется главное окно редактора:
С помощью кнопки "Выбрать элемент" вы можете быстро найти цвета, которые использует тот или иной элемент. Для этого нажмите кнопку "Выбрать элемент", и выберите интересующий вас элемент в окне предпросмотра. Вы увидите список цветов, имеющих отношение к выбранному вами элементу. Вы можете выбрать цвет и перейти к его редактированию. При редактировании цветов в окне предпросмотра вы будете видеть изменения интерфейса web-приложения в реальном времени. В панели изображений вы видите список изображений, используемых цветовой темой. Вы можете выгрузить одно или все изображения в файлы, отредактировать изображения в стороннем графическом редакторе, и загрузить их обратно. Не забывайте сохранять изменения в файл с расширением .PCSH. В дальнейшем вы сможете открыть этот файл редактором, и продолжить разработку. Обеспечьте надежное хранение и резервирование нужных вам файлов тем. Они понадобятся вам при обновлении ПО для повторной выгрузки тем на обновленный сервер. Для того, чтобы сделать разработанную тему доступной пользователям, ее необходимо выгрузить на рабочий сервер.
Выполните их. |
3.25. Возможности автоматизации консольного конфигуратора | ||
На ряду с конфигуратором с графическим интерфейсом, в состав поставки ПП входит консольный конфигуратор (для Linux редакции поставляется только консольный конфигуратор), имеющий аналогичные возможности интерактивного конфигурирования. Дополнительно к стандартным возможностям конфигурирования, консольный конфигуратор может быть использован для автоматизации и упращения работы администратора, путем его запуска с нижеуказанными ключами-параметрами:
Это же описание можно получить запустив консольный конфигуратор с ключиком -help.
|
4. Работа |
После установки всех настроек появится запрос на сохранение конфигурации: Подтвердите сохранение. Для запуска сервера нажмите В процессе запуска необходимо зарегистрировать службу Windows, а также может потребоваться внести изменения в сетевые настройки компьютера, чтобы зарегистрировать правило, разрешающее сеFirewall. Перед изменением сетевых настроек конфигуратором будет задан вопрос: Отвечайте "Да" при работе в локальном сеансе на выделенном web-сервере. При установке сервиса через терминальный доступ, а также в случае, если на сервере установлено другое работающее в данный момент серверное программное обеспечение (особенно серверы управления базами данных с подключенными к ним пользователями), отвечайте "Нет". В этом случае вам потребуется настроить Firewall (если он используется) вручную. Об успешной установке службы Windows сигнализирует сообщение: После завершения работы инсталлятора необходимо убедиться в наличии службы Windows, а также в том, что она находится в состоянии "Запущен". Для этого в апплете "Службы" (Start --> Control Panel --> Administrative Tools --> Services) найдите службу с именем "DataMill Application Server": В этом окне с помощью контекстного меню Вы сможете в дальнейшем управлять состоянием службы - останавливать и запускать ее, когда это будет необходимо. Серверное приложение будет зарегистрировано в качестве службы операционной системы и сервер будет запущен: Главное окно изменит вид: Кнопка Служит для остановки сервиса. Нажатие ссылки " Активные сессии " открывает список активных в настоящий момент сессий с указанием IP-адреса клиента, имени подключенного пользователя, временем до окончания сессии. Для того чтобы новый удаленный клиент мог подключиться к работе, он должен в адресной строке своего браузера набрать адрес сервера (или ip-адрес). Откроется окно с запросом имени и пароля пользователя: После ввода имени и пароля необходимо нажать "Ок" и будет открыта форма работы сервиса. |
4.1. Использование отладочного монитора |
Для устранения проблем и локализации ошибок применяется отладочный монитор из состава поставки сервиса: Отладочный монитор в реальном времени отображает все http и sql-запросы, приходящие через сервис. Воспользовавшись действием "Сохранить в файл", можно получить почти всю информацию, необходимую разработчику для локализации проблемы, в виде одного файла. Дополнительно, воспользовавшись действием "Удаленный сервер", можно настроить:
|
4.2. Рекомендации по разработке трафаретов | ||||||||
При разработке трафарета следует обращать внимание на факторы, которые могут значительно замедлить работу удаленного пользователя. Некоторые из таких факторов обсуждаются далее. 1. Неоправданное расширение используемой области (UsedRange) При разработке трафарета необходимо отслеживать, чтобы за границами видимой формы (области печати) не было заполненных, не несущих смысловой нагрузки ячеек, а также ячеек с любым нестандартным форматированием. В противном случае, эти ячейки также попадут в область печати и будет распечатана ненужная страница. Также будет потрачено время на их отображение в форме документа.
2. Использование атрибутов форматирования ячейки При создании трафарета документа, при выборе способа форматирования ячейки необходимо использовать метод выравнивания данных в ячейке по вертикали "ПО ВЕРХНЕМУ КРАЮ". Данный метод позволяет существенно сократить время на генерацию формы в режиме он-лайн. Также включенная функция "ПЕРЕНОСИТЬ ПО СЛОВАМ" существенно замедляет отрисовку форм документов. В связи с этим необходимо ограничить использование данной функции в трафарете для тех ячеек, в которых находится статическая (постоянная) информация.
Для того чтобы узнать способ форматирования одной или нескольких ячеек, необходимо выделить эту ячейку (или несколько ячеек с зажатой клавишей Ctrl). После этого правой кнопкой мыши вызвать контекстное меню и выбрать действие "Формат ячеек". Перейти на вкладку "Выравнивание" и убедиться, что соответствующие пункты заполнены верно: 3. Наличие скрытых ячеек В трафарете не должно быть скрытых столбцов и строк. Их наличие влияет на производительность работы сервиса, а также может влиять на отображение формы документа при распечатке.
выделятся все ячейки. После этого в любом месте листа вызвать контекстное меню и выбрать действие "ОТОБРАЗИТЬ". 4. Перекрестные и неверные формулы Для увеличения производительности необходимо минимизировать использование перекрестных ссылок между формулами в разных ячейках. То есть если необходимо в одной ячейке посчитать, например, сумму двух ячеек, которые, в свою очередь, содержат формулы для подсчета сумм других ячеек, то для оптимальной работы необходимо в конечной ячейке произвести полный расчет необходимой суммы, а не давать ссылку на промежуточные расчеты. Рассмотрим следующий пример:
В ячейке О20 считается значение суммы значений в ячейках O22 и O23, в которых в свою очередь подсчитываются суммы соответственно ячеек L22, M22, N22 для O22 и L23, M23, N23 для O23. Для увеличения быстродействия рекомендуется в ячейке O20 сразу подсчитать сумму значений L22, M22, N22, L23, M23, N23, не прибегая при этом к дополнительным промежуточным вычислениям. 5. Использование нестандартных шрифтов. Нежелательно использование в трафарете шрифтов, не включенных в стандартную поставку Microsoft Excel, так как это значительно замедляет процесс отображения форм документов. |
4.3. Поддерживаемые функции Microsoft Excel | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Разработчики заявляют о поддержке следующего набора функций:
Следующие функции распознаются, но их вычисление не поддерживается:
|
4.4. Загрузка отчетов |
Сервис реализует возможность загрузки отчетов из внешних файлов различных типов. Тип файла определяется его содержимым. Поддерживаются следующие типы файлов:
|
4.4.1. Разработка xslt-преобразований | ||||||
Для реализации загрузки отчетов из xml-документов произвольной структуры необходимо предпринять следующие шаги:
|
4.4.2. Разработка скриптов загрузки | ||||
Скрипты - загрузчики разрабатываются на языке VBscript . В скрипте загрузки вы можете использовать следующие интерфейсные элементы:
Ниже будут рассмотрены особенности загрузчиков файлов различных типов, и даны соответствующие примеры. |
4.4.2.1. Загрузка текстовых файлов | ||
В дополнение к ранее описанным объектам, скрипт загрузки текстового файла имеет доступ к следующему:
|
4.4.2.2. Загрузка рабочих книг Excel | ||
В дополнение к ранее описанным объектам, скрипт загрузки рабочей книги Excel имеет доступ к следующему:
|
4.4.3. Содержимое сессии | ||||||||||||||||||
В скриптах и преобразованиях, используемых при загрузке отчетов, вы можете обращаться к следующим значениям, сохраненным в сессии:
|
4.5. Использование электронной подписи | ||
Поддержка электронной подписи реализована с использованием КриптоПро ЭЦП Browser plug-in . В Chromе (и других браузерах на основе Chromium) начиная с версии 45, и Firefox начиная с версии 53, отключена возможность использования NPAPI плагинов. Для продолжения поддержки электронной подписи в этих браузерах, КриптоПро выпустил обновленную версию своего плагина (2.0). Начиная с этой версии, для указанных браузеров, добавлен новый механизм взаимодействия с криптопровайдерами через расширение браузера CryptoPro Exension for CAdES Browser Plug-in. С нашей стороны реализована полная поддержка новой версии КриптоПро ЭЦП Browser plug-in, и в частности подержка нового механизма взаимодействия с браузерами на основе Chromium (Opera, Яндекс.Браузер и др.), Firefox и Edge у которых отсутствует поддержка NPAPI плагинов. Наряду с этим сохранилась возможность использования существовавших ранее способов взаимодействия браузеров с криптопровайдерами. Особенности и необходимые условия использования электронной подписи в различных браузерах: При установке новой версии CryptoPro Browser plug-in 2.0:
Варианты взаимодействия браузеров с криптопровайдерами :
Приоритеты взаимодействия браузеров на основе Chromium с криптопровайдерами Т.к. метод взаимодействия с помощью NPAPI считается устаревшим, то сначала производится попытка использовать расширение брузера. В случае, когда это не удалось - будет использоваться плагин NPAPI.
|
4.6. Использование различных методов подключения сервера к сети |
4.6.1. Использование NAT |
Механизм NAT описан в rfc1631 и в rfc3022 . Работа через NAT полностью поддерживается, и не должна вызывать каких-либо затруднений. Рассмотрим пример. Допустим, на сервере, обозначенном как "наш сервер", установлен наш сервис. "Наш сервер" слушает IP-адрес внутренней сети 192.168.4.110, порт 8090. В таком случае он доступен пользователям во внутренней сети через url http://192.168.4.110:8090. NAT-сервер, имеющий внешний IP 212.158.161.21, устанавливает соответствие своего порта 8099 и порта 8090 локального хоста 192.168.4.110. На рисунке показано это правило для одного из "бытовых" роутеров (нас интересует последнее правило в списке): При настройке удаленного доступа приложений Win32 к этому серверу, вам необходимо указать в поле " Хост сервера " строку " 212.158.161.21:8099 " (без кавычек), поле "Путь серверного proxy" оставить пустым. Во всех случаях номера стандартных портов можно не указывать, а IP-адреса заменить соответствующими им доменными именами. При использовании механизма "Restricted NAT", "Наш сервер" будет лишен возможности получить реальные IP-адреса удаленных пользователей, все запросы он будет видеть приходящими с одного и того же адреса. Если вы используете Restricted NAT, то вы
|
4.6.2. Использование серверного proxy |
Допустим, мы имеем следующую схему подключения: Допустим, на сервере, обозначенном как "наш сервер", установлен наш сервис. "Наш сервер" слушает IP-адрес внутренней сети 192.168.4.110, порт 8090. В таком случае он доступен пользователям во внутренней сети через url http://192.168.4.110:8090. На сервере, обозначенном как "Proxy-сервер", установлен web-сервер apache, конфигурационный файл которого содержит, помимо прочего, следующие строки: 01 Listen 8099 02 ... 03 LoadModule proxy_module modules/mod_proxy.so 04 ... 05 ProxyPass /mysite/mysite1/mysite2/ http://192.168.4.110:8090/ 06 ... 07 <Proxy /mysite/mysite1/mysite2/*> 08 Order allow,deny 09 Allow from all 10 ... 11 </Proxy> 12 ....Proxy-сервер имеет внешний IP 212.158.161.21. То есть, все обращения, поступающие на proxy-сервер на url вида http://212.158.161.21:8099/mysite/mysite1/mysite2/.... будут перенаправлены им на наш сервер, а ответ нашего сервера будет возвращен удаленному клиенту (в этом смысл работы механизма proxy). Благодаря этому, сервис доступен "снаружи" через url http://212.158.161.21:8099/mysite/mysite1/mysite2/parusjs/index.html (вам придется указывать полный путь именно в таком виде, иначе мы не сможем разрешить относительные ссылки на страницах). При настройке удаленного доступа приложений Win32 к этому серверу, вам необходимо указать в поле " Хост сервера " строку " 212.158.161.21:8099 " (без кавычек), в поле " Путь серверного proxy " указать строку " /mysite/mysite1/mysite2 " (без кавычек). Во всех случаях номера стандартных портов можно не указывать, а IP-адреса заменить соответствующими им доменными именами. При использовании серверного proxy "Наш сервер" будет лишен возможности получить реальные IP-адреса удаленных пользователей, все запросы он будет видеть приходящими с одного и того же адреса. Если вы используете серверный proxy, то вы
|
4.6.2.1. Поддержка соединения для запросов выполняющихся длительное время (более 1-2 мин) | ||||
При работе тонкого клиента напрямую с сервером приложений, подобной проблемы не возникает, т.к. тонкий клиент и сервер приложений самостоятельно поддерживают длительные запросы к СУБД, без стороннего воздействия. При работе тонкого клиента через серверный прокси, запросы, выполняющиеся на сервере СУБД, продолжительное время (более 1-2 мин), могут быть расценены клиентом как запросы, на которые не поступил ответ. В результате, взаимодействие с сервером прекращается, и клиент получает ошибку Cannot initiate intercommunication with remote server. Please, check provided address information. Для решения данной проблемы, необходимо помочь серверу приложений определить, что он работает через серверный прокси (reverse proxy). Для этого необходимо настроить 2 момента:
|
4.7. Взаимодействие с внешними веб-сервисами |
Сервис предоставляет возможность реализации взаимодействия с внешними веб-сервисами. Функционал основан на механизме пользовательских приложений. Пример подобной реализации представлен в поставляемом пользовательском приложении "WebServicesIntegrationCROC" в виде VBScript. Перед началом использования данного примера, необходимо задать/исправить значения следующих параметров (Файл -> Сервис -> Параметры, раздел "Первичные/сводные отчеты"):
В данном примере, реализована NTML аутентификация для взаимодействия с внешним веб-сервисом (т.е. по пользователям входящим в домен). В штатной поставке данного пользовательского приложения, для аутентификации передаются реквизиты пользователя, из под которого работает сервер приложений. Но т.к. штатным режимом работы сервера приложений является работа в виде сервиса Windows (а по умолчанию, все сервисы работают под локальной учетной записью "NT AUTHORITY\SYSTEM", т.е. не являются членами домена), то для успешной аутентификации необходимо выбрать 1 из следующих вариантов:
|
4.7.1. Модуль для взаимодействия по протоколу http(s) |
Модуль для взаимодействия по протоколам http(s) представлен в поставляемом пользовательском приложении "ParusAppServerProvider", в виде COM-сервера. В вышеуказанном модуле реализован COM-объект с ProgID ParusAppServerProvider.Provider, реализующий следующий интерфейс: 01 IProvider = interface(IDispatch) 02 ['{5CC36760-E292-44AA-B542-A32865828DAC}'] 03 function CreateTempFileName(const Extension: WideString): WideString; safecall; 04 function CreateBinaryData: IDispatch; safecall; 05 function DownloadData(const Host: WideString; const Url: WideString; 06 const UserName: WideString; const Password: WideString; NegotiateAuth: WordBool; 07 PostData: OleVariant; const PostContentType: WideString; PostDataIsBinary: WordBool; 08 CanCache: WordBool; NewSession: WordBool; TimeOut: Integer): IDispatch; safecall; 09 function JSONEscape(const Value: WideString): WideString; safecall; 10 function JSONUnEscape(const Value: WideString): WideString; safecall; 11 end;
Интерфейс IBinaryData представляет набор двоичных данных: 01 IBinaryData = interface(IDispatch) 02 ['{8A9F7CB3-230A-4048-B938-852CBF6ADB2D}'] 03 procedure Append(const Src: OleVariant); 04 procedure Load(const Src: OleVariant); 05 procedure Save(const Dst: OleVariant); 06 function Size: Cardinal; 07 procedure AppendData(Data: Pointer; DataSize: Cardinal); 08 procedure SetData(Data: Pointer; DataSize: Cardinal); 09 procedure GetData(Data: Pointer); 10 function ToString(Encoding: WideString): WideString; 11 procedure FromString(Data: OleVariant); 12 procedure AppendString(Data: OleVariant); 13 function ToBase64: WideString; 14 procedure FromBase64(Data: OleVariant); 15 end;
|
4.8. Сохранение сформированных отчетов в базе данных |
Сервис предоставляет возможность сохранения в базу данных любых выгружаемых отчетов/подотчетов, в том формате в который они могут быть сконвертированы (xls, xlsx, pdf или html). Данная возможность реализуется, путем указания той или иной пользовательской процедуры, в параметре "Пользовательская процедура сохранения выгруженных отчетов в БД". Установить настройку можно в интерфейсе Парус 8 (Файл -> Сервис -> Параметры -> Каталог "Первичные/сводные отчеты"). Если в указанном параметре, задано значение, то в веб интерфейсе, пользователю будет доступна опция "Сохранить полученный отчет в БД". При выборе этой опции, после формирование отчета, он не будет передан на скачивание пользователю, а будет вызвана указанная процедура, с передачей в нее сформированного отчета(ов), и другой сопутствующей информацией. В пользовательские процедуры, для сохранения отчетов, будут переданы следующие значения (в параметры с соответствующими именами):
Пример подобной реализации представлен в поставляемой пользователькой процедуре "SaveExecutedReport", в виде неименованного блока, который сохраняет переданные ей отчеты в Присоединенных документах отчета, который был вызван на формирование. Перед началом использования данного примера, необходимо задать/исправить значения следующих параметров (Файл -> Сервис -> Параметры, раздел "Первичные/сводные отчеты"):
|
4.9. Интеграция с Парус-Онлайн Web 2.0 | ||||||||
Интеграция и совместная работа сервиса Сведение отчетности Онлайн и Парус-Онлайн Web 2.0, предлагает пользователю возможность одновременного взаимодействия с обоими сервисами и над одними и теми же данными (предполагается, что сервисы работают с одной и той же БД и схемой), в одном окне браузера, через веб-приложение - Парус-Онлайн Web 2.0. Описание и архитектура интеграции. Оба сервиса могут, и по идее, должны, работать на разных хостах и иметь разные, но общедоступные доступные доменые имена, т.е. оба адреса должны быть доступны для пользователя. Однако, при этом, для обеспечения совместной работы над одними и теми же данными, оба сервиса должны использовать одну и ту же БД и схему в ней. Аутентификация пользователей осуществляется единожды, при их входе в Парус-Онлайн Web 2.0, в приложение "Сведение отчетности. Центр учета". А при взаимодействии пользователя с сервисом Сведение отчетности Онлайн, лицензионные сеансы пользователей будут переиспользованы, без необходимости повторной аутентификации.
Воспользоваться функционалом сервиса Сведения отчетности Онлайн в веб приложении Парус-Онлайн Web 2.0, пользователь может через пункты меню:
Настройка интеграции. В Сведение отчетности Онлайн. Для включения режима интеграции установите соответствующую галку в конфигураторе и укажите публично доступное доменное имя (или URL) текущего сервиса "Сведения отчетности Онлайн", которое назначено (или будет назначено) для сервиса Сведение отчетности Онлайн.
В Парус-Онлайн Web 2.0. В состав инсталлятора Сведения отчетности Онлайн входит архив ParusWebBalanceExtension.zip, являющийся расширением для Парус-Онлайн Web 2.0.
|
4.10. Использование SSL сертификатов c ГОСТ алгоритмами |
На текущий момент существует 2 варианта реализации ГОСТ алгоритмов, которые может использовать OpenSSL, и как следствие, использоваться текущим сервисом: |
4.10.1. gost.dll - open source библиотека | ||||||
Вариант 1: gost.dll - open source библиотека, которая раньше поставлялась вместе с OpenSSL, но начиная с версии OpenSSL 1.1, она была исключена из его состава, и оформилась в виде отдельного продукта https://github.com/gost-engine/engine . Поддержка алгоритмов ГОСТ 2001 имеется во всех версиях библиотеки gost.dll. Однако поддержка алгоритмов ГОСТ 2012 реализована только в версиях, совместимых с OpenSSL >= 1.1.0. Библиотека gost.dll должна использоваться только с соответствующей ей версией OpenSSL:
В релизах сервиса до сентября 2020 включительно, использовались библиотеки OpenSSL 1.0.2. Поэтому возможно использовать библиотеку gost.dll из самого инталлятора OpenSSL, либо можно скачать соответствующую библиотеку с нашего сайта:
В релизах сервиса до января 2024 включительно, поставлялись библиотеки OpenSSL версии 1.1.1. Соответствующая этой версии библиотека gost.dll может быть собрана самостоятельно из исходников. Либо воспользоваться собранной нами версией для Windows:
В релизах текущей версии сервиса, поставляются библиотеки OpenSSL версии 3.3.0. Соответствующая этой версии библиотека для ГОСТ алгоритмов может быть собрана самостоятельно из исходников. Либо можно воспользоваться собранной нами версией для Windows:
Во всех релизах текущего сервиса для Linux, библиотеки OpenSSL не поставляются в составе продукта, их необходимо самостоятельно собрать локально по месту использования, либо установить с помощью менеджера пакетов Linux. При работе конфигуратор подскажет как это сделать. Также, для Linux потребуется самостоятельная сборка библиотеки для ГОСТ, для этого можно воспользоваться исходной инструкцией - https://github.com/gost-engine/engine/blob/master/INSTALL.md.
Развертывание :
В случае проблем с использованием настроенного и запущенного сервиса, для проверки его работоспособности рекомендуется использовать утилиту openssl в режиме клиента TLS, с помощью команды openssl s_client -connect 127.0.0.1:443. В случае успешного соединения с сервером в выводе консоли будет указана вся информация об установленном соединении, такая как сертификат, версия протокола TLS, используемый шифр и многое другое. Для проверки корректности созданного файла конфигурации OpenSSL, и самой загрузки ГОСТ библиотеки, можно воспользоваться командой openssl engine. В случае правильной настройки, среди строк вывода будет строка "(gost) Reference implementation of GOST engine". Перед использованием OpenSSL утилиты необходимо аналогично обеспечить настройку файла конфигурации OpenSSL, как указано в пункте 2 и установить системную переменную окружения ОС с именем OPENSSL_CONF, как указано в пункте 3. |
4.10.2. gost_capi.dll или gostengy.dll - библиотека от КриптоПро (развитие прекращено) | ||||||||
Вариант 2: gost_capi.dll (для OpenSSL <1.1.0) или gostengy.dll (для OpenSSL >= 1.1.0) - библиотека от КриптоПро для работы установленного КриптоПро CSP через интерфейсы OpenSSL (работает только при установленном КриптоПро CSP, т.к. вся работа с ГОСТ будет осуществляться КриптоПро CSP, но опосредованно через интерфейсы OpenSSL).
Аналогично, как и с библиотекой gost.dll, версия библиотеки зависит от используемой версии OpenSSL:
Скачать необходимые версии библиотеки можно на сайте КриптоПро . Более подробное описание использования можно найти у них же на форуме.
Развертывание :
В случае проблем с использованием настроенного и запущенного сервиса, для проверки его работоспособности рекомендуется использовать утилиту openssl в режиме клиента TLS, с помощью команды openssl s_client -connect 127.0.0.1:443. В случае успешного соединения с сервером в выводе консоли будет указана вся информация об установленном соединении, такая как сертификат, версия протокола TLS, используемый шифр и многое другое. Перед использованием OpenSSL утилиты необходимо аналогично обеспечить настройку файла конфигурации OpenSSL, как указано в пункте 2 и установить системную переменную окружения ОС с именем OPENSSL_CONF, как указано в пункте 3. |
4.10.3. Выбор браузеров для взаимодействия с веб-серверами использующими SSL сертификаты с ГОСТ алгоритмами | ||||
Для взаимодействия браузера с веб-серверами, использующими SSL сертификаты с ГОСТ алгоритмами, необходимо, чтобы эти браузеры "понимали" эти алгоритмы. "Понимание" криптоалгоритмов, обеспечивается путем взаимодействием браузера с определенным криптопровайдером, через ту или иную инфраструктуру криптопровайдеров. На ОС Windows инфраструктура криптопровайдеров обеспечивается Microsoft CryptoApi. Различные браузеры могут использовать какую-то определенную инфраструктуру криптопровайдеров. Например Internet Explorer может использовать только Microsoft CryptoApi, а Chrome и Firefox - только NSS. Таким образом, для работы с веб серверами, использующими SSL ГОСТ-сертификатами требуется установленный на клиенте криптопровайдер с поддержкой ГОСТ, и браузер, который умеет опосредовано через инфраструктуру, использовать этот криптопровайдер. Рассмотрим на примере продуктов CryptoPro (это 1 из примеров, по аналогии могут быть использованы любые другие криптопровайдеры, добавляющиеся в Microsoft CryptoApi, и реализующие поддержку ГОСТ алгоритмов). Установка CryptoPro CSP добавляет в Microsoft CryptoApi криптопровайдер, реализующий поддержку ГОСТ алгоритмов:
|
4.11. Процедура формирования заголовков окон | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Для формирования заголовков окон и имен файлов может использоваться пользовательская процедура, мнемокод которой задается в настройке "DescribeBalanceReport". Пользовательская процедура, указанная в этой настройке, должна иметь следующие параметры:
Параметр NPURPOSE определяет цель вызова процедуры:
Допустимо при некоторых условиях не возвращать из пользовательской процедуры никакого значения. Если пользовательская процедура вернет в параметре SRESULT значение null, будет использована строка-описатель по умолчанию.
|
4.12. Настройка браузеров для использования доменной аутентификации | ||||||
Доменная аутентификация может осуществляться по NTLM и Kerberos протоколу. Первый считается устаревшим, но он обычно включен администратором домена для совместимости. Kerberos всегда включен по умолчанию в современных серверных ОС Windows которые используются в качестве контроллера домена.
Настройка Firefox :
Настройка IE (Chrome и браузеры на основе Chromium, в частности Opera и Yandex браузер, используют настройки IE):
|
4.13. Использование Microsoft Office 2010 или выше | ||||
В случае использования на сервере Microsoft Office версии 2010 или выше, может наблюдаться проблема с быстродействием (по сравнению с Office 2007 или более ранней версии) по выгрузке отчетов в Excel файлы. Данная проблема связана с изменениями в работе с буфером обмена в версиях Microsoft Office 2010 и выше. А именно:
Решение проблемы :
|
5. Часто задаваемые вопросы |
5.1. Получение SSL-сертификата |
5.1.1. Протокол SSL |
SSL (англ. Secure Sockets Layer — уровень защищённых сокетов) SSL это криптографический протокол использующий протокол TCP/IP, т.е. он (SSL) находится между транспортным протоколом TCP/IP и протоколами прикладного уровня HTTP, SMTP, преобразуя их сообщения в шифрованный вид. Для работы по протоколу SSL требуется, чтобы на сервере был установлен SSL-сертификат. Безопасность соединения обеспечивается с помощью аутентификации (сертификат привязан к одному конкретному домену) и шифрования (передаваемая информация может быть расшифрована только с помощью специального ключа). Каждый сертификат содержит в себе информацию о:
SSL-cертификат подтверждает, что домен принадлежит реальной компании и что его владелец вправе пользоваться секретным ключом на законных основаниях. Выпуск SSL-сертификатов осуществляется Центрами сертификации. Существует большое количество Центров сертификации во всем мире, в том числе и в России. Однако, для того чтобы Ваш сертификат принимался во всем мире, желательно получить сертификат в большой международной организации. Наиболее известные мировые центры сертификации: В России интересы Центров сертификации представляют многие компании-регистраторы. Для примера далее рассматривается процесс получения SSL-сертификатов от Компании Thawte Products через российскую RU-CENTER. |
5.1.2. Виды сертификатов | ||||||||||||||||||||||||||||||||||||||||
Компания RU-CENTER предлагает получить SSL-сертификаты крупнейших международных Центров Сертификации. Для примера рассмотрен процесс получения сертификатов компании Thawte. Эта компания предлагает следующие виды SSL-сертификатов, наиболее востребованных в российских реалиях:
|
5.1.3. Получение SSL-сертификатов |
Процедура получения SSL-сертификата для юридического лица состоит из двух этапов:
|
5.1.3.1. Предварительная подготовка |
Перед подачей заявления на выпуск SSL-сертификата необходимо выполнить следующие условия: |
5.1.3.1.1. Пакет документов | ||
|
5.1.3.1.2. Доменное имя | ||
Для того чтобы иметь возможность получить SSL-сертификат, ваше доменное имя должно быть зарегистрировано и иметь запись в международном сервисе WHOIS. Для того чтобы узнать наличие записи о Вашем доменном имени, перейдите по ссылке whois.
|
5.1.3.1.3. IP-адрес |
Для установки и корректного функционирования SSL-сертификата обязательно наличие выделенного IP-адреса. Если у вас несколько субдоменов на одном IP вы можете воспользоваться Wildcard SSL сертификатом. |
5.1.3.1.4. Адрес электронной почты | ||
По требованию Удостоверяющего центра при заказе SSL-сертификата необходимо указать адрес электронной почты (approver email), на который будет отправлен запрос на подтверждение выпуска сертификата. E-mail получателя может принимать одно из следующих значений:
где [имя_домена] должно соответствовать полю «Common Name» (CN), указанному в CSR. В случае если сертификат заказывается для поддомена, в e-mail допускается использовать домен второго уровня.
|
5.1.3.1.5. Создание аккаунта RU-CENTER | ||
Для заказа любого вида SSL-сертификата, например через компанию RU-CENTER, предварительно необходимо создать аккаунт на сайте RU-CENTER.
Заходим на страницу регистрации нового аккаунта .
|
5.1.3.1.5.1. Для физического лица | ||||||||||||||||||||||||||||||||
Заполнение анкеты:
После заполнения всех необходимых полей нажать кнопку "Отправить анкету" Будет выведено сообщение об успешном заполнении анкеты. На указанный почтовый ящик будет отправлено письмо с уведомлением об успешном заполнении анкеты. Для продолжения работы нажать кнопку "Начать работу". |
5.1.3.1.5.2. Для юридического лица | ||||||||||||||||||||||||||||||||||||
Заполнение анкеты:
После заполнения всех необходимых полей нажать кнопку "Отправить анкету" Будет выведено сообщение об успешном заполнении анкеты. На указанный почтовый ящик будет отправлено письмо с уведомлением об успешном заполнении анкеты. Для продолжения работы нажать кнопку "Начать работу". |
5.1.3.1.5.3. Для индивидуального предпринимателя (ИП) | ||||||||||||||||||||||||||||||||||||||||
Заполнение анкеты:
После заполнения всех необходимых полей нажать кнопку "Отправить анкету" Будет выведено сообщение об успешном заполнении анкеты. На указанный почтовый ящик будет отправлено письмо с уведомлением об успешном заполнении анкеты. Для продолжения работы нажать кнопку "Начать работу". |
5.1.3.1.6. Внесение денежных средств на личный счет |
Для того чтобы заказать SSL-сертификат через компанию RU-CENTER необходимо, чтобы перед отправкой запроса на личном счету в личном кабинете вашей компании было достаточно средств для оплаты данной услуги. Текущий баланс можно проверить в личном кабинете (Оплата - Баланс личного счета): Откроется страница внесения денежных средств: Здесь нужно ввести сумму в рублях, на которую Вы планируете пополнить баланс и нажать кнопку "Пополнить". После этого откроется страница выбора способа пополнения, на которой можно выбрать нужный вариант.
Рассмотрим процесс безналичного перевода:
|
5.1.3.2. Создание и отправка запроса |
5.1.3.2.1. Выбор типа сертификата |
Для заказа SSL-сертификата необходимо авторизоваться в личном кабинете на сайте nic.ru. Для этого в правом верхнем углу нажать "Вход" и в открывшейся странице ввести свои номер договора и пароль, полученные в процессе регистрации. При этом суффикс договора оставить "NIC-D". После ввода данных нажать кнопку "Вход" ниже. Откроется личный кабинет. В разделе "Заказать услугу" выбрать пункт "SSL-сертификат". Откроется окно выбора типа сертификата: Подробная информация о типах SSL-сертификатов: Виды сертификатовВыбрать необходимый сертификат и срок его действия, нажать "Продолжить". Откроется окно для ввода CSR-запроса. Подробно Создание CSR запроса |
5.1.3.2.2. Отправка CSR-запроса |
После того как Вы определились с видом желаемого сертификата, необходимо Создать CSR запрос и внести его в форму на странице: Заполнение поля запроса производится прямым копированием текста запроса из буфера обмена. После этого необходимо выбрать используемый Вами тип сервера из списка ниже. В случае если Вы планируете работу с Платформой "Мельница данных" - выберите пункт "Other" ("Другой"). Нажмите кнопку "Продолжить". На следующей странице: некоторые из реквизитов будут заполнены автоматически на основании данных введенных Вами ранее при создании запроса и при регистрации аккаунта. Проверьте эти данные и заполните все остальные поля достоверной информацией. Все поля заполняются латинскими символами. Название организации в поле «Organization name» должно соответствовать данным указанным в CSR, в Whois домена и в свидетельстве о регистрации юридического лица. Длина названия организации не должна превышать 64 символов. В поля формы «Данные контактного лица» необходимо вводить корректную информацию, так как Удостоверяющий центр может воспользоваться ей для запроса дополнительных сведений. Нажмите кнопку "Продолжить" после заполнения всех полей. На следующей странице Вам будет предложено проверить все введенные данные. Если данные введены верно, нажмите кнопку "Отправить заказ". Данные будут отправлены. |
5.1.3.2.2.1. Создание CSR запроса | ||||||
Для генерации CSR-запроса существует несколько путей. Наиболее защищенным вариантом (рекомендуемым) является создание такого запроса с использованием OpenSource (свободно распространяемого) программного обеспечения OpenSSL Project (http://www.openssl.org/). На сайте проекта представлены открытые исходные коды программного обеспечения для обслуживания SSL-сертификатов. Коды находятся в свободном доступе на странице Исходные коды и могут быть скомпилированы под используемую конечным пользователем Платформу. Для Платформы Microsoft Windows готовые скомпилированные файлы проекта можно найти на сайте партнера проекта Shining Light Productions . В открывшемся списке файлов на этой странице выбрать вариант используемой операционной системы Windows компьютера, на котором будет производиться генерация CSR-запроса.
После нажатия на выбранную ссылку начнется процесс скачивания файла программного обеспечения (около 16 Мб). По завершении скачивания, необходимо запустить с локального диска файл Win32OpenSSL-1_0_0g(1).exe (для 32-хбитных систем) или Win64OpenSSL-1_0_0g(1).exe (для 64-хбитных систем). Процесс установки (на примере для 32-хбитных систем): Предупреждение системы безопасности - нажать "RUN" ("Выполнить") 1-й экран установщика - нажать "Next" ("Далее") Лицензионное соглашение - ознакомиться, выбрать пункт "I accept the agreement" и нажать "Next" ("Далее"). Выбор папки для установки - выбрать путь для установки программного обеспечения на жестком диске, нажать "Next" ("Далее"). Выбор папки установки в меню "Start" ("Пуск") - выбрать наименование папки, нажать "Next" ("Далее"). Выбор месторасположения дополнительных библиотек - установить библиотеки в папку установки программного обеспечения C:\OpenSSL\bin . Оставить без изменений, нажать "Next" ("Далее"). Проверка информации - проверить введенную ранее информацию, нажать "Install" ("Установить"). Начнется процесс установки программного обеспечения (около минуты). Далее появится окно: Здесь разработчики предлагают внести посильный вклад в развитие проекта путем перечисления определенной суммы. Данное действие добровольное и, если Вы не хотите перечислять денежные средства разработчикам, просто уберите все галочки из этого окна и нажмите "Finish" ("Завершить"). Установка завершена. Для создания CSR-запроса необходима следующая последовательность действий:
На этом этап создания CSR-закончен. Можно переходить к следующему шагу Отправка CSR-запроса |
5.1.3.3. Дальнейшие действия | ||
После отправки запроса вам придет запрос от компании RU-CENTER на предоставление дополнительных документов с инструкцией. По запросу предоставьте все необходимые материалы, собранные ранее на этапе предварительной подготовки. После получения ваших документов, специалист компании RU-CENTER, направит запрос с вашими данными в центр сертификации THAWTE. Производитель SSL-сертификатов производит обязательную проверку корректности CSR и предоставленных документов, а также осуществляет контрольный звонок в организацию, получающую сертификат. Обычно эта процедура занимает от 3 до 10 рабочих дней, в зависимости от типа заказанного сертификата. Если домен, на который оформляется сертификат, не принадлежит организации-заказчику, от владельца домена понадобится письменное разрешение (шаблон будет предоставлен при необходимости).
Сертификат выпускается, как правило, в течение трех суток после завершения процедуры проверки данных. После выпуска сертификат будет доступен для загрузки в вашем личном кабинете. Для того чтобы получить SSL-сертификат необходимо в личном кабинете перейти "Услуги - SSL-сертификаты". В выведенном списке выберите ссылку получить сертификат. Откроется страница для скачивания SSL-сертификата. Также, для дальнейшей работы потребуется корневой сертификат центра сертификации. В нашем случае - это сертификат компании Thawte. Скачать его можно на сайте Thawte . На открывшейся странице выделите весь текст, скопируйте его в блокнот и сохраните на жестком диске под именем SSL_CA_Bundle.pem . |
5.1.4. Самостоятельная генерация сертификата |
|
5.1.4.1. Самостоятельная генерация сертификата на основе ГОСТ алгоритмов |
|
5.1.5. Конвертация различных форматов сертификатов в требуемый | ||
Для корректного использования сертификатов в текущем сервисе требуется, чтобы сертификаты были в формате PEM (закодированными в Base64 кодировке), аналогично формату, использующемуся в Apache. Также необходимо, чтобы сертификаты хранились каждый в своем файле, т.е.
Рассмотрим наиболее часто встречаемые форматы и способы конвертации каждого из них в PEM формат. Формат PEM. Это целевой формат, в который нужно сконвертировать свои сертификаты, в случае если они находятся в других форматах. Формат DER. Это бинарная форма PEM формата. При открытии файлов данного типа в текстовом редакторе, строки BEGIN и END отсутствуют. Конвертация из DER в PEM : openssl x509 -inform der -in c:\cert.der -out c:\cert.pem Формат PKCS#7 или P7B. Данные сертификата обычно закодированы в формате Base64, и он не может содержать приватных ключей. При открытии файлов данного типа в текстовом редакторе можно увидеть строки "BEGIN PKCS7" и "END PKCS7". Конвертация из P7B в PEM : openssl pkcs7 -print_certs -in c:\cert.p7b -out c:\cert.pem
В случае затруднения в разделении на отдельные файлы, возможно, будет проще сконвертировать полученный на предыдущем шаге PEM файл и имеющийся приватный ключ (в PEM формате) в PFX формат, который затем сконвертировать в PEM формат, с разделением на отдельные файлы: Конвертация из PEM в PFX : openssl pkcs12 -export -out c:\cert.pfx -inkey c:\cert.key.pem -in c:\cert.pem Где:
Формат PKCS#12 или PFX. Данные представлены в бинарной форме. Это файл контейнер который содержит все сертификаты - сертификат(ы) центра сертификации, сертификат домена и его приватный ключ. Конвертация из PFX в PEM :
Назначение, удаление или изменение пароля приватного ключа : openssl rsa -des3 -in c:\old_cert.key.pem -out c:\new_cert.key.pem -passin pass:old_password -passout pass:new_password Для удаления пароля не указывайте параметр passout. В случае если исходный файл без пароля, то не указывайте параметр passin. |
5.2. Решение проблем |
Для диагностики проблем в некоторых случаях помогает страница диагностики. Она доступна всем пользователям системы по url /.system/diag.html. Попросите удаленных пользователей воспользоваться возможностями этой страницы. |
5.2.1. Проблема доставки запросов от клиента к серверу |
Описание проблемы: На клиенте - проходит авторизация, проходит получение данных дерева каталогов и гридов. При этом не проходят запросы на совершение действий и не проходят запросы после задания условий отбора. На сервере - В отладочном мониторе появляются сообщения "Socket became inactive in first line" или "Bad first line". Причины проблемы: Проблема связана с особенностями провайдера клиента. У провайдера установлено ограничение на длину любого http-запроса, либо POST-запроса в 1KB или немногим более. Обычно проблема проявляется при использовании Microsoft (ISA) Internet Security and Acceleration Server на маршрутизаторе локальной сети. Для диагностики такой ситуации можно использовать командный сценарий проверки провайдера (пример) . Сценарий покажет, что отказ происходит именно при отправке запроса, размер которого превышает 1 КВ. Вы можете написать собственный сценарий проверки, лучше соответствующий вашей ситуации, и распространить его своим клиентам. Запуск файла производится из окружения интерпретатора командной строки Windows (cmd.exe) Решение проблемы лежит не в области функциональности программного продукта, а в области его эксплуатации, конкретнее - в области организации взаимодействия между web-сервером и клиентскими рабочими местами пользователей. Проблема должна решаться специалистами, отвечающими за сопровождение программного продукта у тех клиентов, у которых имеет место описанное выше ограничение. Пути решения проблемы: 1. Обратиться к провайдеру с просьбой о снятии ограничения на размер запросов. 2. Использовать нестандартный TCP/IP порт, договорившись с провайдером о его открытии с серверной и клиентской стороны. Данный путь не гарантирует решения проблемы, но может помочь. В данном случае "провайдером" может выступать как администратор локальной сети организации, так и ISP (интернет-провайдер), в зависимости от того, как организовано подключение конечного пользователя. 3. Использовать протокол https. В этом случае провайдер не сможет анализировать содержимое обмена и, следовательно, не сможет применять ограничения. Для использования протокола https необходимо иметь сертификат, а также внести изменения в настройки web-сервера. Первые два пути могут способствовать быстрому решению проблемы. При этом стратегически правильным является путь 3 - использование протокола https. Взаимодействие по протоколу https может быть организовано с использованием сертификатов двух видов: 1) Сертификат, выдаваемый уполномоченными организациями ("настоящий" сертификат). Инструкция по получению "настоящего" сертификата включена в данное руководство, а также доступна по адресу: http://app.techmill.ru/paruspub/current/documentation/ED01679A80A74E999952269A89D95D36.html 2) Самостоятельно сгенерированный сертификат. Инструкция по генерации такого сертификата приведена Здесь. При использовании самостоятельно сгенерированного сертификата браузер пользователя будет выдавать предупреждение о сомнении в его достоверности. О том как избежать отображения такого предупреждения также написано Здесь. Действия по установке настроек web-сервера для работы по протоколу https описаны Здесь. |
5.2.1.1. Сценарий проверки провайдера (пример) |
Содержимое примера файла сценария проверки провайдера Testme.bat 01@echo off 02IF "%1"=="" GOTO NOHOST 03 04echo Checking connection... 05AppServerFetch download %TEMP%\1.bin from http://%1/ >nul 06IF NOT %ERRORLEVEL%==0 GOTO ERROR 07echo passed. 08 09echo Checking DataMill Application Server.... 10AppServerFetch download %TEMP%\1.bin from http://%1/.system/session.xml >nul 11IF NOT %ERRORLEVEL%==0 GOTO ERROR 12echo passed. 13 14echo Checking long GET.... 15AppServerFetch download %TEMP%\1.bin from http://%1/.system/session.xml?data=0123456789^ 160123456789012345678901234567890123456789012345678901234567890123456789^ 170123456789012345678901234567890123456789012345678901234567890123456789^ 180123456789012345678901234567890123456789012345678901234567890123456789^ 190123456789012345678901234567890123456789012345678901234567890123456789^ 200123456789012345678901234567890123456789012345678901234567890123456789^ 210123456789012345678901234567890123456789012345678901234567890123456789^ 220123456789012345678901234567890123456789012345678901234567890123456789^ 230123456789012345678901234567890123456789012345678901234567890123456789^ 240123456789012345678901234567890123456789012345678901234567890123456789^ 250123456789012345678901234567890123456789012345678901234567890123456789^ 260123456789012345678901234567890123456789012345678901234567890123456789^ 270123456789012345678901234567890123456789012345678901234567890123456789^ 280123456789012345678901234567890123456789012345678901234567890123456789^ 290123456789012345678901234567890123456789012345678901234567890123456789^ 300123456789012345678901234567890123456789012345678901234567890123456789^ 310123456789012345678901234567890123456789012345678901234567890123456789^ 320123456789012345678901234567890123456789012345678901234567890123456789^ 330123456789012345678901234567890123456789012345678901234567890123456789^ 340123456789012345678901234567890123456789012345678901234567890123456789^ 350123456789012345678901234567890123456789012345678901234567890123456789^ 3601234567890 > nul 37IF NOT %ERRORLEVEL%==0 GOTO ERROR 38echo passed. 39 40echo Checking POST.... 41echo 01234567890 > %TEMP%\2.bin 42AppServerFetch download %TEMP%\1.bin from http://%1/.system/session.xml sending %TEMP%\2.bin >nul 43IF NOT %ERRORLEVEL%==0 GOTO ERROR 44echo passed. 45 46 47echo Checking long POST.... 48for /L %%i in (1,1,100) DO echo 01234567890 >> %TEMP%\2.bin 49AppServerFetch download %TEMP%\1.bin from http://%1/.system/session.xml sending %TEMP%\2.bin >nul 50IF NOT %ERRORLEVEL%==0 GOTO ERROR 51echo passed. 52 53exit /B 0 54:ERROR 55echo Failed. 56exit /B 1 57:NOHOST 58echo Host not given. 59exit /B 2 |
5.2.2. Клиент не может авторизоваться в системе |
Описание проблемы: На клиенте - ошибка " 403 Forbidden " при попытке входа в систему. На сервере - наблюдается неконтролируемый рост числа сессий с одного ip-адреса. Причины проблемы: Удаленные клиенты идентифицируются сервером при помощи ip-адреса и "идентификатора сессии", который поддерживается посредством механизма cookies. Механизм cookies используется следующим образом: - при первом обращении клиента к серверу, сервер генерирует идентификатор cookie (GUID) и передает его вместе с ответом клиенту; при этом каждая cookie имеет свое время жизни; время жизни задается сервером как момент времени, в который cookie будет уничтожена. Этот момент (в будущем) определяется настройкой "время жизни сессии". В соответствии с требованием стандарта для единства операций со временем (сервер и клиент могут находиться в разных часовых поясах) время указывается по Гринвичу (GMT); - клиент, получив cookie, прикрепляет ее к каждому своему дальнейшему запросу, до тех пор, пока ее время жизни не истечет; когда время жизни истекает, сервер получает запрос без cookie и выдает ошибку авторизации; - для сравнения своего текущего времени со временем на Гринвиче и сервер и клиент используют информацию о своем системном времени и своем часовом поясе. При неверной установке системного времени и/или часового пояса на сервере или на клиенте, возникнет рассинхронизация, и клиент может ошибочно считать время жизни cookie истекшим. Также очевидно, что решение проблемы лежит не в области функциональности программного продукта, а в области его эксплуатации, конкретнее - решение заключается в настройке web-сервера и рабочих мест удаленных пользователей. Проблема должна решаться специалистами, отвечающими за сопровождение программного продукта у тех клиентов, у которых имеет место описанная проблема. Пути решения проблемы:
|
5.2.3. Получение ответов «403 Forbidden» при некоторых действиях после успешной авторизации |
Описание проблемы: На клиенте - после успешной авторизации на некоторые запросы возвращается ошибка "403 Forbidden". На сервере - несколько запросов в рамках одной сессии приходят с одинакового ip-адреса, далее идут несколько запросов с разных ip-адресов рамках той же сессии. После этого запросы снова идут с первого ip-адреса. Причины проблемы: Ошибка происходит в момент смены видимого ip-адреса (запрос приходит на сервер не с того ip-адреса, с которого выполнялась авторизация). Иными словами, имеется проблема нестабильности ip-адреса в рамках одной пользовательской сессии. Удаленные клиенты идентифицируются сервером при помощи ip-адреса и "идентификатора сессии", который поддерживается посредством механизма cookies. Использование ip-адреса в дополнение к cookies обусловлено следующими факторами:
Пути решения проблемы:
|
5.2.4. Неустойчивый внешний канал |
Вопрос: - Не отображаются активные сессии в "Настройке сервиса" (используется протокол HTTP) - Наблюдается очень медленная работа веб-сервиса. Например, на авторизацию и открытие списка отчетов уходит до 10 минут. При этом запросов от BalanceOnline активных в базе нет и ресурсы веб-сервера не загружены. Ответ: Причиной описанных проблем является неустойчивый внешний канал связи. Для решения необходимо в параметрах сетевых настроек сервиса : 1. Включить сжатие трафика; 2. Снять галку "повторно использовать сессии" 3. Если предыдущие шаги не помогли, то увеличить значение параметра "Количество потоков прослушивателя" до 32. Если клиентов ожидается больше 300 (на неусточивом канале), то задать значение в 48 или даже 64 потока. Ставить большее значение не имеет смысла, в этом случае необходимо расширять внешний канал. |
5.2.5. Медленное открытие трафаретов, при установленном антивирусе Kaspersky |
Описание проблемы : При установленном антивирусе Kaspersky, наблюдается значительное замедление открытия трафаретов в браузере. Причина проблемы : Причиной проблемы является установленное в браузер расширение антивируса Kaspersky. Решение проблемы : Необходимо отключить это расширение в используемом браузере. Начиная с 15 версии вышеупомянутого антивируса, отключение этого расширения в браузере не достаточно, т.к. оно снова устанавливается при каждом запуске браузера. Для решения этой проблемы, необходимо отключить автоматическую установку этого расширения в самом антивирусе. Последовательность действий: |
5.2.6. Клиент не может соединиться с сервером по протоколу https с помощью Internet Explorer в Windows XP |
Клиент, используя Windows XP и Microsoft Internet Explorer, любой из доступной для этой ОС версии - 6, 7 или 8, не может соединиться с сервером по протоколу https: Это происходит по следующим причинам (какой-то одной или вместе взятых):
Решить проблему правильным и безопасным способом, это посоветовать пользователю воспользоваться другим браузером. В случаях, когда нужно принять временную меру (плохое и небезопасное решение, крайне не рекомендуется).
Рассматривайте эти меры только как временные и переводите удаленных пользователей на более современные системы. |
5.2.7. Клиент не может соединиться с сервером по протоколу HTTPS с помощью Internet Explorer в Windows 7 и других браузеров без TLS 1.2 |
Клиент не может соединиться с сервером по протоколу HTTPS с помощью Internet Explorer в Windows 7, а также других браузеров, не поддерживающих TLS 1.2, вне зависимости от ОС. По умолчанию, поддержка протоколов TLS 1.0 и TLS 1.1 отключена, по причине их небезопасности. Поэтому в следующих случаях клиент не сможет соединиться с сервисом по протоколу HTTPS:
Решить проблему правильным и безопасным способом, это посоветовать пользователю воспользоваться актуальной версией браузера, поддерживающий протокол TLS 1.2 и TLS 1.3. В случаях, когда нужно принять временную меру (плохое и небезопасное решение, крайне не рекомендуется).
Рассматривайте эти меры только как временные и переводите удаленных пользователей на более современные системы. |
5.2.8. Медленная работа удаленного клиента через приложение Win32, в случае работы через прокси сервер |
В случае работы сервиса за серверным прокси сервером и наблюдением медленной работы удаленного клиента, например есть задержки с получением ответа, в то время как на хосте сервиса видно, что данные отправились быстро, рекомендуется проверить нижеуказанные настройки сервиса:
Также стоит обратить внимание на настройки прокси сервера, касаемые буферизации ответов. Значение этих буферов должно быть как можно меньше или выключено совсем. Именование настроек для некоторых прокси серверов:
|
5.2.9. Поддержка долгоживущих соединений между сервером приложений и сервером СУБД (Oracle или Postgres) | ||
При длительном неиспользовании TCP соединения, роутеры между этими серверами могут начать оптимизировать использование своих ресурсов. Для этого они будут закрывать соединения, которые долго простаивали, обычно порогом является 2 ч. При этом ни сервер приложений, ни сервер СУБД не уведомляются о том, что их соединение оборвалось, и по-прежнему считают его активным. Результат подобных обрывов соединений является нежелательным ни для сервера приложений, ни для сервера СУБД и будут приводить к многочисленным проблемам, например:
Для того чтобы избежать подобных нежелательных обрывов соединений, предлагается ряд административных мер по настройке сервера СУБД для поддержания соединений в активном состоянии. Проверка и поддержание соединения активным осуществляется следующим образом. В результате пересылки таких пакетов на простаивающих соединениях будет создаваться трафик и промежуточные роутеры будут считать, что соединение необходимо и еще используется, и не будут обрывать соединения, со своей стороны. В Oracle, начиная с 12-й версии для этой механики используется настройки TCP соединений, которые хорошо описаны в следующей документации Oracle - Dead connection detection:
Таким образом, в Oracle всем этим можно управлять только через настройку SQLNET.EXPIRE_TIME. Умолчательное значение 0, т.е. выключено. Для случаев когда необходимо включить механику поддержки активности соединений, рекомендуемое значение 10 минут. В Postgres, (в 9.6 эти настройки точно уже присутствуют) есть аналогичные настройки в файле postgres.conf:
Таким образом, в Postgres всем этим можно управлять через вышеуказанные настройки в файле конфигурации postgres.conf. Для случаев, когда необходимо включить механику поддержки активности соединений, рекомендуется начать со значений, применяемых Oracle, т.к. они более продуманные и приближенные к жизни, а именно:
|
5.3. Ограничения и несовместимости |
5.3.1. Механизм описателей атрибутов документов | ||||||||||
Поддержка механизма "Описателей атрибутов документов" реализована для следующих разделов:
|
5.3.2. Механизм пользовательских пересчетов |
Поддержка механизмов пользовательских пересчетов реализована для раздела "Первичные/сводные отчеты". Поддерживаются только пользовательские пересчеты, основанные на хранимых процедурах (не на пользовательских). Не забудьте создать псевдоним в схеме PUBLIC для процедуры пересчета, и предоставить пользователю PUBLIС права на вызов процедуры пересчета. |
5.3.3. Механизм пользовательских приложений | ||||
Реализована поддержка механизмов пользовательских приложений. Поддерживаются пользовательские приложения на основе модулей, разработанных на языке VBscript . Скрипт выполняется в адресном пространстве сервиса. Поддерживаются доступные объекты, переменные, функции, описанные в документации ПП Парус 8 для скриптовых модулей пользовательских приложений, с учетом следующих ограничений и дополнений:
Механизм автоматической загрузки и регистрации зависимых модулей не поддерживается. Администратор сервера обязан самостоятельно обеспечить доступность COM-объектов, используемых в скриптах пользовательских приложений, с учетом разрядности редакции сервиса.
|
5.3.4. Механизм детального контроля прав доступа |
Механизм поддерживается в разделах "Первичные/Сводные очеты", "Формы отчетов" и "Контрагенты". Поддерживаются только предикаты, связанные со следующими объектами:
|