始める前に
- ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
- ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
- 画面左上の [ラボを開始] をクリックして開始します
Setup Cloud Storage bucket
/ 15
Add Cloud Data Fusion API Service Agent role to service account
/ 15
Get Sensitive Data Protection permissions
/ 15
Create a custom template
/ 20
Redact another data type
/ 15
Deploy and run the pipeline
/ 20
このラボでは、Cloud Fusion 向け Sensitive Data Protection プラグインを使用して機密データを秘匿化する方法を学びます。
次のような、顧客の機密情報を秘匿化する必要があるシナリオを想定しましょう。
シナリオ: あなたの組織のサポートチームは、サポート チケットで対応した各サポートケースの詳細を記録しています。サポート チケットのすべての情報は、CSV ファイルに抽出されます。サポート技術者は、機密情報とみなされる顧客情報は記録しないことになっていますが、間違って記録してしまうこともあります。あなたは、CSV ファイルに一部の顧客の電話番号が含まれていることに気づきました。
CSV ファイル全体を調べ、すべての電話番号が表示されないようにしなければなりません。そこで、Sensitive Data Protection プラグインを使用して顧客の機密データを秘匿化する Cloud Data Fusion パイプラインを作成することにしました。
この場合、次の処理を行うパイプラインを作成します。
このラボでは、次の方法について学びます。
各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。
シークレット ウィンドウを使用して Google Skills にログインします。
ラボのアクセス時間(例: 02:00:00)に注意し、時間内に完了できるようにしてください。
一時停止機能はありません。必要な場合はやり直せますが、最初からになります。
準備ができたら、[ラボを開始] をクリックします。
ラボの認証情報(ユーザー名とパスワード)をメモしておきます。この情報は、Google Cloud コンソールにログインする際に使用します。
[Google Console を開く] をクリックします。
[別のアカウントを使用] をクリックし、このラボの認証情報をコピーしてプロンプトに貼り付けます。
他の認証情報を使用すると、エラーが発生したり、料金の請求が発生したりします。
利用規約に同意し、再設定用のリソースページをスキップします。
これは、このラボの間だけ有効な一時的なアカウントです。以下の点に注意してください。
Cloud Shell は、開発ツールが組み込まれた仮想マシンです。5 GB の永続ホーム ディレクトリを提供し、Google Cloud 上で実行されます。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。gcloud は Google Cloud のコマンドライン ツールで、Cloud Shell にプリインストールされており、Tab キーによる入力補完がサポートされています。
Google Cloud Console のナビゲーション パネルで、「Cloud Shell をアクティブにする」アイコン()をクリックします。
[次へ] をクリックします。
環境がプロビジョニングされ、接続されるまでしばらく待ちます。接続の際に認証も行われ、プロジェクトは現在のプロジェクト ID に設定されます。次に例を示します。
有効なアカウント名前を一覧表示する:
(出力)
(出力例)
プロジェクト ID を一覧表示する:
(出力)
(出力例)
Google Cloud で作業を開始する前に、Identity and Access Management(IAM)内で適切な権限がプロジェクトに付与されていることを確認する必要があります。
Google Cloud コンソールのナビゲーション メニュー()で、[IAM と管理] > [IAM] をクリックします。
Compute Engine のデフォルトのサービス アカウント {project-number}-compute@developer.gserviceaccount.com が存在し、編集者のロールが割り当てられていることを確認します。アカウントの接頭辞はプロジェクト番号で、ナビゲーション メニュー > [Cloud の概要] から確認できます。
アカウントが IAM に存在しない場合やアカウントに編集者のロールがない場合は、以下の手順に沿って必要なロールを割り当てます。
Google Cloud コンソールのナビゲーション メニューで、[Cloud の概要] をクリックします。
[プロジェクト情報] カードからプロジェクト番号をコピーします。
ナビゲーション メニューで、[IAM と管理] > [IAM] をクリックします。
IAM ページの上部にある [追加] をクリックします。
新しいプリンシパルの場合は、次のように入力します。
{project-number} はプロジェクト番号に置き換えてください。
[ロールを選択] で、[基本](または [Project])> [編集者] を選択します。
[保存] をクリックします。
パイプラインに出力データを保存できるように、プロジェクトに Cloud Storage バケットを作成します。
Cloud Shell で、次のコマンドを実行して新しいバケットを作成します。
現在のプロジェクト ID と同じ名前のバケットが作成されます。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
次に、以下の手順に沿って、インスタンスに関連付けられているサービス アカウントに権限を付与します。
Google Cloud コンソールで、[IAM と管理] > [IAM] に移動します。
Compute Engine のデフォルトのサービス アカウント {プロジェクト番号}-compute@developer.gserviceaccount.com が表示されていることを確認し、そのサービス アカウントをクリップボードにコピーします。
[IAM 権限] ページで、[+アクセス権を付与] をクリックします。
[新しいプリンシパル] フィールドに、サービス アカウントを貼り付けます。
[ロールを選択] フィールドをクリックし、「Cloud Data Fusion API サービス エージェント」と入力します。最初の数文字を入力すると [Cloud Data Fusion API サービス エージェント] が表示されるので、それを選択します。
[保存] をクリックします。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
コンソールのナビゲーション メニューで、[IAM と管理] > [IAM] をクリックします。
[Google 提供のロール付与を含める] チェックボックスをオンにします。
リストを下にスクロールして、Google が管理する service-{project-number}@gcp-sa-datafusion.iam.gserviceaccount.com という表示形式の Cloud Data Fusion サービス アカウントを探し、サービス アカウント名をクリップボードにコピーします。
次に、[IAM と管理] > [サービス アカウント] に移動します。
{project-number}-compute@developer.gserviceaccount.com という表示形式のデフォルトの Compute Engine アカウントをクリックし、上部のナビゲーション メニューの [アクセス権を持つプリンシパル] タブを選択します。
[アクセスを許可] ボタンをクリックします。
[新しいプリンシパル] フィールドに、前の手順でコピーしたサービスアカウントを貼り付けます。
[ロール] プルダウン メニューで、[サービス アカウント ユーザー] を選択します。
[保存] をクリックします。
Cloud コンソールのナビゲーション メニューから [IAM] に移動します。
権限テーブルの右上にある [Google 提供のロール付与を含める] チェックボックスを探し、クリックします。
service-project-number@gcp-sa-datafusion.iam.gserviceaccount.com という形式のサービス アカウントを探します。サービス アカウントの右側にある [編集] ボタンをクリックします。
[別のロールを追加] をクリックします。
表示されるプルダウンをクリックします。
検索バーを使用して「DLP 管理者」を検索し、選択します。
[保存] をクリックします。
[ロール] 列に [DLP 管理者] が表示されていることを確認します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
Data Fusion に移動し、[インスタンス] をクリックしてから、Data Fusion インスタンスの横にある [インスタンスを表示] リンクをクリックします。必要に応じて、ラボの認証情報を選択してログインします。サービスのガイドに進むダイアログが表示された場合は [No, Thanks] をクリックします。これで Cloud Data Fusion UI が表示されるようになります。
Cloud Data Fusion UI で、左上のナビゲーション メニューをクリックし、[Studio] ページに移動します。 次に、パイプラインを作成します。
ここで構築するパイプラインは、次の処理を行うものです。 * Cloud Storage ソース プラグインを使用して入力データを読み取る。 * Sensitive Data Protection プラグインをハブからデプロイし、Redact 変換プラグインを適用する。 * Cloud Storage シンク プラグインを使用して出力データを書き込む。
表示される GCS ノードの上にポインタを置き、[Properties] をクリックします。
[Reference Name] に参照名を入力します。
このラボでは、一般公開の Cloud Storage バケットで提供されている入力データセット SampleRecords.csv を使用します。[Path] に「gs://cloud-training/OCBL167/SampleRecords.csv」と入力します。
[Format] で [CSV] を選択します。
[Output Schema] の [Field name] で + ボタンをクリックして、次のデータタイプをそれぞれ入力します。既存のデータタイプがある場合は、すべて削除してください。
すべてのデータタイプが String になっていることを確認します。タイプを変更する必要がある場合は、[Type] をクリックし、プルダウンから [String] を選択します。
各データタイプのチェックボックスをオンにします。こうすれば、null(空)値を検出しても、パイプラインが失敗することはありません。
[Validate] をクリックして、エラーがないことを確認します。
ダイアログ ボックスの右上にある X ボタンをクリックします。
Redact 変換プラグインは、入力データ ストリーム内の機密レコードを識別し、定義された変換をそれらのレコードに適用します。データのレコードが、選択された事前定義済み Sensitive Data Protection フィルタまたはユーザーが定義したカスタム テンプレートと一致すると、そのレコードは機密とみなされます。
このラボでは、チームのサポート担当者が誤って記録していた顧客の電話番号を秘匿化します。担当者がサポート チケットの Notes セクションに入力した機密情報は、CSV ファイルの Notes 列にあります。カスタムの Sensitive Data Protection 検査テンプレートを作成し、Redact 変換プラグインのプロパティ メニューでそのテンプレート ID を指定します。
Cloud Data Fusion UI で、右上にある [Hub] をクリックします。
[Data Loss Prevention] プラグインをクリックします。
[Deploy] をクリックします。
[Finish] をクリックします。
[Data Loss Prevention | Deploy] ダイアログ ボックスの右上にある X ボタンをクリックします。
X ボタンをクリックして、ハブを終了します。
Google Cloud コンソールのタイトルバーで、[検索] フィールドに「セキュリティ」と入力し、検索結果から [セキュリティ] をクリックします。[機密データの保護] を選択します。
[構成] タブをクリックし、[テンプレートの作成] をクリックします。
[テンプレートの定義] で、[テンプレート ID] フィールドに作成したテンプレートの ID を入力します。このテンプレート ID はチュートリアルで後ほど必要になります。
[続行] をクリックします。
[検出の設定] で、[infoType を管理] をクリックします。
[組み込み] タブで、フィルタを使用して「phone number」を検索します。
[PHONE_NUMBER] を選択します。
[完了] をクリックします。
[作成] をクリックします。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
Cloud Data Fusion UI に戻り、[Studio] ページで [Transform] メニューをクリックして展開します。
[Google DLP Redact] 変換プラグインをクリックします。
#」と入力します。[Validate] をクリックして、エラーがないことを確認します。
ダイアログ ボックスの右上にある X ボタンをクリックします。
パイプラインの結果を Cloud Storage ファイルに保存します。
Cloud Data Fusion UI の [Studio] ページで、[Sink] メニューをクリックして展開します。
[GCS] をクリックします。
Google DLP Redact ノードから GCS2 ノードに接続矢印をドラッグします。
[Validate] をクリックして、エラーがないことを確認します。
ダイアログ ボックスの右上にある X ボタンをクリックします。
次に、パイプラインをプレビュー モードで実行してからデプロイします。
[Run] ボタンにはパイプラインのステータスが表示され、最初は [Starting]、その後 [Stop] に代わり、さらに [Run] となります。
3. X ボタンをクリックして [Preview Data] を閉じます。
プレビューの実行結果を確認していたあなたは、[Notes] 列に他の機密情報(メールアドレス)も含まれていることに気づきました。Sensitive Data Protection 検査テンプレートに戻って、メールアドレスも秘匿化するように編集します。
[セキュリティ] > [機密データの保護] に移動します。
[設定] タブで、先ほどのテンプレートを選択します。
[編集] をクリックします。
[infoType を管理] をクリックします。
[組み込み] タブで、フィルタを使用して「phone number」「OR」「email address」を検索します。
すべて選択して [完了] をクリックします。
[保存] をクリックします。
ポップアップで [保存の確認] をクリックします。
再度パイプラインをプレビュー モードで実行します。Cloud Data Fusion は、更新された Sensitive Data Protection テンプレートを自動的に使用します。
電話番号とメールアドレスの両方が # 文字でマスクされていることを確認します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
[Preview] モードがオフになっていることを確認します。
[Save] をクリックします。[Save] をクリックすると、パイプラインの名前を入力するよう求められます。パイプラインに名前を付け、[Save] をクリックします。
[Deploy] をクリックします。
デプロイが完了したら、[Run] をクリックします。パイプラインの実行には数分を要する場合があります。その間に、パイプラインのステータスが [Provisioning]、[Starting]、[Running]、[Succeeded] へと変化していきます。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
Cloud コンソールで Cloud Storage に移動します。
ストレージ ブラウザで、シンクの Cloud Storage プラグイン プロパティに指定した Cloud Storage バケットに移動します。
[認証済み URL] のリンクをコピーし、新しいブラウザタブに貼り付けて、結果の CSV ファイルをダウンロードします。電話番号とメールアドレスが # 文字でマスクされていることを確認します。
このラボでは、Sensitive Data Protection を使用して、Data Fusion パイプラインを通過するデータの一部をマスクする方法を学びました。データをオーディエンスと共有する前に、データに埋め込まれた個人情報(PII)を削除またはマスクする必要がある場合に役立ちます。
ドキュメントを参照して、Sensitive Data Protection テンプレートの作成について詳しく確認しましょう。
マニュアルの最終更新日: 2025 年 12 月 9 日
ラボの最終テスト日: 2025 年 12 月 9 日
Copyright 2026 Google LLC All rights reserved. Google および Google のロゴは、Google LLC の商標です。その他すべての社名および製品名は、それぞれ該当する企業の商標である可能性があります。
このコンテンツは現在ご利用いただけません
利用可能になりましたら、メールでお知らせいたします
ありがとうございます。
利用可能になりましたら、メールでご連絡いたします
1 回に 1 つのラボ
既存のラボをすべて終了して、このラボを開始することを確認してください