![Docker的权限管理](https://linux22.com/image/1604688/Docker%E7%9A%84%E6%9D%83%E9%99%90%E7%AE%A1%E7%90%86.png)
我在一台服务器上有一个docker,它是我们小组共享的。但是,我发现其他人可以删除我创建的容器。这不安全。我想知道有没有办法为容器设置权限。比如在Linux中,不同的用户对不同的文件有不同的访问权限。
答案1
任何可以直接访问 docker 套接字(例如被添加到 docker 组)的人实际上都是主机上的 root。他们可以以 root 身份运行容器,主机文件系统和其他命名空间映射到容器中,并且具有允许容器以 root 身份在主机上逃脱的权限。鉴于这种情况,担心他们可以访问主机上的其他容器似乎是错误的。
您应该专注于仅向您信任的主机系统管理员授予对 docker API 的访问权限。其他所有人只能通过实施适当安全措施的工具进行访问。这通常涉及配置集中式日志记录和指标系统,并仅通过 CI/CD 系统部署更改。
除此之外,您可以尝试将类似 OPA 的东西配置为 docker 引擎上的 authz 插件,但是您需要从通过文件系统访问 docker 套接字过渡到使用每个人独有的 TLS 凭据。
另外,Docker 提供了一个企业解决方案,其中此功能内置于产品中。