开发者社区 问答 正文

MaxCompute中的权限粒度最小能到什么级别?

MaxCompute通过基于标签的安全策略(LabelSecurity)实现用户对列级别敏感数据的访问。LabelSecurity是项目级别的一种强制访问控制策略。 可以参考文档:https://help.aliyun.com/document_detail/34604.html

展开
收起
亢海鹏 2021-07-09 14:28:42 3267 分享 版权
阿里云 AI 助理回答

MaxCompute通过**基于标签的安全策略(LabelSecurity)**来精细控制用户对列级别敏感数据的访问权限,确保数据安全与合规性。这一机制是项目级别的强制访问控制策略,默认情况下在新创建的MaxCompute项目中是关闭状态,需要由项目所有者(Project Owner)手动开启。

LabelSecurity核心功能

  1. 敏感等级定义:支持为表或表的列设置敏感等级标签,等级范围从0到9,数值越大表示数据越敏感。

  2. 访问许可管理:允许项目所有者为用户或角色分配访问许可等级,限制其只能访问敏感等级小于等于自身许可等级的数据。

  3. 细粒度控制:最小控制粒度达到列级别,即可以针对表中的每一列单独设置敏感等级。

  4. 视图独立标签:视图可以拥有独立于其源表的敏感等级标签,提供灵活的数据保护策略。

  5. 显式授权与撤销:支持为低访问许可等级的用户或角色显式授予访问高敏感等级数据的权限,并能撤销此类授权。

  6. 默认安全策略

    • No-ReadUp:禁止读取高于用户许可等级的数据,除非有显式授权。
    • Trusted-User:允许写入不高于用户许可等级的数据,新建对象默认为0级(最低敏感度)。
  7. 操作入口多样化:项目所有者或具有Admin角色的用户可以通过MaxCompute客户端、SQL分析连接、MaxCompute Studio或DataWorks等工具进行敏感等级和访问许可的设置。

实施步骤简述

  1. 开启LabelSecurity:项目所有者执行Set LabelSecurity=true;命令以启用该策略。

  2. 设置数据敏感等级:使用如SET LABEL <number> ON TABLE <table_name> (column_list);的命令为表或列指定敏感等级。

  3. 配置用户访问许可:通过SET Label <number> TO USER|ROLE <name>;命令设定用户或角色的访问许可等级。

  4. 显式授权与管理:根据业务需求,执行显式授权操作以扩展特定用户的访问权限,或撤销不再需要的特殊授权。

注意事项

  • 权限继承与清理:删除对象会自动撤销相关授权;用户移除后,其权限记录会被保留,重新添加用户时权限恢复,需特别操作彻底清除。

  • 高级安全配置:若需更严格的控制,如禁止写入低于自身许可等级的数据,可调整项目安全配置。

  • 项目保护:利用set ProjectProtection=true;防止数据跨项目流动,增强数据隔离性。

综上所述,MaxCompute的LabelSecurity提供了强大的数据安全控制能力,确保敏感信息得到妥善管理和保护。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答