之一PCI DSS规则是:PCI DSS和释放部署自动化
“的PCI DSS适用于所有系统组件包括在或连接到持卡人数据环境”
,你会如何去处理SCM /发布自动化服务器?从开发网络的某个服务器开放一个端口,这使得它成为prod网络设置中的某个服务器的一种方式。
开发人员生成代码,接下来是构建管理器生成发布工件。发布工件必须通往生产环境。发布工件如何从开发到生产 - 从“不在作用域”开发框到“在作用域”生产框中如何实现?
之一PCI DSS规则是:PCI DSS和释放部署自动化
“的PCI DSS适用于所有系统组件包括在或连接到持卡人数据环境”
,你会如何去处理SCM /发布自动化服务器?从开发网络的某个服务器开放一个端口,这使得它成为prod网络设置中的某个服务器的一种方式。
开发人员生成代码,接下来是构建管理器生成发布工件。发布工件必须通往生产环境。发布工件如何从开发到生产 - 从“不在作用域”开发框到“在作用域”生产框中如何实现?
我已经做了大量的研究,最终我们将SCM服务器分成了dvscm和pdscm。
dvscm:
pdscm:
这样有DEV和QA/PROD之间的分离程度基于PSK的连接。 pdscm被锁定 - 开发人员无法访问它,默认情况下所有防火墙规则都是DENY。
来自pdscm的唯一传出连接是端口22到dvscm,用于同步。 与pdscm的唯一传入连接位于端口22上,连接到只具有用于读取部署工件的预留的用户,使用自定义的受限shell。
这可能不是一个很好的答案;据我所知,你不能有一个真正的自动化连续部署解决方案,不会导致'范围'回到开发系统。因此,您必须在部署中采取手动步骤,但您可以尽可能缩小该步骤。
在我最近正在开发的零售系统(大约80个地点的约100台收银机)中,我们选择了一个正好有一些额外网络带宽的寄存器,并将其指定为“岛”系统。我们可以将更新作为一个单独的文件(zip或其他东西)放到系统上,然后安装到那里,然后传播到所有位置的所有其他寄存器。所以我们将手动工作的窗口缩小到单个寄存器上的单个文件。
穿越那座桥的最安全和最简单的方法是SneakerNet - 每次有软件更新时将该文件放在该系统的拇指驱动器上 - 但可以使用远程桌面方法将文件复制到该文件系统,并保持在范围内,只要流程不是自动化的,而且您的网络完全不相关。