在kubernetes-vault
repo的图表中,您可以看到init容器接受包装的secret_id
,并通过Vault解包和兑换secret_id
代币。为什么kubernetes-vault
控制器不执行此解包和兑换本身,只是将令牌传送到init容器?
https://github.com/Boostport/kubernetes-vault/raw/master/flow-diagram.png
答案 0 :(得分:2)
注意:kubernetes-vault项目是由我公司维护的开源项目。
初始容器解开秘密的原因是2折:
只有init容器和它所在的pod能够看到最终的秘密。这意味着kubernetes-vault控制器不知道令牌是什么,如果被盗用则无法将其用于恶意目的。
如果某人拦截了包装的令牌并将其解包,则init容器将无法打开令牌,这是群集受到危害的良好信号。如果将解包的令牌发送到初始容器,则可以拦截它,并且无法对此进行警报。