无需重新设置即可更改远程用户的角色

Jof*_*rey 8 symfony fosuserbundle

我正在尝试使用FOSUserBundle更改用户的角色.问题是:如果用户同时登录,他必须重新登陆以查看新角色.

有解决方案吗

iam*_*dto 12

根据安全配置参考,有一个always_authenticate_before_granting选项.关于这一点没有太多的信息,但我已经尝试过从数据库加载自定义角色并且它可以解决问题.看起来每次您发出新请求时,安全组件都会重新加载角色.

所以,如果你想确保你的角色被刷新,并在短短该选项设置为用户会话重新加载true在你的security.yml:

# app/config/security.yml
security:
    always_authenticate_before_granting:  false
Run Code Online (Sandbox Code Playgroud)


Max*_*cki -1

1:您必须在防火墙配置中启用 switch_role: true。2:接下来您必须允许 ROLE_ADMIN 角色能够切换到另一个角色。3:只需链接到 ?_switch_role=userNameCanonical

它主要由 symfony security fos 完成,与角色切换无关。