揭秘如何通过日志服务实现个人敏感信息保护

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【2月更文挑战第3天】阿里云日志服务SLS(Simple Log Service)为保护个人敏感信息提供了全面的数据安全策略。在数据采集阶段,客户端可以对包含敏感信息的日志进行AES加密后上报至SLS中心Logstore,利用HTTPS加密链路保障传输安全。在存储环节,SLS支持对敏感字段进行专门的脱敏处理,如替换、哈希或截断等手段,确保原始敏感信息不被明文暴露。对于需要使用日志数据的业务方,SLS允许在分发前对敏感数据进行解密并再次脱敏,以满足合规性和安全性要求。通过精细的权限管理和审计功能,SLS可记录所有访问和操作日志,确保任何对敏感数据的操作都可追溯。

背景知识

日志服务(SLS)

日志服务 (Simple Log Service,简称 SLS) 是云原生观测分析平台,为 Log/Metric/Trace 等数据提供大规模、低成本、实时平台化服务。一站式提供数据采集、加工、分析、告警可视化与投递功能,全面提升研发、运维、运营和安全等场景数字化能力。产品地址:https://www.aliyun.com/product/sls

基本概念

image.png

功能概览

  • 数据采集:支持Log、Metric、Trace等数据类型,并支持50多种数据源,包括阿里云产品、服务器与应用、物联网设备、移动端、开源软件、标准协议等。

  • 日志存储:支持智能分层存储。数据分层存储时,可降低您长周期存储的成本,同时保证日志的查询、分析、可视化、告警、投递和加工等能力不受影响。

  • 数据加工:提供200多个内置函数、400多个正则表达式、灵活的自定义函数,实现过滤、分裂、转换、富化、复制等效果,满足数据分派、规整、融合等场景。

  • 查询与分析:支持PB级数据实时查询与分析,提供10多种查询运算符、10多种机器学习函数、100多个SQL函数,并支持定时SQL和SQL独享版。

  • 可视化:支持查询与分析结果可视化,提供10多种统计图表,包括表格、线图、柱状图、地图等,并支持基于统计图表自定义仪表盘(支持外嵌与下钻分析)。

  • 告警:提供一站式告警功能,包括告警监控、告警管理、通知(行动)管理等,适用于开发运维、IT运维、智能运维、安全运维、商务运维等多个场景。

  • 消费与投递:支持数据实时消费,适用于Storm消费、Flume消费、Flink消费等场景;支持数据实时投递,适用于将数据投递至OSS、TSDB等云产品。

  • 日志审计:在继承现有日志服务所有功能基础上,还支持多账户下实时自动化、中心化采集云产品日志并进行审计,以及支持审计所需的存储、查询及信息汇总。

使用方式

image.png


如何通过日志服务实现个人敏感信息保护

准备原始数据

复制下方地址,在Chromium浏览器打开新页签,粘贴并访问日志服务控制台。

https://sls.console.aliyun.com/

在日志服务控制台下方的Project列表中,选择Project资源所在地域,然后单击Project名称。

image.png

在日志存储页面左侧,单击日志库下的“+”号。

image.png

在创建Logstore对话框中,输入Logstore名称,打开WebTracking开关,然后单击确定。

  • Logstore名称:输入nginx-access-log。

  • WebTracking:打开WebTracking开关,您可以通过WebTracking从HTML、H5、iOS或Android上采集数据到日志服务。

image.png

在创建成功对话框中,单击取消。

image.png

在日志存储页面左侧,选择日志库>您的Logstore>数据接入>模拟接入,然后单击“+”号。

image.png

在快速接入面板中,单击NGINX访问日志下的模拟接入。

image.png

在模拟接入页面,单击开始导入。

image.png

在模拟接入页面,等待大约一分钟,模拟数据生成后,单击开始使用。

image.png

返回如下页面,您可以看到生成的NGINX模拟数据,数据中的客户端IP字段remote_addr和访问者用户名字段remote_user没有脱敏,信息安全隐患非常大。

image.png

数据脱敏

在日志存储页面左侧,单击日志库下的“+”号。

image.png

在创建Logstore对话框中,输入Logstore名称,打开WebTracking开关,然后单击确定。(该Logstore用来存储脱敏后的数据。)

  • Logstore名称:输入nginx-access-log-fmt。

  • WebTracking:打开WebTracking开关,您可以通过WebTracking从HTML、H5、iOS或Android上采集数据到日志服务。

image.png

在创建成功对话框中,单击取消。

image.png

在日志存储页面左侧,单击nginx-access-log-fmt。在nginx-access-log-fmt页签右上方,单击开启索引。

image.png

在查询分析面板中,打开全文索引,单击确定。

image.png

在查询分析设置对话框中,单击确认。

