Bonsoir,
Je suis actuellement sous C#.Net 4.0, avec Visual Studio 2010 et SQL Server 2008.
J'ai une erreur qui est apparue du type:
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.
Elle apparaît systématiquement dans la même page (en tout cas pour le moment):
J'ai un utilisateur qui s'authentifie à mon site
Lorsqu'il s'est authentifié, il est rédirigé vers une page et je lui demande d'insérer un code (j'utilise un Yubikey pour ça) qui va permettre de déchiffrer des informations.
Et c'est lorsqu'il entre le code, la clé USB qui emule un clavier fait "Enter", puis j'ai mon erreur qui arrive. J'ai également testé en tappant au clavier, rien n'y change.
Dans mon masterpage, j'ai le code suivant qui permet de savoir si un utilisateur est authentifié ou non:
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 protected void Page_Init(object sender, EventArgs e) { try { HttpCookie myCookie = null; try { myCookie = Request.Cookies["myCookie"]; } catch { Response.Redirect("~/login.aspx", true); } if (!Cookies.isConnected(myCookie)) { Response.Redirect("~/login.aspx", true); } } catch { Response.Redirect("~/login.aspx", true); } }
Et le code de ma page qui pose le problème est le suivant:
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <%@ Page Title="" Language="C#" MasterPageFile="~/View.Master" AutoEventWireup="true" CodeBehind="SetDevice.aspx.cs" Inherits="SetDevice" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="leftMenuNavPlaceHolder" Runat="Server"> </asp:Content> <asp:Content ID="Content3" ContentPlaceHolderID="mainContentPlaceHolder" Runat="Server"> <asp:Label ID="lblSetDevice" runat="server" Text="Label"> Please enter your Yubico : </asp:Label> <br /><br /> <form id="frmSetDevice" runat="server" method="post" action="Home.aspx"> <asp:TextBox ID="txtYubicoSecretKey" runat="server" TextMode="Password" Width="650"></asp:TextBox> <asp:Button ID="btnSetDevice" runat="server" Text="Continue" OnClick="btn_Continue"/> </form> </asp:Content>
Et dans mon code qui est appelé lorsque le bouton est soumit:
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 protected void btn_Continue(object sender, EventArgs e) { try { string Yubico = HttpUtility.HtmlDecode(Request.Form[@"ctl00$mainContentPlaceHolder$txtYubicoSecretKey"].ToString()); Login.PrepareEnvironment(Yubico); Server.Transfer("./Home.aspx", false); } catch (Exception exc) { Server.Transfer("./Error.aspx", false); } }
Apparemment beaucoup de monde à cette erreur, mais je n'ai trouvé aucune méthode qui permet de régler ce problème
Est-ce que quelqu'un aurait des idées ?
Merci beaucoup pour votre aide, je désespère :'(
L.
Partager