构建多账号云环境的解决方案|多账号云上操作日志统一审计

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 操作审计(ActionTrail)是阿里云提供的云账号资源操作记录的查询和投递服务,可用于安全分析、资源变更追踪以及合规性审计等场景。企业在阿里云采用多账号的资源结构时,如何满对跨账号跨地域的云上操作日志进行统一归集留存和分析,是企业上云管云过程的必备环节。此次分享为您介绍如何使用操作审计产品进行中心化的审计,提升云上多账号操作的可控可见性,及时发现问题、响应问题,规避潜在风险。

演讲人:庄公阿里云开放平台技术专家

内容介绍:

一、企业云上多账号管理与治理需求

二、多账号体系下的审计难点

三、多账号操作日志统一审计的解决方案

 

本节课主要学习在多账号云环境中,多账号操作日志统一审计的解决方案。

 

一、企业云上多账号管理与治理需求

首先,通过一个企业客户案例了解企业云上多账号管理与治理需求,如下图:

幻灯片2.jpeg

某集团旗下有10家子公司,且相互独立。公司内部的运维和安全也都由各个子公司内部人员负责。在这种架构下,子公司对云商IT资源运维管理非常灵活,但随着业务的全球化,集团对信息安全的要求愈加严格,此时集团就需要对旗下子公司进行统一的管控,对其云上操作进行统一的审计。

 

二、多账号体系下的审计难点

在使用单账号时,可以使用操作审计产品对云上的操作日志进行审计。操作审计可以持续监控账号下的操作记录,包括控制台操作、API调用,使用开发者工具访问的用户还可以在操作审计控制台查看云账号下的操作日志,也可以通过跟踪将操作日志持续地投递到SLSOSS,进行行为分析、监控、告警、合规审计等操作。

但在多账号的情况下,基于单账号的审计方式无法继续使用。

幻灯片3.jpeg

如果依旧使用单账号审计,则管理员就需要分别登录各个账号的控制台去查看对应账号的操作日志,无法汇总和查询所有账号的操作记录,而且若要长期保留审计日志,就必须在每个账号内创建跟踪,管理和维护跟踪的成本很高,并且单账号对自己账号下的跟踪具有管理权限,跟踪可能会被意外停止或删除,存在安全风险。

 

三、多账号操作日志统一审计的解决方案

针对上面提到的难点,操作审计提供了多账号操作日志统一审计解决方案。

1、架构图

观察下面的架构图,可以看到,企业需要启用资源目录来管理企业的多个账号,操作审计就会持续监控并采集各个账号内的操作记录。企业还可以通过操作审计将日志投递到SLSOSS进行存储,以满足外部审计及内部监控合规的要求。操作审计还支持对多账号的操作日志进行统一查看和分析,并且也支持事件告警功能,用户可以便捷地查看操作时间线异常和高危操作。

幻灯片4.jpeg

2、云上多账号规划方案

回到课程开始的企业客户的案例,如下图:

幻灯片5.jpeg

首先建议企业采用资源目录管理企业账号。为企业内部的安全合规负责人创建日志账号,专门用于管理操作审计、配置审计等安全合规相关业务,这样就可以实现日志账号和其他运维或开发账号的隔离。只有安全合规负责人才有权限来使用日志账号,进而保证内部审计数据的安全性和可靠性。

3、云上多账号实施方案

实施该解决方案主要分为四个步骤:

幻灯片6.jpeg

第一步,确定资源目录中的日志审计账号,即上面提到的可以使用企业管理员账号来作为审计账号;也可以在资源目录中将某个云账号指定为操作审计的委派管理员,审计账号将用于创建和管理多账号跟踪。

第二步,在操作审计控制台或者通过APP来配置多账号跟踪,进而通过审计账号登录到操作审计控制台,创建多账号跟踪并设置跟踪投递的目标SLSOSS。多账号跟踪将对资源目录内的所有云账号生效,实现多账号云上操作日志的统一汇集。

第三步,完成跟踪配置后,就可以使用操作审计提供的高级查询功能来查询和分析日志,用户也可以将SLSOSS日志导出到之间IDC进行分析。

第四步,用户还可以通过操作审计提供的事件告警功能持续监测资源目录下所有账号的潜在风险。

1)高级查询

如下图所示:

幻灯片7.jpeg

