我应该在 GitHub 操作工作流程结束时删除机密文件吗?

Should I remove confidential files at the end of a GitHub Action workflow?

我有一些操作需要将机密存储到文件中。这个秘密稍后被另一个工作使用,比如:

env:
  FIREBASE_DISTRIBUTION_KEY: ${{ secrets.GCP_SA_FIREBASE_DISTRIBUTION_PROD_KEY }}
run: |
  echo $FIREBASE_DISTRIBUTION_KEY > key.json
  export GOOGLE_APPLICATION_CREDENTIALS=key.json

从安全角度来看,我是否应该在工作流程结束时删除 key.json?喜欢:

- name: Remove credentials
  if: always()
  run: |
    rm key.json

我正在考虑 GitHub Actions 容器遭到破坏并且有人可以访问这些文件的场景。或者不相信 GitHub 他们正在完全删除 GitHub 操作容器。

这不是必需的。

首先,GitHub 动作运行器不是容器,它们是虚拟机。没有容器逃逸的机会,也没有“清理”容器的概念。

虚拟机处理完毕。 运行 您的工作所在的虚拟机及其任何磁盘映像都不会 re-used。