SecretsUsedInArgOrEnv

出力

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

(訳: 潜在的に漏洩リスクのある機密情報は ARG や ENV コマンド内に用いるべきではありません)

内容説明

実行プロセスに対して機密情報を受け渡す場合に、ローカル環境であれば環境変数を通じて実現するのは普通に行われることです。 しかし Dockerfile 内の ENVARG に機密情報を設定するのは安全ではありません。 なぜならこの情報は最終イメージに残り続けるからです。 本ルールは ENVARG のキーとして機密情報が含まれているという危険を警告するものです。

ARGENV に代わりとしては、シークレットマウントを用いるべきです。 これはビルド時の機密情報を受け渡す際に、セキュアな方法により実現するものです。 そして最終イメージやメタデータ内にその情報を残しません。 詳しくは 機密情報のビルド を参照してください。

❌ 不可: AWS_SECRET_ACCESS_KEY は機密情報です。

FROM scratch
ARG AWS_SECRET_ACCESS_KEY