機密データの分類からのデータの除外¶
機密データの分類を使用することで、Snowflakeはユーザーの介入なしに定期的にデータを機密として分類します。設定とシステムタグを使用して、この分類プロセスから特定のデータを除外することができます。
たとえば、データベース my_db に3つのテーブル t1、 t2、 t3 があるとします。デフォルトでは、 my_db の分類時に3つのテーブルはすべて自動的に分類されます。分類中に t2 をスキップし、テーブル t1 および t3 のみを分類するようSnowflakeを構成できます。
ワークフロー¶
機密データの分類からデータを除外するには、2段階のプロセスがあります。
機密データの分類から除外するすべてのオブジェクトに .SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION タグ を適用します。
タグベースの機密データを除外するには 除外設定を有効にします 。
データオブジェクトにタグを設定する¶
オブジェクトタグ は、別のオブジェクトに設定できるオブジェクトです。Snowflakeは、システム定義のタグ SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION を提供します。これは、機密データの分類から除外するオブジェクトに設定できます。このタグの値が TRUE の場合の場合、Snowflakeは分類中にそのオブジェクトをスキップします。
スキーマ、テーブル、または列に SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION タグを設定することで、どのデータを機密データの分類から除外するかを制御できます。
- スキーマを除外する
データベース内のスキーマに SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION タグを設定することで、スキーマを分類処理から除外できます。以下に例を示します。
ALTER SCHEMA my_schema SET TAG SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION = 'TRUE';
- テーブルを除外する
データベースまたはスキーマ内のテーブルに SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION タグを設定することで、テーブルを分類処理から除外できます。例:
ALTER TABLE my_table SET TAG SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION = 'TRUE';
- 列を除外する
列に SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION タグを設定することで、Snowflakeはテーブルの分類時にその列をスキップします。列を除外すると、機密データが含まれていても、分類結果にはその列に対して空の値が含まれます。
たとえば、テーブル内の列
employee_idを除くすべての列を自動的に分類するとします。ALTER TABLE ... ALTER COLUMN コマンドを実行すると、列にシステム定義タグを設定できます。ALTER TABLE my_table ALTER COLUMN employee_id SET TAG SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION = 'TRUE';
Snowflakeがデータベース内のデータを自動的に分類する際に、JSON の
employee_idフィールドの結果は空になります。
SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION タグを設定するためのアクセス制御要件については、アクセス制御の要件 をご参照ください。
除外設定を有効にする¶
オブジェクトに SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION タグを設定しても、タグベースの機密データ除外の設定を有効にするまで効果はありません。
この設定を有効にするには :ref:` トラストセンターのユーザーインターフェース <label-auto_classify_exclude_setting_trust_center>` または :ref:` SQL コマンド <label-auto_classify_exclude_setting_sql>` を使用します。
トラストセンターを使用して、タグベースの機密データ除外を有効にする¶
|sf-web-interface-link|必要な権限を持つユーザーとして :ref:` にサインイン <label-classify_trust_center_access_control>` します。
ナビゲーションメニューで Governance & security » Trust Center を選択します。
Data Security タブを選択します。
Settings タブを選択します。
次のいずれかを実行します。
Define classification criteria ページに達するまで、分類設定を行います。
Exclusion criteria セクションで、 Exclude SKIP_SENSITIVE_DATA_CLASSIFICATION tagged objects を選択します。
SQL を使用してタグベースの機密データの除外を有効にする¶
分類プロファイルには、Snowflakeがデータベース内のデータを自動的に分類する方法を制御する設定が含まれています。これらの設定は、 OBJECT でキー値のペアを使用して指定されます。
機密データ分類からデータを除外する場合は、分類プロファイルの enable_tag_based_sensitive_data_exclusion キーを定義する必要があります。
次に示すのは、データベースに設定すると、機密データ分類から適切にタグ付けされたオブジェクトを除外する分類プロファイルの例です。
CREATE OR REPLACE SNOWFLAKE.DATA_PRIVACY.CLASSIFICATION_PROFILE
my_classification_profile(
{
'minimum_object_age_for_classification_days': 0,
'maximum_classification_validity_days': 30,
'auto_tag': true,
'enable_tag_based_sensitive_data_exclusion': true
});
また、 SET_ENABLE_TAG_BASED_SENSITIVE_DATA_EXCLUSION メソッドを実行して既存の分類プロファイルの設定を有効にすることもできます。
アクセス制御の要件¶
デフォルトでは、分類設定を有効または無効にする能力を持つユーザーは、 :emph:` 独自の ` スキーマとテーブルでのみ SNOWFLAKE.CORE.SKIP_SENSITIVE_DATA_CLASSIFICATION システムタグを設定できます。
ユーザーが所有するオブジェクトだけでなく、すべてのオブジェクトにシステムタグを設定できるようにするには、次のコマンドを実行します。
GRANT APPLY TAG ON ACCOUNT TO ROLE <classify_user>;