CREATE CLASSIFICATION_PROFILE¶
完全限定名称 :SNOWFLAKE.DATA_PRIVACY.CLASSIFICATION_PROFILE
在当前或指定架构中创建 CLASSIFICATION_PROFILE 类的新实例或替换现有 CLASSIFICATION_PROFILE 类的实例。
语法¶
CREATE [ OR REPLACE ] SNOWFLAKE.DATA_PRIVACY.CLASSIFICATION_PROFILE
[ IF NOT EXISTS ] <classification_profile_name> ( <config_object> )
参数¶
classification_profile_name
指定 CLASSIFICATION_PROFILE 类实例的标识符(名称);在创建对象的架构中必须是唯一的。
此外,标识符必须以字母字符开头,且不能包含空格或特殊字符,除非整个标识符字符串放在双引号内(例如,
"My object"
)。放在双引号内的标识符也区分大小写。有关更多信息,请参阅 标识符要求。
构造函数实参¶
config_object
OBJECT,包含用于配置自动敏感数据分类的键值对。
键
类型
默认值
描述
minimum_object_age_for_
classification_days
INTEGER
必需:指定要进行分类的对象必须存在的最短天数。
该值必须大于或等于零。
maximum_classification_
validity_days
INTEGER
可选:指定自上次分类事件发生到可以再次使用自动分类对表进行分类的天数。
指定此值以确保对表重新分类。
该值必须大于或等于
1
。auto_tag
BOOLEAN
FALSE
可选:若为
TRUE
,分类过程完成后,在指定对象的列上设置推荐的分类系统标签。若为
FALSE
,自动标记不会发生。tag_map
OBJECT
可选:将一个或多个用户定义的标签映射到 SEMANTIC_CATEGORY 系统标签。
请参阅 标签映射。
custom_classifiers
OBJECT
可选:指定自动分类数据时使用的 自定义分类器。
对象中的每个键都指定了 CUSTOM_CLASSIFIER 类 实例的名称。
每个键的值指定了自定义分类器实例的 custom_classifier!LIST 方法。
标签映射¶
将一个或多个用户定义的标签映射到 SEMANTIC_CATEGORY 系统标签的 OBJECT。
'column_tag_map': [ ... ]
具有以下键值对的对象数组:
'tag_name': 'string'
标签的完全限定名称。
有关更多信息,请参阅 标识符要求。
'tag_value':'string'
标签的字符串值。
可选:若未指定,标签值将映射为 SYSTEM$CLASSIFY 输出中的建议值。
'semantic_categories': [ 'category' [ , 'category' ... ] ]
SEMANTIC_CATEGORY 系统标签的 类别 逗号分隔列表。
这些值使您能够指定要在列上设置的标签和字符串值。
可选:若未指定,则标签映射为 SYSTEM$CLASSIFY 输出中的推荐标签。
访问控制要求¶
权限/角色 |
对象 |
---|---|
CLASSIFICATION_ADMIN 数据库角色 |
不适用 |
CREATE SNOWFLAKE.DATA_PRIVACY.CLASSIFICATION_PROFILE 权限 |
架构 |
要对架构中的任何对象执行操作,需要对父数据库和架构的 USAGE 权限。
有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色。
方法¶
您可以对您创建的 CLASSIFICATION_PROFILE 类实例调用以下方法:
使用说明¶
要通过其非限定名称引用该类,请在 搜索路径 中包含该类的数据库和架构。
如果同一个标签和语义类别映射到两个不同的值,那么
column_tag_map
中对象顺序决定了要在列上设置的标签和字符串值。按优先级从高到低排列column_tag_map
数组。
示例¶
创建一个实例并指定基本标准以自动对架构中的表进行分类:
CREATE OR REPLACE SNOWFLAKE.DATA_PRIVACY.CLASSIFICATION_PROFILE
my_classification_profile(
{
'minimum_object_age_for_classification_days': 1,
'maximum_classification_validity_days': 30,
'auto_tag': true
});
创建一个实例并指定将标签映射到单个标签:
CREATE OR REPLACE SNOWFLAKE.DATA_PRIVACY.CLASSIFICATION_PROFILE my_classification_profile(
{
'minimum_object_age_for_classification_days':1,
'auto_tag':true,
'tag_map':{
'column_tag_map':[
{
'tag_name':'tag_db.sch.pii'
}
]
}
}
);
创建一个实例并指定将标签映射到不同的标签值:
CREATE OR REPLACE SNOWFLAKE.DATA_PRIVACY.CLASSIFICATION_PROFILE
my_classification_profile(
{
'minimum_object_age_for_classification_days':1,
'auto_tag':true,
'tag_map': {
'column_tag_map':[
{
'tag_name':'test_ac_db.test_ac_schema.pii',
'tag_value':'important',
'semantic_categories':['NAME']
},
{
'tag_name':'test_ac_db.test_ac_schema.pii',
'tag_value':'pii',
'semantic_categories':['EMAIL','NATIONAL_IDENTIFIER']
}
]
}
}
);
创建一个实例并为自动分类过程指定自定义分类器:
CREATE OR REPLACE SNOWFLAKE.DATA_PRIVACY.CLASSIFICATION_PROFILE my_classification_profile(
{
'minimum_object_age_for_classification_days':1,
'auto_tag':true,
'custom_classifiers': {
'medical_codes': medical_codes!list(),
'finance_codes': finance_codes!list()
}
}
);