如何使用存储在Vault中的github-private-key安全地使用大厅

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用存储在Vault中的github-private-key安全地使用大厅相关的知识,希望对你有一定的参考价值。

我们正试图与Vault合作。使用保险库的原因是以安全的方式存储保密信息。我们想要存储在Vault中的一些参数是github私钥,用于访问github存储库,以及CloudFoundry访问的用户名和密码。这些秘密预计不会被分享......

听起来非常好,但是,当访问广场团队时,很容易恢复保险库中存储的秘密的内容。

示例:在保管库中存储以下内容

vault write concourse/main/cat-name value=Garfield
vault write concourse/main/dog-name value=Odie

运行下一个管道将显示存储的参数的内容:

jobs:
  - name: show-animal-names
  plan:
  - task: show-animal-names
  config:
    platform: linux
    image_resource:
      type: docker-image
      source:
       repository: busybox
    params:
      CAT_NAME: ((cat-name))
      DOG_NAME: ((dog-name))
    run:
      path: env

结果如下:

fly -t concourse trigger-job -j publishing-outputs/show-animal-names -w
started publishing-outputs/show-animal-names #1
initializing
running env
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOME=/root
CAT_NAME=Garfield
DOG_NAME=Odie
USER=root
succeeded

这样,也可以为被授予访问更新管道的所有人检索用户名,密码,github-private-keys以及存储在Vault中的所有其他内容。

有没有办法使用大厅并让这些秘密保密,所以没有显示?

答案

是不是也可以通过做一个fly gp -p my-pipeline得到完整的秘密,或者是Concourse编辑Credhub / Vault引用的秘密的内容?

我还认为Concourse应该有更多的秘密保护。这不仅与Vault或Credhub收到的秘密有关。我也觉得不方便让每个有权访问团队的用户都能从我用fly sp -p... -l <secret-file>调用的管道凭证文件中接收所有秘密。

另一答案

你有没有考虑过CredHub和它与Concourse的整合?

https://concourse-ci.org/creds.html#credhub

以上是关于如何使用存储在Vault中的github-private-key安全地使用大厅的主要内容,如果未能解决你的问题,请参考以下文章

BrainTree 经常性账单:如何将客户存储在 Vault 中

如何在 Azure Function 代码中使用访问密钥(由 Azure Vault 管理)连接存储

如何使用存储在保险库中的 github-private-key 安全地使用大厅

如何在 Microsoft Azure Vault 中存储密钥库?

无法将存储的 Vault 机密检索到 Kubernetes 中的 Springboot 应用程序

如何将 Spring Cloud Config 与 Git 和 Vault 复合环境存储库一起使用?