1

假设我正在接受一种商业模式,如果他们访问我的网站,可以免费访问我的专有数据。这些用户会有广告补贴的费用。

然后,对于付费用户,我想提供对我的数据的直接原始 WCF 访问作为激励。我不希望免费赠品用户可以使用它,但同时该站点正在使用 AJAX 来呈现页面内容。

问题

就像今天一样,AJAX 和原始 WCF 访问在线上看起来是相同的。我需要确定流量的来源是什么(网页,或不是),并保护我的实现免受滥用。

可能的解决方案?

可以获取页面变量(在 ASP.net/Javascript 中)并将其用作非付费用户所需的验证密钥。我可以在每个 AJAX 请求中包含这个密钥。如果这是最好的解决方案,我应该如何将它从服务器发送到客户端?

关于认证

不确定这是否重要,但所有用户(付费和非付费)都将通过身份验证。cookie 将存储在客户端上,并且可能由 STS 生成。

4

1 回答 1

1

为免费赠品用户设置一个通用的域特定 cookie,此 cookie 也随任何 ajax 请求一起发送,因此您可以调整响应。没有cookie,没有响应。

于 2010-08-17T17:16:39.267 回答