MaxCompute项目子账号做超级管理员

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: MaxCompute的admin role可以进行比较基础的权限管理,本文主要介绍可以替代project owner进行project管理的超级管理员角色——super_administrator role,以及作为超级管理员日常管理工作中的一些建议。

场景

主账号不是大数据团队管理,使用MaxCompute员工都只持有子账号,而project的owner只能为主账号,但是很多MaxCompute的权限管理还需要owner才可以操作(如项目级别的flag设置,package跨项目资源共享配置等),因此非常需要一个子账号拥有超级管理员权限。

之前有写过一篇文章《MaxCompute 项目子账号做权限管理》,是通过MaxCompute的admin role来解决问题,本文主要介绍super_administrator role,以及作为超级管理员日常管理工作中的一些建议。

关于super_administrator role

Super_Administrator role:MaxCompute新增内置的管理角色,拥有操作项目内所有类型资源的权限和管理类权限,具体权限请参考文档管理角色
该角色可由project owner指派给子账号,子账号获得该角色后,即可代替owner对该project在进行数据开发过程中所需的各种管理操作,包括常用的项目级别的flag设置以及所有权限管理操作。

指派子账号为超级管理员

前提建议:

  • 可以将有权限创建project的子账号指派为super_administrator role,这样该账号既可以很好的管理DataWorks项目的同时管理对应的Max Compute project。

如何授权子账号可创建project可参考此文档

  • 建一个一个project只能指派一个子账号为super_administrator role,其他需要有基本的权限管理可以指派admin role
  • 需要注意明确该子账号持有人的职责,建议一个子账号对应一个开发者,避免账号共用,以便能更好的保障数据安全。

确认好具体哪个子账号可以用户超级管理员(同时该子账号可以创建项目空间),子账号创建好project,此时projec的owner依然是主账号,主账号可以通过以下方式将super_administrator role 授权给该子账号。

  • 通过MaxCompute客户端授权
    假设主账号用户bob@aliyun.com是项目空间project_a的Owner,Allen是bob@aliyun.com中的RAM子账号。
    打开项目空间project_a。

    use project_a;
    为项目空间project_a添加RAM子账号Allen。
    add user ram$bob@aliyun.com:Allen;
    为子账号Allen授权Super_Administrator角色权限。
    grant super_administrator TO ram$bob@aliyun.com:Allen;
    为子账号Allen授权Admin角色权限。
    grant admin TO ram$bob@aliyun.com:Allen;
  • 通过DataWorks授权
  1. 登录DataWorks,进入工作空间配置页面。
  2. 添加子账号为项目空间成员(已经添加过可忽略)。
  3. 为子账号授权Super_Administrator角色。
    image.png
  • 子账号查看自身的权限:
    cmd中执行 show grants;,如果有Super_Administrator 这个role,说明已经赋权成功。

成员、权限管理

拥有super_administrator 角色的子账号本身已经拥有所有project资源的查询和操作权限,所以无须再给自身授权。以下给出针对其他成员和成员权限管理的建议。

成员管理

  • MaxComopute 支持云账号和RAM子账号(子账号只能为Project owner的子账号),为了更好的保障数据安全,建议project中添加的user均为owner主账号的RAM子账号。主账号可控制子账号,如人员转岗离职等,主账号可以注销或更新对应的子账号。

    > 若通过DataWorks进行项目成员管理,只能添加owner的RAM子账号。
  • RAM子账号只能通过主账号添加(这个不是MaxCompute可以改变的事实),所以对于某project 成员即使拥有super_administrator 角色的超级管理员,也只能先需要主账号先创建好其他子账号才可以将其他子账号添加到project中。
  • 建议只添加需要在当前project进行数据开发(即会在当前project执行job)的user,对于有数据交互业务需求的user,建议通过package方式进行跨project资源共享,避免把user添加到project增加成员管理的复杂度。
  • 员工转岗或离职,先把对应子账号在project里remove掉,然后再通知owner注销子账号。如果是拥有super_administrator 角色的子账号持有者转岗或离职,则需要由主账号进行remove以及注销账号。

权限管理

  • 建议通过角色进行权限管理,即权限和role关联,role和user关联。
  • 建议实施最小够用原则,避免权限过大造成安全隐患。
  • 跨project使用数据时,建议通过package方式实现,避免资源提供方增加成员管理成本,只需要管理package。

权限审计

可以通过MaxCompute的元数据服务Information_Schema服务提供的相关视图进行权限审计。

资源使用以及成本管理