image.png

在nginx-access-log-fmt页签左侧,单击nginx-access-log。在nginx-access-log页签,单击数据加工。

image.png

在nginx-access-log数据加工页签,输入如下加工语句,单击保存数据加工。

e_set("remote_addr", regex_replace(v("remote_addr"), grok("(%{IP})"), replace=r"*.*.*.*"))
e_set("remote_user", regex_replace(v("remote_user"), r"(\S)\S+", replace=r"\1****"))

image.png

在创建数据加工规则面板,输入规则名称,单击添加,然后配置存储目标,时间范围选择为所有,单击确定。

  • 规则名称:自定义规则名称,例如mask-sensitive-info。

  • 目标名称:存储目标的名称,输入nginx-access-log-fmt。

  • 目标Region:选择您的Project资源所在地域。

  • 目标Project:选择您的Project名称。

  • 目标库:选择nginx-access-log-fmt。

  • 时间范围:选择所有。

image.png
image.png

在创建结果对话框中,单击确认。

image.png

在nginx-access-log页签左侧,单击nginx-access-log-fmt。在nginx-access-log-fmt页签右上方,单击查询/分析。

image.png

返回如下页面,您可以看到NGINX模拟数据中的客户端IP字段remote_addr和访问者用户名字段remote_user已经脱敏。

image.png

查看数据加工任务及开启监控告警

在日志存储页面左侧,选择日志库>nginx-access-log>数据处理>加工>您的数据加工任务(例如下图的mask-sensitive-info)。

image.png

返回如下页签,您可以看到数据加工任务详情和执行状态。

image.png

在数据加工概览页签的执行状态区域,单击开启监控。

image.png

在告警中心页签,选择所有监控规则,单击开启。

image.png

在提示对话框中,单击确定。

image.png

返回如下页面,当状态为已开启时,表示您已成功开启监控,日志服务会在数据加工存在异常时,为您发送告警通知,便于您快速发现数据加工过程中的异常问题。

image.png

推荐

更多文章见:

日志服务SLS实现云产品可观测实践(https://developer.aliyun.com/article/1343018?spm=a2c6h.13148508.setting.30.61624f0ehG0bti)

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
存储 数据采集 分布式计算
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
44 1
|
2月前
|
Java
日志框架log4j打印异常堆栈信息携带traceId,方便接口异常排查
日常项目运行日志,异常栈打印是不带traceId,导致排查问题查找异常栈很麻烦。
|
1月前
|
存储 缓存 网络协议
搭建dns服务常见报错--查看/etc/named.conf没有错误日志信息却显示出错(/etc/named.conf:49: missing ‘;‘ before ‘include‘)及dns介绍
搭建dns服务常见报错--查看/etc/named.conf没有错误日志信息却显示出错(/etc/named.conf:49: missing ‘;‘ before ‘include‘)及dns介绍
117 0
|
3月前
|
Kubernetes 数据安全/隐私保护 容器
【Azure APIM】APIM Self-Hosted网关中,添加网关日志以记录请求头信息(Request Header / Response Header)
【Azure APIM】APIM Self-Hosted网关中,添加网关日志以记录请求头信息(Request Header / Response Header)
|
3月前
|
Go 开发者
【应用服务 App Service】App Service发生错误请求时,如何查看IIS Freb日志,从中得知错误所发生的模块,请求中所携带的Header信息
【应用服务 App Service】App Service发生错误请求时,如何查看IIS Freb日志,从中得知错误所发生的模块,请求中所携带的Header信息
|
3月前
|
监控 安全 Linux
在Linux中,某个账号登陆linux后,系统会在哪些日志文件中记录相关信息?
在Linux中,某个账号登陆linux后,系统会在哪些日志文件中记录相关信息?
|
3月前
|
数据挖掘 语音技术
3D-Speaker说话人任务的开源项目问题之语义说话人信息模块在说话人日志系统中的问题如何解决
3D-Speaker说话人任务的开源项目问题之语义说话人信息模块在说话人日志系统中的问题如何解决
|
3月前
|
API
【Azure 服务总线】查看Service Bus中消息多次发送的日志信息,消息是否被重复消费
【Azure 服务总线】查看Service Bus中消息多次发送的日志信息,消息是否被重复消费
|
3月前
|
存储 API C#
【Azure API 管理】在APIM 中添加 log-to-eventhub 策略,把 Request Body 信息全部记录在Event Hub中
【Azure API 管理】在APIM 中添加 log-to-eventhub 策略,把 Request Body 信息全部记录在Event Hub中
|
3月前
|
存储 安全 Java
【事件中心 Azure Event Hub】Event Hub日志中发现的错误信息解读
【事件中心 Azure Event Hub】Event Hub日志中发现的错误信息解读