赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 日志服务
  4. 操作指南
  5. 数据加工
  6. 数据加工(旧版)
  7. 最佳实践
  8. 使用RAM用户配置数据加工任务
  9. 场景三:使用自定义角色完成跨账号数据流转

场景三:使用自定义角色完成跨账号数据流转

  • 使用RAM用户配置数据加工任务
  • 发布于 2025-04-22
  • 0 次阅读
文档编辑
文档编辑

使用RAM用户创建数据加工任务时,您可以通过自定义角色完成跨账号的日志数据流转。

前提条件

  • 已创建并获取源Logstore和目标Logstore的名称及Project名称。具体操作,请参见管理Logstore和管理Project。
  • 已创建RAM用户,并授予RAM用户数据加工操作权限。具体操作,请参见授予RAM用户数据加工操作权限。

背景信息

跨账号场景下,使用RAM用户创建数据加工任务,角色A需要具有源Logstore的读数据权限,角色B需要具有目标Logstore的写权限。因为数据加工任务运行于阿里云账号1之下,您需要修改阿里云账号2下角色B的信任策略对阿里云账号1进行授信。该场景下的授权原理如下图所示。场景3

步骤一:使用阿里云账号1创建角色A

  1. 使用阿里云账号1登录RAM控制台。

  2. 创建角色A。
    具体操作,请参见创建可信实体为阿里云服务的RAM角色。其中关键参数配置如下:
    关键参数说明
    选择可信实体类型选择阿里云服务。
    角色类型选择普通服务角色。
    角色名称输入角色名称,例如role-A。
    选择授信服务选择日志服务。

步骤二:使用阿里云账号1为角色A授予读数据权限

  1. 使用阿里云账号1登录RAM控制台。

  2. 通过脚本编辑模式,创建自定义权限策略。该权限策略用于读取源Logstore中的数据。例如新建权限策略为ori_read。
    具体操作,请参见创建自定义权限策略。其中关键参数配置如下:
    关键参数说明
    名称输入自定义权限策略名称。例如ori_read。
    策略内容将配置框中的原有脚本替换为如下内容。
    例如:源Project名称为log-project-prod,源Logstore名称为access_log。在实际场景中,请根据实际情况替换。
    {
      "Version": "1",
      "Statement": [
        {
          "Action": [
            "log:ListShards",
            "log:GetCursorOrData",
            "log:GetConsumerGroupCheckPoint",
            "log:UpdateConsumerGroup",
            "log:ConsumerGroupHeartBeat",
            "log:ConsumerGroupUpdateCheckPoint",
            "log:ListConsumerGroup",
            "log:CreateConsumerGroup"
          ],
          "Resource": [
            "acs:log:*:*:project/log-project-prod/logstore/access_log",
            "acs:log:*:*:project/log-project-prod/logstore/access_log/*"
          ],
          "Effect": "Allow"
        }
      ]
    }
  3. 为角色A授予源Logstore读权限。

    具体操作,请参见为RAM角色授权。其中关键参数配置如下:

    关键参数

    说明

    授权范围

    选择整个云账号。权限在当前阿里云账号内生效。

    授权主体

    选择role-A。即您在步骤一:使用阿里云账号1创建角色A中创建的角色role-A。

    自定义策略

    选择ori_read。

  4. 获取RAM角色标识(ARN)。
    在该角色A的基本信息中查看,例如acs:ram::1379******44:role/role-a。

步骤三:使用阿里云账号2创建角色B

  1. 使用阿里云账号2登录RAM控制台。

  2. 创建角色B。
    具体操作,请参见创建可信实体为阿里云服务的RAM角色。其中关键参数配置如下:
    关键参数说明
    选择可信实体类型选择阿里云服务。
    角色类型选择普通服务角色。
    角色名称输入角色名称,例如role-B。
    选择授信服务选择日志服务。

