clickJacking

965 단어
현대 브라우저는 x-frame-options http 헤더를 통해 자원이 프레임이나 iframe에 불러올 수 있는지 판단합니다.
X-Frame-Options: DENY
X-Frame-Options: SAMEORIGIN
X-Frame-Options: ALLOW-FROM https://example.com/

django는 모든 페이지를 보호하기 위해 중간부품을 설정할 수 있습니다.django는 일부 보기를 보호하기 위해 장식기를 사용할 수 있습니다.
MIDDLEWARE_CLASSES = (
...
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
...
)

기본값은 설정에서 지정할 수 있는 동원 SAMEORIGIN입니다.
X_FRAME_OPTIONS = 'DENY'

일부 뷰는 보호되지 않습니다.
from django.views.decorators.clickjacking import xframe_options_exempt

@xframe_options_exempt
def ok_to_load_in_a_frame(request):
    return HttpResponse("This page is safe to load in a frame on any site.")

from django.views.decorators.clickjacking import xframe_options_deny
from django.views.decorators.clickjacking import xframe_options_sameorigin

그러나 구식 브라우저는 지원하지 않습니다. (js에서 판단할 수 있습니다.)

좋은 웹페이지 즐겨찾기