完全一致とは、ポリシーによってチェックされるデータセットに対して、識別子が存在するか否かを検証するものです。完全一致により誤検出が減り、データセット内の特定のエントリのデータ漏洩を確実に防止できます。使うケースの例は次のとおりです。
- 企業データベースに保存されている社会保障番号(SSN)や従業員IDのデータ漏洩を防止してください。
- クレジットカード番号のような形式になっているが、有効なクレジットカード番号ではない小売店のクーポンコード一覧。このデータセットに含まれるクレジットカードの照合結果は無視されます。
EDMは、以下の機能により、機密性の高い構造化データを高精度で検出できます。
- 生データの露出はゼロ
- 高精度、低偽陽性
- UI、Python、またはAPIを介したスケーラブルなデータ取り込み
完全一致を使用するには、まずデータ セットをオンプレミス仮想アプライアンスまたはNetskopeテナント UI にアップロードする必要があります。
データセットファイルの最初の行には、その列に含まれるデータを説明する列名を記述する必要があります。データセットに列ヘッダーが含まれていない場合、ファイルのアップロードは失敗します。
これらの列名は、DLPルールを作成する際の検証のために、DLP識別子にマッピングできます。
例えば、ハイフンで区切られたクレジットカード番号(1列目)、名(2列目)、姓(3列目)を含むファイルを作成できます。ファイル内の各エントリはSHA-256ハッシュ化され、テナントインスタンスにアップロードされます。DLPルールでは、クレジットカード番号、名、姓の識別子と照合する必要があります。
準備
ファイル形式はCSVまたはTXTで、最大ファイルサイズは8MB、またはマルチパートアップロードの場合は160GBです。
EDMの入力ファイルはUTF-8でエンコードされている必要があります。
ヘッダー行が必ず存在し、空行はなく、列数はヘッダー行の数と同じでなければなりません。
Normalization
正規化はハッシュ化前のデータ表現の一貫性を確保し、偽陰性につながる可能性のあるばらつきを排除します。
- ケース非依存、Utf-8 エンコーディング
- 氏名と住所 – 辞書
- 区切り文字、空行のないファイル(最低1行)、ヘッダー付きの一貫した列
- ファイル名 – 英数字とアンダースコアの組み合わせ。特殊文字は使用しないでください。
Example
| Raw Data | Normalized Data |
|---|---|
| Jxx.Dyy@email.com | jxx.dyy@email.com |
| 987-654-3210 | 9876543210 |
Best Practices
- すべてのセルに一貫した正規化ルールを適用する
- ハッシュ化する前に正規化された出力を検証する
アップロード方法
Tenant UI
テナントUI経由でアップロードするには:
- Netskope UIでPolicies > Profiles > DLP > Edit Rules > Data Loss Prevention > Exact Matchに移動してください。
- New Exact Matchをクリックしてください。
- [新しい完全一致ファイル] ダイアログ ボックスで、ファイル内で使用する区切り文字の種類を指定します。
- Select Fileをクリックして、完全に一致するファイルをアップロードしてください。ファイルの最初の行(列ヘッダー)が、新しい「完全一致ファイル」ダイアログボックスに表示されます。

- 各列ヘッダーについて、その列のデータを文字列または数値として正規化するかどうかを選択し、DLPルールで使用できる一意のデータの辞書を作成します。 DLPルールで使用できます。
- Save and Create Column Groupsをクリックしてください。
- 「列グループの作成」ダイアログボックスでは、複数の列を組み合わせて完全一致グループを作成できます。完全一致の場合、各列グループ内の列はAND演算されます。

あるいは、この手順を省略して、ファイルのアップロード後に列グループを追加することもできます。
- Saveをクリックしてください。
Pythonスクリプト
マルチパートアップロードを実行するには、仮想マシンのみが必要です(仮想アプライアンスは不要です)。
UIの制限を超える大規模なデータセットや、スケジュールされたデータ取り込みパイプラインの場合は、スクリプトを使用してデータセットのアップロードを自動化できます。
Local Hash Generation
ハッシュ化は機密データをirreversible fingerprintsに変換し、生の値を公開することなく安全な照合を可能にします。
Supported Approach
- 暗号学的ハッシュ関数(例:SHA-256)
- Optional salting
Key Requirements
- 決定論的:同じ入力 → 同じハッシュ
- Collision-resistant
- Non-reversible
Example (Conceptual)
| Normalized Value | Hash Output (SHA-256) |
|---|---|
| john.doe@email.com | 5f4dcc3b5aa765d61d8327deb882cf99 |
データがアップロードされると、ファイル内の各エントリはSHA-256ハッシュ化され、Netskopeクラウド上のテナントインスタンスに送信されます。
適切なアップロード方法を選択するには、以下の点が関係します。
- データセットのサイズ
- 自動化のニーズ
- 統合成熟度
Sample Workflow
- NetskopeテナントUIから、` dlp_profile `の書き込みアクセス権限を持つAPIトークンを生成してダウンロードできます。
- Tenant UI – Settings > Administration> Service Account > Roles
- 設定RBAC: `dlp_profile` 必須

