安全的方式运行运行时代码(XML文件编辑)c#

本文关键字:文件 XML 编辑 代码 方式 运行 运行时 安全 | 更新日期: 2023-09-27 18:13:12

我有一个CLI应用程序,它可以用一些参数编辑XML文件。

然而,我现在需要一个更强大的方法来做到这一点。

我想让用户选择使用自定义代码从一个。txt编辑XML文件,以完全控制XML编辑。

例如:

@CODE File<file name for XML editing>
<code>
# Custom XML parser/editing code
for elem in tree.iter(tag='location'):
if elem.text == 'J':
    elem.text = 'January'
</code>

在。net c#中这样做最安全的方法是什么?我的意思是用户只能编辑XML文件,而不能做任何危及系统安全性的事情(比如删除文件)?

我正在考虑使用Javascript引擎(像这个)和运行Javascript代码从文件。我相信javascript会限制用户能够做的事情。我也想在c#代码和Python中,但这可能会引入安全问题。

编辑:

一个要求是它必须在mono上工作。

安全的方式运行运行时代码(XML文件编辑)c#

我选择了IronJS .NET运行时与这里讨论的javascript XML库(XML for