HashiCorp边界

2020-10-15 00:46:12

我们很高兴宣布HashiCorp边界,这是一个新的开源项目,使从业者和运营商能够安全地访问具有细粒度授权的动态主机和服务,而不需要直接访问网络。

边界旨在使用最低权限原则授予对关键系统的访问权限,从而解决组织在用户需要安全访问应用程序和计算机时遇到的挑战。授予系统访问权限的传统产品很麻烦,维护起来很痛苦,或者是缺乏可扩展API的黑匣子。边界允许经过身份验证和授权的用户访问专用网络中的安全系统,而无需授予访问这些系统所在的较大网络的权限。

为了更好地了解边界是如何工作的,以及我们为什么要构建它,我们想提供几个例子,以突出用户和运营商在安全连接到应用程序和关键系统时所面临的挑战。

下图说明了一个典型的连接工作流程,以及当用户需要远程访问位于专用网络中的生产系统时会遇到的挑战。通常,网关通过VPN或SSH堡垒主机桥接访问这些专用网络。这两种解决方案都提供了不同程度的安全性,可以为用户提供对专用网络的直接访问,而不仅仅是对预期系统的访问。

这种传统的访问模式假设资源大多是静态的,它不太适合具有高度瞬息万变和动态环境的云。随着员工和基础设施的增长而扩展解决方案会给管理员带来额外的管理痛点和复杂性。

一旦用户进入这些专用网络,他们就可以访问任何系统,而不仅仅是预期的目标。如果用于访问VPN或SSH主机的凭据丢失或被盗,则对手可能会访问整个网络。为防范该风险,传统工作流程通常会在这些专用网络内放置防火墙,以限制用户有权访问的内容,以防范该风险。

但是,当授予访问权限的系统从一开始就应该遵循最小特权原则时,管理内部防火墙既耗时又浪费。边界在设计时考虑到了这些核心问题:以最低权限授予对关键系统的访问权限。

边界的目标是简化安全访问主机和服务的工作流程,同时降低与传统解决方案相关的风险和攻击面。使用边界,访问基于用户的可信身份,而不是他们的网络位置。用户连接到边界并进行身份验证,然后根据其分配的角色可以连接到可用的主机、服务或云资源。

受信任的身份和角色是边界中的核心原则;它们定义了允许哪些用户与一组特定资源连接。例如,使用边界,您可以只授予开发人员连接到数据库的访问权限。此模型允许边界定义系统和应用程序的逻辑集,并消除了与静态IP地址相关的脆弱性。

边界对每个请求进行身份验证和授权,将用户映射到应用层的服务或主机。无需管理VPN凭据或SSH堡垒主机密钥,这简化了自注册并降低了凭据泄露的风险。

边界提供了一种易于使用、平台无关的方式,可以通过基于可信身份的单一工作流跨云、Kubernetes群集和内部数据中心访问您的所有主机和服务。它允许您删除硬编码凭据和防火墙规则,并使访问控制更具动态性。

边界0.1支持与具有基于角色的访问控制(RBAC)的应用程序进行身份验证和授权的TCP会话。用户可以使用边界Terraform提供程序、API或SDK自动管理对动态目标的访问。边界还支持会话元数据的监控和日志记录。

我们将边界的体系结构设计为易于理解、高度可扩展和容错。用户可以通过CLI、API或Web界面与边界交互。它可以在本地、云中或安全环境中运行,并且不需要您在目标主机上安装代理。

为了更好地解释边界是如何工作的,让我们来看看端到端连接是如何建立的。当用户向边界进行身份验证时,他们可以根据其角色从选择的主机或应用程序中进行选择,然后通过边界连接以访问这些主机或应用程序。

当用户通过边界建立TCP会话时,边界工作节点将无缝代理该连接。这使得边界比VPN或SSH堡垒主机等传统访问系统更安全,因为边界为用户建立连接并限制用户的访问。由于边界控制最终用户对目标系统的直接访问,因此它从不允许用户访问专用网络,从而使您组织的网络更加安全。

边界0.1现在是一个开放源码项目。请注意,该项目正在积极开发中,我们正在努力添加OIDC身份验证、HashiCorp Vault集成,以及从HashiCorp Consul、AWS、Azure和GCP获取的动态目标目录。

要了解边界的更多信息,请访问该项目的网站,网址是:bilaryproject.io,github.com/hashicorp/birm.获取源代码,HashiCorp了解如何查找我们的分步教程,以开始使用边界。

如果您遇到任何问题,请在边界GitHub问题跟踪器上报告或发布到边界讨论论坛。我们希望您喜欢“边界0.1”。