web.xml (security-constraint) 설정 관련 문의
- 작성자 :
- 최*진
- 작성일 :
- 2024-06-18 16:20:27
- 조회수 :
- 321
- 구분 :
- 적용지원(기술지원)
- 진행상태 :
- 완료
Q
안녕하세요.
웹취약점 조치관련해서 http method 제한 관련 설정 중에 모르는 부분이 있어서 문의드립니다.
현재 로그인 관련 기능은 session기반으로 동작하며 globals.properies에 아래와 같이 설정해두었습니다.
Globals.Auth = session
options method를 제한하기 위해 web.xml에 아래 설정을 추가하였습니다. (web서버에서는 따로 제한하지않고 was에서 핸들링)
<security-constraint>
<display-name>Forbidden</display-name>
<web-resource-collection>
<web-resource-name>Protected Context</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>OPTIONS</http-method>
</web-resource-collection>
<auth-constraint />
</security-constraint>
....
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
문제 상황 : 메인화면 접근시 Get method로 접근하면 문제없지만, OPTIONS로 요청시 401 응답코드가 리턴되며 사용자 이름/패스워드 입력 모달이 실행됩니다.
해당 경로는 누구나 접속할 수 있는 화면이며 따로 접근권한을 주지않았는데 401이 뜨는 이유가 궁금합니다.
(JeusServer.log 상 "[로그시간][2] [Security-0084] Authorization failed. the permission('javax.security.jacc.WebUserDataPermission' '[url path]' 'OPTIONS:CONFIDENTIAL' was denied. subject anonymous, context-id [_contextName] ")
그리고 security-constraint 설정에 OPTIONS method를 제한했기에 403 응답코드를 예상했지만 401가 응답되는 이유가 있을까요?
위 현상은 일단 web.xml에 아래를 추가하여 사용자 정보를 입력받는 모달이 안뜨고 에러 페이지가 출력되게 수정해두었습니다. 위 두가지 문의 사항 확인 부탁드립니다.
<error-page>
<error-code>401</error-code>
<location>/common/error.jsp</location>
</error-page>
웹취약점 조치관련해서 http method 제한 관련 설정 중에 모르는 부분이 있어서 문의드립니다.
현재 로그인 관련 기능은 session기반으로 동작하며 globals.properies에 아래와 같이 설정해두었습니다.
Globals.Auth = session
options method를 제한하기 위해 web.xml에 아래 설정을 추가하였습니다. (web서버에서는 따로 제한하지않고 was에서 핸들링)
<security-constraint>
<display-name>Forbidden</display-name>
<web-resource-collection>
<web-resource-name>Protected Context</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>OPTIONS</http-method>
</web-resource-collection>
<auth-constraint />
</security-constraint>
....
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
문제 상황 : 메인화면 접근시 Get method로 접근하면 문제없지만, OPTIONS로 요청시 401 응답코드가 리턴되며 사용자 이름/패스워드 입력 모달이 실행됩니다.
해당 경로는 누구나 접속할 수 있는 화면이며 따로 접근권한을 주지않았는데 401이 뜨는 이유가 궁금합니다.
(JeusServer.log 상 "[로그시간][2] [Security-0084] Authorization failed. the permission('javax.security.jacc.WebUserDataPermission' '[url path]' 'OPTIONS:CONFIDENTIAL' was denied. subject anonymous, context-id [_contextName] ")
그리고 security-constraint 설정에 OPTIONS method를 제한했기에 403 응답코드를 예상했지만 401가 응답되는 이유가 있을까요?
위 현상은 일단 web.xml에 아래를 추가하여 사용자 정보를 입력받는 모달이 안뜨고 에러 페이지가 출력되게 수정해두었습니다. 위 두가지 문의 사항 확인 부탁드립니다.
<error-page>
<error-code>401</error-code>
<location>/common/error.jsp</location>
</error-page>
환경정보
-
- OS 정보 : red hat 7.8
- 표준프레임워크 버전 : 3.8
- JDK(JRE) 정보 : 1.8
- WAS 정보 : jeus7
- DB 정보 : oracle 19c
- 기타 환경 정보 : webtob 4.1
A
안녕하세요
표준프레임워크센터입니다.
기재해주신 내용만으로는 정확한 답변이 어렵습니다.
표준프레임워크 시큐리티 간소화 설정이 되어 있으면
스프링 시큐리티에서 제공하는 로그인 페이지는 비활성화 되므로
시큐리티 간소화 설정이 되어 있는지 먼저 확인해보시기 바랍니다.
시큐리티 간소화 설정을 사용하지 않는 경우라면
시큐리티를 별도로 구성한 것이므로
현재 구성한 설정(url 패턴이나 권한 처리 등)을 확인해보시기 바랍니다.
감사합니다.
표준프레임워크센터입니다.
기재해주신 내용만으로는 정확한 답변이 어렵습니다.
표준프레임워크 시큐리티 간소화 설정이 되어 있으면
스프링 시큐리티에서 제공하는 로그인 페이지는 비활성화 되므로
시큐리티 간소화 설정이 되어 있는지 먼저 확인해보시기 바랍니다.
시큐리티 간소화 설정을 사용하지 않는 경우라면
시큐리티를 별도로 구성한 것이므로
현재 구성한 설정(url 패턴이나 권한 처리 등)을 확인해보시기 바랍니다.
감사합니다.