2017-07-20 7 views
0

PureScriptを使用して、信頼できないユーザーが送信したコードを安全に実行する*ことはできますか?セーフタイプのシステム(Safe Haskellのような)を使用して、純度やその他の制約を確実に適用することは可能ですか?信頼できないPureScriptコードの実行

つまり、PureScriptを使用して信頼できないユーザーコードをサニタイズすることは可能ですか?

*)XSSなどのグローバルオブジェクトへのアクセス

答えて

0

なしに対して安全で私はあなたにこの上に非常に明確な答えを与えることはできませんが、私はあなたに方向感を与えるためにしようとするつもりです。

自動的に気になる点は、ブラウザではなくサンドボックス内でのみ再生できるように、ユーザーのコードをサンドボックスにする必要があることです。しかし、サンドボックスに何かが漏れないようにサンドボックスを設定する方法については、非常に注意する必要があります。これは非常に大きな問題になる可能性があり、JavaScript側でこれについていくつか調べる必要があると思います。

タイプシステムについては、PureScriptはブラウザで直接実行することはできません。 PureScriptのコンパイル対象は、主にブラウザで実行可能なJavaScriptです。しかし、正しくリコールすれば、PureScriptのコンパイラは実際にはHaskellで書かれています。これはブラウザでは実行できないため、これをコンパイルするにはサーバーが必要です。

私は、他のユーザーのPureScriptコードを受け入れることは非常に危険な選択であり、あなたの決定を再考することをお勧めします。 try.purescript.orgのような代替手段を利用すれば、ブラウザにPureScriptコードスニペットを書くことができます。しかし、これは完全に安全であることを保証するものではありません。

関連する問題