在参数或环境变量中使用的密钥

输出

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

描述

在本地开发过程中,通过环境变量将密钥传递给正在运行的进程是很常见的做法,但在 Dockerfile 中使用ENVARG设置密钥是不安全的,因为它们会保留在最终镜像中。此规则报告ENVARG键指示其包含敏感数据的情况。

不要使用ARGENV,而应使用密钥挂载,它能够安全地将密钥暴露给您的构建,并且不会保留在最终镜像或其元数据中。请参阅 构建密钥

示例

❌ 错误:AWS_SECRET_ACCESS_KEY 是一个密钥值。

FROM scratch
ARG AWS_SECRET_ACCESS_KEY