步骤四:使用阿里云账号2为角色B授予写数据权限

  1. 使用阿里云账号2登录RAM控制台。

  2. 通过脚本编辑模式,创建自定义权限策略。该权限策略用于将数据加工结果写入到目标Logstore。例如新建权限策略为write。
    具体操作,请参见创建自定义权限策略。其中关键参数配置如下:
    关键参数说明
    名称输入自定义权限策略名称。例如write。
    策略内容将配置框中的原有脚本替换为如下内容。
    例如:目标Project名称为log-project-prod,目标Logstore名称为access_log_output。在实际场景中,请根据实际情况替换。
    {
      "Version": "1",
      "Statement": [
        {
          "Action": [
            "log:Post*",
            "log:BatchPost*"
          ],
           "Resource": "acs:log:*:*:project/log-project-prod/logstore/access_log_output",
          "Effect": "Allow"
        }
      ]
    }
  3. 为角色B授予目标Logstore写权限。

    具体操作,请参见为RAM角色授权。其中关键参数配置如下:

    关键参数

    说明

    授权范围

    选择整个云账号。权限在当前阿里云账号内生效。

    授权主体

    选择role-B。即您在步骤三:使用阿里云账号2创建角色B中创建的角色role-B。

    自定义策略

    选择write。

  4. 获取RAM角色标识(ARN)。

    在该角色B的基本信息中查看,例如acs:ram::1440******32:role/role-b。

步骤五:使用阿里云账号2通过角色B向阿里云账号1授信

  1. 使用阿里云账号2登录RAM控制台。

  2. 在左侧导航栏中,选择身份管理 > 角色。

  3. 在RAM角色列表中,单击目标RAM角色,例如role-B。

  4. 在信任策略管理页签中,单击修改信任策略。

  5. 修改信任策略。

    在Service配置项中添加阿里云账号1的ID。其中,请根据实际情况替换阿里云账号1的ID。您可以在账号中心查看阿里云账号ID。该策略表示阿里云账号1有权限通过日志服务获取临时Token来操作阿里云账号2的资源。

    {
        "Statement": [
            {
                "Action": "sts:AssumeRole",
                "Effect": "Allow",
                "Principal": {
                    "Service": [
                        "阿里云账号1的ID@log.aliyuncs.com"
                    ]
                }
            }
        ],
        "Version": "1"
    }

步骤六:使用RAM用户创建数据加工任务

  1. 使用RAM用户登录日志服务控制台。

  2. 进入数据加工页面。

    1. 在Project列表区域,单击源Project。

    2. 在日志存储 > 日志库页签中,单击源Logstore。

    3. 在查询和分析页面,单击数据加工。

  3. 在页面右上角,选择数据的时间范围。
    请确保在原始日志页签中有日志数据。
  4. 在编辑框中,输入数据加工语句。
    加工语句的语法请参见数据加工语法。
  5. 预览数据。
    1. 单击快速。
      日志服务支持快速预览和高级预览。更多信息,请参见预览调试概述。
    2. 单击预览数据。

      查看预览结果。

      • 如果加工语句错误或者权限配置错误,导致数据加工失败,请根据页面提示处理。
      • 如果确认数据加工结果无误,请执行步骤下一步。
  6. 创建数据加工任务。

    1. 单击保存数据加工。

    2. 在创建数据加工任务面板中,配置相关参数,然后单击确定。

      其中,其他参数配置请参考数据加工快速入门。该场景中关键参数配置如下:自定义角色-跨账号

      关键参数

      说明

      授权方式

      选择自定义角色。

      角色ARN

      输入角色A的ARN。例如acs:ram::1379******44:role/role-a。

      存储目标的授权方式

      选择自定义角色。

      角色ARN

      输入角色B的ARN。例如acs:ram::1440******32:role/role-b。

    数据加工任务创建成功并运行后,使用RAM用户创建的跨账号数据流转任务完成。具体操作,请参见管理数据加工任务。

相关文章

场景一:使用默认角色完成同账号的数据流转 2025-04-22 10:53

使用RAM用户创建数据加工任务时,您可以通过默认角色实现同账号内的日志数据流转。 前提条件

场景二:创建并使用RAM角色完成同账号数据流转 2025-04-22 10:53

使用RAM用户创建数据加工任务时,您可以通过自定义角色完成同账号内的日志数据流转。 前提条件

场景三:使用自定义角色完成跨账号数据流转 2025-04-22 10:53

使用RAM用户创建数据加工任务时,您可以通过自定义角色完成跨账号的日志数据流转。 前提条件 已创建并获取源

场景四:使用访问密钥完成对云账号内日志数据的流转 2025-04-22 10:53

使用RAM用户创建数据加工任务时,您可以通过访问密钥完成对云账号内日志数据的流转。 前提条件 已创建并获取

场景五:使用访问密钥完成跨云账号的日志数据流转 2025-04-22 10:53

使用RAM用户创建数据加工任务时,您可以通过访问密钥完成跨云账号的日志数据流转。 前提条件 已创建并获取源

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号