Snowflake Connector for Google Analytics Raw Data のコネクタを OAuth 2.0 で認証する

Snowflake Connector for Google Analytics Raw Data のコネクタを OAuth 2.0 で認証する

Clock Icon2025.06.17

データ事業本部のはんざわです。

Google BigQuery にエクスポートされた Google Analytics 4 のデータを Snowflake に転送したい場合、「Snowflake Connector for Google Analytics Raw Data」を使うことで簡単かつ低コストでデータの転送が実現できます。

このコネクタでは「サービスアカウント」と「OAuth 2.0」の 2 種類の認証方法が提供されていますが、今回のブログでは OAuth 2.0 を使った認証方法を紹介します。

https://docs.snowflake.com/en/connectors/google/gard/gard-connector-about

Snowflake Connector for Google Analytics Raw Data とは?

「Snowflake Connector for Google Analytics Raw Data」は、GA4の集計前(Raw)のイベントデータを Snowflake に同期できるコネクタです。これにより、より詳細なデータ分析やカスタム集計が可能になります。

認証方法としては以下の 2 種類が用意されています。

  • サービスアカウント認証
  • OAuth 2.0 認証

サービスアカウントによる認証方法については、以下のブログ記事を参考にしてください。

https://dev.classmethod.jp/articles/snowflake-connector-for-google-analytics-raw-data-try/

今回は、OAuth 2.0 認証の設定手順を紹介します。

また、集計後のデータのみで十分な場合は、「Snowflake Connector for Google Analytics Aggregate Data」の利用も検討してください。

https://docs.snowflake.com/en/connectors/google/gaad/gaad-connector-about

前提条件

  • GA4 の BigQuery エクスポート設定が完了していること

    • BigQuery 上に analytics_<プロパティ ID> というデータセットが作成されている必要があります。
    • GA4 から BigQuery へのエクスポート設定手順については本記事では割愛します。
  • Google Cloud プロジェクトで Cloud Resource Manager API が有効になっていること

  • GA4 データがエクスポートされている Google Cloud プロジェクトが組織に属しており、認証を行うユーザーも同じ組織のメンバーであることが望ましい

    • 今回の検証では、上記の両方の条件を満たしていることを前提としています。
    • いずれかの条件を満たしていない場合、外部ユーザー認証扱いとなり、認証の有効期限が 7 日間となります。そのため、毎週認証情報を更新する必要があります。
  • Snowflake のトライアルアカウント期間が終了していること

    • コネクタの仕様上、トライアルアカウントでは利用できません。
    • 有効な Snowflake アカウントを用意してください。

設定手順

全体の流れは、SnowflakeGoogle CloudSnowflake の順に設定を進めていきます。

1. Snowflake の設定 1

まずは以下の公式ドキュメントを参考に、Snowflake 側の設定を行います。

https://docs.snowflake.com/connectors/google/gard/gard-connector-installing

1.1. コネクタのインストール

  1. ACCOUNTADMIN ロールに変更

コネクタをインストールするには、ACCOUNTADMIN のロールが必要です。

スクリーンショット 2025-06-17 11.42.43

  1. Marketplace からコネクタを検索・インストール

Snowflake のコンソール画面から Data ProductsMarketplace に移動します。

スクリーンショット 2025-06-17 11.33.37

Snowflake Connector for Google Analytics Raw Data と検索して選択し、Get をクリックします。

スクリーンショット 2025-06-17 11.38.26

  1. ウェアハウスとアプリケーション名の入力

アプリケーションのインストール時に使用するウェアハウスとアプリケーション名を入力し、Get をクリックします。

スクリーンショット 2025-06-17 11.50.13

1.2. リダイレクト URL の確認

インストールが完了したら、Snowflake コンソールの Data ProductsApps から、インストールしたコネクタを選択します。
表示された画面の赤枠部分にリダイレクト URL があるので、コピーしておきます。

スクリーンショット 2025-06-17 13.27.01

これで一旦、Snowflake 側の設定は完了です。

続いて、Google Cloud 側の設定に進みます。

2. Google Cloud の設定

以下の公式ドキュメントを参考に進めます。

https://docs.snowflake.com/en/connectors/google/gard/gard-connector-create-client-id

2.1. OAuth 同意画面の設定

Google Cloud コンソールで APIとサービス -> OAuth 同意画面 へ移動します。

スクリーンショット 2025-06-17 13.33.05

「開始」をクリックして設定を進めます。

スクリーンショット 2025-06-17 14.15.23

  1. アプリ情報の入力
  • アプリ名
    • Snowflake Connector for Google Analytics Raw Data
    • 任意の名前で OK
  • ユーザーサポートメール
    • ご自身のメールアドレス

スクリーンショット 2025-06-17 14.18.35

  1. ユーザーの種類の選択

「内部」を選択してください。

※「外部」を選択した場合、認証情報の有効期限が 7 日間となり、毎週更新が必要になります。

