随着新氧平台的快速发展,数据流量和 API 调用量大幅增加,业务复杂度不断提升。同时,医美行业的特殊性对用户数据隐私保护和安全合规提出了更高要求。面对日益复杂的业务需求与安全挑战,我们需要一个能够提供高性能、灵活扩展、支持动态配置的数据安全网关,来作为流量治理和安全防护、数据保护的核心组件。
实现零信任的单点登录,整合飞书、微信、LDAP、手机号等多账户体系。
逻辑流程图:
支持 JWT、OAuth2.0 等多种认证方式。
网关的认证授权即能够通过OAuth协议独立运行,又可以后台低成本接入,免去了登录退出的实现,后台可直接通过使用安全SDK直接解析授权Cookie或JWT获取认证授权数据。同时JWT授权的签发采用了更为安全的RSA算法,避免了HS256单一密钥泄露风险,同时也解决了为每个站点分别维护HS256密钥的成本。采用统一的私钥进行签发。
对多端的访问行为进行人机识别,提供统一的风控对抗能力。无需业务在每个页面中增加风控处理逻辑,网关可以配合终端安全SDK实现动态核验。0成本覆盖所有业务场景。
技术实现:小程序举例(其他客户端逻辑相似)
技术挑战
在对wx.request方法进行Hook时遇到了方法覆盖后未能生效的问题。通过尝试可以采取先将wx.reqeust方法删除再设置的方式进行Hook。
对接入的后台管理平台页面实现配置化数字水印接入,0成本接入。
数字水印提供两种接入方式:
1、网关动态注入:由网关代理请求时注入到页面尾部实现数字水印加载
2、业务系统集成:业务前端集成并发版
基于 IP、用户、设备的限速策略,防止恶意攻击和接口滥用。
APISIX虽然原生提供了频现模块,但是只能根据IP等单一维度进行统计进行限速,不能针对特定的场景例如上下文及ngx变量进行统计计数,增强版本的限速模块更能适应真实的业务场景。
计数Key可以领过的根据上下文中的各种变量进行替换使用。
利用OPA等技术对后台敏感类接口及数据实现访问管理,OPA的规则动态重载。(附OPA官网:https://www.openpolicyagent.org/)
逻辑流程:
主要逻辑代码样例(涉及主要网关OPA插件以及过滤引擎核心逻辑):
记录每次请求的完整上下文信息,提供多维度监控指标,便于问题追踪。
在日志传送中遇到了kafka单消息体积不能过大问题,通常设置为1Mb,但如果请求大于1Mb完整的上下文信息就会被裁断舍弃,对日志的分析造成影响,于是通过实现分片来保障日志完整性。
简要的逻辑流程:
消息体的PB结构:
通过对request body 以及response body的分批传输解决上下文体积过大问题:
通过插件实现敏感信息的动态脱敏或加密处理,根据配置替换json结构中的敏感数据。
支持统一的签名校验机制,涵盖多端(H5、小程序、移动端等)客户端0成本接入无需侵入业务逻辑。
采用Go实现统一的签名算法,通过GoMobile及Web Assembly实现跨平台的统一签名,覆盖安卓、iOS、小程序、H5等多端。
技术优势
H5通过hook XMLHTTPRequest 及fetch 实现对web端所有请求的统一签名无需业务配合接入,覆盖所有axios类的三方库。
1
签名模块
体积过大,如何优化?
2
统一数字水印模块
如何防止数字水印元素被删除?
在日志分析方面, 日均处理数据量约800GB,能够充分满足平台日志分析处理的需求,最大程度上分析流量日志是否存在数据安全隐患,及时发现、及时响应、及时处理。
智能化流量治理:引入AI和机器学习技术,实现基于流量模式的动态优化。
更强的安全防护:开发更高级的安全插件,如行为分析、实时威胁检测等。
高级事件分析:利用大模型技术实现更加复杂的安全事件分析与自动响应。
全面数据加密与脱敏:完成传输层和数据库层的双重保护,以满足更严格的监管和业务需求。
THE END
文章作者:新氧信息安全团队 马晓坤
新氧数据安全网关建设团队成员:新氧信息安全研发团队 马晓坤、任怀博、郭旭鹏
彩蛋:新氧数据安全网关计划于2025年进行开源,欢迎关注“新氧安全应急响应中心”微信公众号,届时将在此公众号发布开源地址,敬请期待~