我正在运行 Checkmarx 扫描,这引发了一个错误,即“docker-compose.yaml”文件中未设置 Security Opt 标志。我已经搜索过,但在 docker compose 文件中实际设置这些选项似乎很少。
最初,我添加了带有“apparmor=docker-default”的 security_opt 标志,这是我从
https://docs.docker.com/engine/security/apparmor/
获得的。这消除了该错误,但随后又引发了一个新错误,即未设置“无新权限”。我尝试过各种方法,但扫描仪不断检测到它。到目前为止我尝试过的:
version: "3.6"
services:
myService:
image: <some image>
security_opt:
- apparmor=docker-default
- no-new-privileges=true
还尝试过:
security_opt: [apparmor=docker-default, no-new-privileges=true] //Apparently security_opt is an array.
这种方式抱怨 security_opt 是一个数组并且无法编译
security_opt:
apparmor: docker-default
no-new-privileges: true
警告消失:
security_opt:
- no-new-privileges:true
(注意缺少空格。)
这是我发现 Checkmarx 能够识别的唯一组合。