我的生产环境涉及一对 IIS 6 Web 服务器,一个运行旧的 .NET 1.1 应用程序,另一个运行 .NET 2.0 应用程序。我们不能在同一台机器上安装 .NET 2.0 和 1.1,因为它是一个受到严格监管的“验证系统”,重新验证会带来官僚主义的噩梦。
两台服务器上的网站都对 Active Directory 用户帐户使用基本身份验证。
1.1 服务器上的 Web 应用程序是否可以安全地将用户重定向到 2.0 服务器上提供的页面,而无需用户重新进行身份验证?
我的生产环境涉及一对 IIS 6 Web 服务器,一个运行旧的 .NET 1.1 应用程序,另一个运行 .NET 2.0 应用程序。我们不能在同一台机器上安装 .NET 2.0 和 1.1,因为它是一个受到严格监管的“验证系统”,重新验证会带来官僚主义的噩梦。
两台服务器上的网站都对 Active Directory 用户帐户使用基本身份验证。
1.1 服务器上的 Web 应用程序是否可以安全地将用户重定向到 2.0 服务器上提供的页面,而无需用户重新进行身份验证?
不,因为在那种情况下您没有使用 cookie 进行身份验证,所以 ScaleOvenStove 的链接无济于事。
基本身份验证在每个请求的 HTTP 标头中发送登录信息,但是当浏览器看到新服务器和新密码请求时,它会执行此操作。
(或者确实按照建议更改两个系统上的身份验证以支持单点登录)
为了实现这一点,您可以实施单点登录解决方案。
此解决方案将有一台服务器作为您的主身份验证服务器。该服务器将负责身份验证并为用户创建 cookie。当您重定向到其他服务器(在同一域上)时,请检查是否存在由身份验证服务器创建的身份验证 cookie,如果存在并且具有有效数据,则自动登录用户。确保您在表单身份验证票和 cookie 上设置域,然后存在于同一域中的两个服务器将能够访问此 cookie。
我会在 asp.net 上谷歌单点登录。有很多方法可以实现它,但它绝对是可以实现的。