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

时间:2018-06-06 08:51:45

标签: security concourse

我们正试图与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中的所有其他内容。

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

2 个答案:

答案 0 :(得分:0)

是不是也可以通过fly gp -p my-pipeline获取完整的秘密,还是Concourse编辑Credhub / Vault参考机密的内容?

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

调用的管​​道凭据文件中接收所有机密信息。

答案 1 :(得分:-1)

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

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