gcpja
GoogleCloudPlatform
bigquery
gcp

BigQueryで特定のデータセットだけ共有する方法

BigQueryで特定のデータセットのみ共有したかったが、IAMユーザーの追加と、データセットの権限の両方を適切に設定しなければならず、分かりずらかったのでメモ。

実現したかったこと

  • BigQueryの特定のデータセットを外部の人と共有したい
  • 同じプロジェクトにある他のデータセットは見えないようにしたい

IAMユーザーの追加

Google Cloud のコンソール画面の「IAMと管理」から、データを共有したいユーザーを「BigQuery ジョブユーザー」として追加します。

スクリーンショット 2018-05-10 8.34.57.png

データセットの共有

BigQueryのウェブ UIのから、共有したいデータセット(ここでは tmp)の「Share dataset」を選択します。

スクリーンショット 2018-05-10 8.38.00.png

追加したいユーザーを権限に応じて追加します。
スクリーンショット 2018-05-10 8.43.33.png

確認

先ほど追加したユーザーのGoogle アカウントでログインをすると、特定のデータセットのみ表示されることが確認できます。

スクリーンショット 2018-05-10 8.49.39.png

参考情報

BigQuery / アクセス制御
Cloud Identity and Access Management / 役割について