Если я правильно понимаю AccessController.doPrivileged, он говорит, что ненадежный код должен иметь возможность вызывать методы, требующие разрешений (например, System.getProperty()
), посредством промежуточного метода у которого есть разрешения.
Возникает вопрос: когда следует использовать AccessController.doPrivileged()
? Когда нужно, чтобы недоверенный код мог вызывать привилегированный код с помощью промежуточных методов? Когда это произойдет?
Следуя вашим рассуждениям, объясните, почему создание ClassLoader всегда должно быть разрешено: http://findbugs.sourceforge.net/bugDescriptions.html#DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED