>  기사  >  웹 프론트엔드  >  JS 동일 출처 정책이란 무엇입니까?

JS 동일 출처 정책이란 무엇입니까?

anonymity
anonymity원래의
2019-05-29 15:16:094841검색

모든 웹 기반 애플리케이션에서 가장 중요한 것은 보안입니다. JS에는 악성 스크립트가 시스템을 공격하는 것을 방지하기 위한 다양한 보안 방법이 있습니다. 예를 들어 Mozilla가 있습니다. 스크립트 서명 및 권한 적용과 관련된 완전히 고유한 완전한 모델입니다. 어떤 보안 조치가 모든 브라우저에 공통적이고 어떤 것이 브라우저에 특정한지 알아야 합니다. 이렇게 하면 보다 안전한 JS 스크립트를 만들 수 있습니다.

JS 동일 출처 정책이란 무엇입니까?JS는 동일한 도메인의 페이지하고만 통신할 수 있습니다. 예: http://domain:port/app1/page.html에서 실행되는 스크립트는 http://domain :port/app3/page.html과 통신할 수 없습니다. ;의 브라우저 창 또는 iframe. 쿠키에 액세스할 수 없고 HTTP 응답 등을 받을 수 없습니다(그러나 다른 소스로 HTTP 요청을 보낼 수 있음). AJAX에도 이 정책이 적용됩니다. 동일한 출처 정책

동일한 출처로 간주되는 두 스크립트의 조건은 다음과 같습니다. 프로토콜은 동일합니다(예: 둘 다 http://입니다).

포트는 동일합니다(보통 80). )

도메인 이름이 동일합니다

이 세 가지 조건 중 하나라도 충족되지 않으면 두 스크립트는 상호 작용할 수 없습니다. 예를 들어 www.mydomain.com의 스크립트는 video.mydomain의 페이지에 액세스할 수 없습니다. com은 도메인 이름이 다르기 때문에 후자가 전자의 하위 도메인이지만 마찬가지로 포트가 다르기 때문에 www.mydomain.com:8080의 페이지에 액세스할 수 없고 about:blank에 액세스할 수도 없습니다. 프로토콜이 다릅니다(후자는 http://가 아닙니다)

동일 출처 정책의 영향:

BOM 및 DOM과의 상호 작용에 영향을 미칩니다. 예: 다른 소스의 모든 페이지의 문서 개체. 액세스할 수 없습니다. 즉, DOM 구조에 액세스할 수 없습니다. 예:

페이지에 서로 다른 소스를 참조하는 두 개의 iframe이 있습니다. alert(frames[1].location.href);

alert(frames[ 1].document.location.href);//Failed

창과 문서 모두 위치 개체 속성이 있습니다. 프레임 페이지와 소스가 다른 페이지에서 이 두 줄의 코드를 실행하면 오류가 보고됩니다.

두 번째 줄에.

위 내용은 JS 동일 출처 정책이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.