操作审计日志分析实战一:使用 SQL 分析投递到 OSS 中的操作审计日志

本文涉及的产品
对象存储 OSS,20GB 3个月
日志服务 SLS,月写入数据量 50GB 1个月
对象存储 OSS,内容安全 1000次 1年
简介: 操作审计(ActionTrail)是阿里云提供的云账号资源操作记录的查询和投递服务,可用于安全分析、资源变更追踪以及合规性审计等场景。我们推荐您创建跟踪将操作日志投递到日志服务(SLS)和对象存储(OSS)中:在 SLS 中短期存储日志,用于查询分析、配置监控报警;在更低成本的 OSS 中存储更长周期的历史日志。当您有需求查询分析历史操作日志时,您可能会苦恼于如何对 OSS 中存储的这些历史操作日志进行高效的查询和分析。本文章将引导您通过简单的配置,借助 DLA(数据湖分析)产品,实现通过 SQL 来查询和分析投递到 OSS Bucket 中的操作审计日志。

简单了解原理

(1)在操作审计创建跟踪可以将账号下发生的云上管控操作日志持续投递到SLS Logstore和OSS Bucket;
(2)在数据湖分析(DLA)服务,可以通过简单的设置将操作日志从OSS Bucket导入DLA。

dla-oss.png

DLA是一款基于Serverless的强大的交互式数据查询分析服务,能够便捷的对不同格式的数据源进行格式化整合并使用统一SQL查询分析。将OSS Bucket 中的操作日志导入DLA后,
(1)DLA将OSS Bucket内以Array形式保存的一行多条日志记录拆分为多条数据;
(2)DLA将以JSON保存的每条操作日志转换为结构化的数据表。
这使面向OSS Bucket的数据解析被大大的简化,直接实现可视化的标准SQL分析。

需求背景.png

开始实践

Step1:确认最佳实践的前提条件

1、确认您已经在操作审计创建了跟踪。如果还未创建跟踪,请先完成创建账号追踪操作,并配置将操作记录投递到对象存储(OSS)。
2、确认开通了DLA服务。

Step2:在DLA服务中创建Schema

1、登录Data Lake Analytics管理控制台
2、在页面左上角,选择与OSS所在地域一致的DLA地域。
3、单击左侧导航栏的数据湖构建 > 数据入湖,在数据入湖页面单击ActionTrail日志清洗中的进入向导。
4、在ActionTrail日志清洗页面,根据页面提示进行参数配置。

创建Schema_1.png

5、完成上述参数配置后单击创建,创建Schema。
服务端预设的操作审计日志Schema结构如下方表格所示。

1111111111111111111.png

Schema表结构介绍

表格长图.png

Step3:开启同步

Schema创建成功后,ActionTrail投递到OSS Bucket中的日志数据尚未同步到DLA中,DLA中尚未创建OSS日志文件对应的表,您还需要通过单击立即同步来创建表并同步表数据。
1、单击立即同步启动数据同步任务。

在配置页签下,单击更新更新Schema配置。

立即同步.png

2、单击表页签,查看数据同步情况。

元数据管理.png

数据同步到DLA以后,您就可以在DLA中使用标准SQL语法对ActionTrail日志数据进行分析。

Step4:数据分析示例

1、单击DLA控制台左侧 SQL执行 选项卡,选择目标前面设置的数据库。

SQL界面.png

2、输入查询语句,在这里输入单击 同步执行

输入SQL.png

3、得到查询结果

查询结果.png

您可以使用任何符合SQL语法的语句去对DLA中的日志信息进行查询。

常用查询案例

案例1:查询某个AK的操作日志

1、输入语句:select * from action_trail where user_identity_access_key_id = '你的目标AK' limit 20;

案例查询1语句.png

2、单击 同步执行 得到前20条符合条件的记录如下

案例1查询结果.png

案例2:查询某个AK访问某个产品的操作日志
1、输入语句,查询AK为指定值,调用Ecs服务的记录:select * from action_trail where user_identity_access_key_id = '你的目标AK' AND service_name = 'Ecs' limit 20;

