400-666-7732

IT治理和版本控制:您需要了解的内容

        版本控制对于开发硬件和软件的所有组织至关重要 – 尤其是针对外部用户的产品。它在解决IT治理,风险和合规性(GRC)方面也至关重要。监控您的更改历史记录并拥有适当的文档和跨版本跟踪,您可以:

  • 确保您的数据安全

  • 改善风险管理

  • 轻松执行审核

        版本控制进程不足可能会导致系统故障并中断业务运营。而错误会产生严重后果。例如,开发人员可能将错误的版本部署到生产中 – 或者更糟糕的是,将其部署到硬件设备中。这可能会损害财务,声誉,甚至生命和财产。

        更不用说这些过程可以为网络攻击敞开大门。安全漏洞 – 导致被盗的源代码,数据损坏或勒索软件 – 当然需要付出高昂的代价。

        如果没有适当的版本控制实践,公司可能会遇到波及的财务影响。即使在没有灾难的情况下,生产力损失的直接成本也很高。此外,由于顾客不满意,公司的声誉会略为降低。延迟发布或产品召回可能对公司来说太吃不消了。因此,这样做显然会减少不少的代价:

  • 实施治理和合规性

  • 设置适当的安全控制

  • 引入审计

        除法律要求外,实施GRC是一项可靠的业务要求。每个组织都可以从提高安全性和实施审计政策中受益。

使用合适的VCS进行更好的风险管理

        合规的第一步是保护您的VCS。对于大多数版本控制系统,这意味着实施防火墙。通过在云中部署VCS(如Amazon Web Services(AWS)),您可以通过安全组和访问控制列表(ACL)控制访问。

        防火墙和云设置至关重要。问题是,您的VCS是否可以用于增强GRC并满足审计要求 – 并使您的管理员和业务专业人员的生活更轻松?

        在满足这些需求时,所有版本控制系统都不相同。一些非常受开发人员欢迎的人不能满足他们支持这些企业要求的能力。

用Git治理

        Git是最受欢迎的版本控制系统之一。开发人员通常会将产品源代码下载到他们的计算机上进行修改。但是使用Git意味着开发人员必须下载具有完整历史记录的整个存储库才能获得该源代码。这可能是任何公司的安全问题,特别是如果他们希望审计和维护合规性。

        如果您打算使用Git,那么提高可审计性和合规性的建议就是将项目/产品分解为许多仓库。然后,您只能将权限分配给包含开发人员正在处理的特定文件的仓库。这将使审计变得更容易,但您仍然面临着实现满足审计所有要求所需的透明度的挑战。这种方法的成本是:跨存储库依赖性使得开发、管理和构建系统变得更加困难。

        虽然Git是一个分布式版本控制系统(DVCS),但您需要一个中央服务器来保护您的知识产权(IP)。没有神奇的方法可以有效地保护每个人的工作站。即使实施Machiavellian技术 – 比如让开发人员在VDI(桌面虚拟化)上工作 – 也只会尽量将风险降到最低。

        要使用Git进行持续集成/持续交付(CI / CD)来保护构建计算机,您可以设置防火墙或基于云的安全设置,如上所述。这些机器逻辑上坐在Git服务器旁边。他们的专用网络访问路径需要被锁定。但是,尽管有必要,设置所有的这些,并在生产中对其进行管理,对于管理员来说可能非常耗时。

建立安全性以改善风险管理

        接近VCS安全性的一个好方法是深入研究防御的概念。您将需要在整个网络和系统中使用多层安全控制。这在特定安全控制失败或漏洞被利用的情况下提供冗余。安全控制可以在人员,程序,技术和物理层面上实施。

        Helix Core为管理员提供了许多细粒度的方法来控制对代码和非代码资产的访问,以实现合规性和治理。让我们回顾一下您可以使用Helix Core设置的一些安全层。

组织知识产权资产的合规战略

        在拥有许多开发人员的大型组织中,您应该在代码存储库中建立适当的命名约定和层次结构设计。这为大型开发组织带来了最高效和最节省成本的好处之一,尤其是在跨团队共享代码的情况下。

        在决定限制和/或授予权限时,在Helix Core中建立命名约定将有所帮助。如果需要,可以将权限细化到单个文件级别。

        这对GRC有影响,因为正如我们所知,并非所有代码都应该共享。它还有助于管理开销。管理员和安全团队可以轻松查看谁有权访问哪些资产并分配对新用户的访问权限。如果出现问题或错误,他们不必四处乱跑,看看是什么造成了这个问题。

        简化元数据收集和命名约定,以帮助满足审计需求。它可以提高您的安全性并简化管理员的工作。

精炼Helix核心权限和策略

        实施安全策略时,请查看可以访问VCS中的内容的人员。了解用户可以查看和执行的操作有助于确定必要的权限。使用最小特权原则(PoLP),仅授予对人员和程序完成其工作所必需的数据和过程的访问权限。

有几种方法可以做到这一点:

  1. 使用传输层安全性(TLS,较新版本的SSL)来保护服务器,计算机和应用程序之间的内部/外部网络的通信。

  2. 要求用户通过AD / LDAP / MFA进行身份验证。

  3. 锁定版本控制服务器以防止内部篡改。

  4. Helix Core可以进一步提升您的安全性。P4保护表可以帮助您优化用户,组和程序的访问权限。您可以通过以下方式定义权限级

访问权限

定义用户访问级别,例如列表,读取,写入,管理员或超级用户。

用户/组

定义权限是应用于单个用户还是一组用户(建议使用组)。

主办

定义特定的TCP / IP地址 – 单个IPv4或IPv6地址,CIDR表示法范围或使用通配符。例如,这允许在从LAN或WAN访问服务器时授予不同的权限。

定义文件夹树甚至应用访问权限的特定文件(可用的强大通配符)。

例如:

保护您的DevOps管道用于GRC

        您还可以使用Helix Core保护您的DevOps管道。使用Jenkins或其他CI / CD自动化工具时,应严格控制对构建服务器的访问。确保规范构建服务器和版本控制系统服务器之间的访问。隔离服务器有助于确保入侵者不会进入。同样重要的是,它还会阻止他们将这些服务器用作其他资源的跳跃点。

在优化对这些程序/帐户的访问时

  1. 确保构建计算机帐户不登录,这会禁止其他任何人登录该帐户。

  2. 使用多个帐户进行权限委派,而不是仅授予某些程序“管理访问权限”。

  3. 使用子网控制访问和流量。这会隔离子网中的自动化进程,因此无法访问整个网络。

  4. 检查客户端和程序定期连接和轮换TLS票证的频率。

  5. 合规战略:审计最佳实践

  6. 正确设置版本控制系统后,可以更轻松地解决风险管理实践并实施审核。

        在本博客的第二部分中,我们将查看管理员可用于帮助您满足GRC的Helix Core命令。敬请关注。

分享到: