Вид РИД
Изобретение
Изобретение относится к вычислительной технике, в частности к средствам защищенного обмена данными между клиентом и сервером.
Известен способ взаимодействия терминального устройства клиента с сервером по сети интернет (RU 2496136 С1, 20.10.2013), в котором передачу пакетов данных между терминальным устройством клиента и сервером осуществляют с изменением IP адреса сервера, что позволяет обеспечить дополнительную защиту.
Также известны способ и система выполнения услуг на сервере и клиенте клиент-серверной архитектуры (RU 2554570 С2, 10.10.2013), где в процессе выполнения услуги в точке принятия решения сервис может обратиться к клиенту, который может принять решение о дальнейшем способе выполнении услуги.
Недостатком этих способов является то, что программное обеспечение на клиенте установлено заранее, то есть, по существу, мы имеем дело с так называемыми «толстыми» клиентами, что ограничивает их гибкость.
В то же время известно решение, в котором способ защищенного взаимодействия с пользователем реализуется через традиционный web-browser, в который введены ограничения по использованию и добавлены функции обеспечения безопасности (Secure browser, патент US 9055048 В2, 09.06.2015). Здесь на клиенте отображаются html-страницы и выполняются сценарии, включенные в их состав.
Недостатком этого технического решения является перенос данных, оформления и сценариев совместно, что при повторных просмотрах, характерных для вычислительных систем, часто приводит к неоднократному повтору передачи одной и той же информации, когда данные, представленные на странице, различаются, а оформление и сценарии остаются одними и теми же.
Техническим результатом изобретения является обеспечение гибкости работы клиента и повышение скорости обработки информации при функционировании в защищенной среде.
Указанный технический результат достигается тем, что используется способ организации взаимодействия клиента по крайней мере с одним с сервером приложений, включающий процедуру аутентификации с формированием идентификатора сеанса и процедуру авторизации, отличающийся тем, что на клиентском рабочем месте запускают специальную программу сервис-браузер, которая после проведения процедур аутентификации и авторизации получает путем вызова сервиса на сервере приложений перечень ресурсов, доступных данному пользователю, и в соответствии с этим перечнем производит с использованием методов вызванного сервиса копирование на рабочее место прикладных программных модулей с их последующим запуском сервис-браузером на клиентском рабочем месте по выбору пользователя с тем, чтобы прикладные программные модули вызывали прикладные сервисы с сервера приложений при обеспечении вызовов с единым идентификатором сеанса связи, полученного сервис-браузером в процессе аутентификации и передаваемого каждому методу вызываемого сервиса.
Сервис-браузер наряду с программными модулями дополнительно копирует с сервера приложений вспомогательные файлы, необходимые для функционирования этих модулей.
Сервис-браузер дополнительно передает запускаемому прикладному программному модулю идентификатор пользователя для передачи вызываемому сервису.
Сервис-браузер вызывает прикладные сервисы с разных серверов приложений в зависимости от служебных данных каждого программного модуля, присутствующих в перечне ресурсов.
На Фиг. 1 представлена схема взаимодействия клиентского рабочего места с сервером приложений на основе использования сервис-браузера.
На Фиг. 2 представлена последовательность обмена данными между клиентским рабочим местом и сервером приложений.
На Фиг. 3 представлены результаты измерений времени загрузки информации для традиционного браузера и сервис-браузера.
При указанном способе взаимодействия на клиенте используется специальная программа, которая в дальнейшем называется сервис-браузер, а на сервере приложений три служебных сервиса: «сервис аутентификации», «сервис авторизации» и «сервис обслуживания ресурсов». Особенность сервис-браузера заключается в том, что он работает не с html-страницами как обычный браузер, а с электронными сервисами, размещенными на основном сервере приложений, и, при необходимости, на дополнительных серверах приложений. Чтобы такая работа стала возможной, сервис-браузер после аутентификации и авторизации вызывает сервис обслуживания ресурсов, с использованием которого скачивает прикладные модули и необходимые файлы на рабочую станцию в область, доступную сервис-браузеру. Сервис-браузер запускает прикладные модули, которые в свою очередь вызывают прикладные сервисы, получают от них данные и обрабатывают их. В процессе обработки при необходимости проводится повторное обращение к прикладным сервисам. Отметим, что прикладные сервисы могут быть разными и зависят от вызываемой прикладной системы, а не зависят от сервиса-браузера, и только работают по правилам, им определяемым.
В качестве электронных сервисов применяются web-сервисы, использующие технологию Microsoft протокола SOAP. Возможно также использование REST-сервисов или сервисов другого вида. Важно лишь то, чтобы сервисы, вызываемые клиентом, и сервисы, размещенные на сервере приложений, были одного вида.
Взаимодействие осуществляется следующим образом (Фиг. 1):
1) на клиентском рабочем месте 1 запускается программа сервис-браузера 2, которая активизирует модуль аутентификации 3 и с его помощью запрашивает у пользователя идентификационные данные и на основе этих данных проводит процедуру аутентификации, вызывая с сервера приложений 4 сервис аутентификации 5, передавая посредством этого вызова идентификационные данные в зашифрованном виде на сервер приложений, сверяя их с данными, хранящимися на сервере приложений, и возвращая идентификатор сеанса при завершении вызова web-сервиса программе сервис-браузер в случае положительного исхода;
2) после получения сервис-браузером идентификатора сеанса активизируется модуль авторизации 6, который осуществляет вызов сервиса авторизации 7 с сервера приложений и передает посредством этого вызова идентификатор сеанса;
3) проводится проверка средствами сервиса авторизации 7 идентификатора сеанса путем вызова сервиса аутентификации 5 и получения от него идентификатора пользователя в случае успешной проверки;
4) осуществляется выделение сервисом авторизации 7 перечня ресурсов, определяемых правами данного пользователя (программных модулей и данных в виде файлов) и возврат этого перечня при завершении вызова сервиса программе сервис-браузер;
5) сервис-браузером 2 с использованием модуля работы с ресурсами 8 проводится анализ наличия на клиенте ресурсов (программных модулей и данных в виде файлов) в соответствии с полученным перечнем и актуальности этих ресурсов по дате последнего изменения;
6) сервис-браузером 2 с использованием модуля работы с ресурсами 8 вызывается с сервера приложений 4 сервис обслуживания ресурсов 9, проводя с его использованием копирование с сервера приложений 4 на клиентское рабочее место 1 ресурсов, которые отсутствуют на клиенте или неактуальны. При этом прикладные модули копируются в хранилище прикладных модулей 10, а данные, необходимые для их работы, копируются в хранилище данных клиента 11;
7) далее сервис-браузер 2 осуществляет вывод пользователю перечня программных модулей, доступных для выполнения;
8) пользователь на основании этого перечня доступных ему модулей может провести выбор определенного программного модуля и передать указание сервис-браузеру 2 на его выборку из хранилища программных модулей 10 и запуск;
9) вызванный программный модуль начинает выполняться, используя данные из хранилища данных клиента 11, и осуществляет вызов прикладных сервисов 12 с сервера приложений;
10) вызов сервисов из сервера приложений осуществляется через сеть 13 с использованием web-сервера 14. Сервисы, в свою очередь, могут обращаться к серверу баз данных 15, где хранится серверная информация;
11) сервис-браузером может также инициироваться запуск любого другого программного модуля из перечня разрешенных.
Последовательность обмена данными между клиентским рабочим местом и сервером приложений иллюстрирует Фиг. 2. Здесь все стрелки, направленные от клиентского рабочего места к серверу приложений, показывают процесс вызова того или иного сервиса, а стрелки, направленные от сервиса приложений к клиентскому рабочему месту, иллюстрируют ответ сервиса. Надписи под стрелками показывают, какие данные при этом передаются.
На фиг. 3 показаны результаты измерений времени загрузки информации на макете для двух вариантов: традиционного браузера, загружающего html-страницы, и сервис-браузера, загружающего данные. В последнем случае согласно описанному выше способу все программные модули и файлы, необходимые для отображения, загружены на начальной стадии. В связи с этим в процессе работы, как следует из графиков, показанных на Фиг. 3 время загрузки информации с использованием сервис-браузера существенно меньше, чем у традиционного html-браузера. В то же время сервис-браузер может работать с различными прикладными модулями и сервисами, что обеспечивает гибкость при его использовании.