경고: Chrome 버전 57부터는 삽입된 프레임 및 스크립트)을 추적할 수 있습니다. 대신 webview를 사용하세요.
샌드박스 처리된 고유한 출처에서 제공할 앱 또는 확장 프로그램 페이지의 모음을 정의합니다. 그리고 선택적으로 함께 사용할 컨텐츠 보안 정책. 샌드박스에 있다는 것은 두 가지 의미가 있습니다.
- 샌드박스 페이지는 확장 프로그램 또는 앱 API에 액세스할 수 없으며
샌드박스 처리되지 않은 페이지 (
postMessage()
를 통해 통신할 수 있음) 샌드박스 처리된 페이지에는 나머지 팀에서 사용하는 콘텐츠 보안 정책 (CSP)이 적용되지 않습니다. 앱 또는 확장 프로그램 (별도의 CSP 값이 있음)을 지정합니다. 즉, 예를 들어 인라인 스크립트와
eval
를 사용합니다.예를 들어, 다음은 두 개의 확장 페이지가 맞춤 CSP:
{ ... "sandbox": { "pages": [ "page1.html", "directory/page2.html" ] // content_security_policy is optional. "content_security_policy": "sandbox allow-scripts; script-src 'self'" ], ... }
지정하지 않으면 기본값
content_security_policy
은 다음과 같습니다.sandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self';
CSP 값을 지정하여 샌드박스를 더 제한할 수는 있지만sandbox
지시어이며allow-same-origin
토큰이 없을 수 있습니다 (HTML5 사양 참조). 또한 지정한 CSP에서 로드를 허용하지 않을 수 있습니다. 샌드박스 페이지 내부의 외부 웹 콘텐츠를 차단합니다.
창이나 프레임에 로드되길 바랐던 페이지만 나열하면 됩니다. 리소스
는
sandboxed_page
목록에 있는 경우 해당 삽입이 삽입된 페이지의 샌드박스를 사용하게 됩니다.
"Chrome 확장 프로그램에서 eval 사용. 안전하게 보호하십시오."에서는 샌드박싱 워크플로우가 포함되어 있어 실행에 문제가 발생할 수 있는 라이브러리를 사용할 수 있게 됨 확장 프로그램의 기본 콘텐츠 보안 정책을 설정합니다.
샌드박스 처리된 페이지는 manifest_version
2 이상을 사용하는 경우에만 지정할 수 있습니다.