0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

BigQueryの承認済みビュー設定方法

Last updated at Posted at 2021-06-29

はじめに

複数プロジェクトでBigQueryを利用していると、プロジェクトまたぎのビューを利用したい場面が度々訪れるかと思います。そこに権限の問題が絡んでくると非常に厄介ですが、当社でもこの問題を踏んだことがありました。

当社ではBigQueryにてデータレイクを構築しているのですが、セキュリティの観点から以下のような条件を設けていました。

  • データレイクとデータウェアハウスは別プロジェクトで作成し、限られたユーザーのみデータレイクプロジェクトへのアクセス権を付与する。
  • データレイクプロジェクトのデータを参照する場合は、データウェアハウスプロジェクトからデータレイクプロジェクトへのビューを作成して参照させる。

プロジェクトの構造は以下の通りです。

|-- 親フォルダ
|   |-- データレイクプロジェクト 
|      |        |--  ビューで参照したいテーブル
|   |-- データウェアハウスプロジェクト
|      |        |--  今回作成するビュー

こうした設定を行う場合、データウェアハウスの閲覧権限のみを持つユーザーがビューにクエリすると、データレイクへのアクセス権限がない為にエラーになってしまいます。扱うデータの機密性の観点からデータレイクを扱えるユーザーは限定したい為、クエリ発行ユーザーに権限を持たせる以外の方法でこれを解決する必要がありました。

0. 承認済みビュー

BQの承認済みビュー機能を利用します。詳細は公式ドキュメントをご確認下さい。

1. ビューの作成

まずは通常通りプロジェクトまたぎのビューを作成します。以下は先述した当社の例ですが、データレイクプロジェクトにはビューで参照したいテーブルがあり、データウェアハウスプロジェクトにて当該のビューを作成します。

|-- 親フォルダ
|   |-- データレイクプロジェクト 
|      |        |--  ビューで参照したいテーブル
|   |-- データウェアハウスプロジェクト
|      |        |--  今回作成するビュー

2. ビューの承認

ビューの承認設定を行います。参照されるプロジェクト(当社の例ではデータレイクプロジェクト)にて当該のデータセットを開き、共有データセットを選択します。

image.png

3. データセットの承認

共有データセットを選択すると以下のような画面になります。

image.png

ここで承認済みのビュータブに切り替え、下段のプロジェクト・データセット・ビューを選択し、画面下部の完了ボタンを押せば設定完了です。

まとめ

承認済みビュー設定を用いることで、権限に配慮しつつプロジェクトまたぎのビューを設定することができました。BigQueryは細かな要件にも対応でき、なかなか使い勝手が良い印象です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?