在生产环境中使用项目:symfony项目中的权限是否安全?

时间:2010-05-21 15:14:47

标签: php symfony1

正如问题所述,这项任务对于生产环境是否安全?我发现权限相当宽松,缓存目录是我发现特别可疑的。代码目录的写入和执行权限有点可疑。

干杯

2 个答案:

答案 0 :(得分:2)

写:非常明显需要能够缓存数据 执行:如果是目录,则表示允许列表 - 即查看是否存在缓存版本

项目:权限任务在prod中使用是安全的,它仍然允许正常使用时尽可能严格。
另请注意,无法从外部访问缓存目录的内容。

答案 1 :(得分:0)

对于专用的生产环境(如VPS或专用服务器)来说很好,但是如果你在共享主机上它可能太宽松了 - 默认设置可以在缓存和上传文件夹中进行全局编写,而你真的只需要允许访问Web服务器帐户(可能还有可以上载代码更新的用户)。

您可以创建自己的任务,执行相同的操作,但权限更严格:

  1. 将项目:权限任务(lib / vendor / symfony / lib / task / project / sfProjectPermissionsTask.class.php)复制到lib / task文件夹
  2. 重命名文件和类
  3. 更改第30行和第31行的声明(例如,'project'和'permissions-strict')
  4. 更改第46-68行的$this->chmod()方法调用中的权限。如果你真的想要锁定,你可能还必须创建一个$this->chown()方法。
  5. (你也可以扩展sfProjectPermissionsTask课程,但由于你几乎所有的东西都是压倒性的,所以看起来并不值得。)