Почему Java-апплет не может запрашивать только определенные разрешения (например, записывать звук) - PullRequest
3 голосов
/ 17 февраля 2012

Я создаю апплет для записи звука, поэтому для записи звука требуется разрешение. Я подписал файл jar, и теперь, когда я загружаю апплет, появляется диалоговое окно, которое говорит: «Апплет от localhost запрашивает доступ к вашему компьютеру», и дает опции «Разрешить» или «Запретить». Если я нажму кнопку «Разрешить», он сможет записывать звук. Но я разочарован тем, что, похоже, нет способа заставить его спрашивать только о том, что ему нужно; что-то типа «Этот апплет хотел бы получить разрешение на запись звука. Разрешить или запретить»? Есть ли способ сделать это?

Если нет, есть ли какая-либо идея по поводу отказа от мелкозернистой модели безопасности Java с этим диалоговым окном "все или ничего"? Я мог видеть пользователя, позволяющего сайту записывать некоторый звук, но не желающего предоставлять ему доступ для чтения / записи к жесткому диску.

1 Ответ

3 голосов
/ 17 февраля 2012

Нет. JRE не предлагает такие мелкозернистые разрешения стандартным апплетам.

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

...