操作日志查询-谁动了我的 NAT

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
应用型负载均衡 ALB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
简介: 为了指导用户用好操作审计,为了填补产品功能与用户真实需求的鸿沟,我们开始了操作审计最佳实践的编写。

eipykdtz.jpg

起因

先介绍一下笔者所在的工作环境。我们是一个小的团队,申请了一个主账号作为服务账号,同时在该主账号下创建了多个子账号给不同的同学使用,由于不同的同学有很多不同的需求,因此在使用时没有严格限制不同子账户之间的权限,而是都给了管理员权限,而这也导致了这个事情的发生。

资源被操作了

某天,当我查看我的 NAT 网关时,突然发现某个网关上被多绑上了一个 EIP,如下图所示:

图1.png

顿时心生疑虑,这个 NAT 我清楚的记得是前段时间处理 VPC 接入公网流量时部署的,接入的时候也只是加上了第一个 EIP,但是今天却突然发现绑了两个 EIP。那另外一个是谁绑的呢?难道是我自己在当初绑定时就绑了两个 EIP?还是说有别的同学错误的把 EIP 绑到了我的 NAT 上?还是说这个同学是基于某个需求需要这样做呢?
在努力回忆确定不是自己做的后,当务之急应该首先要把绑定的操作者确定下来,向他当面问清楚这样做的原因。但是由于我们团队为每个子账户都授予了权限,因此每个人都有可能操作过。幸亏我们团队人不多,我向每个同学都问了一遍,但是没一个人说是自己做的。
既然都记不住是谁操作的,是不是有产品能记录这些操作呢?抱着怀疑的心情,我搜索了下阿里云搜索文档下的产品,还真的有一个叫作 操作审计 的产品,也许它能帮助我找到是谁操作的。

图2.png

发现是谁操作的

开通操作审计,进入 操作审计控制台,能看到查询面板,这里能清楚的看到每一个操作记录,最关键的是能看到是哪个 RAM 用户做的操作,这正是我需要的信息。

图3.png

然而,由于主账号下每天有大量的事件记录,我必须更精确地找到 NAT 绑定 EIP 的确切时间和事件,这样才能精准的定位到相关的操作记录。这里操作审计提供了 资源名称 作为搜索项。

图4.png

首先,查看一下多出来的 EIP 的创建时间,发现它是在 7 月 28 日创建的,同时可以获取到 EIP 的 ID。

图5.png

在搜索栏上选择 资源名称,并填入对应的 EIP ID,选好时间后进行查询。

图6.png


将鼠标悬浮在 事件名称 上,可以看到详细的事件情况,结合事件名,我们可以知道这个就是将 EIP 绑定到 NAT 的事件。

图7.png

最后操作记录上显示是 小A 在 9月21日13:13:01 进行了操作,在询问本人后,他终于想起是当时绑定别的资源时错将我的 NAT 绑定上去了。
虽然只是一个误操作,但是如果没有操作审计的日志记录,排查起来也是很难的。通过操作审计,我们可以通过多个维度进行事件查询,明确操作人员和操作时间,规范整个使用流程。

操作审计详解

操作审计每一条日志都记录了相关操作的详细字段。

图8.png


展开某条具体日志后,可以看到几个关键的字段,如 AK、事件源、地域、事件时间、错误码、请求ID、事件ID、源IP地址、事件名称、用户名,除此之外,如果该条日志和资源相关,在这条日志下也能看到对应的资源类型以及资源名称。最后点击“查看事件”后,可以看到整个事件详情,具体字段的介绍可以参见 操作事件结构定义

图9.png

另外需要注意的是,操作审计默认只支持 90 天的操作事件查询,如果有更长时间的事件需求,可以创建跟踪投递到自己的 SLS 或者 OSS 上进行长期存储。

结束语

随着越来越多的业务上云,如何保障云上开发人员更加规范合规的使用云成为了一个越来越被重视的话题。通过操作审计等审计产品,我们可以合法审查团队人员的相关操作,规范化开发过程,优化权限管理,真正做到安全上云,安全用云。

相关文章
|
4月前
|
存储 监控 Serverless
阿里泛日志设计与实践问题之Grafana Loki在日志查询方案中存在哪些设计限制,如何解决
阿里泛日志设计与实践问题之Grafana Loki在日志查询方案中存在哪些设计限制,如何解决
|
4月前
|
SQL 存储 JSON
更快更强,SLS 推出高性能 SPL 日志查询模式
从海量的日志数据中,按照各种灵活的条件进行即时查询搜索,是可观测场景下的基本需求。本文介绍了 SLS 新推出的高性能 SPL 日志查询模式,支持 Unix 风格级联管道式语法,以及各种丰富的 SQL 处理函数。同时通过计算下推、向量化计算等优化,使得 SPL 查询可以在数秒内处理亿级数据,并支持 SPL 过滤结果分布图、随机翻页等特性。
12148 113
|
5月前
|
SQL Java Serverless
实时计算 Flink版操作报错合集之在写入SLS(Serverless Log Service)时出现报错,该如何排查
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
3月前
|
SQL 存储 缓存
高基数 GroupBy 在 SLS SQL 中的查询加速
本文详细介绍了SLS中的高基数GroupBy查询加速技术。
133 18
|
4月前
|
存储 消息中间件 人工智能
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
早期 MiniMax 基于 Grafana Loki 构建了日志系统,在资源消耗、写入性能及系统稳定性上都面临巨大的挑战。为此 MiniMax 开始寻找全新的日志系统方案,并基于阿里云数据库 SelectDB 版内核 Apache Doris 升级了日志系统,新系统已接入 MiniMax 内部所有业务线日志数据,数据规模为 PB 级, 整体可用性达到 99.9% 以上,10 亿级日志数据的检索速度可实现秒级响应。
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
|
2月前
|
监控 网络协议 CDN
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
|
5月前
|
Java Serverless 应用服务中间件
函数计算操作报错合集之JVM启动时找不到指定的日志目录,该如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
4月前
|
SQL JavaScript 前端开发
【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题
【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题
|
5月前
|
监控 数据管理 关系型数据库
数据管理DMS使用问题之是否支持将操作日志导出至阿里云日志服务(SLS)
阿里云数据管理DMS提供了全面的数据管理、数据库运维、数据安全、数据迁移与同步等功能,助力企业高效、安全地进行数据库管理和运维工作。以下是DMS产品使用合集的详细介绍。
|
5月前
|
分布式计算 资源调度 DataWorks
MaxCompute操作报错合集之出现“查询运行日志失败”的报错,一般是什么导致的
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。