【问题标题】:Feathers: custom authentication, service vs. connection levelFeathers:自定义身份验证、服务与连接级别
【发布时间】:2018-07-23 16:43:24
【问题描述】:

我想使用带有羽毛的简单但自定义的身份验证例程,但不明白如何实现它。

要求:每个客户端连接(websocket 或 REST)都必须提供一个会话令牌(我通过其他方式建立并保存为 cookie)。服务器中间件验证此会话令牌(针对服务),如果成功则添加用户对象,否则断开连接。

我是否正确,这不可能实现feathers-authenticate?官方认证文档以 JWT 为中心,没有提到任何不依赖护照的方法。

可能使用应用挂钩,例如应用程序级别之前的钩子。但这仍然允许用户建立一个,例如websocket 连接,因为认证只在服务级别,对吧? 我不认为这是理想的。我希望我的身份验证在建立连接(websocket,或者还有 HTTP for REST)时运行,并在不成功时直接放在那里。

我可以用羽毛做这个吗?

【问题讨论】:

    标签: node.js feathersjs feathers-authentication feathers-hook


    【解决方案1】:

    我通过向 primus 连接添加身份验证解决了这个问题:

      feathersApp.configure(
        primus(
          {
            transformer: "websockets"
          },
          function(primus) {
            primus.use("cookies", cookieParser, 1);
            primus.authorize(async (req, done) => {
              try {
                done(await authenticateRequest(req));
              } catch (err) {
                done(err);
              }
            });
          }
        )
      );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-23
      • 1970-01-01
      • 2019-08-07
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多