HTTP OPTIONS 를 이용해서 서버에 허용된 method 를 조회할 수 있다.
PUT - URL 자원 생성(서버에 파일 생성 가능)
DELETE - URL 자원 삭제
등의 위험요소가 있기 때문에 막아야한다
$TOMCAT_HOME/conf/server.xml
에다
<security-constraint>
<display-name>Forbidden</display-name>
<web-resource-collection>
<web-resource-name>Forbidden</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>PUT</http-method>
<http-method>DELETE</http-method>
<http-method>TRACE</http-method>
<http-method>OPTIONS</http-method>
</web-resource-collection>
<auth-constraint>
<role-name></role-name>
</auth-constraint>
</security-constraint>
으로 Forbidden할 method 를 지정해주면되며
테스트방법은 아래와 같다(cmd창)
혹은 Wfetch를 사용해도 된다.
telnet localhost 8080
OPTIONS / HTTP/1.1(엔터)
Host : 127.0.0.1(엔터)
(엔터)
하면 결과가 나오며 허용되있을 경우엔 아래와 같고
---------------------------------------
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Allow: GET, HEAD, POST, PUT, DELETE, OPTIONS
Content-Length: 0
Date: Fri, 24 Jan 2014 07:43:18 GMT
---------------------------------------
허용되어있지 않을 경우엔 아래와 같다
---------------------------------------
HTTP/1.1 403 Forbidden
Server: Apache-Coyote/1.1
Pragma: No-cache
Cache-Control: no-cache
Expires: Thu, 01 Jan 1970 09:00:00 KST
Content-Type: text/html;charset=utf-8
Content-Length: 1108
Date: Fri, 24 Jan 2014 07:35:34 GMT
---------------------------------------
apache 관련 trace off 부분은 (http://thinkout.egloos.com/viewer/1831942) 참고
'Java SE > java' 카테고리의 다른 글
Parameters: Invalid chunk ignored. remove 로그 제거 (0) | 2013.12.17 |
---|---|
google smtp - unknown host : smtp.gmail.com (0) | 2013.03.07 |
Java Decompiler (0) | 2011.12.14 |
POI에서 Excel업로드 할 시 문제점 - Row count (2) | 2011.11.22 |
Dynamic Web Module 2.4 & EL(Expression Langugae) (0) | 2011.07.13 |