当前位置 : 主页 > 网页制作 > Nodejs >

node.js – 如何修复node-linkedin中的CSRF问题?

来源:互联网 收集:自由互联 发布时间:2021-06-16
我正在使用 node-linkedin从我的Web应用程序访问linkedin. 问题 Error { [CSRF Alert: Possible CSRF attack, state parameters do not match.] name: 'CSRF Alert' } 码 var Linkedin = require('node-linkedin')('apikey', 'secret', 'cal
我正在使用 node-linkedin从我的Web应用程序访问linkedin.

问题

Error { [CSRF Alert: Possible CSRF attack, state parameters do not match.] name: 'CSRF Alert' }

var Linkedin = require('node-linkedin')('apikey', 'secret', 'callback');

 Linkedin.auth.getAccessToken(res, req.query.code, req.query.state, function (err, results) {

   if(err){
     return console.error("Error", err);
   }

    return res.redirect('/index');
 });

任何解决此问题的建议

找出库的问题.

当我将我的nodejs应用程序扩展为使用2个以上的实例时,它会出错,

Error { [CSRF Alert: Possible CSRF attack, state parameters do not match.] name: 'CSRF Alert' }

由于auth.js中的“states”参数正在使用内存存储,因此会产生扩展应用程序的问题.

情景是

‘/ oauth / linkedin’转到App-0(在内存中创建状态参数“xxxx”存储)
‘/ oauth / linkedin / callback’转到App-1(这里它将检查收到的状态是否为“xxxx”,检查是否在内存中)

记录的问题here

在nginx中使用粘性会话来解决此问题.

网友评论