我正在一个Webfarm场景中运行MVC 6(vNext)(使用具有多个AppServers的ARR前端)。服务器亲和性关闭。
当我在不同请求之间跳转到应用程序服务器时,会出现以下错误:
CryptographicException:在密钥环中找不到密钥{3275ccad-973d-43ca-930f-fbac4d276640}。
InvalidOperationException:无法解密防伪令牌。
以前,我认为可以通过在web.config中设置静态MachineKey来处理此问题。
据我了解,我们现在已经转向了新的DataProtection API,并尝试了以下方法,认为应用程序名称作为某种种子:
services.AddDataProtection();
services.ConfigureDataProtection(configure =>
{
configure.SetApplicationName("WebAppName");
});
现有的方法无法解决这个问题。
在vNext中有什么解决办法么?