Java-апплет - частично подписан?

Можно ли подписать только часть апплета? То есть, у вас есть апплет, который не выводит никаких предупреждений системы безопасности о подписании, но если используется какая-то конкретная функция (требующая привилегий), тогда использовать подписанный jar?

Насколько я могу судить, некоторые (возможно, большинство) браузеров выдают предупреждение для подписанного апплета, даже если вы вообще не запрашиваете привилегии во время выполнения. Я бы предпочел избежать этого, если возможно.

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
739
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

У меня сложилось впечатление, что Sun хочет препятствовать созданию апплетов и поощрять использование Java Web Start. Я думаю, что проблема подписи апплетов - часть проблемы. См. Эту документацию от Sun: Часто задаваемые вопросы по запуску Java Web.

Я не пробовал этого, но не могли бы вы сегментировать функции, требующие подписи, на отдельные банки, требующие проверки разрешений только тогда, когда пользователю нужны функции в этих банках?

Это совсем не так, как должны показать недавние усилия Sun по разработке нового (значительно улучшенного) плагина. Web Start - совершенно другое животное, хотя они становятся все ближе друг к другу. Я попробую multijar, если больше ничего не должно работать с JNLPAppletLauncher.

jsight 17.09.2008 06:07
Ответ принят как подходящий

Попробуйте разделить свой код на неподписанный jar и подписанный jar.

Теоретически вы можете (подписанный + неподписанный jar), но на практике это приведет к тому, что ваш код будет обрабатываться как беззнаковый. Решение о доступе должно приниматься потоком, а не непосредственным вызывающим абонентом. Если поток содержит в стеке вызов, сделанный из объекта из неподписанного кода, весь вызов следует рассматривать как беззнаковый. Если вы обойдете это, вы обнаружили ошибку.

Другими словами ... Нет.

Если мне не интересно, могу я поинтересоваться, почему вы хотите частично подписать свой код?

Я сейчас пробовал это, и это работает. Sun на самом деле делает что-то очень похожее, чтобы заставить Java3D и JOGL работать и в апплетах, и я не считаю, что это считается ошибкой. Подписание всего приложения приведет к появлению диалоговых окон безопасности во время загрузки апплета. Это плохо, так как мало кому нужна функциональность.

jsight 13.10.2008 06:02

Другие вопросы по теме