【发布时间】:2014-09-08 19:27:10
【问题描述】:
我有三个 ASP.NET MVC 应用程序。第一个是CMS,它允许每个用户拥有一个可定制的网站。第二个是使用第一个应用程序制作的网站。最后一个是在所有可定制网站之间共享的在线商店。
有两种类型的用户。第一个可以连接到 CMS 以创建他或她的网站。第二个是此类网站和共享在线商店的消费者。
为了这个问题,假设应用程序可在以下地址获得:
- www.example.com(用于 CMS)
- www.example.com/website/userA(为用户 A 定制的网站)
- www.example.com/website/userB(为用户 B 定制的网站)
- store.example.com(用于在线商店)
要连接到商店,您需要在用户的网站上拥有一个帐户,并且商店会在您连接时采用该用户的颜色和配置。
目前,用户使用相同的凭据连接到网站和商店。应用程序使用表单身份验证。我希望连接可以跨应用程序使用,这样当用户连接到网站时,他或她会自动连接到商店。
我已经阅读了很多关于如何跨应用程序设置表单身份验证的信息,但我似乎无法完成这项工作,因为两个 cookie 路径不一样。实际上,网站的路径是“/website/userX”,而商店的路径是“/”。我需要在网站上以这种方式设置路径,这样当用户登录网站时,他或她不会连接到所有网站。
我怎样才能做到这一点?即使路径不同,我是否可以在两个应用程序之间进行身份验证,或者,如果我将网站的路径改回“/”,是否有另一个可以确保当用户连接到一个网站时,他或她没有连接到所有网站?
非常感谢。
【问题讨论】:
标签: asp.net asp.net-mvc authentication cookies forms-authentication