Google Analytics 上是否有设置来禁止尚未同意的用户使用 cookie

新手上路,请多包涵

根据欧盟电子隐私指令(又名“Cookie 法”)第 5(3) 条,针对欧盟用户的网站在设置 cookie 之前必须获得用户的选择加入同意。

请参阅 ICO 指南

我试图在我的网站上使用 Google Analytics 来解决这个问题。

我想 Google Analytics (GA) 可以在 不需要 使用 cookie 的情况下进行一定程度的分析数据收集。

但是,我找不到关于如何在页面请求期间将有关“同意状态”的信息转发回 Google 的任何信息(在 Google 站点/设置面板上)。所以,我唯一的选择似乎是,如果用户没有明确同意,我 根本 不应该嵌入谷歌标签代码。这似乎有点激烈。

让我的服务器端脚本在 JavaScript 标记中设置一个 hasConsentedToCookies=FALSE 标志将允许我指示 Google 的服务以优雅降级的方式运行。

Google Analytics 上是否有设置禁止未同意的用户使用 cookie?

如果是这样,我在哪里可以找到这方面的信息?

原文由 JW. 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 439
2 个回答

编辑(2019 年):以下答案早于 GDPR,可能需要修改。

Google Analytics 有一组新的 API 来帮助遵守 cookie 选择退出。 这是文档,这是他们的 帮助文档

关于欧盟 Cookie 法规(在成员国实施)是否要求被动网络分析跟踪需要选择加入机制以实现合规,存在一些歧义。如果您以某种方式担心,请咨询律师。谷歌授权您决定如何进行。

他们会将实施细节留给您,但是,想法是,一旦您确定是否在 Google Analytics 中跟踪用户,如果答案是不跟踪,您将在 Google 之前将以下属性设置为 true分析运行:

 window['ga-disable-UA-XXXXXX-Y'] = true;

其中 UA-XXXXXX-Y 是您在 Google Analytics 中的帐户 ID

正如其他张贴者所指出的,Google Analytics 依赖于 cookie。因此,如果没有 cookie,您将无法进行任何类型的跟踪。如果您确定某人不会被 cookie 跟踪,则需要执行如下操作:

 if(doNotCookie()){
   window['ga-disable-UA-XXXXXX-Y'] = true;
}

选择参加

当您首次加载 Google Analytics 时,这确实需要一点柔术,因为需要在 Google Analytics 运行 之前 设置此属性以防止跟踪发生,这意味着,对于“选择加入跟踪”方法,您d 可能需要实施一种机制,在首次访问时,如果没有选择加入 cookie(明确允许确定 cookie 偏好的 cookie),Google Analytics 会自动禁用,然后,如果发生选择加入,重新运行谷歌分析。在随后的页面浏览中,一切都会顺利进行。

可能看起来像(伪代码):

 if( hasOptedOut() || hasNotExpressedCookiePreferenceYet() ){ //functions you've defined elsewhere
     window['ga-disable-UA-XXXXXX-Y'] = true;
}
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXXX-Y']);
  _gaq.push(['_trackPageview']);

  function onOptIn(){ //have this run when/if they opt-in.
      window['ga-disable-UA-XXXXXX-Y'] = false;
      //...snip...
      //set a cookie to express that the user has opted-in to tracking, for future pageviews
      _gaq.push(['_trackPageview']); // now run the pageview that you 'missed'
   }

选择退出

使用这种方法,您将允许用户选择退出跟踪,这意味着您将使用 cookie 来设置 ga-disable-UA-XXXXXX-Y' 属性,并在将来使用 cookie 来管理它:

 if( hasOptedOut() ){ // function you've defined elsewhere
     window['ga-disable-UA-XXXXXX-Y'] = true;
}

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXX-Y']);
  _gaq.push(['_trackPageview']);

原文由 Yahel 发布,翻译遵循 CC BY-SA 4.0 许可协议

您可以通过在创建跟踪器实例时指定 {'storage' : 'none'} 选项来禁用 Google Analytics 的 cookie。

有关更多详细信息,请参阅 有关该主题的 Google 指南

原文由 severin 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题