详情页标题前

阿里云日志服务SLS通过STS实现跨账号访问日志服务资源-云淘科技

详情页1

阿里云账号可以通过创建并授权用户角色的方式赋予其他云账号一定的资源权限,其他云账号扮演该角色,并为其名下的RAM用户授予AssumeRole权限之后,其他云账号或其子账号可以通过访问STS接口获取临时AK和Token函数,调用日志服务API接口。

背景信息

出于业务隔离或项目外包等需求,云账号A希望将部分日志服务业务授权给云账号B,由云账号B操作维护这部分业务。基本需求如下:

  • 云账号B拥有向企业A的日志服务中写入数据和使用消费组的权限。
  • 云账号B的指定RAM用户也拥有日志服务的写入和消费组权限。
  • 云账号B可获取STS临时凭证,访问日志服务API接口,详情请参见STS。

赋权过程概述

  1. 云账号A创建RAM角色,并指定云账号B扮演该角色并赋予日志服务的指定权限。
  2. 云账号B创建RAM用户B1,并为其赋予AliyunSTSAssumeRoleAccess(调用STS AssumeRole接口)的系统策略。
  3. RAM账号B1调用STS AssumeRole接口访问日志服务API接口,操作日志服务资源。

步骤1:云账号A为云账号B创建RAM角色并授权

云账号A创建RAM角色,并指定云账号B扮演该角色并为角色赋予日志服务的指定权限。

可以通过RAM控制台创建RAM角色,请参见创建RAM用户及授权或通过RAM的API CreateRole创建RAM角色,请参见CreateRole,以下以控制台创建为例进行详细步骤说明。

  1. 云账号A登录RAM控制台。
  2. 云账号A创建RAM角色,并指定云账号B扮演该角色。
    1. 在左侧导航栏,单击RAM角色管理
    2. RAM角色管理页面,单击创建RAM角色
    3. 选中可信实体类型为阿里云账号,单击下一步
    4. 输入角色名称备注选择云账号其他云账号,填写云账号B的账号ID,单击完成说明 将鼠标悬停在控制台右上角头像的位置,单击安全信息管理,即可查询主账号ID。以上步骤中创建的RAM角色详情如下。
      {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "RAM": [
                "acs:ram:::root"
              ]
            }
          }
        ],
        "Version": "1"
      }
  3. 创建权限策略。
    1. 在左侧导航栏的权限管理菜单下,单击权限策略管理
    2. 权限策略管理页面,单击创建权限策略
    3. 新建自定义权限策略页面,配置如下参数:
      参数 说明
      策略名称 输入策略名称。
      备注 输入您需要备注的内容。
      配置模式 选中脚本配置
      策略内容 此处配置的权限策略为云账号A授予云账号B的权限内容。 如果仅需要写数据,具体权限如下:

      {
        "Version": "1",
        "Statement": [
          {
            "Action": "log:PostLogStoreLogs",
            "Resource": "*",
            "Effect": "Allow"
          }
        ]
      }

      如果需要通过协同消费库获取数据,具体权限如下:

      {
        "Version": "1",
        "Statement": [
          {
            "Action": [
               "log:GetCursorOrData",
               "log:CreateConsumerGroup",
               "log:ListConsumerGroup",
               "log:ConsumerGroupUpdateCheckPoint",
               "log:ConsumerGroupHeartBeat",
               "log:GetConsumerGroupCheckPoint",
               "log:UpdateConsumerGroup"
            ],
            "Resource": "*",
            "Effect": "Allow"
          }
        ]
      }

      以上两类资源都是授权指定用户的所有Project和Logstore,如果您需要授权指定Project和Logstore,请参考如下内容:

      • 授权指定Project:acs:log::{projectOwnerAliUid}:project/
      • 授权指定Logstore:acs:log::{projectOwnerAliUid}:project/{projectName}/logstore/{logstoreName}/

      完整的资源说明请参见日志服务RAM资源。

    4. 单击确定
  4. 云账号A为RAM角色授权。
    1. 在左侧导航栏,单击RAM角色管理
    2. RAM角色名称列表下,找到目标RAM角色,单击添加权限
    3. 权限类型选择自定义策略并在列表中选中步骤3创建的权限策略,单击确定
    4. 单击完成,即完成授权。

