6

スクリプト言語を使用して、単純なコード ブロックをサンドボックスで実行する方法に興味があります。ホスト言語/環境は c#/ruby/python/java (c 以外) です。しかし、スクリプト言語は、javascript/python/ruby/perl などのあいまいなものである可能性もあります。

私が望むのは、従来のプログラミング構造、つまり条件/ループ/日付操作/配列などを使用してスクリプトを実行する方法です。しかし、IO、http ストリームへの接続、データベースなどを公開することは望ましくありません。

私は現在、python アダプターを使用して Spidermonkey を見ていますが、他に検討すべきオプションがあるかどうか疑問に思いました。

4

2 に答える 2

2

Lua は非常に簡単にコードをサンドボックス化できます。Lua wikiのリファレンスを次に示します。これは、他の (C または C++) コードに簡単に組み込むことができる、非常にシンプルなスクリプト言語です。したがって、ホストは、他のコードに組み込まれた Lua (または工場でインストールされた Lua インタープリター) になります。スクリプト言語は Lua です。

しかし、ご存じない場合は、新しい言語を習得する必要のない優れた解決策が他にもあると確信しています。

于 2010-02-18T23:32:33.367 に答える
1

コード アクセス セキュリティを介して .NET (VB、C#、任意の言語) で実行できます。マシンのポリシーを設定して、好きなフレームワーク クラスへのアクセスを許可しないようにします。

セキュリティ ポリシーの設定を参照してください。

デフォルトでは、ポリシーにより、ローカル マシンで発生したコードは何でも実行できます。デフォルトでは、コードが I/O クラスを呼び出したり、HTTP 接続を実行したりできないように設定できます。

于 2010-02-18T22:46:57.253 に答える