不同.NET Framework版本下ASP.NET FormsAuthentication的兼容性

假设站点A加密使用.NET Framework 2.0,站点B解密使用.NET Framework 4.0,除了保持MachineKey相同外还需要进行如下设置:

1、Web.config的<appSettings>配置节下添加:

<add key="aspnet:UseLegacyEncryption" value="true" />

2、Web.confg的<appSettings>配置节下添加:

<add key="aspnet:UseLegacyMachineKeyEncryption" value="true" />

3、Web.config的machineKey配置节添加compatibilityMode属性,具体值由实际环境决定:

compatibilityMode="Framework20SP1"

 

2015-2-5 补充(感谢@玄之又玄)

如果以上方式还无法解决问题,请在Web.config的<appSettings>添加以下键值:

<add key="aspnet:UseLegacyFormsAuthenticationTicketCompatibility" value="true" />

 

posted @ 2014-07-28 22:13  junchu25  阅读(438)  评论(2编辑  收藏  举报