asp.net - 是否可以使用 ASP.NET 全局阻止有人访问我的网站时丢弃的所有 cookie(包括第 3 方 cookie)?

标签 asp.net iis browser cookies

此内容的背景是大肆宣传的欧盟隐私法,该法规定网站删除任何“非必要”cookie 是非法的,除非用户“选择加入”。

我面临的具体挑战是由于网站的复杂性以及 cookie 被丢弃的各种不同方式 - 特别是在由 CMS 管理的情况下,该 CMS 允许营销人员在不同的地方进行骚乱并嵌入各种内容 - 主要是在周围嵌入 javascript、img 像素、Iframe 等的第 3 方 cookie。 (我推测这些都允许删除使用 FF 插件短暂浏览过网站关键区域的第 3 方 cookie - 我还没有检查每个的机制)。

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

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

我能找到的与我的问题最接近的东西是 this但这看起来像是一个站点范围的解决方案 - 不是特定于用户的。

最佳答案

具有 URL 重写功能的反向代理可能可以为您做到这一点。如果您花时间跟踪资源并实现允许/禁止 cookie 的重锤并重写第 3 方 URL 以通过您的反向代理。您可以劫持并修改他们的 set-cookie 响应。此外,如果他们通过 JavaScript 在客户端设置 cookie,它们将通过您的服务器/域进行设置,因此您可以控制它们是否被转发。

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

关于asp.net - 是否可以使用 ASP.NET 全局阻止有人访问我的网站时丢弃的所有 cookie(包括第 3 方 cookie)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10462519/

相关文章:

ruby-on-rails - 带有IIS 7的IronRuby on Rails

c# - 在异步方法中使用时,HttpClient header 变为空

python - 如何在PySide的浏览器示例中添加工具栏?

javascript - 如何在所有现代浏览器中检测页面缩放级别?

c# - ThreadPool SetMinThreads - 设置它的影响

c# - 使用 Javascript 从 ASP.Net 调用 C# 方法并带参数

c# - Asp.net 核心模型不从表单绑定(bind)

c# - 使用反射使用枚举填充下拉列表

javascript - 我们可以使用 JavaScript 在 ROBLOX 中的两个 Gmail 用户之间建立连接

c# - IIS 的 .Net Web 应用程序应用程序启动工作流