2009-12-10 4 views
4

방금 ​​Java ScriptEngine을 사용하여 응용 프로그램을 약간 확장 한 다음 스크립트의 모든 Java 클래스를 가져 와서 제한없이 사용할 수 있다는 것을 알았습니다. 스크립트가 사용할 수있는 클래스를 지정하는 방법이 있습니까? 나는 그 (것)들에게 일을 좋아하지 않는다. java.lang.System.exit(1);Java ScriptEngine의 보안 문제

답변

2

글쎄, 자바 보안 관리자에 대해 배워야 할 것 같다. 꽤 큰 주제입니다. 문제를 해결하기 위해 문제를 풀어보고 싶다면 좀 더 구체적인 질문을 올리십시오.

+0

SecuritiyManager가 좋게 들립니다. 이 중요한 주제에 관해서 나에게 어떤 힌트를 주시겠습니까? – lucidd

1

Java 보안 관리자를 사용하십시오. 예를 들어 this 답변을 참조하십시오.

1

모든 스크립트의 맨 위에 "importPackage = null"을 넣어서이 문제를 해결했지만이 해킹을 피할 수 있는지 확실하지는 않습니다.

+0

이 모든 importPackage 호출을 제한하는 가장 쉬운 방법입니다. – webber

+0

이 경우에도 다음과 같이 할 수 있습니다 :'java.lang.System.exit (1);'. 프로그램이 종료됩니다. –