案例查询2语句.png

2、单击 同步执行 得到前20条符合条件的记录如下
案例2查询结果.png

相关文章
|
22天前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
|
2月前
|
Java Maven Spring
超实用的SpringAOP实战之日志记录
【11月更文挑战第11天】本文介绍了如何使用 Spring AOP 实现日志记录功能。首先概述了日志记录的重要性及 Spring AOP 的优势,然后详细讲解了搭建 Spring AOP 环境、定义日志切面、优化日志内容和格式的方法,最后通过测试验证日志记录功能的准确性和完整性。通过这些步骤,可以有效提升系统的可维护性和可追踪性。
|
3月前
|
Java 程序员 应用服务中间件
「测试线排查的一些经验-中篇」&& 调试日志实战
「测试线排查的一些经验-中篇」&& 调试日志实战
32 1
「测试线排查的一些经验-中篇」&& 调试日志实战
|
3月前
|
SQL 存储 数据可视化
手机短信SQL分析技巧与方法
在手机短信应用中,SQL分析扮演着至关重要的角色
|
4月前
|
存储 监控 数据可视化
SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
【9月更文挑战第2天】SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
196 9
|
4月前
|
SQL 安全 数据库
基于SQL Server事务日志的数据库恢复技术及实战代码详解
基于事务日志的数据库恢复技术是SQL Server中一个非常强大的功能,它能够帮助数据库管理员在数据丢失或损坏的情况下,有效地恢复数据。通过定期备份数据库和事务日志,并在需要时按照正确的步骤恢复,可以最大限度地减少数据丢失的风险。需要注意的是,恢复数据是一个需要谨慎操作的过程,建议在执行恢复操作之前,详细了解相关的操作步骤和注意事项,以确保数据的安全和完整。
183 0
|
5月前
|
数据库 Java 监控
Struts 2 日志管理化身神秘魔法师,洞察应用运行乾坤,演绎奇幻篇章!
【8月更文挑战第31天】在软件开发中,了解应用运行状况至关重要。日志管理作为 Struts 2 应用的关键组件,记录着每个动作和决策,如同监控摄像头,帮助我们迅速定位问题、分析性能和使用情况,为优化提供依据。Struts 2 支持多种日志框架(如 Log4j、Logback),便于配置日志级别、格式和输出位置。通过在 Action 类中添加日志记录,我们能在开发过程中获取详细信息,及时发现并解决问题。合理配置日志不仅有助于调试,还能分析用户行为,提升应用性能和稳定性。
67 0
|
5月前
|
前端开发 Java JSON
Struts 2携手AngularJS与React:探索企业级后端与现代前端框架的完美融合之道
【8月更文挑战第31天】随着Web应用复杂性的提升,前端技术日新月异。AngularJS和React作为主流前端框架,凭借强大的数据绑定和组件化能力,显著提升了开发动态及交互式Web应用的效率。同时,Struts 2 以其出色的性能和丰富的功能,成为众多Java开发者构建企业级应用的首选后端框架。本文探讨了如何将 Struts 2 与 AngularJS 和 React 整合,以充分发挥前后端各自优势,构建更强大、灵活的 Web 应用。
68 0
|
5月前
|
SQL 数据采集 数据挖掘
为什么要使用 SQL 函数?详尽分析
【8月更文挑战第31天】
67 0
|
5月前
|
SQL 数据采集 算法
【电商数据分析利器】SQL实战项目大揭秘:手把手教你构建用户行为分析系统,从数据建模到精准营销的全方位指南!
【8月更文挑战第31天】随着电商行业的快速发展,用户行为分析的重要性日益凸显。本实战项目将指导你使用 SQL 构建电商平台用户行为分析系统,涵盖数据建模、采集、处理与分析等环节。文章详细介绍了数据库设计、测试数据插入及多种行为分析方法,如购买频次统计、商品销售排名、用户活跃时间段分析和留存率计算,帮助电商企业深入了解用户行为并优化业务策略。通过这些步骤,你将掌握利用 SQL 进行大数据分析的关键技术。
266 0