現在あるwebアプリケーションを開発しています。
サーバサイドにはjavaサーブレットのtomcat8を利用しています。
セキュリティ強化のためセキュリティマネージャを有効にしているのですが、
セキュリティマネージャを有効にするとwebアプリケーションが動きません。
サーブレットのプログラム内ではjava.net.URLClassLoaderを使用して、
外部のclassファイルを実行させており、この部分がセキュリティマネージャのポリシーの接触してしまっているため動かないであろうと予測しているのですが、どのような権限を与えればよいのかわかりません。
詳しいかたどうぞご教授お願いします。
tomcatのセキュリティマネージャのポリシーファイルのcatarina.policyには現在以下のような設定を追加していますが、URLClassLoaderで読み込んだクラスは動いていないようです。
grant codeBase "file:/opt/apache-tomcat/apache-tomcat-8.0.23/webapps/test_aplication/-"{ permission java.io.FilePermission "<<ALL FILES>>", "read,execute"; permission java.lang.reflect.ReflectPermission "suppressAccessChecks"; permission java.lang.RuntimePermission "setContextClassLoader"; };
回答2件
あなたの回答
tips
プレビュー