ラボの設定手順と要件
アカウントと進行状況を保護します。このラボを実行するには、常にシークレット ブラウジング ウィンドウとラボの認証情報を使用してください。

BigQuery のデータセットとテーブルを保護して共有する

ラボ 1時間 universal_currency_alt クレジット: 5 show_chart 入門
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
このコンテンツはまだモバイル デバイス向けに最適化されていません。
快適にご利用いただくには、メールで送信されたリンクを使用して、デスクトップ パソコンでアクセスしてください。

概要

Google Cloud では、権限をユーザー、グループ、サービス アカウントに直接割り当てません。代わりに、ユーザー、グループ、サービス アカウントに Identity and Access Management(IAM)の基本ロール、事前定義ロール、カスタムロールへのアクセス権を付与することで、BigQuery などの特定の Google Cloud リソースに対し操作を行う権限を付与します。BigQuery には、Google Cloud プロジェクト レベルや BigQuery データセット レベルなど、リソース階層のさまざまなレベルで付与できる多くの IAM の事前定義ロールがあります。

IAM の事前定義ロールを使用すると、適用対象の Google Cloud 階層のレベルに応じて異なる権限を付与できます。たとえば、BigQuery データ編集者ロールを BigQuery データセット レベルで適用すると、データセット内でテーブルを作成、更新、削除できる権限が付与されます。この同じロールを Google Cloud プロジェクト レベルで適用すると、プロジェクト内で新しい BigQuery データセットを作成できる権限が付与されます。つまり、組織のニーズと要件に応じて、個々のユーザー、グループ、サービス アカウントごとに Google Cloud 階層のどのレベルでどのロールを適用するかを選択し、BigQuery リソースへのアクセスを制御することが可能です。

このラボでは、2 つの Google Cloud プロジェクトと 2 人のユーザーが存在するシミュレートされたエンタープライズ環境で作業します。1 人目のユーザーにはプロジェクト 1 のフルアクセス権(プロジェクト オーナー)、2 人目のユーザーにはプロジェクト 2 の制限付きアクセス権(プロジェクト閲覧者)が付与されています。2 つの Google Cloud プロジェクトを使用して、Google Cloud プロジェクトへのアクセスの確認とテストを行い、IAM の事前定義ロールを使用して特定の BigQuery データセットへのアクセス権を付与します。

目標

このラボでは、次の方法について学びます。

  • Google Cloud プロジェクトと BigQuery データに対するユーザー アクセスを確認、テストする。
  • BigQuery データセットとテーブルを作成する。
  • IAM の事前定義ロールを使用して BigQuery データセットを共有する。

設定と要件

注: ラボ環境で 2 つの Google Cloud プロジェクトと 2 つのユーザー アカウントが自動生成されるまで、3~5 分かかります。

注: ラボは開始すると一時停止できません。ラボを途中で終了してしまうと、実行中の受講者のプロジェクトはすべて削除されます。

各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。

  1. シークレット ウィンドウを使用して Google Skills にログインします。

  2. ラボのアクセス時間(例: 1:15:00)に注意し、時間内に完了できるようにしてください。 一時停止機能はありません。必要な場合はやり直せますが、最初からになります。

  3. 準備ができたら、[ラボを開始] をクリックします。

  4. ラボの認証情報(ユーザー名パスワード)をメモしておきます。この情報は、Google Cloud コンソールにログインする際に使用します。

  5. [Google コンソールを開く] をクリックします。

  6. [別のアカウントを使用] をクリックし、このラボの認証情報をコピーしてプロンプトに貼り付けます。 他の認証情報を使用すると、エラーや料金が発生します。

  7. 利用規約に同意し、再設定用のリソースページをスキップします。

ラボを開始してコンソールにログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側のパネルには、このラボで使用する必要がある一時的な認証情報が表示されます。

    [認証情報] パネル

  2. ユーザー名をコピーし、[Google Console を開く] をクリックします。 ラボでリソースが起動し、別のタブで [アカウントの選択] ページが表示されます。

    注: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
  3. [アカウントの選択] ページで [別のアカウントを使用] をクリックします。[ログイン] ページが開きます。

    [別のアカウントを使用] オプションがハイライト表示されている、アカウントのダイアログ ボックスを選択します。

  4. [接続の詳細] パネルでコピーしたユーザー名を貼り付けます。パスワードもコピーして貼り付けます。

