Как установить параметры SN C для node-rf c? - PullRequest
1 голос
/ 21 января 2020

Я пытаюсь использовать node-rf c для выполнения операций CRUD. Система, которую я пытаюсь использовать, имеет SN C.

Я не знаю, как это объяснить, но SN C является многофакторной аутентификацией.

Я использую следующие параметры

var abapSystem = {
    sncName: 'p/secude:CN=<SYSTEM>,O=<COMPANY>,C=US',
    ashost: 'something.db.com',
    sysnr: '00',
    client: '400',
    SNC_MODE: '1'
};

и получение ошибки

Введены неверные аргументы для вызова SN C -API

Кто-нибудь знает, как его настроить ?

Полный код:

var rfc = require('node-rfc');
var abapSystem = {
    user: 'sap_user',
    passwd: 'sap_user_pwd',
    ashost: 'sap.nodomain',
    sysnr: '01',
    client: '800'
};
var client = new rfc.Client(abapSystem);
var MAX_ROWS = 3;
var SELECTION_RANGE_str = {
               PARAMETER: "USERNAME",
               SIGN:      "I",
               OPTION:    "CP",
               LOW:       "A*"
        };     
var SELECTION_RANGE_tab = [SELECTION_RANGE_str];

client.connect(function(err) {
    if (err) {
        return console.error('could not connect to server', err);
    }  
    client.invoke('BAPI_USER_GETLIST', {
                       MAX_ROWS: MAX_ROWS,
                       SELECTION_RANGE: SELECTION_RANGE_tab
        },
        function(err, res) {
            if (err) {
                return console.error('Error invoking BAPI_USER_GETLIST:', err);
            }
               console.log('Result BAPI_USER_GETLIST:', res);
        });   
});

1 Ответ

1 голос
/ 22 января 2020

Я не знаю, как это объяснить, но SN C является многофакторной аутентификацией

SN C не является многофакторной аутентификацией. Период.

Прочтите help полностью, это технология SSO SAP с шифрованием.

Я полагаю, что параметры должны быть следующими в вашем случае:

var abapSystem = {
    'snc_mode' : '1',
    'snc_partnername': 'p/secude:CN=<SYSTEM>,O=<COMPANY>,C=US',
    'snc_lib': 'C:\\Program Files (x86)\\SECUDE\\OfficeSecurity\\secude.dll',
    'sysid': 'SDC',
    'ashost': 'something.db.com',
    'sysnr': '00',
    'client': '400',
    'lang': 'EN',
    'trace': '3'
};

См. help для получения более подробной информации.

Также рассмотрите этот поток (от this ) и примечания SAP в нем, требуется некоторая дополнительная конфигурация в бэкэнде SAP. node-rf c был построен на тех же двоичных файлах , что и PyRF C, поэтому придерживается тех же принципов.

...