Toma(とま)のゲーム日記

ゲーム攻略・生活改善・災害対策を“構造化”して届ける、AI共作の実用ブログ。

記事内に商品プロモーションを含む場合があります。

BigQueryのセキュリティ|IAM・暗号化・監査ログの安全設計ガイド

BigQueryシリーズの共通サムネイル。クラウド、データベース、SQLコード、GA4とSearch Consoleの抽象アイコンを濃い青(#003399)で構成したデータ分析イメージ。

BigQueryは大規模データを扱うためセキュリティ設計が非常に重要です。特にGA4やSearch Consoleのデータはユーザー行動や検索履歴を含むため適切なアクセス制御と暗号化が必須です。本章ではBigQueryのセキュリティ機能を体系的に整理しブログ運営者が最低限押さえるべきポイントを解説します。BigQueryの基本的な使い方は第3章で紹介しています

この記事で分かること
・BigQueryのセキュリティ構造
・IAM権限の体系
・Authorized Viewsとカラムレベルセキュリティ
・データ暗号化の仕組み
・監査ログとVPC Service Controls
・GA4・Search Consoleデータの安全な運用方法

BigQueryのセキュリティ構造

BigQueryのセキュリティは次の3つで構成されています。

・IAM(アクセス制御)
・データ暗号化(保存時・転送時)
・監査ログ(操作履歴の記録)

GA4とSearch Consoleのデータ構造は第5章第4章で解説しています。

IAMによるアクセス制御(最重要)

IAMはBigQueryのアクセス権限を管理する仕組みです。

IAM権限の体系

BigQueryの権限は次のカテゴリに分かれます。

・bigquery.jobs.*(クエリ実行)
・bigquery.tables.*(テーブル操作)
・bigquery.datasets.*(データセット操作)

代表的なIAMロール

・BigQuery Data Viewer(閲覧)
・BigQuery Data Editor(編集)
・BigQuery Admin(管理者)

ブログ運営者の推奨設定

・自分:BigQuery Admin
・共同編集者:BigQuery Data Viewer
・外部協力者:Viewer(必要な場合のみ)

Authorized Views(安全な外部共有)

Authorized Viewsは「特定の列だけ安全に共有する」ための仕組みです。

メリット:

・個人情報を含む列を隠せる
・外部共有時に安全性を保てる
・GA4やSearch Consoleのクエリ列を隠せる

Authorized Viewの例

CREATE VIEW dataset.safe_view AS
SELECT event_name, event_date, page_location
FROM dataset.events;

GRANT SELECT ON VIEW dataset.safe_view TO 'external-user';

カラムレベルセキュリティ(POLICYタグ)

BigQueryでは列単位でアクセス制御ができます。

例:GA4の user_pseudo_id を非公開にする

ALTER TABLE dataset.events
ALTER COLUMN user_pseudo_id
SET POLICY TAG 'sensitive-data';

データ暗号化(保存時・転送時)

BigQueryのデータは保存時と転送時の両方で自動的に暗号化されます。

より強固な暗号化

・CMEK(独自キー管理)
・Cloud KMSでキー管理

監査ログ(Audit Logs)

BigQueryではすべての操作が監査ログとして記録されます。

記録される内容

・クエリ実行履歴
・権限変更
・テーブル作成・削除

VPC Service Controls(データ漏洩防止)

VPC Service Controlsはプロジェクト境界を強化しデータ漏洩を防ぐ仕組みです。

メリット:

・外部ネットワークへのデータ流出を防止
・GA4やSearch Consoleのデータを安全に保護

GA4データのセキュリティ注意点

GA4イベントデータの構造は第5章で解説しています。

注意点:

・user_pseudo_idは慎重に扱う
・event_paramsに個人情報を含めない
・外部共有時はAuthorized Viewsを使う

Search Consoleデータのセキュリティ注意点

Search Consoleのデータ構造は第4章で解説しています。

注意点:

・queryは検索語句のため慎重に扱う
・外部共有時はURL単位の集計にする
・クエリ単位のデータは社内利用に限定

BigQueryのセキュリティベストプラクティス

・IAMは最小権限で設定する
・Authorized Viewsを活用する
・カラムレベルセキュリティを使う
・監査ログを定期的に確認する
・VPC Service Controlsで境界を強化する

次のステップ(シリーズ総括へ)

シリーズ全体のまとめは第12章で整理しています

BigQueryの基本的な特徴は第1章で解説しています。

料金体系は第2章で紹介しています。

BigQueryの使い方は第3章で解説しています。

Search Consoleとの連携は第4章で紹介しています。

GA4との連携は第5章で紹介しています。

分析10選は第6章で紹介しています。

SQL基礎は第7章で学べます。

SQL応用は第8章で学べます。

パフォーマンス最適化は第9章で解説しています。

Looker Studio連携は第10章で紹介しています。

シリーズ全体のまとめは第12章で整理しています。

シリーズ全体の構成は目次ページから確認できます。


FAQ

IAMはどこまで細かく設定できますか?

プロジェクト・データセット・テーブル単位で設定できます。

GA4のuser_pseudo_idは個人情報ですか?

個人を特定できませんが慎重に扱う必要があります。

Search Consoleのクエリは外部共有できますか?

検索語句のため外部共有は避けるべきです。


注記

本記事はGoogle BigQueryの初心者向けに構成されています。内容は2026年時点の仕様に基づいています。


更新履歴

【AI利用に関する開示】当ブログの一部コンテンツには、AI(人工知能)による執筆支援や画像生成を使用しています。