【问题标题】:Is it safe to store data in XML?在 XML 中存储数据是否安全?
【发布时间】:2011-01-01 14:29:32
【问题描述】:

我们正在开发一个应用程序,它需要将数据存储在 XML 中,因为它将被另一个应用程序使用。

现在的问题是是否可以限制对该 xml 文件的访问。并使其仅通过我们的应用程序可读?如果是的话..怎么办?

【问题讨论】:

  • 如果受到限制,其他应用程序将如何访问它...?
  • 如果您真的需要它那么简单,我至少会创建一个数据库并将 XML 保存在文本字段中,而不是将其保存到磁盘。特别是如果您需要保护非常有价值的数据。你会花很多时间试图找到最好的方法来做你正在做的事情,你会到达一个你意识到这是不对的地步。这篇文章应该能让你在花时间之前到达那里。

标签: xml security file-permissions application-design


【解决方案1】:

XML 本身无法提供您要求的安全功能。

两种可能的解决方案:

  • 使用文件系统中的文件访问设置,仅允许单个用户帐户读取/写入文件。请确保使用该帐户的凭据运行您的应用程序。
  • 使用只有您的应用程序知道的密钥加密文件。

【讨论】:

  • 什么是我需要给 xml 文件的文件权限。
  • 这取决于。如果您的应用程序使用专用用户帐户运行,600 应该可以工作(假设您的操作系统是某种 Linux/BSD/Unix)。
【解决方案2】:

xml 文件与任何其他文件一样。任何有权访问文件系统的人都可以读取该文件。

如果您想让其他人难以阅读文件的内容,则必须使用两个应用程序共享的密钥进行加密。

【讨论】:

    【解决方案3】:

    是的,您可以对其进行加密。但首先,您需要确定您的“攻击者”是谁;即你试图阻止谁阅读它。给定文件系统上的足够权限可能就足够了:)

    只有在仔细确定威胁模型后,您才能安全地确定需要防范的角度(不安全的传输系统 = 加密等),然后适当且谨慎地实施。

    【讨论】:

      【解决方案4】:

      不,xml 是文本文档,没有内部安全性。如果数据如此机密,您应该考虑其他通信方式。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-09-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-27
        • 2020-10-27
        • 1970-01-01
        • 2014-07-02
        相关资源
        最近更新 更多