注: 認証情報は [接続の詳細] パネルに表示されたものを使用してください。Google Skills の認証情報は使用しないでください。請求が発生する事態を避けるため、Google Cloud アカウントをお持ちの場合でも、このラボでは使用しないでください。
  1. その後次のように進みます。
  • 利用規約に同意します。
  • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
  • 無料トライアルには登録しないでください。

しばらくすると、このタブで Cloud コンソールが開きます。

注: 左上にある [ナビゲーション メニュー] をクリックすると、Google Cloud のプロダクトやサービスのリストが含まれるメニューが表示されます。 Cloud コンソール メニュー

タスク 1. ユーザー 1 がプロジェクト 1 にアクセスできることを確認する

このタスクでは、プロジェクト 1()で作業し、プロジェクト 1 におけるユーザー 1 の権限を確認します。ユーザー 1()の認証情報を使用してこのプロジェクトにログインしていることを確認してください。

  1. 新しいシークレット ウィンドウで、プロジェクト 1()の [Google Console を開く] をクリックし、ユーザー 1()の認証情報を使用してログインします。

  2. Google Cloud コンソールのナビゲーション メニューナビゲーション メニュー)で、[IAM と管理] > [IAM] をクリックします。

IAM.png

IAM ページには、すべてのプリンシパル(ユーザー)のプロジェクト レベルの権限が表示されます。プロジェクト オーナーであるユーザー 1 は、プロジェクト 1 の IAM 権限にアクセスして変更できます。

iam-access.png

注: ユーザー 1 は、プロジェクト 1 のプロジェクト オーナーです。オーナーロールが表示されていることを確認します。
  1. Google Cloud コンソールの最上部にある [プロジェクトを選択] プルダウン メニューをクリックして、ユーザー 1 がログインしているプロジェクトのリストを表示します。

project.png

プルダウン メニューに、プロジェクト 1 のプロジェクト ID()が表示されます。

タスク 2. プロジェクト 1 で BigQuery データセットとテーブルを作成する

このタスクでは、引き続きユーザー 1 としてプロジェクト 1()で作業し、新しい BigQuery データセットとテーブルを作成します。ユーザー 1()の認証情報でこのプロジェクトにログインしている状態を維持してください。

データセットを作成する

  1. Google Cloud コンソールのナビゲーション メニューナビゲーション メニュー)で、[分析] の [BigQuery] をクリックします。メッセージが表示されたら、[完了] をクリックします。

  2. [エクスプローラ] ペイン(左側のペイン)で、プロジェクト ID の横にある「アクションを表示」アイコン(その他アイコン)をクリックし、[データセットを作成] を選択します。

create-dataset.png

  1. [データセット ID] に「wikipedia_data」と入力します。

  2. [データのロケーション] で [マルチリージョン] と [US(米国の複数のリージョン)] を選択します。

dataset_new.png

  1. [データセットを作成] をクリックします。

テーブルを作成する

  1. [エクスプローラ] ペインで、[wikipedia_data] の横にある「アクションを表示」アイコン(その他アイコン)をクリックし、[テーブルを作成] を選択します。

create-table.png

  1. [テーブルの作成元] で [Google Cloud Storage] を選択します。

  2. [GCS バケットからファイルを選択] に「tcd_repo/data/entertainment_media/wikipedia_benchmark/csv/Wiki1B-*.csv」と入力します。

ファイル形式が CSV に更新されます。

注: ファイル パターンにアスタリスク(`*`)が含まれていることに注意してください。複数の CSV ファイルから新しいテーブルにインポートされるデータは約 1 ギガバイト(GB)です。
  1. [プロジェクト] は、デフォルト値()のままにします。

  2. [データセット] は、デフォルト値(wikipedia_data)のままにします。

  3. [テーブル] に「wiki_table_csv」と入力します。

  4. [テーブルタイプ] はデフォルト値(ネイティブ テーブル)のままにします。

  5. [スキーマ] セクションで、[自動検出] チェックボックスをオンにします。

create-table-details

  1. [詳細オプション] セクションを開きます。

  2. [スキップするヘッダー行] に「1」を入力します。

create-table-details2.png

  1. [テーブルを作成] をクリックします。

