12

そのため、Google アナリティクスがスプーフィングを回避する方法を理解しようとしています。確かに、アカウントにサインアップすると、ファイルをアップロードしてドメインを所有していることを確認するように求められます. ただし、一意の公開コード (以下では「XXXXXXX」に置き換えられます) を持ついくつかのスクリプト タグも与えられます。誰かがそのコードをコピーしたり、リクエスト ヘッダーを偽装したり、curl を使用した Google の認証戦略に従って私のサイトになりすましたりするのを阻止しているのは何ですか?

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'XXXXXXX']);
  _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>

私が尋ねる理由は、私のサイトのデータを参加している Web サイト (「クライアント」) に公開する同様の JavaScript プラグインを作成しようとしているからです。クライアントのサーバー側で秘密鍵なしでこの機能を取得する方法がわかりません。私は本当に「Google アナリティクスと同じように簡単に統合できる」ことを目指していたので、それは最悪です。何かご意見は?

4

2 に答える 2

5

この質問は実際には Google アナリティクスとは何の関係もないようです (ほとんどの人を誤解させ、回答に近づけないと思うので、質問から削除することを強くお勧めします)。

いくつかのデータがあり、選択したサイトのみと共有したいと考えています。ある種の承認スキームでデータを保護し、選択したサイトに何らかのパスワードまたはキーを与えてアクセスできるようにする以外に、それを行う方法は他にありませんが、キーを与えなかった他の人は取得できませんデータへのアクセス。このスキームでさえ、データにアクセスするコードがサーバー上のプライベート領域 (キー/パスワードを保護できる場所) にある場合にのみ機能し、ブラウザーの JavaScript では機能しません。

GAのスプーフィング(あなたの本当の質問とは何の関係もないと思います)に関しては、一般的にGAに対するサービス拒否攻撃以外の理由で、Googleはそれについてあまり心配していないと思います(彼らはに対する保護があります)、他の誰かの Web サイトのヒットを記録することには、どのような利点がありますか? データは他の誰かの GA アカウントにあるため、誰がデータにアクセスしてもアクセスできません。GA番号を台無しにしようとする人に迷惑をかけることはできると思いますが、それ以上の有益な動機がなければ、そうしようとする人はおそらく多くありません.

于 2012-05-20T02:36:11.393 に答える
3

興味深い質問です。

コメントが示唆しているように、Google は実際にはこれに対処していません。実際、ステージング サイト / 開発ボックスで GA を無効にするための条件付きコード / 前処理を行うことはよくあることです。

分析サーバー、顧客サーバー、およびクライアントを使用して、一種の 3 本足のアプローチを試すことができます。次のように機能します。

  • 顧客のサーバーと分析サーバーは秘密鍵を共有します。クライアントが顧客のサイトにアクセスすると、顧客のサーバーは分析サーバーに、この特定の顧客の追跡を開始するように指示します。

  • 分析サーバーは、このユーザーのセッション ID を生成し、動的 ​​URL を顧客のサーバーに返します。URL は、セッション ID が挿入された JavaScript トラッキング コード (またはそのローダー) を指します。

  • 顧客のサーバーがページをクライアントに送信します。このページには、一意のセッション ID を持つクライアント側のトラッキング コードが含まれています。アクションは追跡され、分析サーバーに送信されます。

  • 分析サーバーでは、クライアントのマシンから追跡情報を受け取ります。セッション ID が有効で期限切れになっていないこと、および IP アドレスが一致していることを確認します。

これにより、追加のレベルのセキュリティが提供されます。残念ながら、「Google Analytics のように簡単に統合できる...」とは言えません。これには、顧客側のサーバー側の参加が必要になります。また、第三者が顧客のサイトにアクセスして有効なセッション ID を取得し、偽の情報を分析サーバーに送信する可能性があるため、顧客によって認証されていないユーザーを追跡するのにもあまり効果がありません。ただし、顧客のサイトで認証されたクライアントの場合は、役立つ可能性があります。

幸運を!

于 2012-05-20T02:15:55.417 に答える