symfony2以admin用户身份访问私有文件

时间:2013-12-05 09:52:29

标签: php symfony assets

在我的Symfony2.3项目中,我有一个前端网站和一个后端。 security.yml文件后端是安全的,只有role_admin用户可以访问后端。

我现在想要的只是管理员用户可以在资产中下载pdf文件存储。

有办法做到这一点吗?

现在,所有访问者都可以通过url链接访问我的pdf文件。

我必须将此pdf移动到另一个文件夹吗?或者使用htaccess?

2 个答案:

答案 0 :(得分:5)

您需要将这些文件存储在无法通过网络服务器直接访问的位置。 (即web文件夹中的或其中一个子文件夹)

然后创建一个控制器/操作,在提供文件之前检查下载权限(即某个用户角色)。

阅读文档章节 Serving Files ,快速了解如何在symfony2中提供文件。

答案 1 :(得分:0)

添加角色,例如ROLE_ACCESS_PRIVATE ASSETS,并将其分配给管理员用户。在代码中检查该权限与其他任何权限一样。

编辑:当然,假设控制器阻碍了这些文件。