我注意到,即使是超级管理员用户也会征求我的选民的意见。
它是否按预期工作?
如果是的话,我认为SuperAdmin的哲学是他们系统地拥有所有权利,这样我们就不必一一授予他们每个权限。既然如此,为什么不向所有选民授予访问权呢?
我是否总是必须把
if ($user->isSuperAdmin()) {
return VoterInterface::ACCESS_GRANTED;
}
在我的选民中?
In the IddqdVoter
班级里,你有一个特殊的角色,叫做ROLE_IDDQD
.
该选民添加了一个特殊角色ROLE_IDDQD
它有效地绕过了任何和所有安全检查(包括选民)。
这就是您要找的。更多的 :IDDQD 选民 https://github.com/schmittjoh/JMSSecurityExtraBundle/blob/master/Security/Authorization/Voter/IddqdVoter.php
您甚至可以为 IDDQD 角色设置别名,因此我猜您可以为ROLE_SUPER_ADMIN
to the ROLE_IDDQD
。如果您不能这样做,只需授予ROLE_SUPER_ADMIN
the ROLE_IDDQD
现在您就可以出发了。
为了使用这个特殊角色,您必须通过以下方式启用它:
#config.yml
jms_security_extra:
enable_iddqd_attribute: true
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)