スクリーンショット 2025-06-17 14.20.54

  1. 連絡先情報の入力と同意

メールアドレスを入力し、同意のチェックボックスをオンにして「続行」を選択します。

スクリーンショット 2025-06-17 14.26.21

スクリーンショット 2025-06-17 14.47.29

  1. スコープの追加

データアクセススコープを追加または削除 をクリックします。

スクリーンショット 2025-06-17 14.31.44

スクリーンショット 2025-06-17 14.32.20

「スコープの手動追加」に以下のテキストを入力し、「テーブルに追加」をクリックします。

https://www.googleapis.com/auth/bigquery.readonly
https://www.googleapis.com/auth/cloudplatformprojects.readonly

スクリーンショット 2025-06-17 14.38.03

2つのスコープ両方にチェックが入っていることを確認し、「更新」をクリックします。

スクリーンショット 2025-06-17 14.40.53

これで OAuth 同意画面の設定は完了です。

2.2. OAuth クライアント ID の設定

Google Cloud のコンソールから APIとサービス認証情報 へ移動します。
以下のキャプチャのように 認証情報を作成OAuth クライアント ID を選択します。

スクリーンショット 2025-06-17 15.24.35

  1. OAuth クライアント ID の作成
  • アプリケーションの種類

    • ウェブアプリケーション
  • 名前

    • Snowflake Connector for Google Analytics Raw Data ID
    • 任意の名前で OK
  • 承認済みのリダイレクト URL

    • 「1.2. リダイレクト URL の確認」でコピーした URL を入力

スクリーンショット 2025-06-17 15.28.45

  1. クライアント ID とクライアントシークレットの確認

作成後に表示されるクライアントIDとクライアントシークレットは、後ほど Snowflake 側で使用します。

スクリーンショット 2025-06-17 15.34.00

これで Google Cloud の設定は完了です。

3. Snowflake の設定 2

再び Snowflake 側に戻って設定を進めます。

コネクタの構成

  1. 「Mark as done」をクリック

Google Cloud 側の設定が完了したら、Snowflake のコネクタ画面で「Mark as done」をクリックします。

スクリーンショット 2025-06-17 15.42.04

  1. コネクタのリソース設定

コネクタで使用するリソース(ウェアハウス等)の設定を行います。今回は全てデフォルトのリソースを利用します。

※ 同期用のウェアハウスは、コネクタインストール時に指定したものとは別のウェアハウスを使用してください。

スクリーンショット 2025-06-17 12.22.15

  1. コネクタの認証設定

認証方式で「OAuth2」を選択し、「2.2. OAuth クライアント ID の設定」で取得したクライアント ID とクライアントシークレットを入力します。

スクリーンショット 2025-06-17 15.56.31

  1. Google アカウントで認証

入力後、Google アカウントで認証を求められるので許可します。

スクリーンショット 2025-06-17 16.08.48

スクリーンショット 2025-06-17 16.34.03

しばらくすると、認証成功の通知が表示されます。これで認証は完了です。

スクリーンショット 2025-06-17 16.38.11

データの同期

  1. 同期対象プロジェクトの選択

同期する Google Cloud プロジェクトを選択し、「Start sync」をクリックします。

スクリーンショット 2025-06-17 16.41.57

  1. 同期の確認

すぐに同期が始まり、しばらくすると同期が完了します。

スクリーンショット 2025-06-17 16.47.23

スクリーンショット 2025-06-17 16.48.55

  1. データの確認

宛先のスキーマを確認すると、以下のようにデータが正常に格納されていました。

スクリーンショット 2025-06-17 17.02.05

認証方法の比較

冒頭で説明したとおり、このコネクタには「サービスアカウント認証」と「OAuth 認証」の2種類の認証方法があります。
それぞれの認証方法について、私見を以下の表にまとめました。
(あくまで個人的な見解です)

概要 利用する時の懸念点 懸念点の回避策
サービスアカウント認証 GA4 のデータセットにアクセスする権限を持ったサービスアカウントのキーでデータを同期する サービスアカウントのキーの発行はあまり推奨されておらず、組織ポリシーで禁止されている場合もある 組織ポリシーで禁止されている場合は、OAuth認証を利用する
許可されている場合は、キーの漏洩検知機能と併用し、取り扱いには細心の注意を払う
OAuth 認証 GA4 のデータセットにアクセスする権限を持った特定の Google ユーザーの同意に基づいて発行された認証情報でデータを同期する 特定の Google ユーザーに紐づくため、そのユーザーの権限変更や退職時に同期が停止する属人化のリスクがある 属人化対策として、新規で連携専用の Google ユーザーを作成し、そのアカウントで認証を行う

どちらの認証方法が適しているかは、組織の運用方針やセキュリティポリシーによって異なります。
自社の状況にあわせて、最適な認証方法を選択してください。

本ブログが参考になれば幸いです。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.