在我的应用程序中(swift 2.3,xcode 7+,适用于iOS 9+),我写入一个文件,使用该文件,然后从使用NSTemporaryDirectory
创建的临时目录中删除该文件(在应用程序沙盒中)。尽管这是一个快速的自动化序列,但在使用和删除文件之前,文件会短暂地存储在tmp目录中。
我的担忧是:在那个短暂的时刻,文件在tmp目录中存储的安全性如何?攻击者能否在文件在tmp目录上时获取该文件的访问权限?
在我的应用程序中(swift 2.3,xcode 7+,适用于iOS 9+),我写入一个文件,使用该文件,然后从使用NSTemporaryDirectory
创建的临时目录中删除该文件(在应用程序沙盒中)。尽管这是一个快速的自动化序列,但在使用和删除文件之前,文件会短暂地存储在tmp目录中。
我的担忧是:在那个短暂的时刻,文件在tmp目录中存储的安全性如何?攻击者能否在文件在tmp目录上时获取该文件的访问权限?
如果你只是为了删除文件而编写文件,那么尽量避免将文件存储在系统中。如果你确实需要将数据存储在设备上,可以使用.completeFileProtection
选项。
根据文档,.completeFileProtection
将使文件仅在设备解锁时才可访问。这意味着除非有人知道你手机的密码,并能够远程使用该密码解锁它,然后执行具有访问你应用程序的沙盒式临时文件存储的代码,否则他们无法访问你的数据。
据我所知,这很难实现。