HashiCorp Vault 集成
- Updated: 2025/04/23
HashiCorp Vault 集成
您可以集成 Automation 360 以从 HashiCorp Vault 检索凭据。 凭据位于 HashiCorp Vault 中,您可以在其中进行管理、轮换和同步。
注: HashiCorp 标志和徽标是 HashiCorp, Inc. 的商标或注册商标,仅用于识别目的。
通过 HashiCorp HTTP API 将 Control Room 集成到 HashiCorp Vault 中。
下表列出了不同部署类型所支持的功能:
功能 | 云部署 | 本地部署 |
---|---|---|
坐席自动化凭据 | 支持 | 支持 |
坐席自动登录凭据 | 支持 | 支持 |
引导和系统凭据 | 不支持 | 支持 |
可以使用以下任一部署将 Control Room 与 HashiCorp Vault 集成:
-
云
下图所示为云部署,其中 Control Room 托管在 AAI 云上:
-
本地
对于本地部署,您需要部署以下内容:
- 在您的客户环境中作为软件Control Room。
- 在您的客户环境中,Bot Agent 运行自动化并访问客户应用程序。
注: 还可以通过互联网将本地 Control Room连接到 HashiCorp Cloud。
HashiCorp Vault 集成要求
- HashiCorp 服务应从 Control Room 访问。
- 必须通过网络外围防火墙规则使 Cloud Control Room 能够访问 HashiCorp 外部密钥保管库。 有关外部防火墙规则配置的详细信息,请参阅 外部集成 Control Room IP 地址。
- 确保您正在使用:
- HashiCorp Vault 1.13.x 或 1.14.x,以及 HashiCorp KV 密钥引擎 - 版本 2。
- 默认的密钥引擎路径为 /secret。 所有密钥都必须在密钥引擎根目录下创建 (/secret)。 要访问 HashiCorp Vault API,Control Room 会自动将默认的密钥引擎路径 v1/secret/data 附加到您输入的 Vault URL 中(例如:https://<hostname1:port_num>/v1/secret/data)。 确保具有给定 RoleID 的角色至少对该路径具有读取权限,并且所有密钥都在密钥引擎中创建。
- HashiCorp Vault REST API。
- API 引擎路径为 /v1/secret/data。
- 通过将
X-Vault-Namespace
标头设置为绝对或相对命名空间路径,在特定命名空间下进行 API 操作。 - 使用默认路径名称为“approle”的 AppRole 身份验证方法。 不支持自定义 AppRole 路径名称。
安装 HashiCorp Vault
必须安装和配置 HashiCorp Vault。 请参阅 HCP Vault Quick Start。
在 HashiCorp Vault 中使用 AppRole
AppRole 是一种身份验证方法,供 HashiCorp Vault 中的应用程序与保管库进行交互。 AppRole 使用以下值进行身份验证:
- RoleID: AppRole 的唯一标识符。 可以在任意数量的应用程序实例中使用 RoleID。
- SecretID: 用于验证 AppRole 的随机生成值。 密钥 ID 仅用于单个应用程序实例,生命周期短,并且只能由授权的应用程序使用。重要: 我们建议您不要共享此值。
- 角色名称: 角色按角色名称列出。
- 命名空间: 允许您创建密钥组,并将策略应用于这些命名空间,以确保每个租户只能访问他们有权限的密钥。
有关如何配置 AppRole 的信息,请参阅 AppRole Auth Method。
导入服务器证书
在 On-Premises 部署中,您可以将单个服务器证书导入到信任库中。 但是,我们建议您导入颁发证书的证书颁发机构 (CA) 证书。 有关更多信息,请参阅 导入 HTTPS SSL、中级证书和 CA 证书。
- 客户端 (Automation 360 Control Room) 向 HashiCorp Vault(受保护资源)发送请求。
- 服务器随后通过向客户端发送证书进行响应。
- Control Room 通过将其与存储在 Control Room 信任库公共部分中的受信任服务器认证信息进行验证,验证由 HashiCorp 服务器发送的证书。
- 双方(客户端和服务器)在证书通过以下验证的基础上获得对受保护资源的访问权限:
- Control Room 必须信任 HashiCorp 服务器上的证书
- 证书中的主题字段与调用系统的完全限定域名(DNS 名称)匹配。
- 证书尚未过期。
HashiCorp HTTP API 配置要求
必须在 Control Room 和 HashiCorp 服务器之间建立网络连接。 Control Room 通过 HashiCorp HTTP API 连接到 HashiCorp Vault,适用于本地部署或 Cloud 部署。
要使用 HashiCorp API,必须设置以下必需的参数:
- 保管库 URL
- 角色 ID
- 角色名称
- 密钥 ID
- 密钥引擎路径
- 命名空间(可选)
- 可选证书
审查 HashiCorp 凭据术语和标识符
HashiCorp 和 Automation Anywhere 使用不同的术语来描述和识别凭据:
描述 | HashiCorp | Automation Anywhere |
---|---|---|
凭据存储位置 | 密钥 | 凭据 |
- HashiCorp 中的凭据存储为密钥。
- Automation Anywhere 中的凭据存储在存储柜 中,每个存储柜都有 Control Room 用户访问控制。
- 用户名:john
- 密码: 2zR%#sX#g
- 电子邮件:john@email.com
- 密码:my-long-passcode
HashiCorp 密钥 ID 轮换
Control Room 运行一个计划任务,主动为租户轮换 HashiCorp 密钥 ID。 这一流程可确保涉及密钥保管库凭据的自动化操作不间断运行。 默认情况下,密钥 ID 的轮换频率为每小时一次。 密钥 ID 将根据其过期时间进行更改。 当密钥 ID 的三分之二已过期时,可以更改密钥 ID。
如果 HashiCorp 密钥 ID 轮换失败,可以使用以下 Cloud 或 On-Premises 步骤手动更改密钥 ID:
- Cloud: 使用HashiCorp Vault 的 Cloud 集成
- On-Premises: On-Premises 使用 HashiCorp Vault 进行安装后操作.