読み込んだデータに対しクエリを実行する

  1. クエリエディタに以下のクエリをコピーして貼り付け、[実行] をクリックします。
SELECT Title, COUNT(views) AS views FROM wikipedia_data.wiki_table_csv WHERE CONTAINS_SUBSTR(title, 'GOOGLE') GROUP BY Title ORDER BY views DESC LIMIT 100;

このクエリは、新しく入力されたデータを使用して、タイトルに「GOOGLE」が含まれる Wikipedia の記事が閲覧された回数をカウントします。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 BigQuery のデータセットとテーブルを作成する

プロジェクト 1 からログアウトする

  1. Google Cloud コンソールの右上にあるプロフィール アイコンをクリックします。

  2. [ログアウト] をクリックします。

確認のメッセージが表示されたら、[終了] をクリックします。

ログアウト ダイアログ

タスク 3. ユーザー 2 としてプロジェクト 2 にログインして、プロジェクトの制限付きアクセスを確認する

このタスクでは、プロジェクト 2()で作業し、プロジェクト 2 におけるユーザー 2 の権限を確認します。ユーザー 2()の認証情報を使用してこのプロジェクトにログインしていることを確認してください。

  1. 新しいシークレット ウィンドウで、プロジェクト 2()の [Google Console を開く] をクリックし、ユーザー 2()の認証情報を使用してログインします。

  2. Google Cloud コンソールの最上部にある [プロジェクトを選択] プルダウン メニューをクリックして、ユーザー 2 がログインしているプロジェクトのリストを表示します。

Project.img

プルダウン メニューに、プロジェクト 2 のプロジェクト ID()が表示されます。

  1. Google Cloud コンソールのナビゲーション メニューナビゲーション メニュー)で、[IAM と管理] > [IAM] をクリックします。

IAM.png

ユーザー 2()は、プロジェクト 2 のプロジェクト閲覧者です。プロジェクト 2 のプロジェクト閲覧者であるユーザー 2 は、プロジェクト 2 に保存されている BigQuery データ、または他のプロジェクトに保存されている BigQuery データ(そのプロジェクトのデータに対するアクセス権が与されている場合)に対してクエリジョブを実行できます。

タスク 4. プロジェクト 2 でクエリを実行して、制限付きデータアクセスを確認する

このタスクでは、引き続きユーザー 2()としてプロジェクト 2()で作業し、プロジェクト 1 の BigQuery データへのアクセスをテストします。ユーザー 2()の認証情報でこのプロジェクトにログインしている状態を維持してください。

  1. Google Cloud コンソールのナビゲーション メニューナビゲーション メニュー)で、[分析] の [BigQuery] をクリックします。メッセージが表示されたら、[完了] をクリックします。

  2. クエリエディタで次のクエリを実行し、ProjectID をプロジェクト 1 の ID()に置き換えて、データをホストするプロジェクトを指定します。

SELECT Title, COUNT(views) AS views FROM `ProjectID.wikipedia_data.wiki_table_csv` WHERE CONTAINS_SUBSTR(title, 'GOOGLE') GROUP BY Title ORDER BY views DESC LIMIT 100; 注: BigQuery では、プロジェクトが [エクスプローラ] ペインに固定または表示されていない場合でも、そのデータへのアクセス権が付与されていれば、BigQuery データに対してクエリを実行できます。

この場合、ユーザー 2 はプロジェクト 1 でユーザー 1 が作成したデータへのアクセス権が付与されていないため、当該データに対しクエリを実行できません。エラー メッセージには、データへのアクセスが拒否されたと表示されます。

user2-query-error.png

プロジェクト 2 からログアウトする

  1. Google Cloud コンソールの右上にあるプロフィール アイコンをクリックします。

  2. [ログアウト] をクリックします。

確認のメッセージが表示されたら、[終了] をクリックします。

ログアウト ダイアログ

タスク 5. プロジェクト 1 のデータに対するアクセス権をユーザー 2 に付与する

データのホスト先である Google Cloud プロジェクトにアクセスできないユーザーに対し、BigQuery ロールを割り当てることができます。この柔軟性により、ユーザー、グループ、サービス アカウントに対して、アクセスレベルを簡単に制御、カスタマイズできます。これは、ユーザーが自身のプロジェクトから、アクセス権のある特定のデータ(他の Google Cloud プロジェクトにホストされていても)に対してクエリを実行できるためです。

