Introduction to sensitive data classification¶
機密データがどこにあり、適切に保護されているかどうかを知ることが重要です。これは単なるベストプラクティスではありません。規制に準拠するために、多くの業界で不可欠な要件です。Snowflakeは、機密データを自動的に検出し、タグやマスキングポリシーなどのガバナンス制御を簡単に適用できるようにするソリューションを提供します。
Snowflakeは機密データを、名前や国識別子などの :doc:` ネイティブカテゴリ </user-guide/classify-native>` に分類しますが、独自の カスタムカテゴリ を作成して組織やドメインに固有の機密データを検出することもできます。
始めましょう¶
Snowflakeは、機密データの分類を構成し、機密データのガバナンス状況を表示するためのウェブインターフェイスを提供します。
開始するには、次のいずれかを実行します。
To set up sensitive data classification, see トラストセンターを使用して、機密データの分類を設定する.
機密データの分類結果を表示するには、 結果を表示するには、トラストセンターを使用します。 をご参照ください。
Core concepts of sensitive data classification¶
分類カテゴリについて¶
機密データの分類では、機密データを含むと識別されたすべての列に、セマンティックカテゴリとプライバシーカテゴリの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 でコストを表示する¶
To explore the cost of sensitive data classification:
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に注目し、自動分類の日次コストを取得できます。クレジットではなく、通貨でコストを決定するには、このビューを使用します。
Supported objects¶
Snowflake supports classifying data stored in all types of Snowflake tables and views.
Note that Snowflake does not support classification on shared tables and shared schemas from the consumer's side. If a table is created by the provider and placed into the provider's outbound share, the classification only works if it is called from the provider's side.
Supported data types¶
サポートされているすべての データ型 のテーブルとビューの列を分類できます。ただし、次のデータ型は 除きます。
ARRAY
BINARY
DECFLOAT
GEOGRAPHY
OBJECT
VARIANT (列のデータ型が :doc:` キャスト </sql-reference/functions/cast>` から NUMBER または STRING データ型である場合を除く)
VECTOR
注釈
列に格納されている長いテキストのような非構造化データはサポートされていません。
JSON 、 XML またはその他の半構造化データはサポートされていません。
制限と考慮事項¶
リーダーアカウントに分類プロファイルをセットすることはできません。
分類プロファイルを1,000件以上のデータベースにセットすることはできません。
分類プロファイルを10,000件以上のスキーマに 直接 セットすることはできません。
スキーマでは最大1億のテーブルを分類できます。
テーブルに次のような特性がある場合、自動的には分類できません。
10,000列を超える。
255文字を超えるの名前の列。
$文字を含む名前の列。