SpringBoot 云边协同|智慧地铁 ISCS 改造实战第 10 篇:全网权限与数据隔离重构|线路‑车站‑专业三级 RBAC、边缘数据权限下沉

标签:# 工控开发 #地铁 ISCS #云边协同 #RBAC #权限隔离 #国产化综合监控

摘要

前面 9 篇完成架构拆分、边缘自治、采集降噪、消息中台、数据一致性、跨站全局调度、时序分层存储,整套云边业务底座已经闭环。但传统权限大多只做中心 OCC 单点权限控制,云边改造后暴露出新问题:车站边缘无本地权限管控、不同线路数据互相泄露、运维人员越权访问跨站设备、第三方运维只能看不能改的边界模糊。

本篇落地线路‑车站‑专业三级 RBAC 权限模型,把权限能力下沉到车站边缘节点,实现云端统一配置、边缘本地生效;完成数据行级隔离、操作风控、审计留痕,解决多线路混布场景下的数据越权访问问题,满足等保 2.0、轨交安监与监理验收要求。

一、前言

传统集中式 ISCS 权限全部运行在 OCC 中心服务器:所有账号、角色、菜单权限、设备权限都由中心统一校验。

迁移到云边架构之后,如果直接沿用老权限体系,会出现一系列工程痛点,也是项目评审高频扣分项:

  1. 网络断网,中心权限服务不可用,车站本地运维直接无法登录本站监控界面;
  2. 多线路一套平台部署,A 线路运维人员能够浏览、操作 B 线路设备测点,数据隔离失效;
  3. 权限只控制页面菜单,设备测点没有行级隔离,登录后可以看到全量测点数据;
  4. 车站现场运维人员,不应该能够修改其他车站、其他线路联动策略;
  5. 第三方厂商调试账号,缺少细粒度管控,容易越权下发控制指令;
  6. 所有操作审计日志只存在云端,断网时车站操作不留痕,事故复盘缺少本地证据。

很多云边项目只重视业务功能,权限模块简单照搬老系统,上线拷机才暴露出越权、断网不可用的重大缺陷。

云边架构权限核心设计思想:云端统一管理,边缘下沉生效;菜单控界面,数据控测点;操作全程审计

二、新旧权限架构对比

旧架构:权限全部集中 OCC

  • 账号、角色、设备权限全部在中心校验;
  • 断网后车站 Web / 客户端无法登录;
  • 只有菜单按钮权限,缺少测点、设备、线路维度数据隔离;
  • 审计日志只回传云端,边缘本地不留存。

新架构:云边协同三级权限体系

  1. 云端 OCC:权限配置中心
    统一维护用户、角色、线路‑车站‑专业权限模板,做账号生命周期管理;权限配置变更下发到各车站边缘节点。
  2. 车站边缘:本地权限校验网关
    接收云端同步的权限策略,本地完成登录鉴权、测点过滤、操作权限判断;主干网断开依旧可以做本站权限校验,保障现场运维。
  3. 双向审计链路
    所有操作同时在边缘本地落审计日志,联网后同步上传云端,实现云边双份日志留存。

关键点:配置在云端,鉴权执行在边缘。配置下发是单向,鉴权判断本地独立运行,不受网络影响。

三、线路‑车站‑专业 三级 RBAC 模型设计

3.1 维度说明

  1. 线路维度:控制账号可以访问哪一条或多条地铁线路;
  2. 车站维度:在线路范围内,进一步限定可访问哪些车站;
  3. 专业维度:环控、供电、给排水、FAS、PSD、信号等专业,限定该账号可见的设备与测点集合。

角色绑定三级权限集合,用户再绑定角色。

示例:

  • 车站环控运维:线路 = 4 号线,车站 = 某站,专业 = 环控;只能看本站环控设备,不能操作供电、不能访问其他车站。
  • OCC 调度员:线路 = 4 号线,车站 = 全部,专业 = 全部;可以查看全线,下发跨站联动指令。
  • 第三方调试账号:线路 = 4 号线,车站 = 某站,专业 = 供电;只读权限,禁止下发控制指令

3.2 权限分类两层控制

  1. 功能权限(按钮、菜单、操作)
    登录菜单、配置修改、联动策略编辑、下发遥控指令、报表导出。重点区分:查看 / 操作 / 配置。遥控指令是高危操作,单独权限开关。
  2. 数据权限(测点、设备行级隔离)
    不是简单隐藏菜单,而是接口层直接过滤返回数据集。即使绕过前端,后端接口也不会返回无权限的测点、告警、事件。杜绝前端隐藏后端泄露的安全漏洞。

