在使用日志审计服务时,需先授予日志服务采集相关云产品日志的权限以及授权多个主账号之间的同步汇集。您可以在配置日志采集时使用具备特定权限的子账号的密钥直接完成授权,或者参考本文的操作步骤完成授权。

背景信息

日志审计服务支持采集同一主账号下的云产品日志,也支持跨主账号采集云产品日志。
进行跨账号采集云产品日志时,当前主账号和其他主账号需要进行双向授权。
  • 当前主账号允许其他账号同步数据到当前主账号的审计Logstore。
  • 其他主账号允许同步数据到当前主账号的审计Logstore。
使用日志审计服务涉及多个授权角色和策略,对应关系如下所示:

同一账号:手动授权

  1. 登录RAM 控制台
    建议使用子账号登录,且该子账号需具备RAM读写权限(例如已被授予AliyunRAMFullAccess策略)。
  2. 创建AliyunLogAuditServiceDispatchPolicy策略。
    1. 在左侧导航栏中,选择权限管理 > 权限策略管理,单击创建权限策略
    2. 新建自定义权限策略页面,配置如下参数,并单击确定
      参数 说明
      策略名称 配置为AliyunLogAuditServiceDispatchPolicy
      配置模式 选择脚本配置
      策略内容 将配置框中的原有脚本替换为如下内容。
      {
          "Version": "1",
          "Statement": [
              {
                  "Action": "log:*",
                  "Resource": [
                      "acs:log:*:*:project/slsaudit-*"
                  ],
                  "Effect": "Allow"
              }
          ]
      }
  3. 参见步骤2,创建AliyunLogAuditServiceMonitorAccess策略。
    参数配置如下所示。
    参数 说明
    策略名称 配置为AliyunLogAuditServiceMonitorAccess
    配置模式 选择脚本配置
    策略内容 将配置框中的原有脚本替换为如下内容。
    {
        "Version": "1",
        "Statement": [
            {
                "Action": "log:*",
                "Resource": [
                    "acs:log:*:*:project/slsaudit-*",
                    "acs:log:*:*:app/audit"
                ],
                "Effect": "Allow"
            },
            {
                "Action": [
                    "rds:ModifySQLCollectorPolicy",
                    "vpc:*FlowLog*",
                    "drds:*SqlAudit*",
                    "kvstore:ModifyAuditLogConfig",
                    "polardb:ModifyDBClusterAuditLogCollector"
                ],
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
    }
    说明 如果您要采集Kubernetes数据,还需创建AliyunLogAuditServiceK8sAccess策略,策略内容如下所示。创建成功后,还需创建sls-audit-service-monitor角色并授予AliyunLogAuditServiceK8sAccess,详情请参见步骤5
    {
        "Version": "1",
        "Statement": [
            {
                "Action": "log:*",
                "Resource": [
                    "acs:log:*:*:project/k8s-log-*"
                ],
                "Effect": "Allow"
            }
        ]
    }
  4. 创建sls-audit-service-dispatch角色并授予AliyunLogAuditServiceDispatchPolicy策略。
    1. 在左侧导航栏中,选择RAM角色管理,单击创建RAM角色
    2. 选择类型页签中,选择阿里云服务,单击下一步
    3. 配置角色页签中,配置如下参数后,单击完成
      参数 说明
      角色类型 选择普通服务角色
      角色名称 配置为sls-audit-service-dispatch
      选择受信服务 选择日志服务,对应的信任策略如下所示。
      {    
      "Statement": [
              {
                  "Action": "sts:AssumeRole",
                  "Effect": "Allow",
                  "Principal": {
                      "Service": [
                          "log.aliyuncs.com"
                      ]
                  }
              }
          ],
          "Version": "1"
      }
    4. 单击为角色授权
    5. 添加权限页面,进行授权。
      选择自定义策略下的AliyunLogAuditServiceDispatchPolicy策略。
  5. 创建sls-audit-service-monitor角色并授予AliyunLogAuditServiceMonitorAccess策略。
    1. 在左侧导航栏中,选择RAM角色管理,单击创建RAM角色
    2. 选择类型页签中,选择阿里云服务,单击下一步
    3. 配置角色页签中,配置如下参数,单击完成
      参数 说明
      角色类型 选择普通服务角色
      角色名称 配置为sls-audit-service-monitor
      选择受信服务 选择日志服务,对应的信任策略如下所示。
      {    
      "Statement": [
              {
                  "Action": "sts:AssumeRole",
                  "Effect": "Allow",
                  "Principal": {
                      "Service": [
                          "log.aliyuncs.com"
                      ]
                  }
              }
          ],
          "Version": "1"
      }
    4. 单击为角色授权
    5. 添加权限页面,进行授权。
      选择自定义策略下的AliyunLogAuditServiceMonitorAccess策略和系统策略下的ReadOnlyAccess策略。

多账号配置:手动授权

  1. 获取主账号ID。
    1. 登录账号管理控制台
      使用当前主账号和其他主账号分别登录获取主账号ID。
    2. 安全设置页面,获取账号ID。
  2. 配置当前主账号。
    1. 登录RAM 控制台
      建议使用子账号登录,且该子账号需具备RAM读写权限(例如已被授予AliyunRAMFullAccess策略)。
    2. 单击RAM角色管理
    3. 找到并单击sls-audit-service-dispatch角色,进入详情页面。
    4. 信任策略管理页签,将配置框中的原有脚本替换为如下内容。
      {
          "Statement": [
              {
                  "Action": "sts:AssumeRole",
                  "Effect": "Allow",
                  "Principal": {
                      "Service": [
                          "log.aliyuncs.com"
                      ]
                  }
              }
          ],
          "Version": "1"
      }
  3. 配置其他主账号。
    1. 登录RAM 控制台
      建议使用子账号登录,且该子账号需具备RAM读写权限(例如已被授予AliyunRAMFullAccess策略)。
    2. 在左侧导航栏中,选择权限管理 > 权限策略管理,单击创建权限策略
    3. 新建自定义权限策略页面,配置如下参数,并单击确定
      参数 说明
      策略名称 配置为AliyunLogAuditServiceMonitorAccess
      配置模式 选择脚本配置
      策略内容 将配置框中的原有脚本替换为如下内容。
      {
          "Version": "1",
          "Statement": [
              {
                  "Action": "log:*",
                  "Resource": [
                      "acs:log:*:*:project/slsaudit-*",
                      "acs:log:*:*:app/audit"
                  ],
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "rds:ModifySQLCollectorPolicy",
                      "vpc:*FlowLog*",
                      "drds:*SqlAudit*",
                      "kvstore:ModifyAuditLogConfig",
                      "polardb:ModifyDBClusterAuditLogCollector"                      
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              }
          ]
      }
      
                                                          
      说明 如果您要采集Kubernetes数据,还需创建AliyunLogAuditServiceK8sAccess策略,策略内容如下所示。创建成功后,还需创建sls-audit-service-monitor角色并授予AliyunLogAuditServiceK8sAccess,详情请参见步骤3.iv
      {
          "Version": "1",
          "Statement": [
              {
                  "Action": "log:*",
                  "Resource": [
                      "acs:log:*:*:project/k8s-log-*"
                  ],
                  "Effect": "Allow"
              }
          ]
      }
    4. 创建sls-audit-service-monitor角色并授予AliyunLogAuditServiceMonitorAccess策略。
      1. 在左侧导航栏中,选择RAM角色管理,单击创建RAM角色
      2. 选择类型页签中,选择阿里云服务,单击下一步
      3. 配置角色页签中,配置如下参数后,单击完成
        参数 说明
        角色类型 选择普通服务角色
        角色名称 配置为sls-audit-service-monitor
        选择受信服务 选择日志服务
      4. 单击为角色授权
      5. 添加权限页面,进行授权。

        选择自定义策略下的AliyunLogAuditServiceMonitorAccess策略和系统策略下的ReadOnlyAccess策略。

      6. 返回RAM角色管理页面,单击sls-audit-service-monitor角色。
      7. 信任策略管理页签,将配置框中的原有脚本替换为如下内容。
        其中,中心主账号ID请根据步骤1中获取的当前主账号ID进行替换。
         {
            "Statement": [
                {
                    "Action": "sts:AssumeRole",
                    "Effect": "Allow",
                    "Principal": {
                        "Service": [
                            "中心主账号ID@log.aliyuncs.com",
                            "log.aliyuncs.com"
                        ]
                    }
                }
            ],
            "Version": "1"
        }