MVMA 사이트의 오류를 처리하는 데 ELMAH를 사용하고 있으며 지난 몇 주 동안 일부 CryptographicExceptions이 발생했습니다. 메시지는 다음과 같습니다.ASP.MVC 위조 방지 토큰 및 암호화 오류
System.Security.Cryptography.CryptographicException : 채우기가 잘못되어 제거 할 수 없습니다.
System.Web.Mvc.HttpAntiForgeryException : 필수 위조 토큰이 제공되지 않았거나 이 제공되지 않았거나 유효하지 않습니다. ---> System.Web.HttpException : 확인 viewstate MAC 실패했습니다. 이 응용 프로그램이 웹 팜 또는 클러스터에서 호스팅되는 경우 구성이 동일한 validationKey 및 유효성 검사 알고리즘을 지정하는지 확인하십시오. AutoGenerate는 클러스터에서 사용할 수 없습니다. --->
응용 프로그램이 클러스터에서 실행되고 있지 않으며 이러한 오류를 재현하지 못하는 것 같습니다. 손으로 만든 게시물이 아닌 유효한 요청처럼 보이며 __RequestVerificationToken 쿠키가 포함되어 있습니다. 양식 (내 로그인 양식) 안에 필요한 HTML 도우미가 페이지에 있습니다.
사용자 불만이 아직 없었으므로 로그인을 시도하는 사람이라면 누구나 사용할 수 있다고 추측합니다.하지만 어떻게 될지 궁금해졌습니다.
다른 사람이이 동작을 보거나 예외를 진단하는 방법에 대한 아이디어가 있습니다. 말했듯이 실패 할 수는 없습니다. FF에서 쿠키를 삭제하면 다른 오류가 발생합니다. 페이지에서 숨겨진 토큰 입력 내용을 수정하는 것과 마찬가지로 쿠키를 수정 (내용을 변경 또는 제거)하면 다른 오류가 발생합니다.
machineKey가 올바른 해결책이었습니다. –
비슷한 경험 - ASP.NET MVC 2로 마이그레이션 한 후 내 블로그가 일시적으로 중단되기 시작했습니다.machineKey가 추가되었으며 문제가 해결되었습니다. –