是否有可能使用ASP.NET全局阻止当有人在我的网站上时丢弃的所有cookie(包括第三方)?

时间:2012-05-05 13:54:04

标签: asp.net iis browser cookies

这方面的背景是大肆宣传的欧盟隐私法,这使得网站放弃任何“非必要”cookie是非法的,除非用户“选择加入”。

我的具体挑战是由于网站的复杂性和各种不同的方式被丢弃 - 特别是在CMS管理的情况下,允许市场营销人员骚乱并在不同的地方嵌入各种内容 - 主要是围绕存在嵌入式javascript,img像素,iframe等的第三方Cookie (我猜测这些都允许删除使用FF插件暂时浏览网站关键区域的第三方cookie - 我还没有检查过每个cookie的机制。)

所以,我一直在努力思考是否在ASP.NET中有一种方法可以全局拦截并阻止我需要的所有被我的网站删除的cookie,并扩展它以检查它们是否必不可少是否,如果没有,用户是否已经同意删除cookie(可能包含一个主YES饼干)。

有几点我不清楚。首先 - 是否可以使用Response.Filter或Response.Cookies作为管道步骤来去除任何已被删除的cookie?其次 - 它是否有可能拦截任何类型的cookie,或者如果它们直接执行从客户端到第三方服务器的浏览器请求,它将无法捕获一些第三方的cookie?

我能找到的最接近我的问题的是this,但这看起来像是一个全站点解决方案 - 而不是用户特定的。

1 个答案:

答案 0 :(得分:1)

具有URL重写的反向代理可能会为您执行此操作。如果您花时间追踪资源并实施允许/禁止cookie的重锤并重写第三方URL以通过您的反向代理。你可以劫持并修改他们的set-cookie响应。此外,如果他们通过JavaScript在客户端设置cookie,他们将通过您的服务器/域,这样您就可以控制它们是否被转发。

这不是一个简单的解决方案,但应该可以在不改变应用程序或用户体验的情况下实现。