SecretsUsedInArgOrEnv

输出

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

描述

虽然在本地开发期间通常通过环境变量将 secrets 传递给正在运行的进程,但在 Dockerfile 中使用 ENVARG 设置 secrets 是不安全的,因为它们会保留在最终镜像中。此规则报告 ENVARG 键表明它们包含敏感数据时的违规行为。

您应该使用 secret mounts 而不是 ARGENV,secret mounts 以安全的方式将 secrets 暴露给您的构建,并且不会保留在最终镜像或其元数据中。请参阅 构建 secrets

示例

❌ 不好:AWS_SECRET_ACCESS_KEY 是一个 secrets 值。

FROM scratch
ARG AWS_SECRET_ACCESS_KEY
页面选项