Дипломная работа: Автоматизация приема платежей в базе конфигурации "1С: Предприятия 8.3" в ООО "Мастер Плюс"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
45
Для обоих способов взаимодействия сценарии работы пользователя в
программе "1С:Предприятие" очень близки и в большинстве случаев не зависят
от способа подключения.
Предприятие пользуется услугами АО "Альфа-Банк", у которого на
текущий момент не имеется собственного криптографического программного
обеспечения.
В нашем случае аутентификация происходит по закрытому ключу
сертификата. Система передает в Банк уникальный идентификатор Клиента в
банковской системе, а также файл открытой части ключа электронной подписи
Клиента, импортированный в систему "1С:Предприятие" на этапе настроек
обмена (метод "LogonCert", передается XML-файл, соответствующий XML-
схеме данных для аутентификации по закрытому ключу). Банковский сервис по
идентификатору клиента, серийному номеру сертификата и имени издателя
выполняет поиск сертификата электронной подписи Клиента, если находит, то
возвращает уникальный идентификатор "маркер", зашифрованный с
использованием открытого ключа электронной подписи Клиента. Если не
находит, то возвращает ошибку аутентификации.
Полученный маркер должен быть расшифрован на стороне
"1С:Предприятие" с использованием закрытого ключа электронной подписи. В
дальнейшем, расшифрованный уникальный идентификатор должен быть указан
в каждом HTTP-запросе для обмена данными на транспортном уровне
заголовке SID). Алгоритм представлен на рисунке 13.
46
Рисунок 13. Алгоритм аутентификации клиента по закрытому
ключу ЭП.
На данном этапе, в программе "1С:Предприятие" выполняется проверка:
если пароль от контейнера закрытого ключа не сохранен в системе, а вводится
при каждом запросе, система предложит пользователю ввести пароль в
диалоговом окне.
Транспортный уровень позволяет отправлять и получать электронные
документы между клиентской системой "1С:Предприятие" и Банком по
согласованным между сторонами обмена настройкам, используя
зашифрованный канал. Инициатором сеанса обмена всегда выступает система
"1С:Предприятие".
Для передачи электронных документов между участниками обмена
используется "транспортный контейнер". Это XML-файл, сформированный по
определенному формату (XML-схема транспортного контейнера). Пример
сформированного транспортного контейнера в формате XML изображен на
рисунке 14.
47
Рисунок 14. Пример XML-файла запроса выписки.
Если настройки обмена между Клиентом и Банком предусматривают
сжатие данных, то электронные документы перед помещением в транспортный
контейнер сжимаются в формате архива.
Схема формирования транспортного контейнера с вариантами
использования настройки сжатия данных представлена на рисунке 15.
48
Рисунок 15. Схемы транспортного контейнера.
Следующим этапом является отправка электронных документов из "1С".
Отправка выполняется в 3 этапа:
- формирование транспортного контейнера, содержащего
электронные документы;
- аутентификация Клиента на стороне Банка (если нет ранее
открытой сессии);
- отправка транспортного контейнера в Банк и обработка ответа.
В "1С" формируется транспортный контейнер с одним или несколькими
электронными документами.
Далее проходит аутентификация на стороне Банка согласно выбранному
протоколу, в данном случае используется аутентификация по закрытому ключу
электронной подписи.
49
Если аутентификация пройдена успешно, транспортный контейнер
передается в Банк (отправка на ресурс Банка производится HTTP-методом
"POST" метод "SendPack"), в синхронном режиме банковская система
возвращает либо ошибку получения, либо уникальный идентификатор на
стороне Банка, который будет однозначно соответствовать полученному
транспортному контейнеру.
Банковская система может проводить контроль формата и разбор
транспортного контейнера:
- либо в синхронном режиме (сразу в момент получения);
- либо в асинхронном режиме (ставит входящие транспортные
контейнеры в очередь на разбор).
Для такого варианта уникальный идентификатор возвращается сразу
после того, как транспортный контейнер успешно был поставлен в очередь на
разбор, не дожидаясь самого разбора.
Далее запускается процесс разбора очереди входящих транспортных
контейнеров банковской системой, результатом которого будет ответ о
состоянии обработки (XML-файл, соответствующий XML-схеме извещения о
состояния обработки транспортного контейнера).
Подготовленный ответ Банка упаковывается в транспортный контейнер
и ожидает на стороне Банка очередного запроса на наличие подготовленных к
передаче транспортных контейнеров из "1С".
Параллельно с процессом отправки ответа о состоянии обработки
транспортного контейнера банковская система выполняет обработку каждого
электронного документа, входящего в него. Этот алгоритм представлен на
рисунке 16.
Источник: https://baza.diplomsite.ru/previewfile/1994