maxcompute ospacmd除了开启数据保护,有没有其他权限控制方法,限制用户导出数据?专有云
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在MaxCompute中,除了通过set projectProtection=true;
开启数据保护机制来限制用户导出数据外,还有其他权限控制方法可以实现对数据导出的限制。以下是几种主要的权限控制方法及其详细说明:
MaxCompute提供了专门的Download
权限控制功能,用于限制用户下载表数据。通过该功能,您可以精确控制哪些用户或角色具备下载数据的权限。
开启或关闭Download权限控制
使用以下命令开启或关闭Download权限控制功能:
setproject odps.security.enabledownloadprivilege=true|false;
true
:开启Download权限控制。false
:关闭Download权限控制。权限要求
在不同场景下,用户需要满足以下权限才能下载数据:
download
和describe
权限。select
权限,并且需要配置允许下载的Exception Policy。download
和describe
权限。select
权限即可下载。实践建议
如果需要严格限制数据导出,建议开启Download
权限控制,并结合ProjectProtection
机制进行双重保障。
Label权限控制是一种基于敏感等级标签的权限管理方式,适用于对敏感数据的访问进行精细化控制。
设置敏感等级标签
为表或列数据设置敏感等级标签,例如Confidential
、Sensitive
等。只有具备相应访问许可等级的用户或角色才能访问这些数据。
显式授权高敏感数据访问
如果低访问许可等级的用户需要访问高敏感等级的数据,可以通过Label显式授权的方式临时提升其权限。
注意事项
No-WriteDown
策略(即不允许用户写入敏感等级不高于其访问许可等级的数据)。如果需要启用类似策略,可以通过以下命令关闭对象创建者的授权权限:Set ObjectCreatorHasGrantPermission=false;
Policy权限控制支持白名单和黑名单授权机制,能够弥补ACL权限控制的不足。例如,当用户被赋予了开发角色但需要禁止其删除表时,可以通过Policy权限控制实现。
使用场景
配置方法
Policy权限控制功能默认开启,可通过以下命令关闭或重新开启:
set CheckPermissionUsingPolicy=true|false;
注意事项
Package机制允许将资源打包并授权给其他项目使用。虽然Package机制优先于数据保护机制,但可以通过合理配置限制数据导出。
限制措施
show packages;
delete package <package_name>;
实践建议
在开启数据保护机制后,建议检查并清理不必要的Package,确保敏感数据不会通过Package机制流出。
通过设置IP白名单,可以限制仅允许特定IP地址范围内的设备访问项目空间,从而间接限制数据导出。
配置方法
设置公网和云产品互联网络下的IP白名单:
setproject <property>=<value>;
注意事项
IP白名单适用于对访问来源有严格限制的场景,建议结合其他权限控制方法共同使用。
在开启数据保护机制后,可以通过配置Exception Policy或TrustedProject实现对特定数据流出的精细化控制。
Exception Policy
set ProjectProtection=true with exception <policyfile>;
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Principal": "<Principal>",
"Action": ["odps:<Action1>[, <Action2>, ...]"],
"Resource": "acs:odps:*:<Resource>",
"Condition": {
"StringEquals": {
"odps:TaskType": ["<Tasktype>"]
}
}
}
]
}
TrustedProject
add trustedproject <project_name>;
remove trustedproject <project_name>;
实践建议
list trustedprojects;
remove trustedproject <project_name>;
通过上述多种权限控制方法,您可以灵活地限制用户导出数据的行为。具体选择哪种方法取决于实际业务需求和安全要求。例如,对于敏感数据,建议结合数据保护机制、Download权限控制和Label权限控制进行多层防护;对于跨项目访问场景,则可以通过Policy权限控制和Package机制实现精细化管理。
MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。