四、权限策略云边同步机制

  1. 管理员在 OCC 权限中心修改用户、角色、三级权限配置;
  2. 变更事件通过下行专属消息 Topic 下发各个车站边缘服务;
  3. 车站边缘本地内存加载权限策略,持久化到本地数据库;
  4. 网络中断:边缘使用本地已同步的权限快照继续鉴权;云端配置变更等待网络恢复再同步;
  5. 策略版本号机制:每条权限配置携带版本号,边缘拒绝旧版本覆盖新版本,防止乱序同步。

注意:不会把全量账号密码下放到边缘;只下发鉴权策略、角色数据;密码校验仍然在云端,本地只做 token 会话校验。

五、边缘侧鉴权与跨域访问风控落地

5.1 本地网关鉴权流程

车站客户端登录:

  1. 账号密码认证请求云端完成,下发 JWT 会话令牌;
  2. 后续所有接口请求走车站边缘网关,网关读取本地权限快照;
  3. 根据 token 解析用户,匹配三级权限,过滤测点数据集,校验是否允许遥控、配置修改;
  4. 不通过直接返回拒绝,同时生成一条审计事件。

网络断开场景:

  • 已经登录的会话 token 有效期内,鉴权继续在边缘执行,可以正常监控、本站设备操作
  • 新用户无法登录(登录认证依赖云端),保障安全,又保障现场已有运维继续工作。

5.2 高危操作风控规则

针对遥控指令、联动策略修改、参数批量下发增加多层防护:

  1. 跨站 / 跨线路控制指令,除角色权限外,需要二次确认日志标记;
  2. 第三方账号默认禁止所有写操作、遥控操作;
  3. 禁止越线路操作:A 线路账号,即使拿到 B 线路设备 ID,接口直接拦截;
  4. 批量参数下发操作,记录受影响车站列表,写入审计 SOE。

六、审计日志云边双留存

  1. 车站端所有登录、查询、遥控、配置修改,首先写入本站本地审计库;
  2. 网络正常增量同步全部审计事件至 OCC 中心审计库;
  3. 断网期间产生的审计,本地持久化,网络恢复后补传,不会丢失;
  4. 审计字段包含:账号、角色、操作类型、设备 ID、线路车站、操作前后值、时间戳、结果、客户端 IP。
    满足安监事故溯源、等保审计要求。

七、改造验收重点项

  1. 网络断开后,已登录用户可依据原有权限继续本站监控和操作,新用户无法登录;
  2. 不同线路账号严格数据隔离,接口层过滤,不是仅前端隐藏;
  3. 车站运维账号无法访问其他车站测点与联动策略;
  4. 第三方调试账号可限定只读,禁止遥控下发;
  5. 审计日志边缘、云端双份留存,时序完整,可导出可溯源;
  6. 权限配置统一在 OCC 维护,不需要逐个车站登录修改配置,降低运维成本。

八、本篇小结

云边架构下权限不能简单照搬集中式方案。核心要点就是:云端统管配置,边缘下沉鉴权,三级维度做数据隔离,云边双写审计日志

既解决断网场景车站运维可用性,又解决多线路混布的数据安全、越权风险,补齐云边体系安全风控板块。

前面完成业务、存储,本篇补齐安全权限。下一篇进入拷机验收环节。

相关推荐
落魄实习生42 分钟前
Spring AI Alibaba入门-生态集成
java·人工智能·spring
码视野1 小时前
基于 Spring Boot + Vue3 的【高校化学实验室安全准入考试与危化品配伍排查系统】设计与实现(含PRD/三端高保真源码/大屏)
前端·人工智能·spring boot·后端·安全·vue3
重生之我是Java开发战士1 小时前
【Java EE】认识Linux与项目部署
java·linux·java-ee
LXMXHJ1 小时前
springboot项目测试
java·spring boot·后端·测试
程序员雪球1 小时前
本地IDEA打断点debug容器
java·开发语言
码匠许师傅1 小时前
【设计模式精讲】2. 设计原则基石:SOLID 与几条关键原则
java·设计模式·log4j
yychen_java1 小时前
二:Multi-Agent 协作架构与 MCP 协议实战:Java 企业级 AI 智能体进阶指南
java·人工智能·架构
老白干1 小时前
基于枚举 + 注解的 Java 数据脱敏实践(fastjson 序列化场景)
java·开发语言
SKH.1 小时前
Linux软件编程(5)线程
java·linux·jvm