0
부하 분산 (2 노드) 웹 팜에서 IIS 8.5를 실행하고 있습니다. here 설명 된대로, 내가 명시 적 검증 및 암호 해독 키를 생성 한 서버 전체 수준에서"위조 방지 토큰을 암호 해독 할 수 없습니다."
- 및 전역을 동기화 한 :
System.Web.Mvc.HttpAntiForgeryException (0x80004005): The anti-forgery token could not be decrypted....
I 체크/시도 다양한 솔루션 : 우리는 산발적 인 오류를 얻고있다 두 노드. 한 가지주의해야 할 점은 지금은 "각 응용 프로그램마다 고유 한 키 생성"을 선택하지 않은 채로 두었습니다.
- 토큰은 페이지 당 한 번만 생성되어 here의 문제를 피할 수 있습니다.
하지만 오류는 지속됩니다.
다음 문제를 해결하려면 어떻게해야합니까?
편집 :
컨트롤러 코드 :
[HttpGet]
public ActionResult Index()
{
var model = new LoginModel();
return View(model);
}
관련 뷰 코드 :
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<h1>Log In</h1>
<fieldset>
<label>Email</label>
@Html.TextBoxFor(model => model.Username)
<label>Password</label>
@Html.PasswordFor(model => model.Password)
<input type="submit" />
</fieldset>
}
코드를 표시 할 수 있습니까? 특히보기 및 컨트롤러 방법. 또한 두 컴퓨터의 모든 .NET 프레임 워크 (64 비트 및 32 비트)에서 컴퓨터 키를 동기화 했습니까? –
코드를 익명화하는 데 시간이 걸립니다. 컴퓨터 키에 관해서는 컴퓨터 키가 첫 번째 링크에 설명 된대로 IIS GUI를 통해 동기화 된 유효성 검사 키와 암호 해독 키로 구성된다는 것을 이해했습니다. 그것이 잘못된 이해입니까? – anon
나는 그것이 맞다라고 생각한다. .. 그러나 트릭이있다, 여러 개의 machine.configs (서버에 설치되는 각 버전의 .NET 프레임 워크 중의 하나와 각 플랫폼 (64/32 비트))가있다. 하나도 놓치지 않았다면, 그리고 그 요청에 서버가 사용하고있는 것이면, 이런 종류의 문제가 발생할 것입니다. –