根据欧盟电子隐私指令第 5(3) 条(又名“Cookie 法”),针对欧盟用户的网站必须在设置 cookie 之前获得用户的选择同意。
请参阅ICO 指南
我正试图在我的网站上使用 Google Analytics来解决这个问题。
我想谷歌分析(GA)可以在 不需要 使用 cookie 的情况下进行一定程度的分析数据收集。
但是,我找不到有关如何在页面请求期间将有关“同意状态”的信息转发回 Google 的任何信息(在 Google 网站/设置面板上)。所以,我唯一的选择似乎是,如果用户没有明确表示同意,我 根本不应该嵌入谷歌标签代码。 这似乎有点激烈。
让我的服务器端脚本hasConsentedToCookies=FALSE在 JavaScript 标记中设置一个标志将允许我指示 Google 的服务以优雅降级的方式运行。
hasConsentedToCookies=FALSE
谷歌分析是否有设置禁止未经同意的用户使用 cookie?
如果是这样,我在哪里可以找到这方面的信息?
谷歌分析有一套新的 API 来帮助遵守 cookie 退出。这是文档,这是他们的帮助文档。
关于欧盟 Cookie 法规(在成员国实施)是否要求被动网络分析跟踪需要选择加入机制以确保合规性,存在一些歧义。如果您担心某种方式,请咨询律师。谷歌授权您决定如何进行。
他们会将实施细节留给您,但是,想法是,一旦您确定是否在 Google Analytics 中跟踪用户,如果答案是不跟踪,您将在 Google 之前将以下属性设置为 true分析运行:
window['ga-disable-UA-XXXXXX-Y'] = true;
其中 UA-XXXXXX-Y 是您在 Google Analytics 中的帐户 ID
正如其他海报所指出的,谷歌分析依赖于 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 来管理它:
ga-disable-UA-XXXXXX-Y'
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']);