2012-04-23 73 views
1

我有两套Web应用程序,一套在Asp.Net 3.5下运行,一套在Asp.Net 4.0上运行。两者都在IIS 6中进行托管。我需要使用共享表单身份验证(通过3.5应用程序)对3.5和4.0应用程序进行身份验证和授权。但是,我无法完成这一工作。到目前为止,我有在Asp.Net 3.5和Asp.Net 4.0之间共享我的授权令牌?

  • 确保<machineKey>配置部分在所有应用程序上都是相同的。
  • 将我的提供者设置为相同:指向同一个数据库。
  • 我甚至尝试过使用aspnet:UseLegacyEncryption per this post

到目前为止没有我试过的工作。除了当我切换“3.5”应用程序在ver。下运行时。 4.0。那么这两个网站都可以共享认证令牌。对我来说不幸的是,这不是生产中的一种选择。

很明显,3.5和4.0之间有些不同,但我无法弄清楚它是什么。我错过了什么?有没有其他人遇到过这个?你做了什么来解决它?

回答

0

我建议在您正在使用的机器上检查.NET框架更新(3.5 & 4) - 我自己也遇到同样的问题,这就是我目前正在尝试解决的问题。

我读过某些更新对auth令牌创建方式的更改。看起来我的本地版本4已更新,但3.5不是 - 所以就3.5而言,由.net4生成的令牌是不可接受的。

手指划过!

+0

花了一段时间下载和安装更新,窗体身份验证现在可以在我的项目上运行。 我希望它也能解决别人的问题!我需要一段时间才能到达这里! :D – 2012-04-26 16:08:00

+0

停止更新工作?我已经能够在本地机器上解决这个问题,但它仍然不能在服务器上运行。 – Yozepi 2012-05-01 12:22:44

+0

在我的本地计算机上安装适用于我的更新。无论如何,服务器环境是最新的,因此身份验证也在那里工作。您的服务器是否应用了相同的更新? – 2012-05-16 14:29:58