头图

引言

近日,“TikTok 遭欧盟隐私监管机构调查并处以 5.3 亿欧元”一案,再次引发行业内对数据合规等话题的热议。据了解,仅 2023 年一年就产生了超过 20 亿美元的 GDPR 罚单。这凸显了在全球化背景下,企业在数据隐私保护方面所面临的严峻挑战以及监管机构对数据合规的严格要求。

在云原生时代,可观测产品和服务已成为了企业重要的 IT 投资之一,企业在选型可观测性产品和服务时往往也会对 SaaS 服务充满质疑,“SaaS 到底安全吗?”、“它会如何处理我司和我司用户的数据”等问题。

观测云

观测云作为一款现代化的监控观测云服务商,始终将产品的安全、用户的数据放在首位。本文通过对数据隐私控制相关功能的介绍,希望能在一定程度上打消企业对监控观测云服务的顾虑。

用户体验数据的处理

观测云的 RUM 功能(用户体验监测)功能通常只采集用户体验相关的数据,例如页面加载时间、资源加载时间、用户交互行为(点击、滚动等)、错误日志等,这些数据不涉及用户的个人敏感数据。

对于可能涉及用户身份的信息,如用户ID、会话ID等,RUM工具会采用随机生成的方式,确保无法直接识别到具体用户。针对需要通过user_id来回溯特定用户的场景,用户需要通过主动调用”自定义用户标识”的接口来实现,具体可参考自定义用户标识

对于采集到的数据,观测云在传输中采用 https 加密技术,存储时采用加密算法来确保数据的安全性。

会话重放数据的处理

会话重放(Session Replay)是观测云针对企业用户“客户投诉难复现”、“VIP用户的用户体验难保障”等痛点推出的功能,它能以类似视频的方式还原用户在 Web 端、移动端的操作,帮助 IT 团队直观了解用户在访问什么页面、执行什么操作时遇到了用户体验受挫的情况。

图片
会话重放(Session Replay)

大部分客户在看到该功能时第一反应是惊喜,紧接着会开始担心数据合规性的问题。事实上观测云的“会话重放”功能并非屏幕录制,它的原理是通过记录网页上发生的事件(例如 DOM 修改、鼠标移动、单击和输入事件)以及这些事件的时间戳来获取浏览器的 DOM 和 CSS 的快照,并通过观测云重建网页并在适当的时间重新回放视图中应用记录的事件。在 Web 应用或 App 应用使用“会话重放”功能时,可以通过 defaultPrivacyLevel 选项来实现不同级别的隐私控制,如下图所示:

图片
启用“会话重放”过程中的隐私控制

模式1:mask-user-input

这是启用会话重放功能的默认配置,在该模式下观测云会屏蔽大多数表单字段,例如输入、文本区域和复选框值,同时按原样记录所有其他文本。输入被替换为三个星号 (*),文本区域被保留空间的 x 字符混淆。

图片

模式2:mask

在该模式下,观测云会屏蔽所有 HTML 文本、用户输入、图像和链接。应用程序上的文本被替换为 X,将页面呈现为线框。

图片

模式3:allow

记录所有数据,这种方式由于会明文展示表单字段,通常是在开发/测试环境中使用。

图片

为了让用户能灵活地控制对敏感元素的屏蔽,会话重放功能还支持对敏感元素的自定义屏蔽功能,您可以根据业务需求灵活设置需要屏蔽的内容,支持通过元素属性、元素类名等屏蔽配置方式来实现。更多描述可参考 Session Replay 如何保证您的数据安全

客户端侧数据脱敏/丢弃

在日志分析等数据采集过程中,在客户端进行数据脱敏至关重要,它能从源头上保护用户隐私和敏感信息,防止数据在传输和存储过程中被泄露或滥用,确保数据的安全性和合规性。

