在此之前,我实现了两个单独的ASP.NET Web应用程序,一个作为虚拟应用程序位于另一个的子文件夹中,它们成功地共享了表单身份验证,如http://msdn.microsoft.com/en-us/library/eb0zx8fc.aspx中所述
(基本上,在Web.config中设置相同的<forms>
部分,并在<machineKey>
部分中设置键)
现在,我正在尝试做一些类似的事情,让BlogEngine.NET(这是一个网站,而不是一个Web应用程序)与我的Web应用程序共享表单身份验证。我试过把它作为一个虚拟应用程序放在一个子文件夹中,并将其设置为一个单独的IIS站点(相同的域名,不同的端口号),但我根本无法让身份验证工作:当我登录到我的Web应用程序并访问博客时,Page.User.Identity.IsAuthenticated
始终为“false”。
我真的不知道如何开始调试它,因为表单身份验证是在我的任何代码运行之前处理的。<authentication>
部分的两个Web. xml是相同的:
<authentication mode="Forms">
<forms path="/" domain="localhost" timeout="129600" name=".WebSiteName"
protection="All" slidingExpiration="true" loginUrl="/admin/login.aspx"
cookieless="UseCookies"/>
</authentication>
<machineKey>
:
<machineKey validationKey="DD45C42ACEAF1E208E9B78288177EBF9C8C7C54C6D05BA2FBA90B5348B8F6987216CB098056891CFE81DC33E37C5F9A2BF1845DBF902C6E4BBFEC2341FFA3635"
decryptionKey="0C69852D8BE0948D545C35B932D394102802FAF7FA46E99B4E5B5E12546E4620"
validation="SHA1" decryption="AES" />
有没有人有任何建议,我应该检查或尝试?
1条答案
按热度按时间efzxgjgh1#
这是这个问题的一个很好的资源:Link
请注意,本文中的链接对阅读很有用。