2015-09-20 2 views
0

Мне нужно знать, может ли апплет использовать функции прямого доступа к файлам, а не через JNLP.Прямой доступ к файлам с помощью java applet

Возможно ли апплет для доступа к файлам с помощью стандартных классов файлов:

  • java.nio.file.Files;
  • java.io.FileInputStream;

Возможно ли это для «апплета следующего поколения»?

Возможно ли это для предварительной «апплет следующего поколения»?

+0

для таких, как я. здесь ссылка, чтобы узнать, что такое «яблоко следующего поколения». http://www.oracle.com/technetwork/articles/javase/newapplets-142049.html или здесь вопрос переполнения стека: http://stackoverflow.com/questions/10825212/what-is-the-next-generation- plugin-for-java – StefanHeimberg

+0

Первая ссылка не содержит ничего для безопасности. Вторая ссылка сообщает, что некоторые функции запутаны в новом плагине и упоминают, что «апплеты никогда не были очень доверенными», поэтому он не имеет ничего более специфичного для файловых операций ... – joro

ответ

2

Да. Если это подписанный и привилегированный (пользователь позволяет) апплет.

What Applets Can and Cannot Do говорит (частично)

апплеты либо песочница апплеты или привилегированные апплеты. Аплеты Sandbox запускаются в изолированной программной среде безопасности, которая обеспечивает только набор безопасных операций. Привилегированные апплеты могут работать за пределами изолированной программной среды и иметь обширные возможности для доступа к клиенту.

Апплеты, которые не подписаны, ограничены изолированной программной защитой и выполняются только в том случае, если пользователь принимает апплет. Апплеты, подписанные сертификатом из признанного центра сертификации, могут работать только в изолированной программной среде или могут запрашивать разрешение на запуск за пределами изолированной программной среды. В любом случае пользователь должен принять сертификат безопасности апплета, иначе апплет заблокирован.

+0

Кажется, что привилегированные апплеты имеют те же права безопасности, что и Java-приложения, запущенные на клиенте -боковая сторона. Это верно? – joro

+0

Да. Но пользователь должен нажать «Разрешить», и он должен быть подписан. –

+0

* «Кажется, что привилегированные апплеты имеют те же права безопасности, что и приложения Java, выполняемые на стороне клиента» * Нет, не совсем. Даже доверенный апплет не может вызывать 'System, exit (..);' например. Но они могут, конечно, использовать классы из 'java.io' &' java.nio'. –