更新时间:2024-08-29 GMT+08:00

同步IAM用户到数据源

默认情况下,用户通过DataArts Studio数据连接访问数据源(此处指MRS/DWS数据源)时,使用数据连接中的账号密码进行认证。为实现不同用户访问数据源时,能够根据其自身用户信息管控用户访问数据的权限,需要先将IAM上的用户信息同步到数据源上,然后不同用户在数据源上才能有不同的身份,便于后续在数据权限管理中使用自身用户信息进行认证。

值得注意的是,DataArts Studio实例内对每个MRS/DWS集群只能有一个用户同步任务,因此用户同步任务为DataArts Studio实例级别配置,各工作空间之间数据互通。

前提条件

  • 新建用户同步任务前,已在管理中心创建数据仓库服务(DWS)或MapReduce服务(MRS Ranger)类型的数据连接,请参考创建DataArts Studio数据连接
  • 新建用户同步任务前,已参考授权dlg_agency委托为dlg_agency委托配置权限。

约束与限制

  • DataArts Studio实例内对每个MRS/DWS集群只能有一个用户同步任务。
  • 用户同步任务如果持续运行超过半小时,则会因超时被停止;如果连续同步失败超过10次,则会终止调度。
  • 由于联邦用户在只有用户组信息,因此联邦用户无法同步。
  • 由于数据源只会同步自身租户的用户信息,因此对于通过IP连接等方式非当前租户的数据源集群无法同步。
  • 当前用户同步仅支持MRS Hive和DWS数据源,DWS数据源必须进行用户同步,MRS数据源可以按自身需要创建IAM对应的MRS同名用户从而不进行用户同步。由于DLI数据源直接通过IAM用户进行鉴权,因此无需进行用户同步。
  • MRS数据源的用户同步任务有如下约束:
    • 如果MRS数据源已有与待同步用户同名的人机用户,则会导致MRS用户同步任务失败。此失败暂无报错信息,建议可通过如下方式之一解决:
      • 使用MRS集群详情中“IAM用户同步”功能,不必再运行数据安全侧的用户同步任务。IAM用户同步与用户同步任务功能类似,但如果有用户同名时不会导致所有用户同步全部失败,而是只有重名用户才会同步失败。
      • 登录MRS服务Manager页面,选择“系统 > 权限 > 用户”,删除与待同步用户同名的人机用户。
      • 在IAM删除与MRS人机用户同名的待同步用户。
    • MRS数据源同步前,要求用户/用户组已至少配置如下任一的权限,否则不会进行同步。
      • Tenant Administrator
      • MRS FullAccess
      • MRS CommonOperations
      • MRS ReadOnlyAccess
      • MRS Administrator
      • MRS Admin
      • MRS User
      • MRS Viewer
      • Self Define(任意自定义策略)
  • DWS数据源的用户同步任务有如下约束:
    • 仅当DWS集群guest_agent版本为8.2.1,或在8.2.1以上、9.0.0以下时,才支持用户同步。DWS集群guest_agent版本查看方法请参考查看DWS集群guest agent版本
    • DWS数据源用户同步前,要求用户已至少配置DWS Database Access权限,否则会同步失败。
    • IAM用户同步到DWS,需要为dlg_agency委托配置如下权限,详见授权dlg_agency委托
      • dws:dbAuthority:syncIamUse
      • iam:users:listUsers
      • iam:groups:listGroups
      • iam:users:listUsersForGroup
    • 由于DWS不支持用户组,因此IAM用户组同步到DWS时,会以“iam_group_用户组id”的命名格式在DWS上创建用户,并根据IAM上已删除的用户组在DWS上删除对应的“iam_group_用户组id”用户。因此DWS上应避免创建以“iam_group_”为前缀的用户,防止用户被误删。

新建用户同步任务

  1. DataArts Studio控制台首页,选择对应工作空间的“数据安全”模块,进入数据安全页面。
  2. 单击数据安全左侧导航树中的用户同步,进入用户同步任务页面。
  3. 在用户同步任务页面,单击“新建”,新建用户同步任务。

    图1 新建用户同步任务

  4. 新建用户同步任务参数配置请参考表1,参数配置完成单击“确定”,即可新建用户同步任务。

    图2 配置用户同步任务

    表1 配置用户同步任务参数说明

    配置

    说明

    *选择集群

    选择DWS或Ranger数据连接中已连接的DWS或MRS集群。

    *集群类型

    无需选择,自动匹配集群类型。

    *数据连接

    无需选择,自动匹配集群数据连接中的数据源集群。

    *调度时间

    选择调度运行的时间段,左闭右开。

    例如调度时间为00-05时,指的是在每天0点到5点时间段内,按照调度间隔进行调度,其他时间段不运行。0点会触发调度,但5点则不会触发。

    *调度周期

    支持按照小时或分钟进行调度。

    *间隔

    根据所选的调度周期,选择合理的调度间隔。调度间隔为距离上一次运行时间的间隔,手动同步也计入运行时间。

    例如间隔为5分钟时,20:00开始调度,20:03手动执行,则下次调度时间为20:08分。

  5. 用户同步任务新建完成后,并不会直接运行。需要您手动同步或调度任务,任务同步成功后才能生效,详见同步或调度任务

相关操作

  • 同步或调度任务:在用户同步任务页面,单击对应任务操作栏中的“同步”“更多 > 启动调度”,同步或调度任务。对于从未运行过的任务,首次调度如果满足调度时间范围,会立即触发运行。

    若任务运行发生失败,请参考如下方式处理:

    • 若报错信息为“权限不足”,请参考授权dlg_agency委托
    • 若DWS任务报错信息为“下载DWS IAM凭证失败”,请确认当前用户是否具有至少DWS Database Access权限。
    • 若MRS任务报错信息为“Mrs sync failed, please check the failure cause on the MRS page”,可以登录MRS服务首页,在右侧导航栏中选择操作日志,查看问题原因。
    • 若MRS操作日志中没有报错信息,则一般为IAM用户名与MRS已有人机用户名称冲突,导致同步失败。请登录MRS服务Manager界面,删除与IAM用户同名的人机用户(区分方式:IAM同步用户,默认描述为“IAM Custom Policy User”,且不可被删除;MRS普通人机用户,可以被删除)。
    • 若为其他报错信息,请根据具体报错和日志信息处理。
  • 查看任务运行日志:在用户同步任务页面,找到需要查看日志的任务,对应任务操作栏中的“详情”,即可查看运行日志。当前最多展示20条日志记录。

    运行失败可通过日志排查失败原因,问题修正后尝试重新运行。如果仍运行失败,请联系技术支持人员协助处理。

  • 编辑任务:在用户同步任务页面,单击对应任务操作栏中的“更多 > 编辑”,即可编辑用户同步任务。
  • 删除任务:在用户同步任务页面,单击对应任务操作栏中的“更多 > 删除”,即可删除任务。当需要批量删除时,可以在勾选任务后,在任务列表上方单击“删除”。

    删除操作无法撤销,请谨慎操作。