REST webervice, запускающий скрипт QSHELL

У меня есть веб-служба REST, на которой запущена программа RPG, так как мне нужно зашифровать некоторые данные с помощью Openssl. Я создал сценарий оболочки, который получает данные через переменные ENV и отправляет данные в областях данных.

Rest_RPG вызывает CLP, который запускает сценарий qsh, и извлекает данные из области данных. Если я запускаю cl в интерактивном режиме, он работает отлично и извлекает данные из области данных, но при вызове из веб-службы REST ничего не извлекает, я дал полномочия QTMHHTTP и QTMHHTP1 для QGPL, и не повезло, какие-либо идеи?

скрипт:print -nr $PASS | openssl enc -aes-128-ecb -K $KEY_HEX -nosalt -base64 | область данных -wl $DTAPASS

CLP:CRTDTAARA DTAARA(QGPL/DTAPASS) TYPE(*CHAR) LEN(512) AUT(*ALL)ADDENVVAR ENVVAR(PASS) VALUE(&PPASS) CCSID(*JOB) REPLACE(*YES)qsh('/tmp/script.sh')RTVDTAARA DTAARAQGPL/DTAPASS) RTNVAR(&ENC_PASS)

2 ответа

кажется, проблема связана с относительным путем (библиотека QGPL) и комбинацией -wl. Пожалуйста, попробуйте создать область данных в другой библиотеке, которая является частью списка библиотек задания, или используйте опцию datarea -w.

Я пробовал другие библиотеки, сдался, теперь я использую IBM Cryptographic API.

https://www.ibm.com/docs/api/v1/content/ssw_ibm_i_74/apis/catcrypt.htm?fbclid=IwAR0-BGP-6wdBQPMXP3lp-EPSARpfcIcdCuEE5RzcGYBIdbnVFCno0qVjyBU

Другие вопросы по тегам