作为MaxComopute主要负责人,不应该仅仅关注成员和权限,还有资源使用、成本都需要关注。

  • 关于成本,避不开账单,可以参考文档《查看账单详情》,对于子账号,需要主账号在RAM访问控制-角色管理给子账号所在角色赋相关权限:

    • (AliyunBSSFullAccess—管理费用中心(BSS)的权限;
    • 或,AliyunBSSReadOnlyAccess—只读访问费用中心(BSS)的权限;
    • 或,AliyunBSSOrderAccess—费用中心(BSS)查看订单、支付订单及取消订单的权限)

      > 注意,费用中心相关权限与MaxCompute project的super_administrator role无关联。
  • 关于资源使用管理,如果您使用MaxCompute包年包月的计算资源,则可以通过MaxCompute 管家进行计算资源的使用查看及管理。
    如果您使用的是MaxCompute后付费模式,可通过MaxCompute的元数据服务Information_Schema服务提供的相关视图,如TASKS_HISTORY 可详细审计作业执行情况包括时间、job内容、资源消耗等。

    >注意元数据服务提供的视图只有最近15天的数据,你若有需求,可自行将数据读取保存。
    
相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
一站式大数据开发治理平台DataWorks初级课程
DataWorks 从 2009 年开始,十ー年里一直支持阿里巴巴集团内部数据中台的建设,2019 年双 11 稳定支撑每日千万级的任务调度。每天阿里巴巴内部有数万名数据和算法工程师正在使用DataWorks,承了阿里巴巴 99%的据业务构建。本课程主要介绍了阿里巴巴大数据技术发展历程与 DataWorks 几大模块的基本能力。 课程目标  通过讲师的详细讲解与实际演示,学员可以一边学习一边进行实际操作,可以深入了解DataWorks各大模块的使用方式和具体功能,让学员对DataWorks数据集成、开发、分析、运维、安全、治理等方面有深刻的了解,加深对阿里云大数据产品体系的理解与认识。 适合人群  企业数据仓库开发人员  大数据平台开发人员  数据分析师  大数据运维人员  对于大数据平台、数据中台产品感兴趣的开发者
目录
相关文章
|
3月前
|
机器学习/深度学习 设计模式 人工智能
面向对象方法在AIGC和大数据集成项目中的应用
【8月更文第12天】随着人工智能生成内容(AIGC)和大数据技术的快速发展,企业面临着前所未有的挑战和机遇。AIGC技术能够自动产生高质量的内容,而大数据技术则能提供海量数据的支持,两者的结合为企业提供了强大的竞争优势。然而,要充分利用这些技术,就需要构建一个既能处理大规模数据又能高效集成机器学习模型的集成框架。面向对象编程(OOP)以其封装性、继承性和多态性等特点,在构建这样的复杂系统中扮演着至关重要的角色。
66 3
|
3月前
|
监控 Java 开发者
揭秘Struts 2性能监控:选对工具与方法,让你的应用跑得更快,赢在起跑线上!
【8月更文挑战第31天】在企业级应用开发中,性能监控对系统的稳定运行至关重要。针对流行的Java EE框架Struts 2,本文探讨了性能监控的工具与方法,包括商用的JProfiler、免费的VisualVM以及Struts 2自带的性能监控插件。通过示例代码展示了如何在实际项目中实施这些监控手段,帮助开发者发现和解决性能瓶颈,确保应用在高并发、高负载环境下稳定运行。选择合适的监控工具需综合考虑项目需求、成本、易用性和可扩展性等因素。
44 0
|
3月前
|
SQL 大数据 分布式数据库
SQL与大数据的神秘力量:如何用高效SQL处理海量数据,让你的项目一鸣惊人?
【8月更文挑战第31天】在现代软件开发中,处理海量数据是关键挑战之一。本文探讨了SQL与大数据结合的方法,包括数据类型优化、索引优化、分区优化及分布式数据库应用,并通过示例代码展示了如何实施这些策略。通过遵循最佳实践,如了解查询模式、使用性能工具及定期维护索引,开发者可以更高效地利用SQL处理大规模数据集。随着SQL技术的发展,其在软件开发中的作用将愈发重要。
105 0
|
4月前
|
弹性计算 分布式计算 大数据
MaxCompute产品使用合集之如何将用户A从项目空间A申请的表权限需要改为用户B
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
4月前
|
分布式计算 运维 DataWorks
MaxCompute操作报错合集之用户已在DataWorks项目中,并有项目的开发和运维权限,下载数据时遇到报错,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
4月前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何查询MaxCompute项目中的所有表及其字段信息
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
5月前
|
分布式计算 DataWorks 安全
DataWorks产品使用合集之两个odps数据源绑定了同一个项目, 如何看另外一个数据源的同步数据
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
34 0
|
1月前
|
存储 机器学习/深度学习 分布式计算
大数据技术——解锁数据的力量,引领未来趋势
【10月更文挑战第5天】大数据技术——解锁数据的力量,引领未来趋势
|
8天前
|
存储 分布式计算 数据挖掘
数据架构 ODPS 是什么?
数据架构 ODPS 是什么?
62 7
|
8天前
|
存储 分布式计算 大数据
大数据 优化数据读取
【11月更文挑战第4天】
23 2

相关产品

  • 云原生大数据计算服务 MaxCompute
  • 下一篇
    无影云桌面