내 컴퓨터에서 디버그 및 보안 테스트 용으로 java.security.AllPermission
과 함께 실행될 특정 애플릿을 지정하고 싶습니다. 그러나 나는이 허가를 얻기 위해 실행하는 모든 애플릿을 사용하고 싶지 않습니다.사이트의 애플릿에 AllPermission 권한을 부여하려면 어떻게합니까?
grant codeBase "http://host_where_applet_lives/-" {
permission java.security.AllPermission;
};
애플릿이 강력한 뭔가를하려고 할 때이 값은 실패의 (a를 만들 : 그래서, 내 사용자 자바 정책 파일 편집, 나는이 값을 넣어보십시오 (I이 보장 한 테스트를 통해 올바른 정책 파일) 새 스레드, 내 경우). 그러나, 다음과 같은 값을 넣을 때 :
grant {
permission java.security.AllPermission;
};
애플릿은 강력한 조작을 수행 할 수 있습니다. 유일한 차이점은 codeBase
속성이 없음입니다.
여기에서 묻는 유사한 질문에 대한 답변은 AccessController.doPrivileged()
전화가 필요할 수 있음을 제안 (보여 주거나 입증하지 않음)하는 것처럼 보였습니다. 나에게 모든 애플릿에 권한을 부여 할 때 그 호출이 필요 없기 때문에 이것은 잘못된 것처럼 들린다 (앞에서 보여준 두 번째 예제). 이것이 해결책이라 할지라도 애플릿을 쓰레기로 처리하면 AccessController.doPrivileged()
호출을 실행하는 것이 쉽지 않거나 반드시 가능하지 않습니다. 그것을 시험해보기 위해, 나의 테스트는 이것이 단지 어쨌든 작동하지 않는다는 것을 보여준다. 그러나 나는 그 주위에 더 많은 아이디어를 듣게되어 기쁩니다.
[1] Can't get AllPermission configured for intranet applet. Can anyone help?
해당 주석의'doPrivileged'는 LiveConnect를 통해 JavaScript에 의해 호출되는 애플릿을 나타냅니다. 'doPrivileged'에 대해서는 매우 신중해야하며 일반적으로 신뢰할 수있는 코드를 사용하십시오. –
예, 그렇지만 doPrivileged()가 AllPermission에서 실행할 때 - 아무것도 - 특별하지 않음을 나타냅니다. – nahsra