はじめに
こんにちは。ジールの@________________MFです。
Webログ分析のためGoogleAnalytics(GA)のBigQuery Export機能を利用してBigQuery(BQ)へデータ連携しようとしたところ、GAの設定画面にて連携先のGCPプロジェクトが選択できない謎なエラーが発生しました。
※BigQuery Exportを設定する具体的な手順は公式ドキュメント・ステップ3をご参考ください。
※BigQuery Exportを設定するユーザーは、GA・GCPともに必要な権限を持っている前提です。
結論
GCPのVPCサービスコントロール(VPC-SC)でBQを保護している為、
GAの設定画面からVPC-SCで許可されていないIP・ユーザーでプロジェクトを取得しようとしていることがエラーの原因でした。
BigQuery Exportを設定するユーザーアカウントをVPC-SCのアクセスレベルに追加することで解決できました。
利用サービス
- Bigquery
- VPCサービスコントロール + Access Context Manager(アクセスレベルの管理)
- GoogleAnalytics
アクセスレベルにBigQuery Exportを設定するユーザーを追加
GAのBigQuery Exportを設定するユーザーをアクセスレベルに追加します。
ユーザーの追加はAccess Context Manegerを利用しますが、Webコンソール画面からは実行できない為、gcloudコマンドとユーザーを記載したyamlファイルを利用します。
gcloud access-context-manager levels update LEVEL_NAME \
--basic-level-spec="path/to/CONDITIONS.yaml" \
--policy=POLICY_NAME
yamlファイルにGAの設定画面を操作するユーザーを記載します。
既存で設定されているユーザー・サービスアカウントも併せて記載しないと、
今回追加するユーザーのみのアクセスレベルにアップデートされるので要注意。
- members:
- user:XXXXXXXX@sample.co.jp
....
コマンドを実行後、Access Context Managerのコンソール画面からアクセスレベルへユーザーが追加されていることを確認します。
最後に
上記した方法でユーザーをアクセスレベルに追加後、再度BigQuery Exportを実施したところ、プロジェクト選択画面でのエラーがなくなり無事設定できました。
BigQuery Export設定後は、設定したユーザーをアクセスレベルから外しても連携に影響がない為、不要であればユーザーを外してください。
※yamlファイルから対象ユーザーを消した後、「gcloud access-context-manager levels update」コマンドを上記同様に実行すればOK。
GCPのサービスですとVPC-SCの適用に関してドキュメントに詳しく書かれているのですが、GCP以外の関連サービスでは記載が無いように思えたので今回の記事を書きました。
参考リンク
株式会社ジールでは、「ITリテラシーがない」「初期費用がかけられない」「親切・丁寧な支援がほしい」「ノーコード・ローコードがよい」「運用・保守の手間をかけられない」などのお客様の声を受けて、オールインワン型データ活用プラットフォーム「ZEUSCloud」を月額利用料にてご提供しております。
ご興味がある方は是非下記のリンクをご覧ください: