Inspect a string for sensitive information

進行状況を確認

/ 50

Redacting sensitive data from text content

進行状況を確認

/ 50

このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。

GSP107

Google Cloud セルフペース ラボ

現在は Sensitive Data Protection の一部となっている Cloud Data Loss Prevention(DLP)API は、パワフルな検出エンジンへのプログラマティックなアクセスを可能にし、非構造化データ ストリーム内の個人情報(PII)やその他の機密データの検出を実現します。

DLP API は、クレジット カード番号、氏名、社会保障番号、パスポート番号、電話番号などの機密データ要素の、迅速でスケーラブルな分類と秘匿化(オプション)を可能にします。テキストと画像に対応しており、API に直接データを送信することも、Cloud Storage や BigQuery、Cloud Datastore のインスタンスに保存されているデータを指定することもできます。

このラボでは、分析する JSON ファイルを用意してそれを DLP API に送信し、文字列データを検査して機密情報の有無を確認し、機密情報が検出された場合は秘匿化します。

学習内容

このラボでは、DLP API を使用して次のことを行います。

  • 文字列に含まれる機密情報を検査する
  • テキスト コンテンツに含まれる機密データを秘匿化する

設定と要件

[ラボを開始] ボタンをクリックする前に

こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。

このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
注: このラボの実行には、シークレット モード(推奨)またはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウント間の競合を防ぎ、個人アカウントに追加料金が発生しないようにすることができます。
  • ラボを完了するための時間(開始後は一時停止できません)
注: このラボでは、受講者アカウントのみを使用してください。別の Google Cloud アカウントを使用すると、そのアカウントに料金が発生する可能性があります。

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

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるダイアログでお支払い方法を選択してください。 右側の [ラボの設定とアクセス] パネルには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • このラボで使用する一時的な認証情報(ユーザー名とパスワード)
    • このラボを行うために必要なその他の情報(ある場合)

    ラボのタイマーはページの上部に表示され、残り時間が示されます。

  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。

    ラボでリソースがスピンアップし、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示された場合は、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの設定とアクセス] パネルでもユーザー名を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの設定とアクセス] パネルでもパスワードを確認できます。

  6. [次へ] をクリックします。

    重要: ラボで指定された認証情報を使用する必要があります。ご自身の Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後のページはクリックして先に進みます。

    • 利用規約に同意します。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

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

注: Google Cloud のプロダクトやサービスにアクセスするには、ナビゲーション メニューをクリックするか、[検索] フィールドにサービス名またはプロダクト名を入力します。 ナビゲーション メニューのアイコンと検索フィールド

Cloud Shell をアクティブにする

Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。

  1. Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン 「Cloud Shell をアクティブにする」アイコン をクリックします。

  2. ウィンドウで次の操作を行います。

    • Cloud Shell 情報ウィンドウで操作を進めます。
    • Cloud Shell が認証情報を使用して Google Cloud API を呼び出すことを承認します。

接続した時点で認証が完了しており、プロジェクトに各自の Project_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

  1. (省略可)次のコマンドを使用すると、有効なアカウント名を一覧表示できます。
gcloud auth list
  1. [承認] をクリックします。

出力:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (省略可)次のコマンドを使用すると、プロジェクト ID を一覧表示できます。
gcloud config list project

出力:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注: Google Cloud における gcloud ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。

プロジェクト ID 用の環境変数を設定する

  • Cloud Shell で、次のコマンドを実行してプロジェクト ID 用の環境変数を設定します。
export PROJECT_ID=$DEVSHELL_PROJECT_ID

タスク 1. 文字列に含まれる機密情報を検査する

このセクションでは、projects.content.inspect REST メソッドを使用してサンプル テキストのスキャンを依頼する方法を説明します。作成する JSON ファイルには、InspectConfig オブジェクトと ContentItem オブジェクトを含めます。

  1. 任意のエディタ(nanovim など)または Cloud Shell を使用して、次のテキストを含む JSON リクエスト ファイルを作成し、inspect-request.json として保存します。
{ "item":{ "value":"My phone number is (206) 555-0123." }, "inspectConfig":{ "infoTypes":[ { "name":"PHONE_NUMBER" }, { "name":"US_TOLLFREE_PHONE_NUMBER" } ], "minLikelihood":"POSSIBLE", "limits":{ "maxFindingsPerItem":0 }, "includeQuote":true } }
  1. アカウントを使用して認可トークンを取得します。
