두 개의 웹 역할 인스턴스가있는 Windows Azure (최신 2.x OS 버전)에서 실행되는 ASP.NET MVC 2 (.NET 4) 응용 프로그램이 있습니다.정적 Machine Key가있는 경우에도 HttpAntiForgeryException이 임의로 발생하는 이유는 무엇입니까?
우리는 모든 POST 요청에 대해 MVC에서 제공하는 위조 토큰을 사용하며 web.config에서 정적 시스템 키를 설정 했으므로 모든 시스템이 여러 시스템에서 작동하고 재시작 할 수 있습니다. 99.9 %의 경우 완벽하게 작동합니다.
하지만 지금은 "필요한 위조 토큰이 제공되지 않았거나 유효하지 않습니다."라는 메시지와 함께 HttpAntiForgeryException을 기록합니다.
브라우저에서 쿠키가 허용되지 않을 수 있지만 쿠키와 쿠키가 올바르게 사용되고 있는지 확인했습니다.
오류는 다양한 브라우저에서 발생하며 사용자가 작업을 반복해야하거나 일부 데이터가 손실 될 수 있으므로 분명히 사용자에게 문제가됩니다. 즉, 문제를 로컬에서 재현하지 못했지만 Windows Azure에서만 발생합니다.
왜 그런 일이 발생합니까? 우리는 어떻게 그것을 피할 수 있습니까?
(MVC 팀의) 보안 담당자와 확인한 결과 Darin이 맞을 것 같습니다. 사용자 이름이 변경되었을 수도 있습니다. – RickAndMSFT