NodeJS:在其他用户更改权限后,强制用户刷新会话

奇美

在我的NodeJS应用程序中,我将Express-session用于会话,将express-mysql-session用于将会话存储到MariaDB,将Passport用于身份验证,将Sequelize用于ORM。

我现在遇到的问题是,我不知道如何刷新其权限已由应用程序管理员更改的用户的会话。

我尝试过类似的操作,req.logIn()但这只会刷新正在进行权限更改的管理员的会话。

我的代码如下所示:

editUser = function (req, res) {
    var userData.id = req.body.id;
    userdata.access = req.body.access;
    models.User.update(userData, {where: {id: userData.id}})
        .then(function (affectedRows) {
            // User has been updated.
            // Changes should be active without having the user to log out and log in again
        });
    );
}

有谁知道我如何刷新其权限已被另一个用户更改的用户的会话?

奇美

我在以下线程PassportJS中找到了解决我问题的方法-是否可以为另一个用户更改req.user?

我更新了我passport.deserializeUser()的数据库请求并重新加载了用户。然后,查询的用户将提交给回调。该函数现在如下所示:

passport.deserializeUser(function(user, done) {
    models.User.findOne({where: {id: user.id}})
        .then(function(updatedUser) {
            done(null, updatedUser);
        }, function(err) {
            console.error(err);
            done(null, user);
        });
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从其他用户销毁会话

授予其他用户的用户Alle权限

samba-在其他用户主目录中共享时,权限被拒绝

以其他用户身份登录,例如更改会话,切换用户

如何防止用户更改对其他用户具有写权限的文件?

强制其他用户使用ASP.NET Identity 2.1.0刷新其声明。

在其他用户上安装PFX证书

一个用户的更改可以使用 nodejs 同时反映给其他用户

如何强制其他用户设计退出?

授予其他用户git更新远程权限?

向其他用户授予执行功能权限

chmod,不修改其他用户权限

刷新其他用户在C#中数据库中数据更改的前端

Laravel,突然将会话更改为其他用户?

为什么用户的权限比组或其他用户的权限低?谁可以更改它们?

被其他用户移动后的当前目录

更改其他用户的crontab任务

在Linux中更改其他用户帐户的密码

更改免费计划中其他用户的状态

多个WebSecurityConfigurerAdapter:一个作为库,在其他用户中可以添加自己的安全访问权限

在Linux中以root用户身份登录后如何向其他用户授予权限?

向特定用户授予设备权限,但不授予其他用户访问权限

其他用户收到消息

其他用户的国家数

SpringSecurityService:注销其他用户?

如何限制用户访问权限以查看/修改其他用户使用 Django 创建的对象

OSX:git:远程:拒绝其他用户对用户/存储库的权限

如何将前用户Outlook日历的访问权限授予其他用户

如何授予一个用户访问 Oracle 中其他用户的权限?