如何在DotNetNuke 7和非DotNetNuke 7站点之间共享ASP.NET授权cookie?

时间:2012-12-31 21:08:24

标签: asp.net-mvc iis forms-authentication dotnetnuke machinekey

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

有许多如何实现这一目标的例子。这是我们使用的指南: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值:  <machineKey decryption="3DES" decryptionKey="C7DE3391E9E25BC1106BA55B1A86EB825A66A06A2AA720CF" validation="SHA1" validationKey="F41C305583E22214850AD9B2B989588F5045EE2A99EFF68849B81EF154CFF745230F12D4BCFEBB0214BB24F8A6EDB34A9B45BB0849F6CB60E5D23528A69DBBC6" />

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

任何见解都将受到赞赏。

谢谢!

0 个答案:

没有答案