Как я подписываю апплет Java для использования в браузере?

Одно предложение:

  1. Не используйте диалоговые окна. Особенно модальные диалоговые окна OK / Cancel.

Иногда это сложно ... как вы справляетесь с открытием файла? Иногда это легко ... вам действительно нужно предупредить пользователя, что он собирается перезаписать файл? Скорее всего, если я слепо нажимаю «ОК», я не буду обращать внимания на какие-либо предупреждения.

40
задан user107312 26 May 2009 в 02:52
поделиться

5 ответов

Возможно, это потому, что вы открываете некоторые файлы .class вне файла jar?

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

Может быть, ваша конкретная установка или файловая организация вызывает такое поведение. Если вы можете разложить это более подробно, мы могли бы помочь лучше (или, скорее, попробуйте поместить все эти файлы .class в еще один подписанный Jar и добавить его в архив "..., anotherJar.jar").

7
ответ дан 27 November 2019 в 01:55
поделиться

Во-первых, я бы предложил получить действующий сертификат подписи кода. Вы можете получить бесплатный сертификат в Thawte . Хотя обычно эти сертификаты используются для S / MIME, они также действительны для подписи кода.

Второй вариант - импортировать ваш самоподписанный сертификат в файл cacert JRE, который запускает ваш браузер.

Следующее, что нужно проверить, - убедиться, что в вашем браузере установлена ​​последняя версия jar-файла. Один из способов сделать это - всегда увеличивать номер версии. Другой вариант - очистить кеш Java-апплета. Я обычно очищаю кеш браузера, но в этом нет необходимости.

1
ответ дан 27 November 2019 в 01:55
поделиться

Вы упомянули:

Когда я открываю этот html-файл, Я никогда не получаю диалоговое окно подтверждения безопасности ...

Вы открываете файл из своей локальной файловой системы или через URL-адрес веб-сервера, на котором размещены HTML-файл и jar-файлы апплета? Возможно, поэтому вы не получаете предупреждения.

1
ответ дан 27 November 2019 в 01:55
поделиться

Изменить: это исторический ответ. JDK9, очевидно, откажется от апплетов. На момент написания (1 января 2017 г.) вы должны подписать апплеты, но не предоставлять им дополнительных привилегий, а затем перейти на более современную технологию.

Я предлагаю вам не подписывать код. Если вы играете с безопасностью других людей, вам действительно стоит знать, что вы делаете.

JTextComponent должен разрешать копирование и вставку текста, если этого достаточно.

jarsigner -verify проверит, что ваша банка подписана. Вы также можете быстро просмотреть файл манифеста и файлы в META-INF / .

Всплывающее диалоговое окно для доверенных сертификатов может быть отключено. В реализации Sun: откройте панель управления Java; перейдите во вкладку Advanced; разверните узел Безопасность;

-1
ответ дан 27 November 2019 в 01:55
поделиться

Вот способ подписать ваши jar-файлы, а затем проверить, подписаны ли все файлы классов вашим хранилищем ключей.

#!/bin/bash
KEYSTORE=/home/user/NetBeansProjects/sign/keystore
FILES=`find /home/user/NetBeansProjects/Project/dist/ -name "*.jar"`
for f in $FILES; 
   do echo password |  /usr/bin/jarsigner -keystore $KEYSTORE -verbose $f myself;
   echo "Signed $f"; 
  /usr/bin/jarsigner -verify -verbose -certs $f | grep X.509 | sort -u;
done
1
ответ дан 27 November 2019 в 01:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: