zoukankan      html  css  js  c++  java
  • 企业上云如何对SLS日志审计服务进行权限控制

    简介: 日志审计是信息安全审计功能的核心部分,是企业信息系统安全风险管控的重要组成部分。SLS的日志审计服务针对阿里云的多种云产品(Actiontrail、OSS、SLB、RDS、PolarDB、SAS、WAF等)提供了一站式的日志收集、存储、查询、可视化和告警能力,可用于支撑安全分析、合规审计等常见应用场景。

    一、背景

    日志审计简介

    日志审计是信息安全审计功能的核心部分,是企业信息系统安全风险管控的重要组成部分。SLS的日志审计服务针对阿里云的多种云产品(Actiontrail、OSS、SLB、RDS、PolarDB、SAS、WAF等)提供了一站式的日志收集、存储、查询、可视化和告警能力,可用于支撑安全分析、合规审计等常见应用场景。

    image.png

    日志审计的特点:

    • 中心化采集
      • 跨账号:支持将多个主账号下的日志采集到一个主账号下的Project中。
      • 一键式采集:一次性配置采集策略后,即可完成跨账号自动实时发现新资源(例如新创建的RDS、SLB、OSS Bucket实例等)并实时采集日志。
      • 中心化存储:将采集到的日志存储到某个地域的中心化Project中,方便后续查询分析、可视化与告警、二次开发等。
    • 支持丰富的审计功能
      • 继承日志服务现有的所有功能,包括查询分析、加工、报表、告警、导出等功能,支持审计场景下中心化的审计等需求。
      • 生态开放对接:与开源软件、阿里云大数据产品、第三方SOC软件无缝对接,充分发挥数据价值。

     

    日志审计服务提供了统一的管理界面,便于用户能够便捷地进行云产品日志的采集配置。该页面提供了对于多种云产品审计日志采集开关、存储方式(区域化/中心化)、TTL、是否开启威胁情报检测等功能。

    image.png

    企业上云后面临的权限问题

    众所周知,主账号拥有该账号下所有资源的所有权,可以对该账号下对所有资源进行配置修改。企业上云后,特别是一个公司多个部门或者多个业务线进行开发的场景,如果都使用主账号操作,风险是非常高的。而RAM则为企业解决上述问题,提供了一套简单的统一分配权限、集中管控资源的安全资源控制体系。

    企业上云后,面临的一些常见的权限管控问题:

    • 存在多用户协同操作,RAM用户分工不同,各司其职。
    • 云账号不想与其他RAM用户共享云账号密钥,密钥泄露风险较大。
    • RAM用户对资源的访问方式多种多样,资源泄露风险高。
    • 某些RAM用户离开组织时,需要收回其对资源的访问权限。

     

    企业上云后,可以通过创建、管理RAM用户,并控制这些RAM用户对资源的操作权限(权限最小分配原则),从而达到权限控制的目的。而日志审计服务作为云上日志安全审计的控制中心,是云上日志合规的配置入口,安全性至关重要。同样的,我们也可以合理的利用RAM达到权限控制目的。

    二、日志审计最佳实践

    为了利用RAM对日志审计服务进行权限控制,首先需要明确日志审计场景下涉及的资源:

      • 中心Project:slsaudit-center-${uid}-${region}
      • 区域Project:slsaudit-region-${uid}-${region}

     

    权限控制涉及的账号类型及权限,按权限从大到小顺序:

    • 主账号:
      • 权限:天然拥有对APP、Proejct资源所有控制权限。
      • 使用场景:不建议直接使用。
    • 拥有日志审计写权限的子账号(首次开通):
      • 权限:
      • 使用场景:可以对日志审计进行首次开通及后续配置变更。
    • 拥有日志审计写权限的子账号(非首次开通):
      • 权限:
        • 系统权限策略:AliyunRAMReadOnlyAccess/AliyunSTSAssumeRoleAccess。
        • 自定义日志审计写最小权限:需要拥有日志审计APP的查看、配置权限,可以查看日志审计project下的数据。
      • 使用场景:日志审计开通后,可以对日志审计进行相关的配置变更。
    • 拥有日志审计只读权限的子账号:
      • 权限:
        • 系统权限策略:AliyunRAMReadOnlyAccess/AliyunSTSAssumeRoleAccess。
        • 自定义日志审计只读最小权限:需要拥有日志审计APP的查看权限,可以查看日志审计project下的数据。
      • 使用场景:适用于一般权限的开发者。仅可查看日志审计配置,及Project中的数据。

    三、RAM子账号日志审计操作的最小权限

    1、自定义日志审计写最小权限

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "log:GetApp",
                    "log:CreateApp"
                ],
                "Resource": [
                    "acs:log:*:*:app/audit"
                ]
            },
            {
                "Effect": "Allow",
                "Action": [
                    "log:Get*",
                    "log:List*",
                    "log:CreateJob",
                    "log:UpdateJob",
                    "log:CreateProject"
                ],
                "Resource": [
                    "acs:log:*:*:project/slsaudit-*"
                ]
            }
        ]
    }

    2、自定义日志审计只读最小权限

    相对于“自定义日志审计写最小权限”,去掉了"log:CreateApp" "log:CreateJob" "log:UpdateJob" "log:CreateProject"等权限。

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "log:GetApp"
                ],
                "Resource": [
                    "acs:log:*:*:app/audit"
                ]
            },
            {
                "Effect": "Allow",
                "Action": [
                    "log:Get*",
                    "log:List*"
                ],
                "Resource": [
                    "acs:log:*:*:project/slsaudit-*"
                ]
            }
        ]
    }

    四、操作步骤

    1、创建第三部分中提到的权限

    例如创建名为audit_test的权限策略。

    image.png

    2、按照第二部分的权限列表,对子账号进行授权

    image.png

    3、登陆子账号进行审计操作

    五、通过权限否定控制

    本文第三部分提到的“RAM子账号日志审计操作的最小权限”,主要是正向出发,尽可能地限制子账号权限。但是某些场景下,子账号希望拥有SLS较大的权限,但是需要把日志审计APP配置权限排除在外,这时候就需要使用RAM的权限否定功能。详细的权限配置如下:

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Deny",
          "Action": [
            "log:CreateApp"
          ],
          "Resource": [
            "acs:log:*:*:app/audit"
          ]
        },
        {
          "Effect": "Deny",
          "Action": [
            "log:CreateJob",
            "log:UpdateJob",
            "log:CreateProject"
          ],
          "Resource": [
            "acs:log:*:*:project/slsaudit-*"
          ]
        }
      ]
    }

    例如,授予了子账号AliyunLogFullAccess权限,子账号会拥有全部的SLS权限。但是想收回审计APP配置权限时,可以添加自定义否定策略。

    image.png

     

    原文链接

    本文为阿里云原创内容,未经允许不得转载。

  • 相关阅读:
    服务器raid故障恢复数据过程
    HP FC MSA2000服务器磁盘掉线数据恢复案例
    服务器存储共享文件夹丢失数据恢复检测报告
    Hp DL380服务器瘫痪如何恢复服务器数据【多图】
    服务器存储瘫痪导致大量虚拟机丢失恢复数据过程
    华为5800服务器raid阵列数据恢复成功案例
    IBM X3850服务器虚误删除虚拟机如何恢复数据
    orcale数据库基本操作
    2、HTML基础知识
    1、web前端的发展
  • 原文地址:https://www.cnblogs.com/yunqishequ/p/14751339.html
Copyright © 2011-2022 走看看