繁体   English   中英

在一个奏鸣曲列表视图上显示“访问被拒绝”,但在另一个奏鸣曲列表上则没有

[英]“Access denied” on one Sonata list view but not on another

我正在基于Symfony 2.7和Sonata Admin进行项目。 我以超级用户身份登录,并且打开了两个浏览器选项卡。 在第一个标签上,我已经成功加载了Video实体的列表视图。

在第二个标签上,我尝试为名为VideoDerivative的实体加载新的管理屏幕。 而不是列表视图,我得到了未捕获的AccessDeniedException。 扩展错误表明在CRUDController.php中调用了以下逻辑:

public function listAction()
{
    if (false === $this->admin->isGranted('LIST')) {
        throw new AccessDeniedException();
    }

我发现这很有趣,因为如上所述,我可以查看其他实体类型的列表视图。

我不确定如何开始调试它。 你会怎么做?

原来,我需要创建和分配以下角色:

    ROLE_APP_ADMIN_VIDEO_DERIVATIVE_ALL:
        - ROLE_APP_ADMIN_VIDEO_DERIVATIVE_CREATE
        - ROLE_APP_ADMIN_VIDEO_DERIVATIVE_EDIT
        - ROLE_APP_ADMIN_VIDEO_DERIVATIVE_DELETE
        - ROLE_APP_ADMIN_VIDEO_DERIVATIVE_LIST
        - ROLE_APP_ADMIN_VIDEO_DERIVATIVE_WORKFLOW

将这些放置到位(并让我的用户访问它们)可以解决我的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM