如何解决Azure 自动数据分类
在 Azure 中,他们提供了数据分类的自动化建议(对于托管在 Azure 中托管的 SQL Server 中的数据)以及通过浏览 UI 和单击来自动批准这些建议的能力。是否也可以自动化?我知道我可以浏览 UI 并构建标签并执行大量单调乏味的点击并获得这些结果,但这不是很有效。
有什么见解或想法吗?
解决方法
我认为我们可以使用 T-SQL 来管理分类。
首先我们需要使用sql查询来生成ADD SENSITIVITY CLASSIFICATION
脚本。
根据其语法,使用sql查询拼接出想要的脚本
ADD SENSITIVITY CLASSIFICATION TO
<object_name> [,...n ]
WITH ( <sensitivity_option> [,...n ] )
<object_name> ::=
{
[schema_name.]table_name.column_name
}
<sensitivity_option> ::=
{
LABEL = string |
LABEL_ID = guidOrString |
INFORMATION_TYPE = string |
INFORMATION_TYPE_ID = guidOrString |
RANK = NONE | LOW | MEDIUM | HIGH | CRITICAL
}
例如下面是我之前创建的外键的TSQL脚本:
select
concat(concat('alter table ',c.CONSTRAINT_SCHEMA),concat('.',fk.TABLE_NAME)),concat(' add constraint ',c.CONSTRAINT_NAME),--cu.COLUMN_NAME
concat(' foreign key( ',cu.COLUMN_NAME),concat(concat(') references ',pk.TABLE_NAME)),concat(concat('(',pt.COLUMN_NAME),');')
from
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS c
inner join INFORMATION_SCHEMA.TABLE_CONSTRAINTS fk
on c.CONSTRAINT_NAME = FK.CONSTRAINT_NAME
inner join INFORMATION_SCHEMA.TABLE_CONSTRAINTS pk
on c.UNIQUE_CONSTRAINT_NAME = PK.CONSTRAINT_NAME
inner join INFORMATION_SCHEMA.KEY_COLUMN_USAGE cu
on c.CONSTRAINT_NAME = CU.CONSTRAINT_NAME
inner join (
select
i1.TABLE_NAME,i2.COLUMN_NAME
from
INFORMATION_SCHEMA.TABLE_CONSTRAINTS i1
inner join INFORMATION_SCHEMA.KEY_COLUMN_USAGE i2
on i1.CONSTRAINT_NAME = i2.CONSTRAINT_NAME
where
i1.CONSTRAINT_TYPE = 'PRIMARY KEY'
) PT
on pt.TABLE_NAME = pk.TABLE_NAME
我认为拼接 ADD SENSITIVITY CLASSIFICATION
T-SQL 脚本比较困难。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。