【发布时间】:2018-10-20 08:25:38
【问题描述】:
什么:
有没有办法在 python3 中创建密码保护文件,以防止未经授权的写入?主要重点是写作,不一定是阅读。
如果给出正确的密码,这个文件应该可以被 python 程序追加。
解决方案不应特定于操作系统。
为什么:
我的服务器需要记录消息详细信息并将其写入文件,以减轻拒绝攻击。该文件显然必须被写保护,否则这个目的就失败了。
如何:
有什么想法吗?
注意:
我已经研究过使用 pyminizip 将文件放在受保护的 zip 文件夹中,并使用 os.chmod 命令锁定文件权限。但是,我发现这些解决方案都不适合我。
【问题讨论】:
-
您描述的方法应该可以正常工作。这些有什么问题(错误消息?)?
-
您究竟在保护谁的日志文件?如果它是您系统上的用户,那么如果他们可以写入文件,他们几乎肯定也可以删除或截断它,从而破坏日志记录。如果是远程攻击者,他们根本无法修改您的文件,无论是否有密码。
-
@Blckknght 是有道理的。我现在使用这个:
with os.fdopen(os.open('test.log', flags, 0o022), 'a') as fout: \newline fout.write("logging info")来限制权限。它适用于我需要的目的。
标签: python python-3.x password-protection