機密データの分類の概要¶
機密データがどこにあり、適切に保護されているかどうかを知ることが重要です。これは単なるベストプラクティスではありません。規制に準拠するために、多くの業界で不可欠な要件です。Snowflakeは、機密データを自動的に検出し、タグやマスキングポリシーなどのガバナンス制御を簡単に適用できるようにするソリューションを提供します。
Snowflakeは機密データを、名前や国識別子などの :doc:` ネイティブカテゴリ </user-guide/classify-native>` に分類しますが、独自の カスタムカテゴリ を作成して組織やドメインに固有の機密データを検出することもできます。
始めましょう¶
Snowflakeは、機密データの分類を構成し、機密データのガバナンス状況を表示するためのウェブインターフェイスを提供します。
開始するには、次のいずれかを実行します。
機密データの分類を設定するには、 トラストセンターを使用して、機密データの分類を設定する をご参照ください。
機密データの分類結果を表示するには、 結果を表示するには、トラストセンターを使用します。 をご参照ください。
機密データの分類の中心概念¶
分類カテゴリについて¶
機密データの分類では、機密データを含むと識別されたすべての列に、セマンティックカテゴリとプライバシーカテゴリの2つのカテゴリが割り当てられます。
セマンティックカテゴリ は、個人属性の タイプ を識別します。名前やアドレスなど一般的な属性の場合、Snowflakeは ネイティブカテゴリ を提供します。機密データがネイティブカテゴリに適合しない場合は、 :doc:` カスタムカテゴリ </user-guide/classify-custom>` を作成できます。
プライバシーカテゴリ は、個人属性の 機密性 を識別します。それは IDENTIFIER 、 QUASI_IDENTIFIER または SENSITIVE (給与などの一般的な非識別子カテゴリ)のいずれかです。
分類プロファイルについて¶
トラストセンターウェブインターフェイスを使用して分類設定を指定すると、その設定は 分類プロファイル として保存されます。この分類プロファイルは、後で編集して、データの分類方法を制御する設定を変更できます。ウェブインターフェイスでは、分類プロファイルは、プロファイルの設定で分類されるデータベースも制御します。
また :doc:` SQL コマンド </user-guide/classify-auto>` を使用して分類プロファイルの作成および変更もできます。SQL を使用している場合、分類プロファイルをデータベースに関連付けて分類プロセスを開始することは、別のステップです。
機密データの保護¶
Snowflakeは、機密データを追跡して保護するために必要なガバナンスツールを提供します。
分類プロセスを構成することで、Snowflakeは自動的にシステムおよびユーザー定義の タグ を機密として分類したデータに割り当てます。その後、タグを追跡することで、データエステート内のデータを追跡できます。
:doc:` マスキングポリシー </user-guide/security-column-ddm-intro>` を機密データを含む列に割り当てて、クエリ時にデータを選択的にマスクできます。
タグ付けとマスキングポリシーを組み合わせて、機密として分類されたデータを自動的にマスクすることができます。:doc:` タグベースのマスキング </user-guide/tag-based-masking-policies>` を使用してマスキングポリシーをユーザー定義タグに関連付ける場合、Snowflakeが分類プロセスの一部としてタグを適用すると、データが自動的にマスキングされます。新しいデータがデータベースに追加されると、タグベースのマスキングポリシーが機密データを含む列に自動的に割り当てられます。
どのデータベースが分類されているかを特定する¶
:ref:` 分類プロファイル <label-classify_classification_profiles>` に関連付けられているデータベースを一覧表示することで、どのデータを機密データの分類が監視するのかを判断できます。データベースが分類プロファイルに関連付けられている場合、そのデータベース内のすべてのテーブルとビューは、プロファイルで定義された基準に従って自動的に分類されます。
分類されているデータベースを決定するには
|sf-web-interface-link|必要な権限を持つユーザーとして :ref:` にサインイン <label-classify_trust_center_access_control>` します。
ナビゲーションメニューで Governance & security » Trust Center を選択します。
Data Security タブを選択します。
Dashboard タブを選択します。
Databases monitored by classification タイルを探します。分類されているデータベースをリストするには、 Monitored または Partially monitored を選択します。
注釈
誰かがデータベースレベルでプロファイルを設定するのではなく、 SQL を使用してデータベース内のスキーマに分類プロファイルを直接設定した場合、データベースは部分的に監視されます。
分類プロファイルに関連付けられたデータベースを一覧表示するには、 SYSTEM$SHOW_SENSITIVE_DATA_MONITORED_ENTITIES 関数を使用します。
SELECT SYSTEM$SHOW_SENSITIVE_DATA_MONITORED_ENTITIES('DATABASE');
コストの考慮事項¶
機密データの自動分類では、 :ref:` サーバーレスのコンピューティングリソース <label-serverless_credit_usage>` を使用してデータベース内のテーブルを分類するため、クレジットが消費されます。この消費の価格については、 Snowflakeサービス利用テーブル のテーブル5を参照してください。
注釈
ビューを分類すると、テーブルを分類するよりもコストが高くなる可能性があります。追加コストは、ビューを作成したクエリの複雑さによって異なります。マテリアライズドビューには、これらの追加コストは発生しません。デフォルトでは、ビューは分類から除外されます。
Snowsight でコストを表示する¶
機密データ分類のコストを調査するには
Snowsight にサインインします。
コストと使用状況のデータへのアクセス権 を持つロールに切り替えます。
ナビゲーションメニューで Admin » Cost management を選択します。
使用状況データを表示するために使用するウェアハウスを選択します。Snowflakeは、この目的のために XS ウェアハウスを使用することをお勧めします。
Consumption を選択します。
Usage Type ドロップダウンから、 Compute を選択します。
Service Type ドロップダウンから、 Sensitive Data Classification を選択します。
SQL を使用してコストをクエリする¶
ACCOUNT_USAGE および ORGANIZATION_USAGE スキーマのビューをクエリすることで、機密データの自動分類に費やされた量を確認できます。クレジット消費を監視するには、以下のビューをクエリします。
- METERING_HISTORY ビュー(ACCOUNT_USAGE)
SERVICE_TYPE列のSENSITIVE_DATA_CLASSIFICATIONに注目し、自動分類の時間当たりのコストを取得できます。例:SELECT service_type, start_time, end_time, entity_id, name, credits_used_compute, credits_used_cloud_services, credits_used, budget_id FROM SNOWFLAKE.ACCOUNT_USAGE.METERING_HISTORY WHERE service_type = 'SENSITIVE_DATA_CLASSIFICATION';
- METERING_DAILY_HISTORY ビュー(ACCOUNT_USAGE と ORGANIZATION_USAGE)
SERVICE_TYPE列のSENSITIVE_DATA_CLASSIFICATIONに注目し、自動分類の日次コストを取得できます。例:SELECT service_type, usage_date, credits_used_compute, credits_used_cloud_services, credits_used FROM SNOWFLAKE.ACCOUNT_USAGE.METERING_DAILY_HISTORY WHERE service_type = 'SENSITIVE_DATA_CLASSIFICATION';
- USAGE_IN_CURRENCY_DAILY (ORGANIZATION_USAGE)
SERVICE_TYPE列のSENSITIVE_DATA_CLASSIFICATIONに注目し、自動分類の日次コストを取得できます。クレジットではなく、通貨でコストを決定するには、このビューを使用します。
サポートされているオブジェクト¶
Snowflakeは、Snowflakeテーブルおよびビューのすべての型に格納されているデータの分類をサポートしています。
Snowflakeは、コンシューマー側からの 共有テーブル および共有スキーマの分類をサポートしていないことに注意してください。テーブルがプロバイダーによって作成され、プロバイダーの送信共有に置かれた場合、分類はプロバイダー側から呼び出された場合にのみ機能します。
サポートされているデータ型¶
サポートされているすべての データ型 のテーブルとビューの列を分類できます。ただし、次のデータ型は 除きます。
ARRAY
BINARY
DECFLOAT
GEOGRAPHY
OBJECT
VARIANT (列のデータ型が :doc:` キャスト </sql-reference/functions/cast>` から NUMBER または STRING データ型である場合を除く)
VECTOR
注釈
列に格納されている長いテキストのような非構造化データはサポートされていません。
JSON 、 XML またはその他の半構造化データはサポートされていません。
制限と考慮事項¶
リーダーアカウントに分類プロファイルをセットすることはできません。
分類プロファイルを1,000件以上のデータベースにセットすることはできません。
分類プロファイルを10,000件以上のスキーマに 直接 セットすることはできません。
スキーマでは最大1億のテーブルを分類できます。
テーブルに次のような特性がある場合、自動的には分類できません。
10,000列を超える。
255文字を超えるの名前の列。
$文字を含む名前の列。