无法定义从保险库中提取的秘密作为变量

问题描述 投票:0回答:1

我已配置并运行保管库。 我还有与 Vault 集成的本地 gitlab 服务器。 他们合作得非常完美。 当我尝试使用如下参数调用秘密时,问题就开始了:

    SECRET:
        vault: $path_secret@kv-secret
variables:
    path_secret: path/to/secret

如果我将其设置为没有“/”,则它可以正常工作:

    SECRET:
        vault: $first/$second/$third@kv-secret
variables:
    first: path
    second: to
    third: secret

请忽略任何语法问题。问题在于逻辑而不是语法。 在保管库秘密的变量中指定“/”似乎存在问题。

此外,我发现如果我将负责读取此“路径/到/秘密”的策略设置为:

path "*" {
      capabilities = ["read","list"]
}

它工作起来没有任何问题! 我的 Vault 在任何其他情况下都能与我的 gitlab ci 完美配合。

我尝试用“//”和“\”转义“/”字符,并在创建和使用时用引号将变量括起来,但仍然没有成功。

更新:刚刚发现我们最近升级到了较新的 gitlab 版本,我担心这与此故障有关,我们之前的版本 15.10 没有很大的飞跃,但我不确定是什么导致了它

Vault版本1.12.1
Gitlab 版本 15.11

gitlab jwt hashicorp-vault vault
1个回答
0
投票

似乎从保管库获取秘密时出现问题,而租客“/”是参数的一部分...... 可能与解析它有关。 我只是将它分成路径目录

© www.soinside.com 2019 - 2024. All rights reserved.