sp_pdw_log_user_data_mask (Azure Synapse Analytics)
适用于: Azure Synapse Analytics 分析平台系统 (PDW)
用于 sp_pdw_log_user_data_masking
在 Azure Synapse Analytics 活动日志中启用用户数据掩码。 用户数据掩码会影响设备上的所有数据库的语句。
重要
受影响的 sp_pdw_log_user_data_masking
Azure Synapse Analytics 活动日志是某些 Azure Synapse Analytics 活动日志。 sp_pdw_log_user_data_masking
不会影响数据库事务日志或 SQL Server 错误日志。
语法
Azure Synapse Analytics 和分析平台系统的语法(PDW)。
sp_pdw_log_user_data_masking [ [ @masking_mode = ] value ]
[ ; ]
注意
Azure Synapse Analytics 中的无服务器 SQL 池不支持此语法。
背景
在默认配置中,Azure Synapse Analytics 活动日志包含完整的 Transact-SQL 语句,在某些情况下可以包括操作中包含的用户数据,例如 INSERT
, UPDATE
和 SELECT
语句。 如果设备上出现问题,则允许分析导致问题的条件,而无需重现问题。 为了防止用户数据写入 Azure Synapse Analytics 活动日志,客户可以选择使用此存储过程打开用户数据掩码。 这些语句仍会写入 Azure Synapse Analytics 活动日志,但可能包含用户数据的语句中的所有文本将被屏蔽;替换为一些预定义的常量值。
在设备上启用透明数据加密时,会自动打开 Azure Synapse Analytics 活动日志中的用户数据掩码。
参数
[ @masking_mode = ] masking_mode
确定是否启用了透明数据加密日志用户数据掩码。 masking_mode为 int,可以是以下值之一:
值 | 说明 |
---|---|
0 |
禁用后,用户数据将显示在 Azure Synapse Analytics 活动日志中。 |
1 |
已启用,用户数据语句会显示在 Azure Synapse Analytics 活动日志中,但用户数据被屏蔽。 |
2 |
包含用户数据的语句不会写入 Azure Synapse Analytics 活动日志。 |
在没有参数的情况下执行 sp_pdw_log_user_data_masking
将设备上的透明数据加密 (TDE) 日志用户数据掩码的当前状态作为标量结果集返回。
注解
使用 Azure Synapse Analytics 活动日志中的用户数据掩码,可以使用预定义常量值 SELECT
替换文本以及数据操作语言(DML)语句,因为它们可以包含用户数据。 将 masking_mode 设置为 1 不会屏蔽元数据,例如列名或表名。 将 masking_mode 设置为 2 会删除包含元数据的语句,例如列名或表名。
Azure Synapse Analytics 活动日志中的用户数据掩码通过以下方式实现:
默认情况下,Azure Synapse Analytics 活动日志中的 TDE 和用户数据掩码处于关闭状态。 如果未在设备上启用数据库加密,则不会自动屏蔽这些语句。
在设备上启用 TDE 会自动在 Azure Synapse Analytics 活动日志中启用用户数据掩码。
禁用 TDE 不会影响 Azure Synapse Analytics 活动日志中的用户数据掩码。
可以使用该过程在 Azure Synapse Analytics 活动日志
sp_pdw_log_user_data_masking
中显式启用用户数据掩码。
权限
需要 sysadmin 固定数据库角色CONTROL SERVER
或权限的成员身份。
示例
以下示例在设备上启用 TDE 日志用户数据掩码。
EXEC sp_pdw_log_user_data_masking 1;