我做得对吗?

我有几个实体

  • 组织

  • 表格

我授予用户对组织的不同ACL权限,根据这些权限,我使用以下方法限制路由

$authorizationChecker = $this->get('security.authorization_checker');
if(false == $authorizationChecker->isGranted('VIEW',$organisation) ){
     throw new AccessDeniedException();
}

现在,在组织内部,用户可以创建表单,但我希望根据用户是否为组织成员来限制对整个表单流程的访问 .

所以我对表单的索引视图有以下路由

/form/{id}

对于新形式等等,你会得到漂移

/form/new/{id}

我正在基于id传递组织,然后我只是根据组织的ACL检查用户的权限,并使用它来确定他们可以看到/创建表单的天气

所以我使用组织实体的ACL来限制使用表单实体

这是正确的方法吗?如果没有,我该怎么办?