Tomcat Security Manager - определение того, какие разрешения необходимы для веб-приложения - PullRequest
3 голосов
/ 15 декабря 2010

У меня очень большое веб-приложение, которое я хотел бы опубликовать со спецификациями о том, какие разрешения необходимо предоставить для правильной работы Tomcat Security Manager с веб-приложением.

Существует ли какой-либо автоматический способ запуска веб-приложения и создания списка всех необходимых разрешений?

Я пытался сделать это вручную, включив Tomcat Security Manager и пробираясь через исключения безопасности и добавляя необходимые разрешения. Однако проблема заключается в том, что одновременно отображается только одно исключение безопасности, и после каждого исключения мне нужно обновлять catalina.policy, перезапускать Tomcat и переходить к следующему исключению.

Я буквально потратил 2 часа, делая это без намека на близость к завершению. Там должен быть лучший путь.

Tomcat Security Manager

Ответы [ 3 ]

0 голосов
/ 28 декабря 2010

Я нашел ответ на этот вопрос.

Добавление следующего параметра Java в Tomcat создаст запись в stderr для каждого необходимого разрешения:

-Djava.security.debug = все

Я не уверен, почему я не нашел этого раньше, но это задокументировано в руководстве к Tomcat 6.0.

http://tomcat.apache.org/tomcat-6.0-doc/security-manager-howto.html#Troubleshooting

0 голосов
/ 06 апреля 2011

А как насчет использования -Djava.security.debug = fail?

0 голосов
/ 16 декабря 2010

У меня также есть большое веб-приложение, которое запускает Tomcat Security Manager, и единственные случаи, когда возникали проблемы с разрешениями, это когда Tomcat уже был развернут, остановлен, был добавлен переключатель безопасности и затем перезапущен.

grant codeBase "file:${catalina.home}/path/to/my/application-" {
  permission java.net.SocketPermission "IPAddress:Port", "connect";
  permission java.security.AllPermission;

};

Именно так я и решил. Вы можете заменить /path/to/my/application на что-то подобное /webapps/mySuperAwesomeApplication

...