fosuserbundle / symfony2:给定用户的用户强制注销(不是当前登录用户)
-
09-12-2019 - |
题
每当我编辑用户角色时,用户需要注销并重新登录以查看更改。在推广用户时,没有问题,因为它们只是不会看到额外的权限,直到再次登录。但是,当要发生降级时,用户仍将保持其现有的作用,这施加了安全风险。想象一下,在流氓员工上撤销管理员用户,仍然可以让它们能够做任何事情(例如。破坏系统),直到他们注销!
是否可以使与特定用户相关的所有会话或令牌无效?如果还有另一种方式动态更新用户的角色而不会记录他们,我很乐意听到它!
只是为了清楚,我不是在尝试使当前登录的用户的会话/令牌无效。
提前感谢!
解决方案
Symfony stores serialized token object under _security_match_firewall_name
key in session. You can unserialize it, filter role and then save it again. For reading/saving session values you can use PdoSessionStorage
. You may have to create an extra table for tracking users session.
不隶属于 StackOverflow