상세 컨텐츠

본문 제목

X-Frame-Options 헤더 deny 발생 시

JAVA/Spring

by 영공쁘이 2023. 10. 18. 17:03

본문

Error: "X-Frame-options deny"

 

위는, 현재 사용되고 있는 페이지에서 iframe 사용으로 인한 오류임을 나타냄.

iframe을 사용해서 일어나는 문제점으로 인해 요즘은 사용하지 않은 것으로 전환됨

 

iframe 사용의 단점

1. XSS 에러 : 게시판이나 웹 메일 등에 자바 스크립트와 같은 스크립트 코드를 삽입 해 개발자가 고려하지 않은 기능이 작동하게 하는 치명적일 수 있는 공격

  >> (다른 서버에 위치한 페이지를 <frame>, <iframe>, <object> 등으로 삽입하여 다양한 공격에 사용 가능) = 클릭재킹

 

이로인해, 의도와 다른 기능을 수행하게 되는 것이다.

그러면 웹 보안상의 문제를 일으킬 수 있다. 그래서 현재는 웹페이지를 따로 만드는  대체하여 사용하고자 한다.

 

2. 웹크롤링의 지연

3. 기능상 문제(뒤로가기 등 버튼이나 다른 동작들이 부자연스러움을 알 수 있음)

 

위와같은 단점을 해결하기 위한 것이 . X-Frame-Options 헤더이다.

헤더의 옵션

브라우저 보안 정책이다보니, 시큐리티에서 해결할 수 있었다.

현재 프로젝트에서는, 스프링 시큐리티 적용 단계에서 같은 주소에서 요청을 하는 경우에 받아들여지도록 하는 방법이 맞는 것이었다.

 

해결점은 다음과 같았다.

 

 @Bean
  public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
    http.csrf((csrf) -> csrf.disable()).cors((cors) -> cors.disable())
        .headers(headers -> headers.frameOptions(frameOptions -> frameOptions.sameOrigin()))
 		
 		.. 권한 및 다른 설정 코드 자리 ..
 
 }

 

'JAVA > Spring' 카테고리의 다른 글

RestClient 사용  (1) 2025.04.03
API와 VUE단 분리하여 배포 후 파일 수정/추가 시 설정  (0) 2024.09.20
ApplicationContext  (0) 2023.08.09
PostConstruct 어노테이션  (0) 2023.06.19
Security_간단설명  (2) 2023.05.22

관련글 더보기