在参数或环境中使用的秘密

输出

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