根据欧盟第5条(3)电子隐私权指令(又名“曲奇法”),即针对欧盟用户的网站必须从用户获得的同意,他们设置一个cookie之前。
见ICO指导
我想在我的网站与谷歌Analytics(分析)方这一点。
我可以想象,谷歌Analytics(分析)可以做的分析数据收集一定水平,而不需要使用Cookie。
但是,我找不到有关如何将页面请求期间传达关于“同意的状态”回谷歌相关信息,任何信息(在谷歌网站/设置面板)。 所以,我唯一的选择似乎是我不应该嵌入谷歌标记代码在所有如果用户没有明确给出同意。 这似乎有点激烈。
让我的服务器端脚本设置hasConsentedToCookies=FALSE
在JavaScript代码的标志,让我指导谷歌的服务,在优雅降级方式运行。
是否有谷歌Analytics(分析)的设置,以抑制使用cookies为尚未表示同意用户?
如果是这样,我在哪里可以找到这些信息?
Answer 1:
谷歌Analytics(分析)有一个新的API,以帮助遵从Cookie停用。 这里的文档 ,这里是他们的帮助文档 。
已经有一些模糊的欧盟法规的Cookie是否(在成员国实施)要求被动网络分析跟踪需要选择在合规机制。 如果您担心这种或那种方式,咨询律师。 谷歌被授权你做出决定您要如何继续。
他们会离开的实施细节给你,但是,这个想法是,一旦你决定是否要跟踪谷歌分析用户,如果答案是不跟踪,你谷歌之前,下面的属性设置为true分析运行:
window['ga-disable-UA-XXXXXX-Y'] = true;
当UA-XXXXXX-Y是在谷歌Analytics(分析)帐户ID
正如其他海报指出,谷歌Analytics(分析)依赖于Cookie。 所以,你不能做任何形式的跟踪没有cookies。 如果你确定某人是不是相应的Cookie记录的跟踪,你需要实现这样的事情:
if(doNotCookie()){
window['ga-disable-UA-XXXXXX-Y'] = true;
}
选择参加
这确实需要柔术的,因为当你第一次加载谷歌Analytics(分析)一点点,因为此属性将需要设置之前,谷歌Analytics(分析)运行,以防止不断发生,这意味着跟踪,对于“选择在跟踪”的方式,你” ð可能需要实施,其中,在第一次访问,谷歌Analytics(分析)会自动在没有选入的cookie禁用(饼干决定cookie偏好设置明确允许),然后一个机制,如果一个选择发生了,再运行谷歌分析。 在随后的浏览量,一切都会顺利进行。
可能看起来像(伪代码):
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']);
Answer 2:
作为一个快速的注意,英国广播公司(可能是英国最流行的网站)采取了一个有趣的方法来使用cookie遵守 - 他们的横幅给用户,告诉他们的cookies设置,并提供一些链接。
这一个解释饼干是什么。 这一次让他们管理自己的cookies ,但最有趣的是,他们提供一个链接到谷歌Analytics(分析),以允许用户选择退出GA的的全部。 所以,综上所述,BBC已经采取的观点,即他们可以告诉什么Cookie的用户,然后提供一个链接到谷歌允许用户退出所有GA饼干。 对我来说,这是少了很多麻烦比你告诉GA选择退出,通过JS的地址。
Answer 3:
我常常不问用户退出了谷歌分析,这是因为我从来没有设置cookie,我从来没有挽救自己的IP(和其他个人数据)。
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-98765432-1', 'www.example.com', {
'anonymizeIp': true
, 'storage': 'none'
, 'clientId': window.localStorage.getItem('ga_clientId')
});
ga(function(tracker) {
window.localStorage.setItem('ga_clientId', tracker.get('clientId'));
});
ga('send', 'pageview');
也看看这个代码在转换谷歌分析的Cookie到本地/会话存储
该脚本将不设置任何cookie,但通过谷歌分析仍然跟踪。 如使用cookie,因为谷歌仍然记录用户的IP地址这实际上对隐私权同样的效果。
这就是在anonymizeIp开关进来。这告诉谷歌只保存IP地址的匿名版本。 一个匿名的IP地址不属于个人数据,因此用户的隐私将得到尊重。
据我所知cookie的法律是所有关于隐私和确实允许网站跟踪他们的使用。 我不是律师或什么,但在我看来,这个脚本符合欧盟法律的cookie。
看看这个普拉克看到它在行动: http://plnkr.co/MwH6xwGK00u3CFOTzepK
Answer 4:
您可以通过指定禁用谷歌分析使用cookies {'storage' : 'none'}
创建跟踪程序时的选项。
见关于这个问题的谷歌的指南了解更多详情。
Answer 5:
编辑:有一个与异步GA代码段一个谷歌Analytics(分析)设置此。
没有一个谷歌Analytics(分析)设置这一点,因为你是在暗示,你需要有条件地排除那些不同意的脚本,如果你想使用谷歌Analytics(分析)JavaScript跟踪脚本。
有一些解决方案在那里已经可以有所帮助,而不是滚动您自己。 使用Javascript: http://cookies.dev.wolf-software.com/demo/index.htm
下面是允许使用谷歌分析的基本特征没有cookies,通过执行跟踪服务器端的解决方案,这个例子是在PHP中: http://techpad.co.uk/content.php?sid=205
Answer 6:
可以通过在谷歌分析代码的顶部添加此代码禁用谷歌分析饼干(行之前的:var = _gaq _gaq || []):
ga('create', 'UA-XXXXXX-XX', {'storage': 'none'});
ga(function(tracker) {
var clientId = tracker.get('clientId');
});
然而谷歌分析的某些功能(例如实时数据)没有这个修改后的正常工作。 更多关于谷歌分析的Cookie: https://developers.google.com/analytics/devguides/collection/analyticsjs/domains?hl=en#disableCookies
Answer 7:
到目前为止,处理这个常见的方法是狼软件的jQuery插件使用的方法,通过它可防止脚本运行,直到用户在选择采用该ICO上周更新了自己的准则,然而,说这是可以接受的依靠“在BBC网站上使用的那种默示同意”。 虽然我真的不认为这是法律的精神内,它就是我们的认为可以接受的强制执行它。 鉴于大多数欧盟尚未执行的指令,我会说这是极有可能他们会按照英国的领先地位。
有一个关于这里的英国更新一篇有趣的文章:
http://www.redant.com/articles/eu-cookie-law-update-ico-adopts-softly-softly-approach/
Answer 8:
对于较少侵入UX的解决方案,你可以放置一个链接设置为谷歌分析的cookies默许:cookiestatement.eu(没有JavaScript的,没有弹出,没有广告)
Answer 9:
对不起,我迟到了回答,但最近我一直在寻找同样的事情,直到我发现了一个办法喽。 它可能不是做正确的方式,但它的工作原理。 (仅适用于网站的问题并没有完全退出GA的)。 我已经测试了几天,以确保。
我已经成功地做到这一点的方法是使用PHP的cookie。 先用添加analyticsTracking.php的包括开始...
<?php include_once('analyticstracking.php'); ?>
在analyticsTracking.php的添加以下...
<?php
if($_COOKIE['consent_cookie']=="Y"){
?>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-********-*']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<?php
}
else{
//do nothing
}
?>
用户已经同意饼干之前谷歌Analytics(分析)将无法正常工作,一旦他们的“consent_cookie”将被保存,并允许GA工作,但如果“谷歌”的cookie被破坏,将无法工作(显然)停止GA。
就像我说的,可能不是正确的方式,但我已经试验和测试,它的作用。 希望这可以帮助别人。
Answer 10:
GA不无Cookie的工作,它需要它,如果他/她以前访问您的网站“标识S”的客人。 所以在GA对此没有设置,GA只是不记录访问者,如果它不能创建一个cookie。
如果用户是来自欧盟和还没有选择加入,那么你应该排除谷歌,分析剧本,我认为。
文章来源: Is there a setting on Google Analytics to suppress use of cookies for users who have not yet given consent