Introduzionefirma del messaggio non valido quando si esegue provider OpenID su Cluster
Abbiamo un fornitore OpenID, che abbiamo creato utilizzando il componente DotNetOpenAuth. Tutto funziona alla perfezione quando eseguiamo il provider su un singolo nodo, ma quando spostiamo il provider in un cluster con bilanciamento del carico in cui più server gestiscono le richieste per ogni sessione, si verifica un problema con la firma del messaggio poiché il componente DotNetOpenAuth sembra utilizzare qualcosa di unico da ciascun nodo del cluster per creare la firma.
Eccezione
DotNetOpenAuth.Messaging.Bindings.InvalidSignatureException: Message signature was incorrect.
at DotNetOpenAuth.OpenId.ChannelElements.SigningBindingElement.ProcessIncomingMessage(IProtocolMessage message) in c:\BuildAgent\work\7ab20c0d948e028f\src\DotNetOpenAuth\OpenId\ChannelElements\SigningBindingElement.cs:line 139
at DotNetOpenAuth.Messaging.Channel.ProcessIncomingMessage(IProtocolMessage message) in c:\BuildAgent\work\7ab20c0d948e028f\src\DotNetOpenAuth\Messaging\Channel.cs:line 940
at DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.ProcessIncomingMessage(IProtocolMessage message) in c:\BuildAgent\work\7ab20c0d948e028f\src\DotNetOpenAuth\OpenId\ChannelElements\OpenIdChannel.cs:line 172
at DotNetOpenAuth.Messaging.Channel.ReadFromRequest(HttpRequestInfo httpRequest) in c:\BuildAgent\work\7ab20c0d948e028f\src\DotNetOpenAuth\Messaging\Channel.cs:line 378
at DotNetOpenAuth.OpenId.RelyingParty.OpenIdRelyingParty.GetResponse(HttpRequestInfo httpRequestInfo) in c:\BuildAgent\work\7ab20c0d948e028f\src\DotNetOpenAuth\OpenId\RelyingParty\OpenIdRelyingParty.cs:line 493
Setup
Abbiamo il setup della macchina config per utilizzare la stessa chiave macchina su tutti i nodi cluster e abbiamo impostato un fuori sessione di processo con SQL Server.
Domanda
Come facciamo a configurare la chiave usata da DotNetOpenAuth per firmare i propri messaggi in modo che il cliente si fidi risposte da tutti i server del cluster durante la stessa sessione?
Penso che abbiamo lo stesso problema: http://stackoverflow.com/questions/2505565/dotnetopenauth-message-signature-was- incorrect –
Abbiamo avuto un problema simile, ma invece abbiamo optato per creare un nonce store che era carino semplice e funziona piuttosto bene nelle nostre configurazioni fattoria/giardino. Ma il problema che stiamo avendo ora è con il nostro provider, che stiamo cercando di spostare in una fattoria, non nell'RP. – Garth