2014-05-22 1 views
0

J'utilise WIF 4.0 pour créer un RP et un STS prenant en charge les revendications. J'ai maintenant des problèmes que j'ai déployés dans mon environnement de production avec plusieurs serveurs hébergeant l'application. Pour une raison quelconque, je reçois le redoutéProblème WIF 4.0 avec déploiement dans un environnement à charge équilibrée

[CryptographicException: Key not valid for use in specified state. ] 

erreur après que l'utilisateur a été inactif pendant un certain temps. Je me demandais si quelqu'un a de l'expérience avec ça? Est-ce que l'utilisation de la clé de la machine pourrait aider Je vois également cette erreur lors de la réinitialisation d'IIS sur les serveurs. J'ai mis le LoadUserProfile à true.

Répondre

0

Je pense que vous devez spécifier quelque chose de similaire à ceci dans votre web.config. En outre, vous devez définir les mêmes touches sur tous les serveurs.

<system.identityModel> 
    <identityConfiguration> 
    <securityTokenHandlers> 
       <remove type="System.IdentityModel.Tokens.SessionSecurityTokenHandler, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
     <add type="System.IdentityModel.Services.Tokens.MachineKeySessionSecurityTokenHandler, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
    </securityTokenHandlers> 
    </identityConfiguration> 
</system.identityModel> 
+0

Oui, malheureusement cette option n'est disponible que pour WIF 4.5. – shenn

+0

Vous devez être rigth. D'un autre côté, la même approche fonctionnera avec l'ancienne version. En bout de ligne, vous devez remplacer le gestionnaire sessionsecuritytoken par un qui utilise une clé fixe. Ce n'est pas si difficile d'écrire cela vous-même; surtout si vous pouvez jeter un coup d'œil au code du gestionnaire WIF 4.5. –

Questions connexes