You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用CREATE TABLE LIKE时数据掩码丢失是否属于安全漏洞?

Data Masking策略在CREATE TABLE LIKE与SWAP操作中的行为说明

这个是Snowflake的预期设计行为,不属于安全漏洞,你没有遗漏错误配置。

行为原理说明

  • CREATE TABLE ... LIKE ...语句默认仅复制源表的列结构、数据类型、非空约束、默认值等基础表属性,COPY GRANTS参数仅负责复制权限配置,不会复制任何数据安全策略,列掩码策略、行级安全策略、标签策略等安全配置都不在默认复制范围内。
  • ALTER TABLE ... SWAP WITH是原子交换两个表的全部元数据,包括表存储的数据、权限、关联策略等所有属性,所以没有配置掩码策略的B和A交换后,A自然会丢失原有掩码策略。

官方已支持的解决方案

你提出的第一种方案已经有官方实现,创建表时新增COPY ALL POLICIES参数即可复制源表关联的所有安全策略:

create transient table B 
like A 
copy grants
copy all policies;

使用该参数的前提是执行建表操作的角色拥有源表所有关联策略的APPLY权限,否则语句会执行失败。
该方案完全避免了手动重新应用策略的繁琐,也不会出现策略漏配的风险,适配你全量刷新表的业务场景。

补充说明

如果你的业务场景更倾向于保留目标表A的原有策略,也可以选择在SWAP操作执行完成后,重新将原有掩码策略应用到交换后的A表,不过该方案会存在极短的策略空窗期,适合对敏感数据暴露风险容忍度极低的场景。

内容的提问来源于stack exchange,提问作者Kerry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 06:18:04