【发布时间】:2011-03-21 15:23:57
【问题描述】:
我设计了 2 个网络应用程序并使用表单身份验证进行单点登录
Web A:包含一个Login.aspx 页面
Web B:包含一个OK.aspx 页面
当在 Web B 中访问 Ok.aspx 时,它会重定向到 Web A 中的 Login.aspx(效果很好)
但问题是当我登录成功后,无法重定向到web B中的Ok.aspx
FormsAuthentication.RedirectFromLoginPage(username,false);
它尝试在 web A 而不是 web B 中重定向到 Ok.aspx
我的<authentication> 部分:
网页A:
<authentication mode="Forms">
<forms name="appNameAuth"
path="/"
loginUrl="login.aspx"
protection="All"
timeout="30"
enableCrossAppRedirects="true">
</forms>
</authentication>
网站 B:
<authentication mode="Forms">
<forms name="appNameAuth"
path="/"
loginUrl="webAdomain/login.aspx"
protection="All"
timeout="30"
enableCrossAppRedirects="true" >
</forms>
</authentication>
有什么建议吗?
【问题讨论】:
-
您能从两个应用程序中发布
<authentication>部分吗? -
Web A:
-
Web B:
-
Web 应用程序是否在同一台服务器上并在同一个 IIS 应用程序池中运行? (我看到你在第二个例子中有“webAdomain”就是我问的原因)
-
@Raelshark:你是对的。我在同一台服务器上运行并在同一个 IIS 应用程序池中运行。 WebAdomain 类似于 10.22.33.22:8033。 WebB 中的 loginUrl 类似于 https:10.22.33.44:5555/Login.aspx。因为我希望未经身份验证的用户将被重定向到 Web A 中的登录页面
标签: asp.net redirect forms-authentication cross-application