2013-04-19 3 views
1

내 사이트에 webmethod 무리가 있습니다. 내 응용 프로그램에서 호출을 확인하거나 직접 호출하여 응용 프로그램에서 호출 할 수있는 방법이 있습니다.웹 메서드 호출을 방지합니다

나는이 Web.config의에서 시도 :

<webServices> 
     <protocols> 
     <remove name="HttpGet"/> 
     <remove name="HttpPost"/> 
     <remove name="HttpPostLocalhost"/> 
     </protocols> 
</webServices> 

의 유일한 메소드를 호출하지만 browser.My 계획 내이 .asmx 파일을 엽니 방지 내 응용 프로그램 또는 직접 찾아로부터 호출 여부를 확인하는 것입니다? 직접 찾아보고 내가 열지 않도록해야합니까? 이 작업을 수행 할 수있는 안전한 방법이 있습니까? 아니면 잘못된 방법입니까? 고마워요.

+1

ASMX는 기존 기술이므로 새로운 개발에 사용하면 안됩니다. WCF는 웹 서비스 클라이언트 및 서버의 모든 새로운 개발에 사용해야합니다. 한 가지 힌트 : Microsoft는 MSDN에서 [ASMX 포럼] (http://social.msdn.microsoft.com/Forums/en-US/asmxandxml/threads)을 퇴역 시켰습니다. –

답변

1

찾고있는 것을 "인증"이라고합니다. 발신자가 누구인지 결정해야합니다.

그러면 서비스에 대한 액세스가 허용 된 발신자 만 실제로 액세스 할 수 있도록 "승인"을 제공합니다.

+0

내가 전에 검색을 게시하기 전에이 link.http : //stackoverflow.com/questions/555611/is-it-possible-to-secure-a-web-service-with-forms-authentication 그것은' 전혀 선택의 여지가 없으면 사용하지 마라. " –

+0

*** 양식 *** 인증을 사용하지 말 것. 폼 인증 만이 유일한 인증이 아닙니다. 반면에 ASMX 웹 서비스는 선택의 여지가 없다면 새로운 개발에 사용해서는 안됩니다. –

관련 문제