3

我们正在构建一个 ASP.NET MVC 4 网站,该网站将显示特定于 DotNetNuke 登录用户的信息。为了实现这一点,我们将 web.config 中的机器密钥设置为完全相同,并且我们还将<authentication>配置部分设置为跨网站匹配,以便查看从 MVC 站点登录的 DotNetNuke 用户.

有很多例子可以说明如何做到这一点。这是我们使用的指南:http: //msdn.microsoft.com/en-us/library/eb0zx8fc.aspx

但是,这仅在我们在两个 DotNetNuke 站点或两个非 DotNetNuke 站点之间设置信任时才有效。如果在 DotNetNuke 中设置了 ASP.NET auth-cookie,我们将无法在 MVC 站点中访问它。登录 DotNetNuke 站点,然后浏览到 MVC 站点后,HttpContext.Current.User.Identity.Name 为空。

这两个站点设置在同一台服务器上,每个站点都在不同的端口下运行。IIS 8 中都启用了匿名和表单身份验证,因为它在 Windows Server 2012 上运行。

以下是在两个站点之间设置的 web.config 值:

机器键值: <machineKey decryption="3DES" decryptionKey="C7DE3391E9E25BC1106BA55B1A86EB825A66A06A2AA720CF" validation="SHA1" validationKey="F41C305583E22214850AD9B2B989588F5045EE2A99EFF68849B81EF154CFF745230F12D4BCFEBB0214BB24F8A6EDB34A9B45BB0849F6CB60E5D23528A69DBBC6" />

认证部分: <authentication mode="Forms"> <forms timeout="60" cookieless="UseCookies" ticketCompatibilityMode="Framework40" /> </authentication>

任何见解将不胜感激。

谢谢!

4

0 回答 0