Verba-OW-Automation
Скрипты автоматизации ПО Верба-OW.
Не встраивание, а именно скрипты - с открытым кодом, используя только штатные средства системы. Без какого-либо стороннего ПО. Это важно.
Что требуется
- Установленное ПО Верба-OW. Банкам предоставляется Банком России. Можно купить отдельно, как и штатный модуль командной строки, у производителя (но не банкам). Бывает в том или ином виде в составе разных Интернет-Банков и клиентов бирж, где его можно скачать. Свободно не распространяется, так как для установки требует именную лицензию и учет распространения, а также ключи.
- Из этого ПО для взаимодействия требуется только библиотека wbotho.dll.
- .NET штатной версии 3.5 или выше.
- PowerShell штатной версии 2.0 или выше - опционально. Потому что можно и просто на cmd.
Что не требуется
- Никакое стороннее ПО, недоверенные бинарные модули, лицензии на разработку и встраивание.
- SDK и документы с грифом ДСП.
- Wftesto - скомпилированный EXE из состава SDK Верба-OW, приведенный там лишь в качестве примера вызова функций из библиотеки wbotho.dll, содержащий неточности и не предназначенный для промышленного применения.
- Vb (VbO) - исполняемый модуль командной строки от создателей Верба-W/OW, но против покупки и использования которого Банк России.
- Visual Studio - прилагаемый здесь в папке vs проект служит лишь для удобства написания программных текстов в нем и проверки их запускаемости. Эти тексты можно написать в любом подручном редакторе и проверить с помощью системных компиляторов
csc
из состава установленных библиотек .NET. Примеры их использования есть в папке test:csc.cmd
- для .NET 3.5csc4.cmd
- для .NET 4+
- Знания C# свежее 2008 года - скрипт на PowerShell будет использовать тот .NET, который установлен в Вашей системе. Если он там версии 3.5, например, то и набранный в редакторе текст не должен содержать те нововведения языка C#, которые умеет применять Visual Studio наших дней.
- Знания, как запускать PowerShell - используйте
run.cmd
в папке posh.
Как использовать
Написать какой-либо свой обработчик массы файлов, требующих обработки с помощью ПО Верба-OW, на любом скриптовом языке типа PowerShell, CMD, JavaScript или HTA и запускать функции из файла Verba.cs
(в папке verba) так, как это показано в примерах в samples. Никакого постороннего ПО или недоверенных бинарных модулей не требуется.
В папке work собраны некоторые скрипты обработки обмена ПТК ПСД.
В отличие от штатного АРМ РМП можно использовать несколько загруженных в память драйвера ключей одновременно, убрав при этом ключевые носители после загрузки с них. Для этого надо лишь сформировать штатными средствами общий справочник, как показано в папке pub.
Для проверки функционирования скриптов можно использовать как запускаемый PowerShell скриптовый код на языке C#, так и скомпилированный под Ваш .NET VerbaTest.exe
(пример). Синтаксис команд у него почти такой же, как у общеизвестной программы из SDK Wftesto.exe
. Сделаны лишь несколько улучшений:
- возврат кода 0 (успешно) или 1+ (были ошибки);
- очистка всех слотов в драйвере разом (команда
r
без параметров); - добавлены функции по работе с подписями в отдельном файле.
Это готовый wrapper для запуска функций DLL из любого языка .NET или просто из командной строки cmd - этот вариант сейчас развивается больше всего.
Благодарности
Спасибо всем, чьи идеи мне удалось встретить на форуме BANKIR.RU на стыке Автоматизации и ИБ.
Лицензионное соглашение
Licensed under the Apache License, Version 2.0.
Вы можете использовать этот код совершенно свободно без всяких ограничений с моей стороны и без претензий с Вашей.
Если Вы захотите встроить что-то в свои приложения, то Вам необходимо будет проверить необходимость применения правил лицензирования по работе с таким ПО, принятых в Вашем государстве.
Описание
Скрипты автоматизации ПО Верба-OW: cmd + PowerShell + C# + DLL