NetSuite SuiteScript 2.0 SFTP 如何使用私钥建立连接
字段填写说明
- myPwdGuid 字段
你导入.pem私钥到NetSuite后,系统会为该加密密钥生成唯一的GUID,你可以进入「设置 > 公司 > 加密密钥」列表,找到你上传的私钥对应记录,复制其中的GUID值填入该字段即可。NetSuite的SFTP API中,私钥认证场景下passwordGuid参数实际用于关联你存储在系统中的私钥,无需额外提供登录密码。 - myHostKey 字段
该字段为目标SFTP服务器的RSA公钥指纹,你可以通过本地ssh工具执行命令获取:ssh-keyscan -t rsa vendorserverurl
将返回结果中去掉主机地址、ssh-rsa标识后的公钥内容复制填入即可,注意要与你参数中hostKeyType: 'rsa'的类型匹配。
修正后代码示例
/********************* SFTP connection Logic *********************/ // 替换为你在加密密钥列表中拿到的私钥对应GUID var myPwdGuid = 'xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'; // 替换为ssh-keyscan获取到的服务器RSA公钥 var myHostKey ='xxxxxxxxxxxxx'; var connection = sftp.createConnection({ username: 'usr_ch_prd_client_CEN', passwordGuid: myPwdGuid, url: 'vendorserverurl', port: 22, hostKey: myHostKey, hostKeyType:'rsa' });
注意事项
如果你的.ppk私钥本身设置了保护密码,你需要将该密码也作为加密密钥上传到NetSuite,在创建连接时额外传入keyId参数,值为该密码对应的加密密钥GUID即可。
内容的提问来源于stack exchange,提问作者Alessandro Aguiar
相关产品推荐
相关产品推荐

