几乎每个研发负责人都被问过这个问题:代码会不会被带出去?大多数人当时的答案是"签了保密协议"。保密协议管得住君子,管不住一次U盘拷贝、一个私人网盘同步、一封带走附件的邮件。这篇文章只解决一个问题:源代码防泄密到底怎么做,才能从纸面制度变成系统里跑着的规则。下面七个步骤按实施顺序排,做到第五步,大部分泄露路径就已经被封住。

一、先摸清代码在哪、谁能碰到
动手之前先盘点,不盘点就上工具,是这类项目最常见的翻车方式。要盘三样东西:代码存放在哪些位置——办公电脑、测试机、笔记本、居家办公设备、各类构建服务器;核心代码库有哪些,各自多少行、几年积累、对应哪条产品线;谁真正需要接触核心模块,把名单列出来。

很多团队盘完会发现,核心算法库的可见人数比实际需要多出一倍以上。这份名单就是后面所有权限收缩的依据,也是加密推广范围的边界——全员加密等于全员抱怨,最后一定推不动。
二、研发网和外网怎么隔离
隔离的核心是三件事,缺一件都不算闭环。
研发区单独划VLAN,与办公区、访客区网络分层;研发区的终端默认不能访问外网,确需访问的走白名单地址——开源仓库、文档站、依赖源逐项登记,别开"全网放行再封端口"的野路子。代码仓库不暴露到公网,SVN、Gitlab只在内网可达,远程访问统一收口到VPN或零信任网关,别让"在家连公网Git"成为习惯。

一个常被忽略的细节:测试机和演示机最容易失控——为装环境随便插外网、为演示方便装微信。这两类机器要么纳入同样的隔离策略,要么物理上就不给留外网口。
三、加密落在驱动层,别落在应用层
透明加密要做到"保存即加密、打开即解密",研发无感。关键在实现层级:驱动层加密在文件系统过滤层完成,编译、调试、提交Git的行为完全不变;应用层加密靠hook具体软件,换来的是编辑器卡顿、兼容性故障,以及被一件简单的事破功——把文件后缀改掉,或者用另一款编辑器打开。

| 选型时让对方现场演示三件事:一边编译一边看构建耗时有没有可感知增加;Git push/pull一个百MB级别的仓库是否正常;把文件改名、改后缀后带出内网,能否打开。三件都过关,加密就不会和研发生产力打架,这是方案能不能活过第一个月的分水岭。 |
四、代码仓库权限按模块细分,不要按部门分
权限设计的最小单位是模块,不是部门。一个工程师只应看到他手头模块需要的代码:核心算法目录独立授权,跨模块访问走审批;管理员账号与开发账号分离,CI服务账号单独授权并限制来源IP;核心库的写权限收到个位数,读权限按项目周期开放。

配套动作是提交记录归档。谁在什么时间提交了什么、拉取了哪些分支,这些记录平时是流水账,出事时是证据链。日志至少留存180天,核心岗位的操作记录要能追溯到人。
五、外发管控:审批卡几步,外发包怎么设
代码外发的口子比内网更松:交付甲方、发外包、传供应商、给客户做演示。外发流程建议卡三道:申请——说明模块、用途、接收方;审批——技术负责人确认范围,敏感模块升级到CTO;外发——只发审批过的目录,且必须是加密外发包。
加密外发包的三个设置建议默认打开:打开次数和天数限制,超次超期自动失效;设备和IP绑定,转发给第三方也打不开;打开时带水印,显示接收方信息,出了事能追到人。交付外包的代码尤其要按这个来——外包团队的电脑环境,你一天都没法控制。
六、离职环节当天闭环
离职当天的动作清单:账号与代码仓库权限同步回收,不留"次日注销"的时间差;办公设备镜像留档后再交付;HR、IT、直属上级三方各牵一头,而不是全靠一份物资交接单。
制度侧补两样:保密协议里写明代码库清单和接触范围,竞业协议按岗位区分签署。技术侧加一条:离职前两周的提交、下载、打印记录自动汇总给直属上级,异常动作早于离职日暴露。
七、工具选型看五条标准
七步走完,该选工具了。别从功能清单开始比,先看这五条:加密是否在驱动层;对Git、SVN、编译、调试是否零侵入;权限能否按模块细分到目录级;外发管控是否带次数、天数、水印;审计日志是否完整、留存周期可配。

市面上能把这几条同时做齐的产品并不多,安秉网盾是其中之一:驱动层透明加密对研发习惯零改变,Git/SVN下实测构建耗时无可感知增加;核心目录按模块授权、外发审批卡点、操作日志留存都能在同一个控制台配齐。对研发负责人来说,这意味着不用在三个系统之间来回拼流程。
结语
这套步骤的本质,是把"人靠得住"换成"系统靠得住"。分级、隔离、加密、分权、外发、离职、审计——七件事没有一件需要颠覆现有研发流程,需要的只是有人把它排进这个季度的计划。代码是团队几年攒下的家底,别等它出现在别人的发布会上,才想起该做点什么。
本文来源:国家信息中心网,企业安全中心
主笔专家:方滨兴
责任编辑:编辑部-方一诺
最后更新时间:2026年10月19日