管理用户的多个连接

时间:2018-10-02 13:49:52

标签: node.js angular express jwt

我正在为我的应用程序使用NodeJs + ExpressJs + Angular 6,但遇到了问题。

我有一个用户U

commit 85e9336740475be25ed19924cca0961f7d844c4b
Author: Jeroen Vermeulen <jtvjtv@gmail.com>
Date:   Thu Jun 1 11:39:08 2017 +0700

    Fix #13: not linking to libpq.

    This was that annoying interaction between autoconf, m4, GNU sed syntax,
    and the shell which broke the "remove redundant -lpq options" code in
    the configure script.

    Solution: forget about GNU sed's "[[:space:]]" syntax, and just look for
    a literal space.  There aren't going to be any tabs, newlines,
    non-breaking spaces, etc. there in even a moderately sane world.

假设他是从Chrome,Firefox和移动电话登录的。现在,例如,当用户U用手机更改其名称时,我将其更新到数据库,并且我还希望新用户U(具有新名称)成为所有设备上所有已签名令牌的有效载荷。

处理此问题的最佳方法是什么?

任何其他建议将不胜感激

谢谢

1 个答案:

答案 0 :(得分:1)

嗯,一般的回答基本上是“你不能”。我还要说“你不应该”。

更新有效负载的任何部分时,任何现有令牌都将无效,因为有效负载是为验证签名的内容的一部分。这是很重要的一环,因为它可以确保令牌不被篡改。

通常会发生的是,所有设备上的所有令牌都无效,并且用户将被迫在每个设备上再次登录以获取新令牌。但是,今天您可以在应用程序中处理注销的用户,这是处理此问题的正确方法。