跳转到主要内容

集中管理用于访问应用程序、服务和It生态系统所有其他部分的工具、方法和凭证是值得的。

今天的企业IT场景的特点是持续的数字转换和史诗般的数据生成。随着远程和移动工作成为大流行后世界的新规范,移动性和灵活性已成为企业业务连续性的重要驱动因素。

为了自动化和集成所有可能的业务功能,集中和加速数据和信息流,提高生产力并提供更好的客户体验,各组织正在使用复杂的混合多云运营模型构建敏捷DevOps环境。

然而,随着流动性和及时数据的增加,责任也越来越大。企业在保持数据、服务和个人身份信息(PII)安全方面面临越来越多的挑战。尽管技术不断进步,但我们仍然看到数据泄露的数量年复一年地破纪录。

企业如何改进其数据存储、管理和保护方法,以确保员工能够直接访问数字资源,同时加强整个IT基础设施的安全性?

答案在于有效的秘密管理。

什么是秘密管理?为什么需要秘密管理?

机密管理是一套适当的工具和最佳实践,用于在整个生命周期中安全地存储、访问和集中管理数字身份验证凭据(或“机密”)。秘密是用于身份验证和授权的数据项,包括密码、公共和私有加密密钥、SSH密钥、API、令牌和证书。机器和人类都使用秘密进行身份验证和通信。

但为什么你首先需要秘密管理?

“随着向混合多云基础设施的普遍转变和对应用程序容器化的依赖,机器和人员持续访问系统和数据的需求大幅增长。例如,越来越多的应用程序必须持续访问不同的数据源、云服务和服务器,通常每种资源都需要不同类型的凭据。这一“在整个DevOps过程中,对秘密的需求呈指数增长,”基于SaaS的秘密管理工具Akeless的首席执行官兼联合创始人Oded Hareven解释道。

更棘手的是,开发人员经常将各种秘密编码到应用程序或微服务代码、脚本、自动化工具和代码库中——所有这些都驻留在各种基础设施中。更糟糕的是,这些代码处于不同的开发阶段,存在管理不当和不受保护的实际风险。其结果是总体上缺乏对秘密的控制和整合,导致了安全圈中所谓的“秘密蔓延”

麻烦还不止于此。在执行持续集成/持续交付(CI/CD)的云平台中保存的秘密,根据其性质,需要管理并允许访问其他机器和软件。为此,他们需要存储秘密和签名密钥(用于密封代码和软件更新),这些密钥通常存储在非安全位置,如开发人员的笔记本电脑或构建服务器。

秘密蔓延不仅使凭证难以追踪和管理,而且容易受到黑客攻击。事实上,根据Verizon的一份报告,被盗凭证占所有数据泄露的近一半。

最近的许多黑客行为,包括软件供应链黑客行为,都利用了代码中的秘密,这些秘密又存储在GitHub等易于访问的存储库中。事实上,GitHub最近在数千个私有存储库中检测到了超过70万个潜在的凭证泄漏,这已经成熟。

例子不断出现。最近曝光的软件供应链攻击劫持了流行的PHP和Python库,以窃取AWS密钥。在另一个例子中,一个帮助开源开发者编写和测试软件的常用服务被发现泄露了数千个身份验证令牌和其他秘密,黑客可以访问开发者在Docker、Github、AWS和其他代码库上的私人帐户。

但是,你会问,难道没有无数种方法可以用来保护密码、密钥和其他凭证吗?

有。这是问题的一部分。

秘密管理的挑战

当涉及到管理机密时,当今的安全解决方案存在相当大的效率低下和重复。其中一些挑战是:

秘密蔓延:

世界正在从预科走向云——秘密也是如此。三大云服务提供商(和其他提供商)都提供自己的秘密管理解决方案,大多数公司默认接受这些解决方案,只是因为需要更好的解决方案——还有什么比提供商自己的平台更安全?

但是,随着混合多云架构占据了centerstage(这是唯一一种正在被采用的it运营模式),大多数DevOps团队发现自己正在处理多个环境,其中充满了针对不同工作负载的微服务和容器。它们又有数千个机器对机器组件相互通信,导致密钥、令牌和其他秘密的数量惊人。

秘密的爆炸和分散对管理员和DevOps从业者来说是一个巨大的操作负担。如今可用的无数云和虚拟化解决方案允许用户大规模创建和销毁虚拟机和应用程序。不用说,每个虚拟机实例都有自己的一组需要管理的秘密。此外,在企业组织中,仅SSH密钥就可以达到数百万。除此之外,Ansible作业、Kubernetes容器和日常批处理例程都倾向于使用需要轮换的密码。

