【问题标题】:How to fix CSRF issue in node-linkedin?如何解决 node-linkedin 中的 CSRF 问题?
【发布时间】:2015-10-19 23:51:12
【问题描述】:

我正在使用node-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');
 });

任何解决此问题的建议

【问题讨论】:

    标签: node.js oauth-2.0 npm linkedin csrf


    【解决方案1】:

    发现库有问题。

    当我扩展我的 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 中使用粘性会话暂时解决此问题。

    【讨论】:

      猜你喜欢
      • 2019-03-19
      • 1970-01-01
      • 2015-12-04
      • 2020-06-02
      • 1970-01-01
      • 1970-01-01
      • 2022-01-25
      • 2021-04-28
      • 1970-01-01
      相关资源
      最近更新 更多