发布时间:2026/8/22 11:40:33
Spark/Flink 的 Web UI 不能裸奔:多租户平台的鉴权反向代理设计 Spark UI 和 Flink Dashboard 是排障刚需——反压、checkpoint、数据倾斜,不看原生 UI 基本查不动。但这两个 UI原生没有任何鉴权,而 K8s 上最常见的暴露方式是 per-job NodePort 或 Ingress 直通,等于把它们裸放在内网里:Flink 的 REST API 能直接提交 jar,裸暴露 远程代码执行入口,公网上被扫到就是挖矿(真实发生过的攻击面);Spark UI 的 environment 页会把配置全量吐出来,S3 的 AK/SK、数据库连接串都在里面;多租户下更致命:A 租户顺着端口能看 B 租户的作业、日志和数据路径。「我的数据空间」(datastudiohappy.cn)的做法是:引擎 UI 流量全部收进平台网关,做一个带鉴权的反向代理,与业务 API 同一套登录态、同一个信任边界,按工作空间成员关系放行。方案经过两轮对抗式安全评审,下面是评审后活下来的五个关键设计。一、五个关键设计1. 短时票据换「按作业限定作用域」的 cookie。引擎 UI 是 SPA,页面会自发加载几十个子资源,每个请求都要带上身份。做法:用户点「查看引擎 UI」→ 平台校验空间成员身份后签发一张 HMAC 短时票据 → 首个请求验票后换成HttpOnly、SameSiteStrict、Path 限定到这一个作业代理前缀的 cookie。子资源自动携带,而 A 作业的 cookie 天然到不了 B 作业的路径——跨作业越权在 cookie 作用域这层就断了。2. 鉴权判定与转发,必须是同一个 canonical 路径。先把路径做单次 percent-decode、解析掉.和..,再拿同一个归一结果去做鉴权判定和上游转发。如果判定看原始路径、转发前再解码一次,%65、点段、大小写这些花活就能做出「判定时是安全路径、到上游被重解析成敏感端点」的绕过——这是代理类系统最经典的洞。3. 路径闸分双态:活集群黑名单,历史态白名单。运行中的集群是单作业单租户的,只需挡掉全量配置 dump 这类高危端点,日志页照常放行(那是租户排障的主诉求);History Server 是共享服务,反过来默认全拒、白名单放行,且作业深链只放行本作业的 applicationId——共享面上,白名单才是正确的默认。4. 不改写响应体,但要接住重定向和根绝对链接。改写 HTML 响应体去修链接是不归路(改不全、易注错)。真正要处理的是两件事:上游 302 返回的Location是绝对内网地址,要改写回代理路径、域外一律丢弃(否则内网 IP 直接泄给浏览器);Spark UI 的页面链接是根绝对路径(/static/...),经代理访问会打到服务器根上 404——用 Spark 认的X-Forwarded-Context头让引擎自己把代理前缀拼进所有链接。顺带一个教训:这类问题curl 全程发现不了,它不加载页面里的资源链接,必须真浏览器走查。5. 脱敏兜底,不指望端点黑名单堵凭证。配置里的敏感项不可能靠枚举端点堵干净,代理层对响应做统一脱敏:高熵 secret 全量抹除、access key 就近遮蔽。纵深防御的最后一层要放在所有流量必经的位置上。二、历史 UI:存储隔离在前,路径闸退居纵深作业结束后 UI 要能回看(History Server)。这里的隔离主力其实在存储层:事件日志按租户前缀归档、每租户一把只读到自己前缀的 scoped 凭证,History Server 按需为单个租户拉起、闲置自动回收。这层做对之后,路径闸按 applicationId 的收敛就降级为纵深防御——隔离靠存储边界,不靠 UI 层的过滤。对用户来说,这一切只是作业详情页上的一个按钮:三、三句话总结引擎原生 UI 无鉴权,NodePort/Ingress 直通不是「简陋」,是 RCE 与凭证泄露级别的攻击面;代理的安全内核就三件:作用域限定的凭证载体、判定与转发同一 canonical 路径、共享面白名单;响应体不改写,Location 与根绝对链接交给标准头处理,凭证靠代理层脱敏兜底——并且一定要用真浏览器验收。这套引擎可观测能力是「我的数据空间」的一部分——一套可私有化部署的数据平台,支持 OEM 合作。产品介绍:https://datastudiohappy.cn/。

相关新闻

2026/8/22 11:35:32

如何设计信奥梯队选拔的面试环节

结合搭建信奥名校校内梯队、完成笔试题目设计的相关背景,信奥梯队选拔的面试环节核心是补充笔试无法覆盖的软素质、学习潜力、长期适配性考察,精准筛选出真正适合长期投入信奥竞赛的学员,避免仅靠纸面成绩漏掉高潜力苗子。 一、面试环节核心…

2026/8/22 12:55:37

魔方复原方法推导

目录 一,复原问题完整模型 1,部件信息 2,复原状态 3,部件朝向 4,幽灵部件 5,可执行操作 6,部件目标位置二分图 7,唯一部件、可交换部件 8,关于构建部件目标位置…

2026/8/22 12:55:37

如何修复截断的 MP4 视频:Untrunc 完整使用指南

如何修复截断的 MP4 视频:Untrunc 完整使用指南 【免费下载链接】untrunc Restore a truncated mp4/mov. Improved version of ponchio/untrunc 项目地址: https://gitcode.com/gh_mirrors/un/untrunc Untrunc 是一款免费的命令行 MP4 修复工具,通…

2026/8/22 12:55:37

104.无源门禁卡一贴就用?RC522射频识别原理与完整代码实现

一、为什么门禁卡没有电池也能工作?日常使用的门禁卡大多是无源RFID卡,本质上是一种被动式射频识别标签,本身没有内置电池。当你把它靠近门禁读卡器时,背后其实发生了一套精密的能量耦合与数据交互过程。1.1 核心原理:…

2026/8/21 13:13:49

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/21 20:14:07

工业传感器与变送器详解:序章 从物理世界到工业数据

序章 从物理世界到工业数据 ——重新认识工业传感器与变送器 工业自动化系统正变得日益复杂。今天的工业现场早已不是简单的控制回路,而是由多层技术共同构成的立体体系:PLC、DCS、SCADA、MES、工业互联网、边缘计算与人工智能。控制系统可以执行复杂算法,工业网络可以实现…

2026/8/21 15:40:01

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/21 15:40:01

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/22 1:39:53

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…