【发布时间】:2011-05-01 10:21:50
【问题描述】:
我有一个在 ie 下运行的基础网站(Asp.net WebForms 应用程序)。
http://localhost:90/
然后我创建了一个新的(这次是 Asp.net MVC)应用程序并将其添加到
http://localhost:90/mvc/
但不只是作为一个简单的虚拟文件夹,而是作为一个应用程序文件夹,通过定义一个不同的应用程序池来运行它,与父相比em> 应用程序。
由于浏览器不知道基本上在同一个域上有两个不同的应用程序,它的工作方式如下:
- 用户访问
http://localhost:90/ - 父应用将用户重定向到表单身份验证屏幕
- 用户成功登录
- 父网站添加身份验证 cookie
- 用户访问
http://localhost:90/mvc - 浏览器附加来自父应用的相同 cookie
我是否可以根据同一个 cookie 对用户进行身份验证?我会将我的 MVC 应用程序配置为登录重定向到父应用程序以具有共享的身份验证屏幕。但我想知道从那时起谁进行了身份验证和工作。
我读过一些关于共享相同 system.web/machineKey 值以提供此类功能的内容,但我想要一些真实世界的示例。
我知道这两个应用程序将无法共享会话状态,这不是问题,因为我不希望它们这样做。我想要的只是一种单一登录(SSO/SSS)
这可能吗?如何?
重要
我已阅读有关此问题的其他问题/答案,但他们询问的是跨域/跨服务器等问题。此问题位于同一个 IIS 网站上。
【问题讨论】:
标签: iis-7 forms-authentication shared