使用保管库函数访问哈希科普保管库机密(已弃用)
数据收集器可以使用哈希科普保险库功能来访问存储在哈希科普保险库中的信息(又名机密)。但是,Vault 函数现已弃用,并将在将来的版本中移除。我们建议使用 Vault 凭据存储集成中提供的凭据函数。
使用 HTTPS 时,您可以使用保险柜密钥代替用户名和密码属性、类似属性(如 AWS 访问密钥 ID 和秘密访问密钥)以及 HTTP 标头和正文。
要使用保险柜功能访问保险库机密,请配置数据收集器访问保险柜的属性。然后,使用管道中的保管库函数在运行时访问保管库。
- 配置哈希科普库连接属性。
- 在管道中,使用保管库函数访问哈希科普保管库机密。
步骤 1.配置哈希科普库属性
要使数据收集器能够连接到哈希科普库,请配置位于目录中的以下文件:$SDC_CONF
库属性文件
该文件包含单个 Vault EL 属性,您必须取消注释才能使用已弃用的 Vault 函数。vault.properties
凭据存储属性文件
该文件包含其余的库属性。库服务器 URL、角色 ID 和密钥 ID 是必需的属性。根据需要配置其他属性。credential-stores.properties
credentialStore.vault.def
credentialStore.vault.config.pathKey.separator
保险库属性 | 描述: __________ |
---|---|
credentialStore.vault.config.addr | 必填。以下列格式输入的保险柜服务器网址: 使用 HTTPS 避免未加密的通信。 |
credentialStore.vault.config.role.id | 必填。数据收集器用于向保管库进行身份验证的保管库角色 ID。角色 ID 由保管库管理员在保管库中配置。
数据收集器保管库集成依赖于保管库的应用程序角色身份验证后端。
重要:应用程序 ID 身份验证后端已被哈希科普弃用,并将在将来的版本中删除。因此,请不要为新安装配置 credentialStore.vault.config.app.id 属性。
|
credentialStore.vault.config.secret.id | 必填。数据收集器用于向保管库进行身份验证的保管库机密 ID。密钥 ID 由保管库管理员在保管库中配置。 若要保护机密 ID,请将机密 ID 存储在外部位置,然后使用函数检索机密 ID。 默认使用该函数从目录中的保管库机密 ID 中检索机密 ID。 |
credentialStore.vault.config.lease.renewal.interval.sec | 自选。在检查需要续订的租约之前等待几秒钟。 默认值为 60。 |
credentialStore.vault.config.lease.expiration.buffer.sec | 自选。用于即将到期的租约的缓冲区。数据收集器续订过期时间少于指定秒数的租约。 默认值为 120。 |
credentialStore.vault.config.open.timeout | 自选。与保险柜建立 HTTP 连接(以毫秒为单位)超时。 默认值为 0 表示无限制。 |
credentialStore.vault.config.proxy.address | 自选。代理网址。配置为使用代理访问保险柜。 |
credentialStore.vault.config.proxy.port | 自选。代理端口。配置为使用代理访问保险柜。 |
credentialStore.vault.config.proxy.username | 自选。代理用户名。配置为使用代理访问保险柜。 |
credentialStore.vault.config.proxy.password | 自选。代理密码。配置为使用代理访问保险柜。 若要保护密码,请将密码存储在外部位置,然后使用函数检索密码。 |
credentialStore.vault.config.read.timeout | 自选。在超时之前等待数据的毫秒数。 默认值为 0 表示无限制。 |
credentialStore.vault.config.ssl.enabled.protocol | 自选。启用了 SSL/TLS 的协议。建议使用版本 TLSv1.2 或更高版本。 默认值为 TLSv1.2,TLSv1.3。 |
credentialStore.vault.config.ssl.truststore.file | 自选。Java 信任库文件的路径。在使用 Java 缺省信任库不信任的专用 CA 或证书时是必需的。 |
CredentialStore.vault.config.ssl.truststore.password | 自选。信任库文件的密码。 若要保护密码,请将密码存储在外部位置,然后使用函数检索密码。 |
credentialStore.vault.config.ssl.verify | 自选。是否验证 Vault 服务器主机名是否与其证书匹配。 默认值为真。不建议使用假。 |
CredentialStore.vault.config.ssl.timeout | 自选。SSL/TLS 握手超时(以毫秒为单位)。 默认值为 0 表示无限制。 |
credentialStore.vault.config.timeout | 自选。建立连接后,以毫秒为单位从 Vault 读取数据超时。 默认值为 0 表示无限制。 |
重新启动数据收集器以启用对这两个文件的更改。
步骤2.从管道调用哈希科普保险库
启用数据收集器访问哈希科普保管库后,使用管道和阶段属性中的保管库函数访问保管库机密。
表达式语言提供用于返回保管库机密的保管库函数。您可以在用户名、密码和类似属性(如 AWS 访问密钥 ID 和秘密访问密钥)中使用 Vault 函数。使用 HTTPS 时,您还可以使用 HTTP 标头和正文中的函数。
保险库:读取()
用于返回您提供的保管库路径和密钥的值。通常,您将使用此函数访问机密。
Vault:readEdeddelay()
用于返回指定保管库路径和密钥的值,并有延迟。使用此函数在响应中合并延迟,以便为其他进程完成留出时间。
例如,在使用文件库 AWS 密钥后端基于 IAM 策略生成 AWS 访问凭证时,应使用此函数。根据 Vault 文档,您可能需要延迟 10 秒或更长时间才能成功使用凭据。