【发布时间】:2014-03-05 13:52:27
【问题描述】:
在
供应商/symfony/symfony/src/Symfony/Bundle/SecurityBundle/Resources/config/security.xml
<service id="security.access.role_hierarchy_voter" class="%security.access.role_hierarchy_voter.class%" public="false">
<argument type="service" id="security.role_hierarchy" />
<tag name="security.voter" priority="245" />
</service>
已定义。服务类,Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter
有第二个参数$prefix = 'ROLE_' 作为默认值。
在上面的服务定义中,第二个参数没有传递,所以它会采用默认值ROLE_
在我的应用程序中,我有旧角色,例如登录。没有ROLE_ 前缀。
我想覆盖上面的服务定义并将第二个参数传递为空。
<service id="security.access.role_hierarchy_voter" class="%security.access.role_hierarchy_voter.class%" public="false">
<argument type="service" id="security.role_hierarchy" />
<argument></argument>
<tag name="security.voter" priority="245" />
</service>
我该怎么做?
【问题讨论】:
标签: php symfony fosuserbundle