操作审计提供了丰富的高级查询模板,如查询云账号AccessKey登录、AccessKey访问报错、资源生命周期事件等等,用户也可以使用制定的SQL来查询和分析事件。

2)事件告警

如下图所示:

幻灯片8.jpeg

操作审计也提供了丰富的告警模板,如账号连续登录失败告警、RAM权限变更等等。用户也可以自定义告警功能,及时洞察存在的高危操作、非法操作等潜在问题。

4、解决方案实际演示

1)确定审计账号,用审计账号来创建和管理多账号跟踪

在操作审计中,只有资源目录的管理员或者操作审计委派管理员才能够创建多账号跟踪。如果要把非管理员账号用作审计账号,就需要将该账号设置为操作审计的委派管理员。首先登录到资源管理的控制台,找到“可信服务”,再找到“操作审计”,点击“管理”,可以看到页面上有委派管理账号,若没有则可以点击“添加”,选择需要设置为委派管理员账号的成员账号,再点击“确定”即可。

为了方便演示,课上直接使用管理账号进行操作。登录云账号之后,直接进入操作审计的控制台,点击“跟踪”,再点击“创建跟踪”。

image.png

在创建跟踪时,需要填写两部分信息,即跟踪的基本信息和跟踪的目标。

在基本信息中,需要首先需要填写的是跟踪的名称,如rd-trail;第二个是选择跟踪配置,跟踪配置支持管控事件和ECS事件,操作审计支持绝大部分云产品的管控事件,管控事件是云账号对云上资源的管理操作,如创建ECS、删除ECS等,关于操作审计支持的所有云产品和事件,可以参考操作审计的文档(在文档里有产品概述、产品简介,产品简介中“支持的云服务”介绍了操作审计支持的所有云服务和事件,如ECS或弹性伸缩等);接下来是最关键的一步,即配置“应用到所有成员”选择“是”,表明跟踪是多账号的跟踪,进而将资源目录下所有成员账号的事件都进行统一采集和投递。

在填写投递的目标操作时,审计支持将事件投递到SLS或者投递到OSS。投递到SLS时,既支持投递到本账号,也支持投递到其他账号,课程中以投递到本账号为例。

image.png

第二,选择日志项目,日志项目支持创建新的日志项目或选择已有的日志项目,课程中以创建新的日志项目为例,新的日志项目名称为rd-trail+用户的id

OSS的配置相同与SLS相同,可以支持投递到本账号的存储空间,也可以支持投递到其他账号,可以支持投递到现有的存储空间,也支持投递到新建存储空间。在新建存储空间时,由于前面已经进行了创建,所以介意直接选择已有的存储空间。以上信息填写完毕后,点击“确认”,操作审计就会创建一个project

跟踪创建完毕,其名称即为rd-trail。跟踪中最关键的配置是应用到所有成员,进行多账号的跟踪。

在跟踪配置中,跟踪了管控事件,在审计事件投递中就可以看到投递的目标,即投递到SLSOSS,两者的项目名称、存储空间。到此,操作审计中的多账号跟踪就已经配置完毕。此时,操作审计就会将跟踪创建之后的资源目录内的所有云账号产生了一些新的事件,持续投递到跟踪配置的日志库和存储空间中。

image.png

2)配置完成后,可使用操作审计提供的高级查询和事件告警能力来对审计数据进行查询和分析

在使用高级查询时,首先需要选择跟踪,进而进行查询。操作审计高级查询支持简单模式和复杂模式两种。简单模式提供了一些可供筛选的筛选框,用户可以直接点击筛选框进行查询如要查询ECS事件,则可以直接筛选ECS,要查询杭州,可直接选择杭州;而复杂模式即为直接编写SQL。为了简化用户的查询,操作审计的高级查询也提供了很多的模板,如账号相关的模板或者资源生命周期相关的模板。如点击查询主账号登录控制台事件的模板,就会在右侧弹出SQL,即SLS中的SQL,这里的查询语法即为查询控制台登录事件。点击“运行”,操作审计的高级查询就会查询跟踪配置中的SLS,并从SLS中查询数据。

此时显示未查询到数据,这是因为从创建跟踪之后从未有主账号登录事件。接下来可以创造一些事件来进行搜索,如直接点击操作审计的“事件查询”,在点击“事件查询”时就会产生Lookup events的调用。然后,点击“刷新”就可以看到刚才产生的Lookup events。由于点了一次刷新按钮,此时操作审计已经触发了两Lookup events

