2012-06-13 2 views
3

루비는 코드의 어느 위치에서나 어떤 클래스를 수정할 수 있지만 보호 된 환경과 같은 샌드 박스를 만들면 나머지 응용 프로그램 코드와 같은 제 3 자 코드를 실행할 수 있는지 궁금합니다. 사전 정의 된 클래스/표준 라이브러리 클래스에 대한 임의의 수정과 분리 될 수 있습니다. 당신은 루비의 안전한 수준으로 재생할 수 있습니다루비 보호 환경 만들기

답변

4

:

루비 효과적으로 두에서 실행중인 프로그램을 분할 :

http://www.ruby-doc.org/docs/ProgrammingRuby/html/taint.html

다음은 위의 안전 레벨 4의 설명이다. Nontainted 개체는 수정할 수 없습니다. 일반적으로이 값은 샌드 박스를 만드는 데 사용됩니다. 프로그램이 더 낮은 $ SAFE 수준을 사용하여 환경을 설정하면 다음 $ SAFE가 4로 재설정되어 이후 환경으로의 변경을 방지합니다.