このタスクでは、プロジェクト 1()に戻って、プロジェクト 1 のデータセットに対するアクセス権をユーザー 2 に付与します。ユーザー 1()の認証情報を使用してこのプロジェクトにログインしていることを確認してください。

Google Cloud コンソールを使用して、プロジェクト 1 の wikipedia_data という名前のデータセットに対する BigQuery データ編集者ロールをユーザー 2 に割り当てます。

  1. 新しいシークレット ウィンドウで、プロジェクト 1()の [Google Console を開く] をクリックし、ユーザー 1()の認証情報を使用してログインします。

  2. Google Cloud コンソールのナビゲーション メニューナビゲーション メニュー)で、[分析] の [BigQuery] をクリックします。

  3. [エクスプローラ] ペインで、wikipedia_data の横にある「アクションを表示」アイコン(その他アイコン)をクリックし、[共有] > [権限を管理] を選択します。

share-access.png

  1. [プリンシパルを追加] をクリックします。

  2. [新しいプリンシパル] で、ユーザー 2()のメールアドレスを入力します。

  3. [ロールを選択] で、[BigQuery] の [BigQuery データ編集者] を選択します。

principal-details.png

  1. [保存] をクリックします。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 BigQuery データ編集者ロールをユーザー 2 に割り当てる

プロジェクト 1 からログアウトする

  1. Google Cloud コンソールの右上にあるプロフィール アイコンをクリックします。

  2. [ログアウト] をクリックします。

確認のメッセージが表示されたら、[終了] をクリックします。

ログアウト ダイアログ

タスク 6. プロジェクト 2 でユーザー 2 としてクエリを実行してアクセスを確認する

このタスクでは、プロジェクト 2()に戻って、ユーザー 2 に付与されたデータアクセスをテストします。ユーザー 2()の認証情報を使用してこのプロジェクトにログインしていることを確認してください。

  1. 新しいシークレット ウィンドウで、プロジェクト 2()の [Google Console を開く] をクリックし、ユーザー 2()の認証情報を使用してログインします。

  2. Google Cloud コンソールの最上部にある [プロジェクトを選択] プルダウン メニューをクリックして、ユーザー 2 がログインしているプロジェクトのリストを表示します。

project.png

ユーザー 2 にはプロジェクト 1 へのアクセス権が付与されていないため、プロジェクト 2 のみが表示されることに注意してください。ユーザー 2 に付与されたアクセス権はプロジェクト 1 の BigQuery データセットに対するもので、プロジェクト自体に対するものではありません。

  1. クエリエディタで次のクエリを実行し、ProjectID をプロジェクト 1 の ID()に置き換えて、データをホストするプロジェクトを指定します。
SELECT Title, COUNT(views) AS views FROM `ProjectID.wikipedia_data.wiki_table_csv` WHERE CONTAINS_SUBSTR(title, 'GOOGLE') GROUP BY Title ORDER BY views DESC LIMIT 100;

ユーザー 2 がプロジェクト 1 の BigQuery データセットに対してクエリを正常に実行できるようになりました。ユーザー 2 は BigQuery データセットに対する BigQuery データ編集者ロールを割り当てられているため、プロジェクト 1 に直接にはアクセスできなくても、BigQuery データセット内のテーブルに対してクエリを実行できます(テーブルの作成、変更、削除などの操作もできます)。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 プロジェクト 2 でユーザー 2 としてプロジェクト 1 のデータに対してクエリを実行する

ラボを終了する

ラボが完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Google Skills から削除され、アカウントの情報も消去されます。

ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。

星の数は、それぞれ次の評価を表します。

  • 星 1 つ = 非常に不満
  • 星 2 つ = 不満
  • 星 3 つ = どちらともいえない
  • 星 4 つ = 満足
  • 星 5 つ = 非常に満足

フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。

フィードバックやご提案の送信、修正が必要な箇所をご報告いただく際は、[サポート] タブをご利用ください。

Copyright 2026 Google LLC All rights reserved. Google および Google のロゴは、Google LLC の商標です。その他すべての社名および製品名は、それぞれ該当する企業の商標である可能性があります。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボを実行するには、シークレット モードまたはシークレット ブラウジング ウィンドウを使用することをおすすめします。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。