Sensitive Data Protection (旧 Cloud DLP) は GCP の PII (Personally Identifiable Information) 検知・マスキングサービスで、200+ の組み込み infoType と Discovery 機能で大規模データから機密情報を自動検出します。 2024 にリブランドされ、Discovery 機能 + De-identification の統合プラットフォームに進化しました。
| カテゴリ | InfoType |
|---|---|
| 個人情報 | PERSON_NAME、EMAIL_ADDRESS、PHONE_NUMBER |
| 金融 | CREDIT_CARD_NUMBER、IBAN_CODE、SWIFT_CODE |
| 政府 ID | JAPAN_INDIVIDUAL_NUMBER (マイナンバー)、US_SOCIAL_SECURITY_NUMBER |
| 医療 | JAPAN_HEALTH_INSURANCE_NUMBER、US_DRUG_ENFORCEMENT_AGENCY_NUMBER |
| IT | IP_ADDRESS、MAC_ADDRESS、URL |
| 位置 | STREET_ADDRESS、LOCATION |
| 生体 | FACE_DETECTION (画像) |
# Discovery Scan Config 作成
gcloud dlp discovery-configs create \
--location=global \
--project=my-project \
--discovery-config-from-file=config.yaml
# config.yaml
displayName: "BQ PII Discovery"
status: RUNNING
targets:
- bigQueryTarget:
filter:
otherTables: {}
cadence:
updateFrequency: UPDATE_FREQUENCY_DAILY
inspectTemplates:
- "projects/my-project/inspectTemplates/pii-template"from google.cloud import dlp_v2
client = dlp_v2.DlpServiceClient()
parent = f"projects/my-project/locations/global"
inspect_config = {
"info_types": [
{"name": "EMAIL_ADDRESS"},
{"name": "PHONE_NUMBER"},
{"name": "JAPAN_INDIVIDUAL_NUMBER"},
],
"min_likelihood": dlp_v2.Likelihood.POSSIBLE,
"include_quote": True,
}
item = {"value": "山田太郎、メール: [email protected]、電話: 03-1234-5678、マイナンバー: 123456789012"}
response = client.inspect_content(
request={"parent": parent, "inspect_config": inspect_config, "item": item}
)
for finding in response.result.findings:
print(f"{finding.info_type.name}: {finding.quote} ({finding.likelihood.name})")
# 出力:
# EMAIL_ADDRESS: [email protected] (LIKELY)
# PHONE_NUMBER: 03-1234-5678 (LIKELY)
# JAPAN_INDIVIDUAL_NUMBER: 123456789012 (VERY_LIKELY)| 方法 | 例 | 可逆 | 用途 |
|---|---|---|---|
| Masking | ***-****-1234 | 不可 | 表示用 |
| Tokenization | USR-A1B2C3 | 可 (Lookup table) | 分析用 |
| Format-preserving Encryption | 4111-2222-3333 → 7281-9302-5841 | 可 (鍵) | 形式維持 |
| Bucketing | 32 歳 → 30-39 歳 | 不可 | 分析統計 |
| Date Shift | 2026-05-24 → 2026-05-15 | 可 (オフセット保存) | 時系列保持 |
| Cryptographic Hashing | SHA-256 | 不可 | ID 化 |
# Cloud Function でメッセージ受信時にマスキング
def deidentify_message(event, context):
from google.cloud import dlp_v2
import base64, json
message = base64.b64decode(event['data']).decode('utf-8')
data = json.loads(message)
client = dlp_v2.DlpServiceClient()
response = client.deidentify_content(
request={
"parent": "projects/my-project/locations/global",
"deidentify_config": {
"info_type_transformations": {
"transformations": [{
"primitive_transformation": {
"character_mask_config": {
"masking_character": "*",
"number_to_mask": 0,
}
}
}]
}
},
"inspect_config": {
"info_types": [{"name": "EMAIL_ADDRESS"}, {"name": "PHONE_NUMBER"}],
},
"item": {"value": data.get('text', '')},
}
)
# マスク済みデータを別 Topic に転送
publish_to_clean_topic(response.item.value)| 項目 | 料金 |
|---|---|
| Storage Inspection (BQ/GCS) | $1.50/GB |
| Discovery (継続スキャン) | $1.00/GB |
| Streaming (Pub/Sub) | $0.05/GB |
| API Inspection | $0.01/1000 unit |
| De-identification | Inspection と同等 |
Sensitive Data Protection と Cloud DLP の関係は?
同じサービスのリブランド (2024)。Cloud DLP → Sensitive Data Protection に名称変更。機能・API は同じ。
対応する PII 種別は?
Built-in infoType 200+: クレジットカード、SSN、マイナンバー、電話番号、メール、IP アドレス、医療コード等。日本語対応 (マイナンバー / 健康保険番号 等)。
Discovery とは?
BigQuery / Cloud SQL / GCS の自動 PII 探索機能。テラバイト級データから機密データを自動カタログ化。Dataplex 連携も可能。
De-identification の手法は?
Masking (****)、Tokenization (擬似 ID)、Format-preserving Encryption (形式維持)、Bucketing (年齢 → 年代)、Date Shift (日付ずらし)。
Re-identification はできる?
Format-preserving Encryption / Tokenization は鍵で復号可。Masking / Bucketing は不可逆。用途で使い分け。
料金体系は?
Inspection: $1.00/GB (Discovery)、$1.50/GB (Storage Inspection)、$0.05/GB (Streaming)。De-identification: Inspection と同等。
AWS Macie / Azure Purview との比較は?
3 つとも PII 検知。GCP は infoType 数最多 + 日本語対応 + Discovery のスケール。Macie は S3 特化、Purview は Microsoft 365 + Azure 統合。
リアルタイム監視は?
Pub/Sub にメッセージが流れる際に DLP API でリアルタイム検知 + マスキング。BigQuery への Streaming Insert 前にも可能。
関連記事・セキュリティ / プライバシー
Database Migration Service (DMS) 完全ガイド|Oracle/MySQL/PG → Cloud SQL/AlloyDB (GCP)
Google Cloud Database Migration Service の全機能解説。Oracle / MySQL / PostgreSQL / SQL Server / MongoDB → Cloud SQL / AlloyDB / BigQuery / Firestore 移行。Heterogeneous 移行、Continuous Migration、料金、AWS DMS 比較を 2026 年最新版で網羅。
GCP Associate Data Practitioner (ADP) 完全ガイド|2024 新試験・BigQuery・SQL 中心
Google Cloud Associate Data Practitioner (ADP、2024 新設) の試験範囲、BigQuery / Cloud Composer / Dataform / Looker Studio、SQL スキル要件、AWS DEA / Databricks DE / Azure DP-700 比較を詳解。
GCP Professional Cloud Developer (PCD) 完全ガイド|Cloud Run・GKE・CI/CD・APM
Google Cloud Professional Cloud Developer の試験範囲、Cloud Run / GKE / Cloud Build / Cloud Trace、AWS DVA / Azure AZ-204 比較、学習ロードマップを徹底解説。
GCP Professional Cloud Database Engineer (PCDBE) 完全ガイド|Spanner・AlloyDB・Cloud SQL
Google Cloud Professional Cloud Database Engineer の試験範囲、Spanner / AlloyDB / Cloud SQL / Bigtable / Firestore、AWS DBS・Azure DP-300 比較を詳解。
※ Google Cloud は Google LLC の商標です。最新は Sensitive Data Protection 公式 をご確認ください。
NicheeLab編集部
データエンジニアリング・クラウド資格の専門家。Databricks・Snowflake等の認定資格を保有し、実務経験に基づいた問題作成・解説を行っています。NicheeLab運営。
Google Cloud (GCP) 認定資格ロードマップ 2026 完全版|全 15 試験を体系化
Google Cloud 認定資格 全 15 試験 (Foundational 2 + Associate 3 + Pr...
Cloud Digital Leader (CDL) 完全ガイド|出題範囲・学習リソース・合格戦略
Google Cloud Cloud Digital Leader (CDL) の完全ガイド。6 ドメイン 92 bul...
Generative AI Leader (GAIL) 完全ガイド|Google Cloud 生成 AI 認定
Google Cloud Generative AI Leader (GAIL、2025-05-14 リリース) の完全...
Vertex AI 入門|Google Cloud 統合 ML プラットフォームの全機能
Google Cloud Vertex AI の入門解説。Vertex AI Studio / Agent Builde...
GCP Associate Cloud Engineer (ACE) 完全ガイド|試験範囲・受験料・学習ロードマップ
Google Cloud Associate Cloud Engineer (ACE) の試験範囲・受験料 125 US...