gcloud auth print-access-token

非常に長い文字列が返されます。このトークンは次のステップで必要です。

サービス アカウントが使用されていないというエラーが表示された場合は、数分待ってからコマンドを再度実行してください。
  1. curl を使用して content:inspect リクエストを作成し、ACCESS_TOKEN を前の手順で返された文字列に置き換えます。
curl -s \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ https://dlp.googleapis.com/v2/projects/$PROJECT_ID/content:inspect \ -d @inspect-request.json -o inspect-output.txt 注: このようになります

curl にファイル名を渡すには、-d オプション(つまり「data」)を使用して、ファイル名の前に @ 記号を付けます。このファイルは、curl コマンドを実行するのと同じディレクトリに存在する必要があります。

curl レスポンスは inspect-output.txt ファイルに保存されます。次のコマンドを使用して出力を確認します。

cat inspect-output.txt

次のようなレスポンスが表示されます。

{ "result": { "findings": [ { "quote": "(206) 555-0123", "infoType": { "name": "PHONE_NUMBER" }, "likelihood": "LIKELY", "location": { "byteRange": { "start": "19", "end": "33" }, "codepointRange": { "start": "19", "end": "33" } }, "createTime": "2018-07-03T02:20:26.043Z" } ] } }

出力を Cloud Storage にアップロードする

次のコマンドを実行して、アクティビティの記録の検証用に curl レスポンスを Cloud Storage にアップロードします。

gsutil cp inspect-output.txt gs://{{{project_0.startup_script.gcs_bucket_name|bucket_name_filled_after_lab_start}}} 文字列を検査して、機密情報の有無を確認する

タスク 2. テキスト コンテンツの機密データを秘匿化する

DLP API では、検出内容のリストを提供する代わりに、テキスト ファイル内の機密データを自動的に秘匿化することもできます。

この API に deidentifyConfig オブジェクトを使用する JSON ファイルを送信すると、出力内の機密情報が秘匿化されます。

  1. 以下の内容を含む新しい JSON ファイル(new-inspect-file.json)を作成します。
{ "item": { "value":"My email is test@gmail.com", }, "deidentifyConfig": { "infoTypeTransformations":{ "transformations": [ { "primitiveTransformation": { "replaceWithInfoTypeConfig": {} } } ] } }, "inspectConfig": { "infoTypes": { "name": "EMAIL_ADDRESS" } } }
  1. curl を使用して content:deidentify リクエストを作成します(ACCESS_TOKEN はアクセス トークンを出力するコマンドで置き換えられています)。
curl -s \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://dlp.googleapis.com/v2/projects/$PROJECT_ID/content:deidentify \ -d @new-inspect-file.json -o redact-output.txt

curl レスポンスは redact-output.txt ファイルに保存されます。次のコマンドを使用して出力を確認します。

cat redact-output.txt

次のようなレスポンスが表示されます。

{ "item": { "value": "My email is [EMAIL_ADDRESS]" }, "overview": { "transformedBytes": "14", "transformationSummaries": [ { "infoType": { "name": "EMAIL_ADDRESS" }, "transformation": { "replaceWithInfoTypeConfig": {} }, "results": [ { "count": "1", "code": "SUCCESS" } ], "transformedBytes": "14" } ] } }

これで DLP API に最初のリクエストを送信し、出力内の機密情報を秘匿化しました。

出力を Cloud Storage にアップロードする

次のコマンドを実行して、アクティビティの記録の検証用に curl レスポンスを Cloud Storage にアップロードします。

gsutil cp redact-output.txt gs://{{{project_0.startup_script.gcs_bucket_name|bucket_name_filled_after_lab_start}}} テキスト コンテンツの機密データを秘匿化する

お疲れさまでした

Cloud Data Loss Prevention(DLP)API を使用して、テキスト コンテンツの機密データを検査し、秘匿化しました。

次のステップと詳細情報

このラボは「Qwik Start」と呼ばれるラボシリーズの一部です。これらのラボでは、Google Cloud で利用できる多くの機能を体験できます。ラボカタログで「Qwik Start」のリストを確認して、興味のあるラボを探してみてください。

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2024 年 11 月 22 日

ラボの最終テスト日: 2024 年 11 月 22 日

Copyright 2026 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

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

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

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

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

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

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

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

ありがとうございます。

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

1 回に 1 つのラボ

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

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

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

ラボを開始するには、この簡単な手順を完了してください。