所有这些系统都无法访问其环境外部的安全资源。没有统一的控制平面可以帮助您管理跨不同平台存储的多个秘密存储库。

能见度不足:

本地化到不同环境(如云、预部署、边缘或混合)的静态秘密由不同的个人、团队和管理员管理,从而形成“秘密孤岛”。这不可避免地导致审计挑战和安全漏洞。

vault解决方案的复杂性:

由于大量现有和遗留工具和平台(包括DevOps和非DevOp)以及它们各自的大量扩展,在许多情况下,基于prem的vault解决方案无法正常工作。此外,在混合环境中,很难根据底层计算、存储和网络基础设施配置保险库。频繁更新的需要只会增加prem Vault的复杂性。

基于云的保险库也没有更好。一个巨大的危险信号是,这些产品是提供商的专有产品,只支持在其自己的环境和生态系统中运行的工作负载,因此它们同样不适合混合云架构。即使您只使用一个主要的云提供商,即多云环境,也只会导致vault扩展。另一个问题是您的主密钥与云提供商共享。这意味着流氓管理员、黑客或政府机构可以访问它们,而你将无能为力。

完美的秘密管理解决方案…

它可能不存在。但这并不意味着您无法创建安全的身份和访问管理(IAM)策略,以确保您的企业免受每种已知威胁和每种已知类型的威胁。

IAM是新的边界——它是现代安全战略的基础。随着自动化程度的提高和随需求波动的动态工作负载数量的增加,验证人和机器用户的身份(身份验证)以及证明他们访问资源的需要(授权)日益复杂。

此外,身份验证的性质不断变化。应用程序和数据库模块不再像过去那样局限于一大块代码。相反,它们是微服务和子组件的复杂和动态集成,每个子组件都有自己的身份验证过程。

以下是在多云环境中运行的企业,或是在现有的基础上混合使用私有和公共云系统的企业,在机密管理平台或解决方案中应该寻找的:

适用于混合、多云和多区域设置:这可能是企业最重要的因素。在可能的情况下,选择使用云原生技术与跨平台、跨环境工作流无缝集成的平台。您的机密管理解决方案应支持启用IAM的机器对机器和人对机器身份验证,并验证不同类型的机密,如SSH证书、API密钥、x.509证书、加密密钥等,以实现持续的安全合规性。

适用于不同的身份验证协议、语言和设备:重要的是,您的机密管理工具通过所有主要接口(当然包括命令行、GUI、REST API和主要语言的SDK)通过第三方身份提供商支持人员、硬件和软件身份验证。不用说,它应该促进动态秘密,并与Docker、Kubernetes、Terraform、Ansible和Jenkins等基于云的通用平台集成,以实现无中断的DevOps操作。

然后是缩放的问题。如果您希望以“云规模”增长并扩展您的地理或技术基础设施,您需要能够扩展您的机密管理功能,以支持所有现有和即将推出的工具和插件。

可以通过统一的SaaS平台进行管理:今天的安全团队需要对组织使用的所有环境中的所有用户、应用程序和设备的身份验证进行集中的可见性和控制。Hareven说:“根据与我交谈过的每一位安全主管的说法,一个直观的基于SaaS的秘密管理工具,可以实时查看秘密使用的每一个实例、审计日志记录和强大的分析,是当前的需要。”。

解决了秘密零问题,并实施了零信任模型:密码管理是目前常见的功能。个人可能有一个电子表格或文档,其中存储了他们使用的各种应用程序或控制面板的所有密码。然而,要打开此电子表格,他们可能需要另一个密码。他们还需要用户凭证才能登录操作系统并访问电子表格。将这个场景乘以你今天拥有的无数类型的秘密,你就得到了“零秘密”问题。

您的机密管理解决方案应该为您提供一组初始凭证,其中包含一个临时令牌或密钥,用于在父计算机中进行连续身份验证,这样“机密零”就不会受到损害。

这属于零信任体系结构(ZTA)的前提,该体系结构遵循最小特权原则(PoLP),根据该原则,用户和应用程序在特定时间段内被授予“及时”和对特定数量资源的细粒度访问权——只有在向管理员“证明”其请求之后。这些特权是动态授予的,并在预设时间段后自动过期。

保守秘密

理想的秘密管理平台通过使不同的团队能够访问他们需要的资源并自主管理他们的秘密,为企业中的DevOps、云迁移和数字转型提供了支持。通过云提供的“作为服务”解决方案,您可以减少维护开销,提高可用性,并扩展运营以满足组织增长目标。

本文:https://cioctocdo.com/quick-guide-secrets-management-enterprise