接下来可以通过高级查询进行验证,在高级查询中,可以直接通过复杂查询进行查询,即直接查询Lookup events,其支持关键字查询,点击“查询”就可以看到两次Lookup events字,而这两次Lookup events即是前面在事件查询页面触发的两次Lookup events操作。

image.png

由于是多账号的跟踪,因此会采集资源目录内的所有账号的操作事件。此时,可以验证跟踪中的数据是否是所有云账号的数据,而并非仅仅是当前管理账号的数据。在验证时,应使用编写好的SQL查询出操作审计中跟踪采集的事件所有的account,以及account的条数。

点击执行可以看到现有的account118186194等,这说明是多账号的跟踪,且跟踪了当前资源目录内的所有账号的事件。

image.png

接下来,还可以使用操作审计提供的事件告警功能持续监测目标操作事件。可以直接点击“事件告警”进入操作审计事件的告警页面。操作审计事件告警同样也提供了一些丰富的模板,如账号连续登陆失败告警,或RAM子账号无MAF登录告警等,只需要直接开启事件告警即可。在开启事件告警之后,操作审计就会持续监测事件中是否有满足监控规则的事件,如果有,操作审计就会将事件进行告警。

如果默认的模板无法满足自身的需求,则可以通过新建告警来实现自定义告警。

image.png

以上便是操作审计多账号跟踪解决方案的具体的事例。


 >>>欢迎点击资源管理产品控制台体验更多功能

相关文章
|
1月前
|
存储 运维 监控
超越传统模型:从零开始构建高效的日志分析平台——基于Elasticsearch的实战指南
【10月更文挑战第8天】随着互联网应用和微服务架构的普及,系统产生的日志数据量日益增长。有效地收集、存储、检索和分析这些日志对于监控系统健康状态、快速定位问题以及优化性能至关重要。Elasticsearch 作为一种分布式的搜索和分析引擎,以其强大的全文检索能力和实时数据分析能力成为日志处理的理想选择。
103 6
|
3月前
|
存储 数据采集 数据处理
【Flume拓扑揭秘】掌握Flume的四大常用结构,构建强大的日志收集系统!
【8月更文挑战第24天】Apache Flume是一个强大的工具,专为大规模日志数据的收集、聚合及传输设计。其核心架构包括源(Source)、通道(Channel)与接收器(Sink)。Flume支持多样化的拓扑结构以适应不同需求,包括单层、扇入(Fan-in)、扇出(Fan-out)及复杂多层拓扑。单层拓扑简单直观,适用于单一数据流场景;扇入结构集中处理多源头数据;扇出结构则实现数据多目的地分发;复杂多层拓扑提供高度灵活性,适合多层次数据处理。通过灵活配置,Flume能够高效构建各种规模的数据收集系统。
71 0
|
4月前
|
SQL Java Serverless
实时计算 Flink版操作报错合集之在写入SLS(Serverless Log Service)时出现报错,该如何排查
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
5月前
|
弹性计算 Serverless 应用服务中间件
Serverless 应用引擎操作报错合集之集成sls时出现报错,是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
3月前
|
消息中间件 监控 Kafka
Filebeat+Kafka+Logstash+Elasticsearch+Kibana 构建日志分析系统
【8月更文挑战第13天】Filebeat+Kafka+Logstash+Elasticsearch+Kibana 构建日志分析系统
202 3
|
4月前
|
Java Serverless 应用服务中间件
函数计算操作报错合集之JVM启动时找不到指定的日志目录,该如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
4月前
|
监控 数据管理 关系型数据库
数据管理DMS使用问题之是否支持将操作日志导出至阿里云日志服务(SLS)
阿里云数据管理DMS提供了全面的数据管理、数据库运维、数据安全、数据迁移与同步等功能,助力企业高效、安全地进行数据库管理和运维工作。以下是DMS产品使用合集的详细介绍。
|
3月前
|
监控 安全 Linux
在Linux中,如何查看和审计系统日志文件以检测异常活动?
在Linux中,如何查看和审计系统日志文件以检测异常活动?
|
3月前
|
敏捷开发 前端开发 测试技术
阿里云云效产品使用合集之如何将云效构建执行过程中产生的日志通过邮件发送
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
5月前
|
监控 数据库
neo4j数据插入操作有日志吗
【6月更文挑战第29天】neo4j数据插入操作有日志吗
86 1