SecretsUsedInArgOrEnv

输出

Potentially sensitive data should not be used in the ARG or ENV commands

描述

虽然将 secret 传递给正在运行的进程很常见 通过本地开发过程中的环境变量, 使用 or 在 Dockerfile 中设置密钥不安全,因为它们会保留在最终镜像中。 此规则报告冲突 where 和 keys 表示它们包含敏感数据。ENVARGENVARG

您应该使用 secret mounts,而不是 或 ,而是 它们以安全的方式向你的构建公开 secret, 并且不要保留在最终镜像或其元数据中。 请参阅构建密钥ARGENV

例子

❌ Bad:是一个秘密值。AWS_SECRET_ACCESS_KEY

FROM scratch
ARG AWS_SECRET_ACCESS_KEY