Symfony2 - 为什么选民甚至被称为SuperAdmins

时间:2013-08-05 14:14:53

标签: security symfony roles symfony-security

我注意到即使是SuperAdmin用户也会征求我的选民的意见。

它是否按预期工作?

如果是的话,我认为SuperAdmin的理念是他们系统地拥有所有权利,这样我们就不必一个一个地给予他们各自的许可。在那种情况下,为什么不允许所有选民进入?

我总是要把

if ($user->isSuperAdmin()) {
    return VoterInterface::ACCESS_GRANTED;
}

在我的选民中?

1 个答案:

答案 0 :(得分:5)

IddqdVoter课程中,您有一个名为ROLE_IDDQD的特殊角色。

这位选民增加了一个特殊角色ROLE_IDDQD,可有效绕过任何安全检查(包括选民)。

这就是你要找的东西。更多:IDDQD Voter

您甚至可以为IDDQD角色设置别名,因此我猜您可以将ROLE_SUPER_ADMIN替换为ROLE_IDDQD。如果您不能这样做,只需授予ROLE_SUPER_ADMIN ROLE_IDDQD并准备就绪。

要使用此特殊角色,您必须通过以下方式启用它:

#config.yml
jms_security_extra:
    enable_iddqd_attribute: true