2017-12-08 3 views
0

MVC3 및 .NET Framework 4.0을 사용하여 개발 된 응용 프로그램이 있습니다. HTTP Verb Tampering을 방지하기 위해 응용 프로그램의 web.config 파일에 아래 코드를 포함 시켰습니다. 로컬 컴퓨터에서 수정 프로그램이 예상대로 작동하고 401 인증되지 않은 코드를 반환합니다.MVC3에서 HTTPVerbTampering 수정

<authorization> 
     <allow verbs="GET" users="*" /> 
     <allow verbs="POST" users="*" /> 
     <deny verbs="*" /> 
    </authorization> 

동일한 코드를 배포하면 테스트 결과가 202 OK를 반환합니다. 그래서 수정 프로그램이 작동하지 않습니다. 이 문제를 해결할 수있는 방법이 있습니까?

+0

테스트 사이트가 실제로이 구성을 사용하는지 확인 했습니까? – CodeCaster

+0

@CodeCaster -이 작업을 수행하는 방법을 알려주십시오. –

+0

서버를보고 web.config를 엽니 다. – CodeCaster

답변

1

Visual Studio에서 "재생"단추로 작업하고 있습니까? IIS Express를 사용하고 있습니까? 아니면 로컬 컴퓨터의 IIS WebAPP에 실제로 배포하고 있습니까?

IIS 용으로 개발할 때 일반적으로 "재생"단추를 사용하지 않습니다. 특별히 IIS 서버를 개발할 때 사용합니다. 그런 일이 발생하면 내 컴퓨터에서 동일한 IIS 서버 구성을 사용하고 내 Dev 폴더를 가리키는 웹 응용 프로그램을 만들어 테스트합니다.

web.config를 설정하는 데 문제가있는 경우 IIS 시각 도구를 사용하여 web.config에서 수정 된 사항을 확인하고 커밋합니다.

은 ASP.NET 측과 IIS 측의 구성에 약간의 차이가 있습니다 :

이 웹 사이트를 확인하십시오 : https://docs.microsoft.com/en-us/iis/manage/configuring-security/understanding-iis-url-authorization

을 그리고이 노트를 참조하십시오

ASP.NET URL 권한 부여와 IIS URL 권한 부여의 차이점

ASP.NET UrlAuthorization과 IIS URL Authorization 간에는 작지만 중요한 차이점이 있습니다.

ASP.NET Url Authorization은 IIS 위에 ASP.NET을 설치할 때 설치됩니다.

이것은 IIS 7.0을 참조합니다. IIS간에 여러 구성이 호환되지만 일부 특정 변경이 적용될 수 있습니다.