腾讯有Dify团队吗?difySandbox成了腾讯Dify团队开源的

历史相关文章回顾

DeepSeek+dify 本地知识库:真的太香了

Deepseek+Dify本地知识库相关问题汇总

国产AI之光!DeepSeek本地部署教程,效果媲美GPT-4

本地DeepSeek下载慢,中断、内网无法安装方案来了


今天在学习dify的时候,dify的节点将一些代码功能进行了包装,给不懂技术的小伙伴带来很大的便利性。在我看到它的代码执行模块,刚看到,眼睛一亮,有了这个就有了一切可能。可我翻看了官方文档,心一下子就凉了。

有限制

  • 不能访问文件系统
  • 不能进行网络请求
  • 不能执行操作系统级命令

什么是dify的沙箱是怎么设计的,然后我找了找,发现官方有一篇文章,链接如下: https://ncnmfdan85y5.feishu.cn/wiki/EYsKwFMK1irKTikqCy6c26menfe

我用元宝,让它帮我翻译并优化下,直接给我来了句腾讯Dify团队。

大家以后悠着点,不少人反馈元宝夹带私货。

回归正传,我们看下Dify的sandbox机制。


DifySandbox的代码执行与安全体系
 

在Dify的核心功能工作流(Workflow)中,我可以可通过拖拽式编排实现复杂业务逻辑。数据处理作为关键环节,主要面临三类场景需求:

  • 结构化数据处理:解析LLM生成的JSON/XML文本或HTTP请求响应,提取结构化数据
  • 多源数据整合:融合知识检索节点输出内容,或合并Google搜索与知识检索结果
  • 动态模板编排:通过Jinja2/Liquid等模板语法实现灵活提示词配置

虽然场景各异,通过代码模块既能保证功能通用性,又能通过LLM节点与模板的深度结合实现灵活编排。但随之而来的就是安全隐患.

当恶意用户获取进程控制权时,传统的Python/Node.js进程执行模式将暴露服务器文件系统与数据库访问权限,容易造成安全隐患。DifySandbox通过多层隔离机制,在保障正常业务运行的同时实现恶意代码拦截。


DifySandbox架构设计与实现
 


核心安全需求

  1. 语言无关性:支持Python/Node.js双生态,提供系统级解决方案
  2. 纵深防御:即便沙盒被突破,仍需确保核心资源不可访问
  3. 网络隔离:防止内部网络嗅探与非法资源访问


DifySandbox的方案


1. 混合隔离架构

  • 持久化容器:启动阶段预载沙盒容器运行HTTP服务,避免每次请求新建容器
  • 系统调用过滤:基于Seccomp的白名单机制,仅允许必要syscall(amd64架构300+,arm64架构400+)


2.虚拟化文件系统

  • 通过chroot创建进程级虚拟根目录,隔离敏感文件(如/etc/passwd
  • 权限降级机制:执行用户代码前切换至非root用户/组


3. 智能网络代理

  • docker-compose环境:构建内部SSRF_PROXY_NET网络,通过代理容器实现外网访问控制
  • k8s环境:直接配置出口规则实现网络管控

DifySandbox通过系统调用过滤、文件虚拟化、网络代理三层防护,实现了Linux原生级别的安全隔离。


后记
 

明天分享dify的agent和工作流方面的内容。


?【三连好运 福利拉满】?

? 若本日推送有收获:
? 点赞 → 小手一抖,bug没有
? 在看 → 一点扩散,知识璀璨
? 收藏 → 代码永驻,防止迷路
? 分享 → 传递战友,功德+999
? 关注 → 追更不迷路,干货永同步

? 若有槽点想输出:
? 评论区已铺好红毯,等你来战!

请使用浏览器的分享功能分享到微信等