RMI использование файла политики клиента - PullRequest
2 голосов
/ 12 июля 2011

У меня вопрос к следующему сценарию: я написал клиент и сервер, которые совместно используют два общих проекта и взаимодействуют с RMI и работают только локально на той стадии, на которой я сейчас нахожусь. В файле server.policy я пишу:

grant codeBase "file:C:/webui/client/bin/-" {
    permission java.security.AllPermission;
};

grant codeBase "file:C:/webui/common1/bin/-" {
    permission java.security.AllPermission;
};

grant codeBase "file:C:/webui/common2/bin/-" {
    permission java.security.AllPermission;
};

для клиента я пробовал предоставить codeBase "файл: C: / webui / client / bin / -" { разрешение java.security.AllPermission; };

grant codeBase "file:C:/webui/common1/bin/-" {
    permission java.security.AllPermission;
};

grant codeBase "file:C:/webui/common2/bin/-" {
    permission java.security.AllPermission;
};

grant codeBase "file:C:/webui/server/bin/-" {
    permission java.security.AllPermission;
};

но я получаю AccessDenied с такими загадочными сообщениями, как (org.osgi.framework.ServicePermission (service.id = 37) get) и (fava.io.FilePermission C: \ workspaces \ webui.metadata.plugins \ org.eclipse читать pde.core \ webui \ 1310480250513.log). Это работает, если я предоставлю все на стороне клиента.

Я не знаю почему, но возможно, что я не до конца понял концепцию файлов .policy ..;)

1 Ответ

5 голосов
/ 13 июля 2011

Запустите JVM с -Djava.security.debug = доступ, ошибка.Вывод покажет вам, какие разрешения требуются для каких доменов безопасности (то есть, по сути, кодовых баз).

...