Google Secret Manager 秘密似乎不起作用,但我没有发现任何问题

Google Secret Manager secrets do not seem to work yet I can find nothing wrong

我使用记录的 CLI 方法创建了一堆秘密,如下所示:

echo "ak_prod_4kj56hv24hkjcg56hj2c34k5j3hbj3k124v5h243c" | gcloud secrets versions add some-api-key --data-file=-     

我已将我的 YAML 设置为在启动时读取它们,这是有效的,因为如果没有配置任何值,我的应用程序代码将抛出异常。

  spec:
    template:
      spec:
      - image:
        env:
        - name: Some__ApiKey
          valueFrom:
            secretKeyRef:
              key: "1"
              name: some-api-key

但是我的代码不起作用。它在 Azure 上工作,所以这不是我的代码的问题。当我调用 API 时,我的密钥被拒绝了。配置了一个密钥,我的代码会检查它,此外,如果 Cloud 运行 无法读取它的秘密,它就会失败。

问题出在密文末尾白色space

不知何故引入了一个白色space字符。回顾我的 CLI 命令历史,它可能在 --data-file=-

之后尾随 whitespace

也许是 Google 示例中 " | 之间的 space。

Google 控制台 GUI 不会在引号中显示秘密值,因此几乎不可能告诉它已经发生。

一个星期就解决这个问题。一周。设计不当的代价 software/bad 示例代码。

实际上是 echo。你需要 echo -n.

echo -n "ak_prod_4kj56hv24hkjcg56hj2c34k5j3hbj3k124v5h243c" | gcloud secrets versions add some-api-key --data-file=-