Отключение кеша JVM dns работает только из файла свойств - PullRequest
0 голосов
/ 09 ноября 2010

Платформа: Windows XP / Sun Java 6

Работает, когда я отключаю DNS-кэширование в файле java.security: networkaddress.cache.ttl = 0

Но когда я пытался пройтиэтот параметр из апплета, кажется, не работает:

 <applet id="MiaApplet"
    .....

     <property name="networkaddress.cache.ttl" value="0"/>

 </applet>

Та же проблема, когда я использую setProperty программно.Я читал об ошибках в реализации JVM.

Есть ли какие-нибудь указатели на то, как заставить это работать, используя подход передачи свойств системы к апплету, как описано выше или программным способом?Путь к файлу это хлопот.

1 Ответ

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

Апплет - это код извне, поэтому JVM обычно запускает его под управлением администратора безопасности.

Подмена DNS, являющаяся популярным способом атаки на систему, свойство networkaddress.cache.ttl, которое вы хотели бы изменить, передано в ведение администратора безопасности; значение может быть настроено в C:\Programme\Java\jre6\lib\security\java.security.

На странице документации Java «Свойства сети» для Java 6 сказано, что значение по умолчанию для этого свойства равно -1 при наличии менеджера безопасности, что означает навсегда.

Менеджер безопасности, скорее всего, наложит вето на попытку вашего апплета изменить это свойство.

Безопасность Java: как установить менеджер безопасности и настроить политику безопасности http://www.javaworld.com/javaworld/jw-11-1997/jw-11-hood.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...