步骤2:云账号B创建RAM用户B1并授权

云账号B创建RAM用户B1,并为其授予AliyunSTSAssumeRoleAccess(调用STS AssumeRole接口)的系统策略。

  1. 云账号B登录RAM控制台。
  2. 在左侧导航栏中,选择人员管理 > 用户
  3. 用户页面,单击创建用户
  4. 创建用户页面,参考如下说明进行参数配置并单击确定
    参数 说明
    用户账号信息 请输入登录名称显示名称
    访问方式 选中控制台密码登录编程访问
  5. 返回用户页面,在用户登录名称/显示名称列表中,找到目标RAM用户,单击添加权限
  6. 添加权限页面,被授权主体会自动填入。选中系统策略,在权限策略名称列表下,单击需要授予RAM角色的权限策略AliyunSTSAssumeRoleAccess,单击确定
  7. 单击完成

步骤3:RAM账号B1获取STS临时凭证访问日志服务

  1. 调用STS AssumeRole接口获取临时AK和Token。更多信息,请参见AssumeRole。您可以选择以下方式调用该接口:

    通过STS SDK调用。更多信息,请参见STS SDK概览。

  2. 调用日志服务接口,关于日志服务SDK请参见SDK参考。

示例代码

示例代码基于Java SDK,以云账号B通过STS向用户A的Project写入数据为例,详情请下载并参见示例代码。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/163161.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 腾讯云轻量应用服务器使用 SRS 应用模板搭建个人直播间云小二

    操作场景 SRS 是一个开源的流媒体集群,主要应用在直播和 WebRTC,支持 RTMP、WebRTC、HLS、HTTP-FLV 和 SRT 等常用协议。轻量应用服务器提供了 SRS 应用镜像,使您无需再关注繁杂的部署操作,即可通过该镜像在轻量应用服务器上一键搭建个人直播间。在本地下载推流客户端并且填写推流地址后,即可进行直播。除此之外,超清实时直播、多平台…

    2023年12月9日
  • 腾讯云对象存储清单

    简介 本文档提供关于清单的 API 概览以及 SDK 示例代码。 API 操作名 操作描述 PUT Bucket inventory 设置清单任务 设置存储桶的清单任务 GET Bucket inventory 查询清单任务 查询存储桶的清单任务 DELETE Bucket inventory 删除清单任务 删除存储桶的清单任务 设置清单任务 功能说明 PU…

    腾讯云 2023年12月9日
  • 阿里云负载均衡DeleteLoadBalancer – 删除负载均衡实例-云淘科技

    删除指定的负载均衡实例。 接口说明 DeleteLoadBalancer接口属于异步接口,即系统返回一个请求ID,但该应用型负载均衡实例尚未删除成功,系统后台的删除任务仍在进行。您可以调用GetLoadBalancerAttribute查询应用型负载均衡实例的删除状态: 当应用型负载均衡实例处于Deleting状态时,表示应用型负载均衡实例正在删除中。 当查…

    阿里云负载均衡 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云TDSQL-C MySQL版恢复实例

    本文为您介绍如何通过控制台恢复已隔离状态的实例。 操作场景 若由于误操作、实例到期、欠费等导致的实例被删除暂存在回收站当中,可以在回收站中将实例进行恢复使用。注意实例恢复后,所有的配置均不会发生变化。实例短时间内无法连续被销毁,恢复。 操作步骤 1. 登录 TDSQL-C MySQL 版控制台。2. 在左侧导航选择回收站,选择地域,在回收站列表找到待恢复的实…

    2023年12月9日
  • 腾讯云TDSQL-C MySQL版备份与回档费用说明

    本文为您介绍备份与回档的费用说明。 计费 备份存储空间:备份文件会占用一定的存储空间。备份方式包括自动备份和手动备份,备份对象包括 binlog 备份和数据备份,以上占用的空间均会算入此计费项。说明备份空间暂时免费,随着业务发展和功能逐渐完善,未来可能实行商业化计费,我们将另行通知。回档:TDSQL-C MySQL 版支持根据备份文件或时间点回档到原集群或回…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。