HashiCorp Vault

将 HashiCorp Vault 连接到 Activepieces 以实现企业级密钥管理

HashiCorp Vault 是一个企业级密钥管理系统,提供对密钥、API 密钥、密码和其他敏感数据的安全存储和访问。

前置条件

在将 HashiCorp Vault 连接到 Activepieces 之前,请确保你拥有:

  • HashiCorp Vault 键值(KV)密钥引擎 版本 2
  • AppRole 认证方法启用
  • 一个或多个 AppRole配置了适当的策略

策略

通过将以下内容添加到策略中,使创建的 AppRole 能够访问你的密钥引擎:

path "sys/mounts" {
  capabilities = [ "read" ]
}

path "<secret_engine_name>/data/<secret_name>" {
  capabilities = [ "read" ]
}

或者

path "sys/mounts" {
  capabilities = [ "read" ]
}

path "<secret_engine_name>/data/*" {
  capabilities = [ "read" ]
}

连接到 Activepieces

  1. 进入 Platform Admin → Security → Secret Managers
  2. 点击 New Connection 并选择 HashiCorp Vault
  3. 为连接输入一个名称
  4. 选择范围Platform 使其对所有项目可用,或 Project 将其限制到特定项目
  5. 填写连接详情:
    • URL:你的 Vault 服务器 URL(例如 http://localhost:8200
    • Role ID:来自你的 AppRole 配置的角色 ID
    • Secret ID:来自你的 AppRole 配置的秘密 ID
    • Namespace(可选):如果你使用 Vault Enterprise 命名空间,则为 Vault 命名空间
  6. 点击 Save 测试并保存连接

使用 HashiCorp Vault 密钥

连接保存后,你可以在任何 Piece 连接对话框中引用 Vault 密钥 — 无论是在全局连接中(平台管理)还是直接在工作流构建器中。

  1. 打开连接对话框,点击凭据字段旁边的密钥图标(🔑)
  2. 从下拉菜单中选择你的 HashiCorp Vault 连接
  3. 按以下格式输入密钥路径:mount/data/path/to/secret/key

例如,如果你使用以下命令存储了一个密钥:

vault kv put -mount=secret mysec api_key='supersecret'

需要输入的路径为:

secret/data/mysec/api_key
管理 OAuth2 应用

连接将在工作流运行时自动从 Vault 检索密钥。

如果你在 Vault 中更新了密钥,但变更未在流程中反映出来,则缓存的值可能仍然有效。在密钥管理器页面中,点击连接旁边的**刷新图标**以立即清除其缓存,或等待最多 1 小时使其自动过期。请参阅[缓存](/docs/activepieces/admin-guide/guides/secret-managers/overview#caching)了解详情。