栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Docker和保护密码

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Docker和保护密码

绝对是一个问题。Dockerfile通常签入存储库并与其他人共享。一种替代方法是在运行时提供任何凭据(用户名,密码,令牌,任何敏感内容)作为环境变量。通过

-e
参数(对于CLI上的各个var)或
--env-file
参数(对于文件中的多个变量)可以做到这一点
dockerrun
。阅读本文,了解如何将环境与docker-compose结合使用。

使用

--env-file
绝对是更安全的选择,因为这样做可以防止出现秘密(
ps
如果使用的话)
set -x

但是,env var也不是特别安全。通过可以看到它们

dockerinspect
,因此,任何可以运行
docker
命令的用户都可以使用它们。(当然,任何有权访问
docker
主机的用户也都具有root用户。)

我的首选模式是将包装脚本用作

ENTRYPOINT
CMD
。包装器脚本可以首先在运行时从外部位置将机密导入容器中,然后执行应用程序以提供机密。具体的运行机制取决于您的运行时环境。在AWS中,您可以结合使用IAM角色,密钥管理服务和S3将加密的机密存储在S3存储桶中。像HashiCorp
Vault
或credstash之类的东西是另一种选择。

AFAIK没有使用敏感数据作为构建过程一部分的最佳模式。实际上,我对此主题有一个特别的问题。您可以使用docker-squash从图像中删除图层。但是Docker中没有用于此目的的本机功能。

您可能会发现容器中有关config的摇晃注释很有用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/399296.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号