2011-01-20 5 views
1

의 Facebook C# SDK 표준 "잠재적으로 위험한 요청"이 예상되는 경우 [ValidateInput(false)] 또는 더 자세히 알아보기로 결심하십시오.ASP.NET MVC 3에서 잠재적으로 위험한 요청 인

내 경우에는 FbApp.Session을 호출 할 때 발생합니다. 나는 모든 Controller가 파생 된 BaseController를 가지고있다. 거기에 override OnActionExecuting 전화가 있습니다. 꽤 일반적인 시나리오.

OnActionExecuting 내부에서 Facebook C# SDK을 사용하여 내 사용 멤버십을 관리합니다. if (FbApp.Session != null)을 사용하면 사용자가 인증되었는지 확인하는 방법입니다.

디버거를 실행하는 동안 게시 된 요청 변수 중 하나에 HTML로 인해 "잠재적으로 위험한 요청 ..."이라는 예외의 소스로 FbApp.Session을 호출합니다. 실제 조치 I 올리려면 [ValidateInput(false)] 속성이 있습니다.

Facebook C# SDK 내부에서이 문제가 발생하는 이유는 무엇입니까? 이 문제를 어떻게 해결할 수 있습니까?

편집 :a bug in ASP.NET MVC 3 RC2 일 수 있습니다 (아직 풀 버전으로 업그레이드하지 않았습니다). 나는 나의 발견을 업그레이드하고보고 할 것이다.

+0

어떤 SDK를 사용하고 있습니까? – Chance

+0

Nathan Totten (http://facebooksdk.codeplex.com/)의 Facebook C# SDK – Chaddeus

+1

스택 추적을 사용할 수있는 경우 제공하십시오. 일반적으로 이것은 누군가 (아마도 SDK)가 Request.Form을 직접 호출하려고 시도했음을 의미합니다. [ValidateInput (false)] 속성은 모델 바인딩을 과 결합하지 않는 한 모델 바인딩에만 영향을 미치므로 어디에서나 해제합니다. – Levi

답변

1

답변은 ASP.NET MVC3 RTM에 있는지 확인하고 web.config에 <httpRuntime requestValidationMode="2.0" />이 있어야합니다.

관련 문제