观测云支持“本地pipeline”,采集器 DataKit 在宿主机上即可对采集的日志进行灵活处理,包括字段脱敏和丢弃。常用的处理方式有:

  • 无效化处理:通过采用 Cover 函数,对指定字段上获取的字符串数据,按范围进行数据脱敏处理,采用特殊字符(*,?等)代替真值。
  • 通过采用 Replace 函数,对指定字段上获取的字符串数据按正则进行替换。
  • 通过采用 Drop 函数,丢弃整条日志或日志中的指定字段,不进行上传。

例如下图中的日志在采集过程中会携带 filepath(文件采集路径)字段。我们可以通过 pipeline 对其进行丢弃处理。

图片

pipeline 规则如下所示,将对 filepath 字段做丢弃处理。

图片

pipeline 应用生效后,新生成的日志不再上报 filepath 字段。

图片

数据访问规则,精细化控制权限

用户在使用观测云期间往往会遇到角色、权限等相关的场景,例如:

  • 场景1:企业用户通常都会在观测云中设置低权限/高权限角色,低权限用户只能查看脱敏后的数据,而高权限因为工作需要可查看原始数据。
  • 场景2:企业中存在按业务功能划分的团队,需要让每位团队成员只能看到自己所负责业务模块的数据,而无法看到其他业务模块的数据。
  • 场景3:业务系统出现故障,需要找外部团队(如软件开发商)介入分析,又不希望暴露自己业务系统的敏感数据。

以上林林总总的场景,都可以通过观测云的“数据访问”功能加以实现。“数据访问”功能首先基于不同来源的索引,为目标访问者设定了成员角色级别的数据访问范围。此外,为了进一步保护数据,还可以利用正则表达式和脱敏字段等工具,在限制访问的基础上对数据进行必要的“再编辑”,确保敏感信息在不牺牲数据价值的前提下得到妥善处理。

图片

针对特定角色配置数据访问规则和脱敏

链路中 SQL 参数的处理

链路数据采集过程中会捕获到 SQL 语句,而 SQL 中的参数可能涉及到个人隐私数据(如姓名、邮箱、IP、登录账号等),因此观测云在采集链路数据过程中会默认对 SQL 参数进行脱敏,这一过程是在数据传送到观测云 SaaS 平台之前完成。如下图所示:

图片
默认配置:对 SQL 参数进行脱敏

对于开发/测试环境等需要在排查问题时获得更准确信息的场景,观测云支持在探针启动过程中通过参数配置来获得原始的、完整的 SQL 语句,如下图所示:

图片
还原后的SQL参数

具体可参见:

敏感数据扫描

在使用可观测平台相关功能的过程中,会不可避免地产生网络设备地址、Token、API 密钥、个人隐私等诸多敏感数据。为避免信息泄露,造成安全风险,观测云提供敏感数据扫描的功能,通过为数据创建脱敏规则的方式,主动扫描平台内的指定数据并加以脱敏,实现自定义信息屏蔽。

观测云内置了个人敏感信息扫描、密钥和凭证扫描、网络和设备信息扫描等 70 多个内置规则库,用户可以直接勾选使用。此外,对于企业内特殊格式的敏感数据,可使用观测云的自定义脱敏功能,创建正则表达式来实现。

脱敏方式脱敏效果
通用加密以 * 替换所有匹配的敏感数据;
部分加密 替换敏感数据中的部分字符串,可以保留部分敏感信息,例如:手机号 1005;
替换加密以指定的字符串替换所有匹配的敏感数据,替换后不可逆;
MD5 加密对任意数据都可以加密成固定长度字符串,替换后不可逆。

图片
脱敏规则

图片
脱敏前效果

图片
脱敏后效果

总结

正是由于对用户数据的尊重,观测云不断强化自身对用户数据的合规、安全处理能力,不断获得行业和市场认可。目前观测云已经通过了各大云厂的严苛筛选,上架了华为、阿里、AWS 等云商店/MarketPlace。并获得了经权威机构审计的 SOC2 TypeⅡ 报告,相信会是企业选择监控观测云服务的不二之选。

图片


观测云
21 声望85 粉丝

云时代的系统可观测平台