재우니의 블로그

 

 

 

ASP.NET 응용 프로그램에서 특정 HTTP 메서드(verbs)만을 허용하고 나머지를 차단하려면, web.config 파일의 system.webServer 섹션에 security 및 requestFiltering 설정을 추가하여 이를 구성할 수 있습니다. 

 

모든 메서드를 차단하고자 할 때는 명시적으로 allowUnlisted="false" 지정하면 허용되지 않은 모든 메서드는 자동으로 차단됩니다.

아래는 수정된 web.config 설정 예시입니다:

 

<configuration>
  <system.webServer>
    <security>
      <requestFiltering>
        <verbs allowUnlisted="false"> <!-- 허용되지 않은 모든 메서드를 자동으로 차단 -->
          <add verb="GET" allowed="true" />
          <add verb="POST" allowed="true" />
          <add verb="PUT" allowed="true" />
          <add verb="DELETE" allowed="true" />
          <add verb="OPTIONS" allowed="true" />
        </verbs>
      </requestFiltering>
    </security>
  </system.webServer>
</configuration>

 

 

IIS 의 요청 필더링을 통해 HTTP 동사 탭에서 아래와 같이 지정하셔도 됩니다. 저장 시,  해당 웹사이트가 재시작 됩니다.