羽毛:自定义身份验证,服务与连接级别



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

要求:每个客户端连接(WebSocket或REST(都必须提供一个会话令牌(我以其他方式建立并保存为cookie(。服务器中间件验证此会话令牌(反对服务(,添加一个用户对象,或者否则将连接删除。

我是否可以纠正这是无法实现feathers-authenticate的?官方的身份验证文档以JWT为中心,没有提及任何不依赖护照的方法。

可能使用应用钩,例如一个之前的应用程序级挂钩。但这仍然允许用户建立一个,例如WebSocket连接,因为身份验证仅在服务级别上,对吗?我不认为这是理想的。我希望我的身份验证能够在建立连接(Websocket,或HTTP休息(时运行,并在失败时落在那里。

我可以用羽毛吗?

我通过在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);
          }
        });
      }
    )
  );

相关内容

  • 没有找到相关文章

最新更新