安全的Google跟踪cookie

问题描述 投票:16回答:3

我在网站的某些页面上使用Google Analytics(分析)。我的整个网站都使用SSL。是否可以保护Goole Analytics __umt*的cookie。

至少我想在它们上启用安全标记。充其量我也想在它们上设置仅HTTP标志,但是我认为后者是不可能的(因为Google使用JS来使用我认为的cookie)。

可以这样做吗?如果可以的话,如何设置?

security cookies google-analytics
3个回答
19
投票

修改GA脚本并存储您自己的本地副本的简短操作,不,您将无法设置安全或HttpOnly标志。我想Google对此做出了明智的设计决策,可以肯定的是,能够跨安全和不安全方案跟踪同一用户可能会有好处。

尽管您必须问自己,您正在尝试达到什么目的;如果中间一个人由于缺少安全标志而可以拦截和读取或操纵Cookie,那么潜在的利用潜力是什么?再次与HttpOnly标志相同;如果攻击者可以通过XSS漏洞检索此cookie,则有什么好处?

我已经看到了来自自动化安全扫描程序的这种反馈,而这些反馈只是由丢失的标志触发的,而没有Cookie实际用途的上下文。这是我对为什么这样的问题甚至会出现的第一个猜测。


0
投票

[载入GA库时,有一个名为cookie_flags的新选项。

    ga('create', 'UA-XXXXX-Y', {
      cookieFlags: 'max-age=7200;secure;samesite=none'
    });

-1
投票

Google Analytics Cookies(是,通过Js设置)是主Cookie,因此,只有您的域才能写那些。因此,如果您要寻找的是安全性,那它就会变得同样安全。

尽管,我不是100%肯定您在这里的问题,但是如果您希望仅在HTTP页面上启用Google Analytics(分析),则可以通过以下方式更改页面上的GA代码,例如:

<script type="text/javascript">
  if(document.location.protocol != 'https:'){
     var _gaq = _gaq || [];
     _gaq.push(['_setAccount', 'UA-XXXXX-X']);
     _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>
© www.soinside.com 2019 - 2024. All rights reserved.