如何拒绝将java首选项导入到节点xy中

时间:2012-02-01 13:26:25

标签: java permissions import preferences

我正在使用:

java.util.prefs.Preferences.importPreferences( new FileInputStream(xmlFile) );

允许用户恢复一些导出的数据。

每个xml应如下所示:(通过Preferences.importPreferences()生成的格式)

    <?xml ...
    <!DOCTYPE ...
    <preferences ...
      <root type="user">
        <map/>
        <node name="com">
          <map/>
          <node name="data">
            <map/>
            <node name="core">
              <map/>
              <node name="default">
                <map/>
                <entry key...
              </node>
            </node>
          </node>
        </node>
      </root>
    </preferences>

我想拒绝其他节点中的任何导入(例如...... /JavaSoft/Prefs/com/data/core/default/

如何在不解析整个文件的情况下阻止导入被操作的xml?

1 个答案:

答案 0 :(得分:0)

唯一可行的方法是为导出的每个文件创建一个md5哈希,以便您可以使用它来验证它是否仍然有效。这些md5文件应保存在与原始文件分开的位置,以防止人们操纵这些文件。