我如何在本地解密已经密封的秘密?

Miq*_*ena 5 poc kubernetes google-secret-manager sealedsecret secrets

我有一个关于使用seal-secrets\n的问题。

\n

SealedSecrets 解决方案解决了我们\xe2\x80\x99 遇到的问题:能够在版本控制中存储机密。然而,我们希望能够从密封秘密文件(已经由 kubeseal 加密的文件)重新生成普通秘密文件。用例:您转到现有的存储库,克隆它,然后您想查看本地计算机的实际秘密值是什么。

\n
    \n
  • 是否可以使用 kubeseal 来完成此任务?
  • \n
  • 如果没有,您建议如何实现这种行为?例如,也许与云秘密管理器集成?
  • \n
\n

据我了解,鉴于我想在 kubernetes 控制器之外解密,这违背了密封秘密的目的。但我希望这个用例有意义,并且我得到了一些关于如何实现这一目标的建议。

\n

lai*_*son 4

是的,您只能通过下载 seal-secrets-key 来解密。所以你可以像控制器一样做。您必须有权访问安装 Sealed Secrets 的命名空间。

只需检查kubectl podskubectl nodes显示正确集群上的资源并且:

kubectl get secret -n sealed-secrets -l sealedsecrets.bitnami.com/sealed-secrets-key -o yaml > sealed-secrets-key.yaml

kubeseal --controller-name=sealed-secrets --controller-namespace=sealed-secrets < /tmp/sealed-secret.yaml --recovery-unseal --recovery-private-key sealed-secrets-key.yaml -o yaml

Run Code Online (Sandbox Code Playgroud)

/tmp/sealed-secret.yaml是版本控制系统中的文件。您还可以在以下位置找到任何密封的秘密:kubectl get sealedsecrets -A并传递它。

参考:

https://github.com/bitnami-labs/sealed-secrets#will-you-still-be-able-to-decrypt-if-you-no-longer-have-access-to-your-cluster