通过默认角色访问数据

阿里云系统角色AliyunLogDefaultRole具备读取Logstore数据及写入数据到OSS Bucket的权限。您可以授权OSS-HDFS投递任务扮演AliyunLogDefaultRole角色来读取源Logstore的数据以及将数据写入到OSS Bucket中。

同账号投递

如果您的日志服务Logstore和OSS Bucket属于同一个账号,则您需单击云资源访问授权,在该账号下创建AliyunLogDefaultRole角色。

创建AliyunLogDefaultRole角色后,您在创建OSS-HDFS投递任务时,在写OSS-HDFS RAM角色读Logstore RAM角色中选中默认角色,即可授权OSS-HDFS投递任务扮演AliyunLogDefaultRole角色读取源Logstore中的数据以及写入数据到OSS Bucket。image.png

跨账号投递

如果日志服务Logstore和OSS Bucket不属于同一个阿里云账号,例如Logstore属于阿里云账号A,OSS Bucket属于账号B,则您需在两个账号下分别单击云资源访问授权,分别创建AliyunLogDefaultRole角色。创建后,还需进行如下配置。

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

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

  3. 修改AliyunLogDefaultRole角色的信任策略。

    1. 在RAM角色列表中,单击AliyunLogDefaultRole

    2. 信任策略页签中,单击编辑信任策略

    3. 将原有的信任策略替换为如下内容,然后单击保存信任策略

      Service配置项中添加阿里云账号A的ID@log.aliyuncs.com,并根据实际情况替换该值。您可以在账号中心查看阿里云账号ID。

      该策略表示账号A有权限通过日志服务获取临时Token来操作账号B中的资源。

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

    完成上述操作后,您在创建OSS-HDFS投递任务时,在写OSS-HDFS RAM角色中选择自定义角色,并输入账号B的AliyunLogDefaultRole角色的ARN(例如acs:ram::11****13:role/aliyunlogdefaultrole),在读Logstore RAM角色中选中默认角色,即可授权OSS-HDFS投递任务扮演账号A下的AliyunLogDefaultRole角色读取源Logstore中的数据,扮演账号B下的AliyunLogDefaultRole角色将数据写入到OSS Bucket。如何获取,请参见获取AliyunLogDefaultRole的ARNimage.png

获取AliyunLogDefaultRole的ARN

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

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

  3. 在RAM角色列表中,单击AliyunLogDefaultRole。

  4. 基本信息区域,获取ARN。

    请记录该信息,如果您在创建OSS-HDFS投递任务时使用的是默认角色,则需要输入该信息。