
一个同事能查看自动化流程,是否就该顺手看到客户请求、模型输出和附件?n8n的新稳定版给出了更严格的区分。10月30日发布的2.45.7,把execution:read权限检查补进几个挂在工作流下面、实际会读取运行数据的加载路径。企业给团队开放“看流程”时,不能再把它默认理解为“看每次运行的内容”。
快速看点:此次核准的是运行数据权限修复,不是整个版本的全部变化;覆盖最近一次成功执行、从执行生成评测样本,以及二进制数据访问。检查放在服务端加载逻辑中,缺少权限时不返回相应运行内容;这不等于已经完成所有租户和插件的安全审计。
工作流定义描述节点如何连接、工具如何调用;执行记录则可能保存当次输入、输出和中间数据。二者常在同一个编辑页面附近出现,却有不同的敏感程度。允许某人理解流程,并不必然意味着允许其读取真实业务样本,这也是企业采用自动化和Agent工具时容易混在一起的授权边界。
对应修复说明明确,workflow:read和execution:read是不同权限。执行接口已有后者的检查,但部分工作流相关路径仍可能在仅检查工作流权限后加载执行数据。本次把检查补到共同使用的底层加载器,而不是只在前端隐藏按钮。相关回移于10月29日合入,不能把30日正式版本日期写成这段代码第一次出现。
这与此前2.44.7针对启动前凭据失败、错误工作流处理的修复不是同一事件。一个处理失败如何进入错误路径,一个处理谁能读取运行内容;升级计划需要分别确认,不能因为安装过前一次补丁,就认定后一次权限增量已经包含。
最近成功执行的加载器,现在先检查请求者是否具有该工作流的execution:read权限。没有则返回空结果,不继续加载成功运行记录;有权限后,仍按原有步骤读取并应用脱敏。集成测试专门构造了能读工作流、却不能读执行的角色,接口状态仍是200,但返回数据为空,而不是用状态码成功来表示数据可见。
评测样本路径同样先核对执行读取权限,再取出记录、检查成功状态和保存的数据,并走脱敏处理。缺少该权限会表现为未找到;这既影响查看候选字段,也影响把执行结果添加到评测数据表。新增单元测试要求,拒绝时不得加载执行数据,也不得插入样本。
二进制访问则把共享工作流查询所需权限由workflow:read换成execution:read,并保留执行与工作流归属核对。这里不能夸大成“在鉴权前绝不读取任何数据库信息”:服务仍可能先解析文件归属元数据。关键变化是访问判定不能只依赖流程可见性,更不是给知道文件标识的人自动放行。
修复说明指出,最近成功执行的共同加载器还服务于实例级MCP的固定数据路径。因此,服务端统一检查比只处理某个页面更有意义。不过,这不代表所有MCP工具都获得同样修复,更不能由一个共享方法推导出第三方扩展全部安全;自定义接口仍需逐条核对是否走到了正确加载器。
执行可读也不是获得所有后续操作的通行证。评测服务仍单独检查数据表的行读取或写入权限,且会从服务端执行记录重新取值,并应用请求者对应的脱敏逻辑。流程权限、执行权限、表权限与脱敏各有职责,提升其中一项不应被当作其余项目已经自动授权。
企业验收可以准备两组角色:一组仅能看流程,另一组同时能读执行;分别检查最近成功记录、评测候选、样本新增与附件访问。还应覆盖记录不存在、数据被脱敏以及表写入被拒绝的场景。这里是实施建议,不是本站已经在生产环境完成的验证,也不能仅凭按钮消失或HTTP 200就宣布通过。
本站核对了正式标签的相关服务代码、评测测试和控制器,以及此次回移的七个文件差异,没有安装n8n、运行上游测试、尝试越权或读取任何客户数据。公开材料并未在本文核验范围内证明实际攻击、泄露数量或某个统一严重等级,因此不把工程修复包装成已经确认的数据泄露事件。
这次变化值得企业团队关注的,不只是多了一次权限调用,而是把“看结构”和“看内容”重新分开。自动化工具越接近真实业务,角色设计越不能以页面为单位一把授权。把执行数据入口、评测复用和附件访问一起纳入回归,才是把补丁变成可验收的交付。
