私の埋め込まれたGroovyをサンドボックスにしたいのですが、クラスとリソースの解決を試みるときにどこで何が読み込まれるかを抽象的に紹介したいと思います。 Groovyに必要なものをパッチするライブラリがありますか?クラスのファイルシステムではなくClassLoaderからGroovyを読み込む方法は?
1
A
答えて
0
私は、ユーザがGroovyで独自のコントローラを作成できるCMSを作成しました。カスタムクラスローダーを使用してユーザーのクラスをロードし、InheritableThreadLocalも設定します<ブール>コントローラが動作していることを私のカスタムSecurityManagerに伝えます。
このThreadLocalのをtrueに設定すると、SecurityManagerがのcheckMemberAccess(を通じて特定のメンバーへのアクセスを禁止します)方法、およびそれだけてcheckPermission()方法でホワイトリストクラスとパッケージへのアクセスを可能にします。こうすることで、ユーザーが別のクラスローダーを使用してクラスをロードしても、フィールドメンバーへのアクセスを防ぐことができます。
関連する問題
- 1. Groovyのファイルを文字列に読み込む方法は?
- 2. ファイルからJFrameを正しく読み込む方法は?
- 3. ClojureのRandomAccessFileから正しく読み込む方法は?
- 4. 2度読み込むことなく画像を読み込む方法
- 5. ファイルシステムをデータセットに読み込む
- 6. Pythonでmmapファイルから行を読み込む方法は?
- 7. テキストファイルから読み込むときにApache Ignite Cacheを読み込む方法
- 8. Rのファイルからリストを読み込む方法は?
- 9. VC++のリソースからテキストファイルを読み込む方法は?
- 10. アンドロイドのウェブサイトから画像を読み込む方法は?
- 11. vb 2010のリソースファイルからイメージを読み込む方法は?
- 12. WCFのサブディレクトリからxmlファイルを読み込む方法は?
- 13. Android ImageViewの画像をクラスパスから読み込む方法は?
- 14. cocos2dでスプライトを正しく読み込む方法は?
- 15. Visual C++/CLIでファイルに書き込み、ファイルから読み込む方法は?
- 16. classLoaderはいつ読み込みをロードしますか?
- 17. rsyncをSTDINからSRCを読み込む方法は?
- 18. DateBaseからListViewに画像を読み込む方法は?
- 19. asp.netからPHP Cookieを読み込む方法は?
- 20. C++プログラムを外部ファイルから読み込む方法は?
- 21. アセットから画像を読み込む方法は?
- 22. AppDelegate.mからTableViewデータを読み込む方法は?
- 23. sqliteテーブルからデータを読み込む方法は?
- 24. stdin(コンソール)から行列を読み込む方法は?
- 25. Asp.Net 5:project.jsonファイルからアセンブリバージョンを読み込む方法は?
- 26. Atomフィードからxt:tagged fieldsを読み込む方法は?
- 27. .jarファイルからPDFを読み込む方法は?
- 28. テキストファイルからポインタ配列を読み込む方法は?
- 29. テキストボックスからリストボックスにデータを読み込む方法は?
- 30. テキストファイルから文字を読み込む方法は?
私が知る限り、それを行うライブラリや抽象はありません。私は 'Thread.currentThread()。contextClassLoader = <あなたのクラスローダ>'に行きます。 –
@benjaminMuschkoそのsuxの種類は誰でもctx clを設定でき、SecurityManagerでそのような試みをブロックするのは難しいです。 –