node.js - 如何设置node-rfc的SNC参数?

标签 node.js saprfc

我正在尝试使用node-rfc来执行CRUD操作。我尝试使用的系统有一个 SNC。

我不知道如何解释它,但 SNC 是一种多因素身份验证。

我正在使用以下参数

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

并收到错误

Invalid arguments supplied for SNC-API call

有人知道如何设置吗?

完整代码:

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);
        });   
});

最佳答案

I do not know how to explain it well but SNC is a multifactor authentication

SNC 不是多因素身份验证。时期。

阅读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 thread (诞生于 this )和 SAP 注释中,SAP 后端需要一些额外的配置。 node-rfc 构建于 the same binaries与 PyRFC 一样,遵循相同的原则。

关于node.js - 如何设置node-rfc的SNC参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59843446/

相关文章:

node.js - Express Js + Sequelize : How to load models?

node.js - 在 .sh 脚本中使用 "npm start"作为命令永远

abap - 通过 RFC 返回二进制数据

.net - 使用 WCF RIA 服务,其中数据源不是经典(关系)数据库

abap - 如何测试仅存在于远程系统中的RFC模块?

.net - ERPConnect(Theobald 软件): RFC authorization

javascript - Node webkit 打开一个新窗口并监听 on.loaded

node.js - Node-ssh不是构造函数吗?我该如何解决这个问题?

node.js - Vue Node.js/express 应用程序错误无法设置未定义的属性渲染

c# - 功能模块RSAQ_REMOTE_QUERY_CALL选择参数