auto-data-discovery について
企業内データの個人情報を自動検出・分類するプライバシー、データガバナンス、コンプライアンス担当者向けのスキルです。Microsoft Purview、BigID、OneTrust DataDiscovery、AWS Macie のスキャン設定、精度調整、プライバシーワークフローとの連携を扱います。
主な機能
- 01構造化・非構造化データソースのスキャン
- 02個人データの分類とカタログ化
- 03スキャンルールとスケジュールの設定
- 04フィードバックやルールによる分類精度の調整
- 05検出結果とプライバシーワークフローの連携
活用シーン
- 01企業システム内の個人データの棚卸し
- 02新規登録したデータソースのスキャン
- 03DPIA やデータ主体の請求に必要なデータの特定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mukul975/ privacy-data-protection-skills --skill auto-data-discoveryインストール後、Claude Code で/auto-data-discoveryを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/template.mdreferences/standards.mdworkflows.mdscripts/process.py詳細
PII の自動検出と分類
概要
自動データ検出ツールは、構造化データおよび非構造化データのリポジトリをスキャンし、企業全体にわたる個人データを特定、分類、カタログ化します。手動で作成するデータインベントリでは、現代のデータ処理におけるデータ量、処理速度、多様性に追いつけません。自動検出によって、個人データの所在、データの流れ、ポリシーに従って分類・保護されているかどうかを継続的に可視化できます。このスキルでは、主要な 4 つのプラットフォーム(Microsoft Purview、BigID、OneTrust DataDiscovery、AWS Macie)の実装パターンを取り上げ、スキャン設定、精度の最適化、プライバシーコンプライアンスのワークフローとの統合に焦点を当てます。
プラットフォームの比較
| 機能 | Microsoft Purview | BigID | OneTrust DataDiscovery | AWS Macie |
|---|---|---|---|---|
| 構造化データのスキャン | SQL Server、Azure SQL、Synapse、Cosmos DB、Oracle、PostgreSQL、MySQL、Teradata | 主要な RDBMS、NoSQL、データウェアハウスを含む 100 以上のコネクター | 200 以上のコネクター、SaaS アプリケーションとの事前構築済み統合 | S3、DynamoDB、RDS(Lambda 経由) |
| 非構造化データのスキャン | SharePoint、OneDrive、Exchange、Azure Blob、Azure Files、AWS S3、GCP Storage | ファイル共有、メール、SharePoint、クラウドストレージ、Slack、Teams、Confluence | ファイル共有、メール、クラウドストレージ、コラボレーションプラットフォーム | S3 バケット(主な対象) |
| 分類方法 | 300 種類以上の組み込み機密情報タイプ(SIT)、トレーニング可能な分類器、完全一致データ照合(EDM)、カスタム正規表現 | ML ベースの NER、相関分析、パターンマッチング、カスタム分類器 | パターンマッチング、NER、コンテキスト分析、カスタムルール | ML ベースのパターンマッチング、カスタムデータ識別子、管理対象データ識別子 |
| GDPR 固有の分類器 | 各加盟国の EU 国民 ID 形式、EU パスポート番号、EU デビットカード/クレジットカード番号、EU 納税者番号 | GDPR 個人データの分類体系、第 9 条の特別カテゴリの検出、規制間のマッピング | 事前構築済みの GDPR データ主体タイプ、目的のマッピング、法的根拠のタグ付け | EU 個人データ識別子(限定的。主に金融情報と本人確認情報のパターン) |
| 精度の調整 | 信頼度レベル(低/中/高)、カスタムキーワード辞書、完全一致用の EDM、ドキュメントフィンガープリント | ML モデルの再トレーニング、フィードバックループ、信頼度しきい値、相関ルール | 信頼度スコアリング、検証ルール、例外管理 | 正規表現とキーワードの近接性を使用したカスタムデータ識別子、重要度スコアリング |
| デプロイモデル | SaaS(Microsoft 365/Azure)、Purview ガバナンスとのハイブリッド | SaaS、オンプレミス、ハイブリッド | SaaS、オンプレミスエージェント | AWS ネイティブ SaaS |
| 料金モデル | 情報保護ユニット単位(Azure)、Microsoft 365 ライセンス階層単位(E5 には高度な機能を含む) | データソースコネクター単位、スキャンする TB 単位 | データソースモジュール単位、コネクター単位 | 評価対象の S3 バケット単位、スキャンする GB 単位 |
実装パターン — Microsoft Purview
アーキテクチャ
Data Sources Microsoft Purview
┌─────────────┐ ┌───────────────────────────┐
│ Azure SQL │──────scanner──►│ Data Map (metadata store) │
│ SharePoint │──────scanner──►│ Data Catalog (search/tag) │
│ AWS S3 │──────scanner──►│ Data Estate Insights │
│ On-prem SQL │──self-hosted──►│ Information Protection │
│ Power BI │──────scanner──►│ Data Loss Prevention (DLP) │
└─────────────┘ └───────────────────────────┘
Vanguard Financial Services の設定手順
ステップ 1:データソースを登録する
- すべての Azure SQL データベース、SharePoint サイト、Azure Blob Storage アカウントを登録します
- オンプレミスの SQL Server とファイル共有用に、セルフホストの統合ランタイムをインストールします
- クロスクラウドコネクターを使用して AWS S3 バケットを登録します
- レポートレベルの機密性スキャン用に Power BI ワークスペースを登録します
ステップ 2:スキャンルールを設定する
- すべての EU 管轄区域で、組み込みの機密情報の種類(SIT)を有効にします:
- 英国の国民保険番号(パターン:
[A-CEGHJ-PR-TW-Z]{2}\d{6}[A-D]) - EU のパスポート番号(加盟国ごとの形式)
- 国際銀行口座番号(IBAN)
- EU の納税者識別番号
- EU の健康保険証番号
- 英国の国民保険番号(パターン:
- Vanguard 固有の識別子用にカスタム SIT を作成します:
- 顧客口座番号の形式:
VFS-\d{10} - 従業員 ID の形式:
EMP-[A-Z]{2}\d{6} - 投資ポートフォリオ参照番号:
PF-\d{8}-[A-Z]{2}
- 顧客口座番号の形式:
- 信頼度レベルを設定します:直接識別子は「高」、間接識別子は「中」、文脈上の一致は「低」
- CRM データベースと照合して顧客名を検証するため、完全データ一致(EDM)を有効にします
ステップ 3:スキャンスケジュールを設定する
- フルスキャン:毎月(毎月第 1 土曜日、02:00 UTC)
- 増分スキャン:毎週(土曜日、02:00 UTC)
- オンデマンドスキャン:新しいデータソースの登録時、またはインシデント対応時に実行
- スキャン所要時間の見積もり:15 TB のデータ全体のフルスキャンで 8 時間
ステップ 4:機密度ラベルを設定する
- Purview の機密度ラベルを Vanguard の分類階層に対応付けます:
Public→ Purview ラベル:PublicInternal→ Purview ラベル:GeneralConfidential→ Purview ラベル:ConfidentialRestricted→ Purview ラベル:Highly Confidential(Art. 9/Art. 10 のデータに自動適用)
- 自動ラベル付けポリシーを有効にします:検出された SIT に基づいてラベルを適用します
- ラベルの継承を設定します:より高いラベルがない限り、子項目は親コンテナーのラベルを継承します
ステップ 5:DLP ポリシーを統合する
- 機密度ラベルをトリガーとする DLP ポリシーを作成します:
- Restricted データ:外部共有をブロックし、暗号化を必須にし、DPO に通知します
- Confidential データ:外部共有時に警告し、監査ログを記録し、理由の入力を必須にします
- Internal データ:監査ログのみを記録します
- Windows デバイス向けにエンドポイント DLP を設定します(Restricted コンテンツの USB へのコピー、印刷、スクリーンショットを防止します)
Purview の精度調整
| 問題 | 調整方法 |
|---|---|
| 誤検知:英国の電話番号が国民保険番号として判定される | NINO SIT の最小信頼度を「高」に引き上げ、除外キーワードリスト(「phone」「tel」「fax」「mobile」)を追加します |
| 誤検知:内部参照番号が口座番号として判定される | 実際の顧客口座用の EDM スキーマを作成し、顧客関連キーワードの近くに出現するカスタム SIT を作成します |
| 見逃し:フリーテキスト形式のメール本文に含まれる健康データ | 健康コンテンツ用のトレーニング可能な分類器を有効にし、産業保健関連の文書から収集した 50 件以上の陽性例で学習させます |
| 見逃し:研究データセット内の遺伝子識別子 | rs 番号パターン(rs\d{4,12})、ICD-10 コード、HUGO 遺伝子名用のカスタム SIT を作成します |
実装パターン — BigID
アーキテクチャ
BigID は、相関ベースの検出機能を備えた分散スキャンアーキテクチャを使用します:
Data Sources BigID Platform
┌─────────────┐ ┌──────────────────────────┐
│ Databases │──scan───►│ Discovery Engine │
│ File Shares │──scan───►│ Correlation Engine (ML) │
│ Cloud │──scan───►│ Classification Engine │
│ SaaS Apps │──API────►│ Catalog & Inventory │
│ Email │──scan───►│ Privacy Rights Automation │
└─────────────┘ └──────────────────────────┘
主な差別化要素:相関ベースの ID 解決
BigID の ML ベースの相関エンジンは、データソース間のデータ要素を関連付けて ID プロファイルを構築し、個人データを特定します。このアプローチでは、パターンマッチングだけでは見逃される個人データも検出できます。たとえば、あるシステムの顧客 ID と別のシステムの名前を関連付けます。
Vanguard の設定
- データソース接続:Salesforce CRM、Workday HR、ADP Payroll、SharePoint、Azure SQL、AWS S3、オンプレミスの Oracle データウェアハウス用のコネクターを設定します
- 相関ルール:CRM 顧客 ID、HR 従業員 ID、給与計算の従業員番号をまたいだ ID 相関を有効にします
- 分類ポリシー:BigID の分類器を GDPR のカテゴリ(個人データ、特別カテゴリ、犯罪データ、仮名化データ、匿名化データ)にマッピングします
- スキャンスケジュール:毎日 01:00 UTC に増分スキャンを実行し、週次で完全な相関を再構築します
実装パターン — OneTrust DataDiscovery
アーキテクチャ
OneTrust は、より広範なプライバシー管理プラットフォームとディスカバリーを統合します。
Data Sources OneTrust Platform
┌─────────────┐ ┌──────────────────────────┐
│ Cloud/SaaS │──API────►│ DataDiscovery Module │
│ Databases │──agent──►│ Data Mapping (Art. 30) │
│ File Shares │──agent──►│ Assessment Automation │
│ Endpoints │──agent──►│ Consent Management │
└─────────────┘ │ DSAR Automation │
└──────────────────────────┘
主な差別化要因:プライバシープログラムとの統合
OneTrust の価値提案は、ディスカバリーの結果とプライバシープログラム管理を緊密に統合することです。検出された個人データは、Art. 30 の記録、DPIA 評価、DSAR 対応ワークフローに直接反映されます。
Vanguard の設定
- データソースのインベントリ:OneTrust のデータマッピング質問票を使用してベースラインを確立し、その後、自動スキャンを導入して検証と拡充を行います
- RoPA との統合:検出されたデータカテゴリを Art. 30 の処理活動記録にマッピングします
- DSAR との統合:自動化されたデータ主体アクセス要求への対応を支援するようにディスカバリーの結果を設定します(システム全体から特定の ID に関するすべてのデータを特定します)
- ベンダーのディスカバリー:サードパーティの処理者と共有されている個人データをスキャンし、ベンダー管理記録と照合します
実装パターン — AWS Macie
アーキテクチャ
Macie は、AWS 内の S3 データのディスカバリーに特化して構築されています。
AWS Environment
┌─────────────────────────────────────┐
│ S3 Buckets ──scan──► Macie │
│ │ │
│ EventBridge ◄──alerts──┘ │
│ Security Hub ◄──findings──┘ │
│ CloudWatch ◄──metrics──┘ │
└─────────────────────────────────────┘
Vanguard の設定
- バケットの選択:eu-west-1(ロンドン)および eu-west-2(アイルランド)リージョンのすべての S3 バケットで Macie を有効にします
- カスタムデータ識別子:Vanguard 固有のパターン(顧客口座番号、従業員 ID、ポートフォリオ参照番号)用の識別子を作成します
- マネージド識別子:EU リージョン向けのすべてのマネージドデータ識別子(UK NINO、IBAN、EU パスポート)を有効にします
- ジョブのスケジュール設定:分類ジョブを週次でスケジュールします。機密度の高いバケットでは、新しいオブジェクトのアップロード時にイベント駆動型スキャンを実行します
- 検出結果の統合:検出結果を AWS Security Hub に送信して一元監視し、自動ラベル適用のために Lambda 関数をトリガーします
スキャンスケジュールのベストプラクティス
| スキャン種別 | 頻度 | 実行時間帯 | トリガー |
|---|---|---|---|
| 完全なディスカバリースキャン | 月次 | 週末のメンテナンス時間帯(8~12 時間) | スケジュール |
| 増分スキャン | 週次 | オフピーク時間帯(2~4 時間) | スケジュール |
| 新規ソースのオンボーディングスキャン | 登録時 | ソース登録から 48 時間以内 | イベント駆動型 |
| インシデント後のスキャン | 必要に応じて | 即時(対象を限定) | インシデント対応 |
| DPIA 前スキャン | DPIA 開始前 | DPIA 開始の 1~2 週間前 | プロジェクト起点 |
精度指標とチューニング
主要業績評価指標
| 指標 | 目標 | 測定方法 |
|---|---|---|
| 適合率(真陽性率) | > 90% | 毎月、分類済みアイテムを 100 件サンプリングし、分類精度を検証します |
| 再現率(検出率) | > 85% | スキャン対象範囲に既知の PII テストデータを配置し、検出率を測定します |
| 偽陽性率 | < 10% | 個人データとして分類されたものの、実際には個人データではないアイテムの数を数えます |
| 偽陰性率 | < 15% | スキャナーが見逃した個人データのアイテム数を数えます |
| 分類の一貫性 | > 95% | 同じデータ要素が、再スキャン時にも一貫して分類されることを確認します |
継続的改善サイクル
Month 1: Baseline scan → establish initial accuracy metrics
Month 2: Review false positives/negatives → tune rules and thresholds
Month 3: Re-scan → measure improvement
Month 4: Expand scope (new data sources) → re-baseline
Month 5: Review edge cases → create custom classifiers
Month 6: Accuracy audit by DPO → formal accuracy report
[Repeat cycle]
統合ポイント
- data-inventory-mapping:自動検出によって、Art. 30 データインベントリに情報が取り込まれます
- pii-in-unstructured:非構造化データ向けの専門的な手法により、プラットフォームの機能が強化されます
- data-labeling-system:検出結果に基づいて、ラベルの適用が自動化されます
- classification-policy:検出によって、分類ポリシーの各階層への準拠を検証します
- data-lineage-tracking:検出とリネージを組み合わせることで、データを完全に可視化できます