我有两个 ASP.NET 应用程序。第一个是 .NET 3.5 应用程序,第二个是 .NET 4 应用程序。
.NET 3.5 应用程序负责对用户进行身份验证。
它们都共享相同的机器密钥,将 SHA1 指定为验证算法(按照http://www.asp.net/whitepapers/aspnet4/break-changes#0.1__Toc256770148的说明)
<machineKey decryption="Auto" decryptionKey="FD6F049F1F1E91CC29576A2B5E2197C792EB28557D016E8C" validation="SHA1" validationKey="7A057944F91ABB19DDDE99425ECE9BF79F364492A2D1F555D9A46A703F5CB0B0ADAD955D05EBAF1B65C596B572BC6EE17FA8765885E74B8C22C0396B5E042201" />
但是我无法登录到第二个应用程序。
如果我将第一个应用程序转换为 .NET 4 或将第二个应用程序转换为 .NET 3.5,我可以登录。不幸的是,这在我的生产应用程序中是不可能的。
我在这里错过了什么吗?
谢谢,本
更新
当由 .NET 3.5 应用程序创建时,cookie 的长度似乎更短。这可能是一个红鲱鱼,但我想我会发布它的完整性。
更新 2
这个问题已经被问到并回答了基于表单的身份验证在 .Net 2.0 和 .Net 4.0 应用程序之间不起作用。