DNS的* .website.com通配符指向website.com。
Client A
会获得一个类似于http://clientA.website.com/的网址,并点击与client B
相同的登录页面。 Client A
登录,然后将子域名更改为client B's
。当用户更改子域时,如何强制用户自动返回登录页面?
这会起作用吗?
<authentication mode="Forms">
<forms slidingExpiration="true" loginUrl="Views\Login.aspx"
defaultUrl="Views\Login.aspx" protection="All" timeout="300"
cookieless="UseCookies" enableCrossAppRedirects="false"
domain="*.website.com" <!--Will this property and value do what I want?-->
name=".ASPXFORMSAUTH"/>
</authentication>
谢谢!
答案 0 :(得分:1)
当他们登录时你可以这样做:
Session["validhost"] = Request.Url.Host;
然后在Global.asax.cs中你可以拥有:
protected void Application_AuthenticateRequest(Object sender, EventArgs e)
{
if (Session["validhost"] != null && Request.Url.Host != Session["validhost"]){
Session.Abandon();
//some sort of redirect
}
}
根据您在网站上存储的内容,您肯定可以对此进行一些更改,但这种基本模式可以正常运行。