- 生データのSHA256ハッシュを生成するEDMハッシュ生成スクリプトを開始します。
- すべてのバイナリファイルは単一のアーカイブファイルに圧縮されます。
- ハッシュされたファイルをNetskope Cloud にアップロードする EDM アップロード スクリプト
Sample Python Snippet (Illustrative)
`bash
# Upload with description
python3 edm_api_upload.py \
-s mycompany.goskope.com \ -p 443 \ -c ~/netskope_api_token.txt \
-v \ upload \ -d "Employee SSN database - Q4 2024 refresh" \ employees_2024_q4.tgz
A list of detailed steps and Scripts (downloadable) are captured in EDMハッシュ生成およびアップロードガイド
Best Practices
完了したらステージングファイルをクリーンアップします
各チャンクアップロード応答を検証する
REST API v2
マルチパートアップロードを実行するには、仮想マシンのみが必要です(仮想アプライアンスは不要です)。
Local Hash Generation
ハッシュ化は機密データをirreversible fingerprintsに変換し、生の値を公開することなく安全な照合を可能にします。
Supported Approach
- 暗号学的ハッシュ関数(例:SHA-256)
- Optional salting
Key Requirements
- 決定論的:同じ入力 → 同じハッシュ
- Collision-resistant
- Non-reversible
Example (Conceptual)
| Normalized Value | Hash Output (SHA-256) |
|---|---|
| john.doe@email.com | 5f4dcc3b5aa765d61d8327deb882cf99 |
データがアップロードされると、ファイル内の各エントリはSHA-256ハッシュ化され、Netskopeクラウド上のテナントインスタンスに送信されます。
適切なアップロード方法を選択するには、以下の点が関係します。
- データセットのサイズ
- 自動化のニーズ
- 統合成熟度
API Endpoints are
へ向かう Tenant UI – Tools – Rest API v2 Section
- APIドキュメントをクリック

- Swagger UI が新しいタブで開き、利用可能なすべてのエンドポイントとパラメータが表示されます。

サンプルワークフロー
多段階ワークフローの手順は以下のとおりです。
- ステージング:メタデータをアップロードし、マルチパートアップロードを開始します
- POST /dlp/edm/file/staging
- アップロード: ファイルチャンクをアップロードする PUT リクエストを使う
- PUT /dlp/edm/file/staging/{fileid}
- ファイルステータスを取得する
- GET /dlp/edm/file/staging/{fileid}
- 完了: マルチパートアップロードを完了する POST を使う
- POST /dlp/edm/file/staging/{fileid}?uploadid={uploadid}
- 適用:ステージングされたファイルをEDMシステムに適用します
- POST /dlp/edm/file/apply/{fileid}
- クリーンアップ:ステージングファイルの自動または手動削除
- DELETE /dlp/edm/file/staging/{fileid}
For a list of Detailed steps and Scripts, please refer to DLP-EDMアップロードサービス - APIユーザーガイド
Netskope仮想アプライアンス
構造化コンテンツのハッシュを作成するには:
- 行と列で構成されたCSV形式でファイルを作成してください。CSVファイルには5000万件以下のレコードを含め、列名を示すヘッダー行を含めることを推奨します。これらの名前は、DLPルールの「完全一致」検証用の「ファイル列」に表示されます。列内のデータが正規化されていることを確認してください。データの正規化には、データタイプに応じて2つの方法があります。
数値を含む列を正規化する:クレジットカード番号などのデータは、ハイフン、カンマ、引用符、スペースなどの特殊文字を含まない連続した数値であることを確認します。
文字列を含む列を正規化します。名や姓などのデータが文ケースになっていることを確認し、最初の文字を大文字、残りを小文字にします。
- 使う
nstransferアカウントで、CSVファイルをVirtual アプライアンスのpdd_dataディレクトリに転送してください:scp <CSV file> nstransfer@<virtual_appliance_host>:/home/nstransfer/pdd_data
pdd_dataディレクトリの場所は、nstransferユーザーアカウントとnsadminユーザーアカウントで異なります。nstransferアカウントを使用してファイルをアプライアンスにコピーすると、pdd_dataディレクトリの場所は/home/nstransfer/pdd_dataになります。nsadminアカウントを使用してアプライアンスにログインすると、pdd_dataディレクトリは/var/ns/docker/mounts/lclw/mountpoint/nslogs/user/pdd_dataに配置されます。 - データが正常に転送されたら、アプライアンスを使う
nsadminアカウントにログインします。 - Netskopeシェルプロンプトで以下のコマンドを実行してデータをハッシュ化し、 Netskopeクラウドにアップロードします。
request dlp-pdd upload column_name_present true csv_delim ~ norm_str 2,3 file /var/ns/docker/mounts/lclw/mountpoint/nslogs/user/pdd_data/upload/sensitivedata.csv
ヒント
column_name_present trueファイルにヘッダー行が存在することを指定します。csv_delim ~CSVファイルがチルダ区切りであることを指定します。norm_str 2,32列目と3列目を文字列として扱うことを指定します。file <CSV_file>ハッシュ化してアップロードする必要のあるファイルを指定します。コマンドは以下を返します。
PDD アップローダー pid 9501 を開始します。 >request dlp-pdd status コマンドでステータスを監視します。
- アップロード状況を確認してください。
request dlp-pdd status
コマンドは以下を返します。
Successfully uploaded the data from /var/ns/docker/mounts/lclw/mountpoint/nslogs/user/pdd_data/upload/sensitivedata.csv to Netskope cloud
- データが正常にアップロードされると、
sensitivedata.csvファイルとその対応する列名が、DLP ルールの「完全一致」タブに表示されます。
スクリプトへのアクセスは、 Netskopeサポートサイトから行ってください。
edm_hash_generator.py – このスクリプトは、CSVファイルをソルト付きSHA256ハッシュに変換します。
スクリプトの実行後、コマンドで指定された出力ディレクトリに複数のファイルが作成されます。すべてのファイルをアプライアンスにアップロードし、「dlp-pdd」の手順に従ってEDMファイルをクラウドにアップロードしてください。
以下はヘルプテキストです。
usage: usage: edm_hash_generator.py [options] <mode> <input_csv> <output_dir>
Mode (hash) generates secure hashes for each column of the input csv file.
Example - edm_hash_generator.py hash <input_csv> <output_dir>.
positional arguments:
mode Mode (hash) generates secure hashes for each column of
the input csv file. Example - edm_hash_generator.py
hash <input_csv> <output_dir>.
input_csv Input CSV file
output_dir Output directory
optional arguments:
-h, --help show this help message and exit
-l LOG_FILE, --log LOG_FILE
Log file
-d DELIMITER, --delimiter DELIMITER
Delimiter for the input file. Default is comma
-c COLUMN_NAMES, --column-names COLUMN_NAMES
Comma separated column names. Useful when the input
file does not have column names in the first line.
-p, --parse-column-names
First line of the input file contains column names. If
specified, this line is used to infer column names and
the -c/--column-names option is ignored.
--dict-cs DICT_CS Case sensitive dictionary column list. Ex: 1,2
--dict-cins DICT_CINS
Case insensitive dictionary column list. Ex: 3,4
--skip-hash Skip hash generation, Requires one of --dict-
cs/--dict-cins option.
--edk-lic-dir EDK_LIC_DIR
Directory where EDK license file (licensekey.dat) is
present [default . (current_dir)]
--edk-tool-dir EDK_TOOL_DIR
Directory where EDK tool (edktool.exe) is present
[default . (current_dir)]
--input-encoding INPUT_ENCODING
Set input csv file's character encoding like
iso-8859-1. Default is utf-8
--fips Enforce Openssl FIPS mode only
スクリプトが正常に実行されたら、以下のコマンドを使用してハッシュ化されたファイルをアプライアンスにアップロードできます。
nsappliance> request dlp-pdd hash-upload dir /var/ns/docker/mounts/lclw/mountpoint/nslogs/user/pdd_data/upload/<pathtohashdata>/ metadata /var/ns/docker/mounts/lclw/mountpoint/nslogs/user/pdd_data/upload/<pathtomedata/metadatafile.json>
Cloud Exchange導入
詳細については、 「完全一致データ一致モジュール(ベータ版)」を参照してください。
次のステップ
EDMステータスの確認とDLPルールの作成
アップロードされた完全一致ファイルは、 DLP – Exact Matchページの最上段に表示されます。
デフォルトのアップロードステータスはPendingと表示されます。以前に列グループを作成していない場合、アップロードステータスはIncompleteと表示されます。

最新のアップロード状況を確認するには、ページ上部のRefresh Statusボタンをクリックしてください。

テナントのUIを通じてアップロードされた完全一致ファイルを編集できます。完全一致ファイルが表示されている行の…クリックし、 Upload Fileを選択します。
Upload Fileオプションは、ファイルがテナントの UI を介してアップロードされた場合にのみ表示されます。以下のスクリーンショットは、テナントのUI経由でアップロードした場合とアプライアンス経由でアップロードした場合の、完全一致ファイルのオプションの比較を示しています。

完全一致ファイルをアップロードした後、それを新しいカスタムDLPルールに追加できます。
- 新しい DLP ルールの「完全一致」セクションで、 Enable Exact Matchチェックボックスを選択します。
- ドロップダウンリストから、先ほどアップロードしたファイルと完全に一致するファイルSelect 、次に含めたい列グループを選択してください。 完全一致の列が表示されます。
- 各識別子について、各列のドロップダウンリストから適切な値を選択してください。

- 完了したら、 Nextをクリックしてください。

