Sealed Secrets é uma solução para armazenar dados sensíveis com secrets do Kubernetes no GIT.

Comparação com helm-secrets e sops

Alternativa ao Sealed Secrets seria helm-secrets que faz o uso do sops em seu bastidores.

A principal diferença seria:

A descriptografia do lado do cliente com helm-secrets pode ser um risco de segurança, pois o cliente (como um esteira CI/CD), precisaria ter acesso à chave de criptografia para realizar a implantação.

Com Sealed Secrets, a descriptografia seria do lado do servidor, podemos evitar esse risco de segurança. A chave de criptografia existe apenas no cluster Kubernetes e nunca é exposta.

Instalação com Helm chart

Sealed Secrets consistem em dois componentes:

Para instalar usaremos o helm chart oficial de sealed-secrets repository.

Adicionamos o repositório Helm e instalaremos na namespace kube-system:

helm repo add \\
  sealed-secrets <https://bitnami-labs.github.io/sealed-secrets> \\
  && helm repo update

helm install sealed-secrets \\
  --namespace kube-system sealed-secrets/sealed-secrets

CLI tool

Secrets são criptografadas do lado do cliente usando o CLI kubeseal.

Para macOS, podemos o brew fórmula Homebrew. Para Linux, podemos baixar o binário da página de release do GitHub.

macos