2

我有两个网站

1)主网站:它有一个链接帮助和培训,将用户重定向到另一个帮助网站。

2)帮助网站没有认证规则,任何人都可以直接访问该网站。

现在我要求允许从第一个网站的链接访问第二个网站,所有其他请求都应该重定向到另一个页面。

Offcourse 查询字符串/参数验证是不可接受的,因为它可以是可见且恒定的

是否有可能,任何建议表示赞赏。

4

5 回答 5

3

您可以使用http://msdn.microsoft.com/en-us/library/system.web.httprequest.urlreferrer.aspx,它只是 HTTP 引荐来源网址头的 ASP.NET 包装器。 http://en.wikipedia.org/wiki/HTTP_referrer

当然,这可以被欺骗,所以不要依赖它来创建超级安全的东西。

于 2012-05-02T13:23:41.273 回答
2

如果您将 get 参数添加到第一个站点中的链接 url 并在第二个站点中检查它会怎样。这当然是一个非常简单的解决方案,并且可以很快被欺骗。

于 2012-05-02T13:20:48.693 回答
0

这里

您可以使用请求的UrlReferrer属性:

Request.UrlReferrer

这将从客户端(用户代理)可能提供也可能不提供的请求中读取Referer HTTP 标头。

于 2012-05-02T13:27:06.123 回答
0

嗨,您可以使用此代码块来识别用户从何处来到您的网站

 If Not IsPostBack Then
            If Not Request.UrlReferrer.ToString() Is Nothing Then
                referrer = Request.UrlReferrer.ToString()
            End If
        End If
于 2012-05-02T13:28:43.203 回答
0

如果你想要一些普通用户不容易欺骗的东西......

site2 公开了一个验证“秘密”参数的 web 服务(可能只是一些只有 site1 和 site2 知道的长随机字符串)。该服务返回一个唯一的“令牌”,它只在一小段时间内有效。在将用户定向到 site2 时,site1 将此标记附加到查询字符串中。site2 验证令牌是否合法且仍然有效。使用令牌后,site2 不再将其视为有效。

于 2012-05-02T14:22:11.213 回答