php - fwrite 的 777 权限是否危险?

标签 php forms security fwrite

我正在测试我的 php 表单并将所有请求记录到一个单独的文件中。目的是查明该表单是否被用于垃圾邮件并希望将其消除。

当使用 fwrite() 记录请求时,使用 777 权限是否危险或不必要?有什么选择?

最佳答案

您只需要应用程序正在运行的用户的权限就可以写入文件。有时管理员能够读取文件也很方便。除此之外,没有人需要访问。因此,0640 是此类文件最合理的权限。

特别是,没有人需要执行 文件,这是用0777 设置的位之一。只有目录需要执行位。 (还有可执行程序,但这里没有。)

0640 = user/owner read/write, group read only, other no access
0777 = user/owner read/write/execute, group read/write/execute, other read/write/execute

umask对于获得正确的权限非常有用。您可以使用 umask 来设置权限模板,而不是创建具有明确权限的文件。由于目录需要可执行权限而文件不需要,umask 将比显式设置它们更明智地屏蔽不同类型文件的权限。例如,在您的情况下:

umask(027); // Owner permissions unchanged, Group permissions mask 2, drop all other permissions
fopen('foo', 'w', 0777); // Creates file with *0640* permissions, because of mask
mkdir('bar', 0777); // Creates dir with *0750* permissions, because of mask

关于php - fwrite 的 777 权限是否危险?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23473866/

相关文章:

php从所有行的同一列中获取特定数据

php - 如何增加 2048 的 php syslog 最大限制

c# - 如何在我的 WPF 表单中为我的 BackgroundImage 设置图像?

html - onChange 文本框值未使用 React 以 HTML 形式更新

javascript - Javascript 对你做了哪些恶意的事情?

php日期时间插入到mysql

java - jsp/servlets 从数组中填充下拉框

security - 了解由未定义行为清理程序 (UBSan) 触发的运行时错误

security - SSL 和网络安全 : request resubmission

php - 如何使用 bind_result 与 get_result 的示例