본문 바로가기

개발

Strict-Transport-Security 헤더에 관련해서...

Strict-Transport-Security 헤더

- http 헤더는 브러우저에게 웹 사이트와의 통신을 반드시 유효한 https 터널을 통해서 진행하라고 지시.
- 임의의 https 오류를 받아들이고 그냥 비보안 연결에서 통신을 계속 진행하는 것은 불가능.
- 브러우저는 사용자가 브라우징을 더 진행하지 못하게 하고, 대신 오류를 설명해 준다.
-  Strict-Transport-Security 헤더를 이용하면 평문(암호화되지 않은) 통신 채널을 통해 전달된 내용을 사용자가 받아들이지 못하게 할 수 있다

리다이렉션으로 해결.

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Protected Context</web-resource-name>
        <url-pattern>/*</url-pattern>
        <http-method>PUT</http-method>
        <http-method>DELETE</http-method>
        <http-method>HEAD</http-method>
        <http-method>OPTIONS</http-method>
    </web-resource-collection>
    <auth-constraint />
</security-constraint>
WEB-INF/web.xml 또는 tomcat/conf/web.xml 에 넣고 톰캣을 재시작하면 됩니다.

trace 는 connector의 allowtrace로만 제한가능.


캐시화 가능한 SSL 페이지 발견
사용자 이름, 비밀번호, 머신 이름등 민감한 정보 포함 안됨. 

적용한다면 파일다운로드 ie에서 동작안할 가능성있음. : https://support.microsoft.com/ko-kr/kb/323308


-----------------------------------------------

소스 보면 tomcat은 여기서 처리  org.apache.catalina.servlets.DefaultServlet

     protected void doPut(HttpServletRequest req, HttpServletResponse resp)
         if (readOnly) {
             return;
         }

         if (readOnly) {
             return;
         }
 



readOnly가 true가 디폴트고, true이면  403 forbidden이 응답함. 

allowtrace가 true 일때 header에 allow 메소드가 사라짐. 





















'개발' 카테고리의 다른 글

2. Spring Batch Admin  (0) 2018.09.03
1. Spring batch 소개.  (0) 2018.08.27
자바 다형성과 추상클래스  (0) 2016.10.05
http url 문법과 리소스  (0) 2016.09.01
equal, ==, 데이터베이스로 객체를 식별하는 3가지 방법.  (0) 2016.08.31