MVC ValidateAntiForgeryToken Problem mit mehreren Registerkarten

Wir hatten die Meldung "Ein erforderlicher Fälschungsschutz-Token wurde nicht geliefert oder war ungültig." Erhalten. Bei einigen weiteren Untersuchungen ist es mir gelungen, das Problem in seiner einfachsten Form wiederherzustellen. Entweder mache ich etwas völlig Falsches oder dies ist eine Einschränkung des Anti-Fälschungs-Tokensystems.

In jedem Fall würde ich mich über einen Rat freuen!

Leeres MVC 2-Projekt: eine Ansichtsseite, ein Controller

Aussicht

<%--Sign in form:--%>
<% using(Html.BeginForm("SignIn", "Home", FormMethod.Post)) {%>
    <%= Html.AntiForgeryToken()%>
    <input type="submit" value="Sign in" />
<%}%>

Regler

public ActionResult Index()
{
    ViewData["status"] = "Index";
    return View();
}

[ValidateAntiForgeryToken]
public ActionResult SignIn()
{
    ViewData["status"] = "Signed In!";
    FormsAuthentication.SetAuthCookie("username", false);
    return View("Index");
}

[EDIT: vereinfachtes Codebeispiel]

Um die Ausnahme erneut zu erstellen, öffnen Sie zwei nicht angemeldete Registerkarten - melden Sie sich auf der ersten Registerkarte an und melden Sie sich dann auf der zweiten Registerkarte an.

Die zweite Registerkarte löst immer eine fälschungssichere Ausnahme aus, wenn ich vermute, dass das richtige Verhalten darin besteht, zur angemeldeten Seite umzuleiten (gemeinsame Nutzung der Sitzung / Authentifizierung der ursprünglich angemeldeten Registerkarte).

Jeder Rat wäre dankbar!

Cheers, Dave

Antworten auf die Frage(6)

Ihre Antwort auf die Frage