Как определить текущий контекст безопасности из Java-апплета - PullRequest
1 голос
/ 04 августа 2010

У меня есть апплет, которому нужен доступ к хост-системе (для запуска программ, запроса настроек системы и т. Д.).Апплет подписан, и, когда конечный пользователь принимает мой сертификат, апплет может делать практически все, что пожелает, на компьютере конечного пользователя.Если конечный пользователь отказывается от сертификата, апплет все еще работает, но он не может выполнять свои обязанности.

Я использовал System.getProperty ("java.io.tmpdir"), чтобы определить, ограничен ли апплет.Это прекрасно работает с Windows, но в Mac OS Java работает иначе.(Я думал, что часть Java в том, чтобы иметь независимый от системы язык с четко определенным поведением - но в итоге я пишу специальный код для Mac и Windows - так же, как я делаю с C ++)надежный способ определить, в каком контексте безопасности апплет работает?

1 Ответ

0 голосов
/ 04 августа 2010
public static boolean isTrusted() {
     SecurityManager security = System.getSecurityManager();
     if (security == null) {
         return true;
     } else {
         try {
             security.checkPermission(new AllPermission());
             return true;
         } catch (SecurityException exc) {
             return false;
         }
     }
}

(Обычный отказ от ответственности: не проверено, не скомпилировано)

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