Bezpieczne udostępnianie sekretów Kubernetes
Przesyłaj sekrety Kubernetes, pliki kubeconfig i tokeny kont serwisowych przez zaszyfrowane, samozniszczające się linki.
Problem
Sekrety Kubernetes i pliki kubeconfig zawierają dane uwierzytelniające klastra, tokeny kont serwisowych i certyfikaty TLS, które przyznają bezpośredni dostęp do infrastruktury. Udostępnianie ich przez Slack lub e-mail odsłania cały klaster. Wyciek pliku kubeconfig daje atakującemu możliwość wdrażania, modyfikowania lub niszczenia obciążeń.
Jak Vaulted pomaga
Vaulted szyfruje sekrety Kubernetes po stronie klienta za pomocą AES-256-GCM przed transmisją. Samozniszczający się link zapewnia, że dane uwierzytelniające klastra są dostępne tylko do momentu pobrania ich przez odbiorcę. Architektura zero-knowledge gwarantuje, że serwer Vaulted nigdy nie widzi konfiguracji klastra jako zwykłego tekstu.
Jak to zrobić
- Wklej sekret Kubernetes, kubeconfig lub token konta serwisowego do Vaulted
- Ustaw limit jednego wyświetlenia i krótki czas wygaśnięcia dla maksymalnego bezpieczeństwa
- Udostępnij zaszyfrowany link inżynierowi, który potrzebuje dostępu do klastra
- Odbiorca konfiguruje kubectl z danymi uwierzytelniającymi, a link zostaje trwale zniszczony
Udostępnianie sekretów Kubernetes z terminala
Użyj Vaulted CLI, aby udostępniać dane uwierzytelniające klastra bez opuszczania terminala: cat kubeconfig.yaml | npx vaulted-cli --views 1 --expires 1h. Lub przekaż zawartość bezpośrednio: npx vaulted-cli "$(kubectl get secret my-secret -o jsonpath={.data})" -v 1. Zainstaluj przez npm: npm install -g vaulted-cli.
Udostępnianie sekretów Kubernetes w GitHub Actions
Użyj akcji Vaulted GitHub Action, aby udostępniać dane uwierzytelniające klastra w potokach CI/CD: uses: vaulted-fyi/share-secret@v1 z sekretem Kubernetes jako wejściem. Zaszyfrowane po stronie klienta z samozniszczającymi się linkami. Dostępna w GitHub Marketplace.