2017-12-08 2 views
1

프로덕션 서버에서 간헐적으로 AntiForgery 오류가 발생합니다. 세부 사항 : -간헐적으로 HttpAntiForgeryException 문제가 발생했습니다.

  • 문제는, 후에는
  • 문제는
  • 폼 인증을 사용하고 사이트가 하나의 서버에 배포 간헐적으로 작동 다시 로그인 페이지에서 발생했습니다.

System.Web.Mvc.HttpAntiForgeryException (0X80004005) : 쿠키 토큰 형식 필드의 토큰이 일치하지 않는 위조 방지. 단계 생산하는 - 사이트 에 로그인 *는 * 당신은 "안티 위조 토큰이 오류가 발생할 수 있습니다 오랫동안 열어 둡니다하거나 찾아에게 을 닫습니다 * .. 1-2시간 후 다시 를 로그인 페이지를 엽니 다 위조 방지 쿠키 토큰과 양식 필드 토큰이 일치하지 않습니다. " 그러나 오류가 발생했다고 보장 할 수는 없습니다. 사용자가 다시 로그인을 시도하면 오류가 간헐적으로 만 발생합니다.

많은 옵션을 시도했지만 문제를 해결할 수 없습니다.

+0

단일 서버에 사이트가 배포됨에 따라 시스템 키가 구성되지 않음 –

답변

0

이 오류의 원인은 일 수 있습니다. 1. 새로운 위치 또는 에 서버를 설치했습니다. 2. 응용 프로그램이 일부 클라이언트에서 계속 사용 중일 때 IIS를 다시 설정했습니다.

+0

프로덕션 사이트에서 발생하는 문제입니다. 해당 기간 동안 응용 프로그램 풀이 재활용되지 않습니다. 간헐적으로 .. 사이트에 로그인하여 브라우저를 닫고 1-2 시간 후에 로그인 페이지를 다시 엽니 다. 위조 방지에 대한 오류가 발생할 수 있습니다. 그러나 오류가 발생한다는 것을 보증하지 않습니다. –

+0

@ashishmishra 확인을 위해 이벤트 로그를 확인 했습니까? 재활용을 구성하지 않았지만 처리되지 않은 예외로 인해 재활용이 발생할 수 있습니다. 또 다른 가능성은 AV가 파일을 수정 된 것으로 간주하여 재생을 유발하는 것입니다. – Andy

+0

@Andy : 로그인 후 조치는 Antiforgery 속성에 의해 꾸며졌으며 서버에서 로그를 확인했지만 로그마다 첫 번째 로그인 액션조차 실행되지 않고 로그에서 Antiforgery 예외가 발생했습니다. 그것은 우리의 로그인 방법이 범인이 아님을 의미합니다. 로그마다 액션 로그인 (게시물)이 호출되었습니다. 나는 또한 서버에서 이벤트 로그를 확인하려고합니다. 한 가지 더 .. 각 코드 조각은 try catch 블록에 래핑되고 catch 블록에 logger가 있으므로 예외가 발생하면 기록됩니다. –

관련 문제