我有两个网站
1)主网站:它有一个链接帮助和培训,将用户重定向到另一个帮助网站。
2)帮助网站没有认证规则,任何人都可以直接访问该网站。
现在我要求允许从第一个网站的链接访问第二个网站,所有其他请求都应该重定向到另一个页面。
Offcourse 查询字符串/参数验证是不可接受的,因为它可以是可见且恒定的
是否有可能,任何建议表示赞赏。
我有两个网站
1)主网站:它有一个链接帮助和培训,将用户重定向到另一个帮助网站。
2)帮助网站没有认证规则,任何人都可以直接访问该网站。
现在我要求允许从第一个网站的链接访问第二个网站,所有其他请求都应该重定向到另一个页面。
Offcourse 查询字符串/参数验证是不可接受的,因为它可以是可见且恒定的
是否有可能,任何建议表示赞赏。
您可以使用http://msdn.microsoft.com/en-us/library/system.web.httprequest.urlreferrer.aspx,它只是 HTTP 引荐来源网址头的 ASP.NET 包装器。 http://en.wikipedia.org/wiki/HTTP_referrer
当然,这可以被欺骗,所以不要依赖它来创建超级安全的东西。
如果您将 get 参数添加到第一个站点中的链接 url 并在第二个站点中检查它会怎样。这当然是一个非常简单的解决方案,并且可以很快被欺骗。
嗨,您可以使用此代码块来识别用户从何处来到您的网站
If Not IsPostBack Then
If Not Request.UrlReferrer.ToString() Is Nothing Then
referrer = Request.UrlReferrer.ToString()
End If
End If
如果你想要一些普通用户不容易欺骗的东西......
site2 公开了一个验证“秘密”参数的 web 服务(可能只是一些只有 site1 和 site2 知道的长随机字符串)。该服务返回一个唯一的“令牌”,它只在一小段时间内有效。在将用户定向到 site2 时,site1 将此标记附加到查询字符串中。site2 验证令牌是否合法且仍然有效。使用令牌后,site2 不再将其视为有效。