EN: Read in English
Dunia K4: Nota, Loker & Pakej
Secret: base64 bukan kunci
Anda akan belajar: beri pod kata laluan dengan Secret, dan apa yang betul-betul menjaganya.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Kubernetes 1.37 pada 31 Okt 2026
Masalahnya
kind-dev namespace defaultAnda simpan kata laluan mesin kira dalam Secret: Kotak rempah berkunci untuk kata laluan dan token. Base64 tak sorok apa-apa, jadi hadkan siapa boleh baca. (kotak rempah berkunci). YAML-nya tulis c3VwM3ItcmFoc2lh. Nampak berselerak. Tapi selamatkah?
Tengok
Satu arahan tukar ia balik. Itu base64: apa-apa data ditulis sebagai huruf biasa. Ia pelekat yang nampak macam kunci.
Teka
Siapa boleh baca kata laluan mesin kira sekarang?
Pilih satu jawapan.
Cuba
Buat Secret dan buka mesin kira. Kemudian semak kata laluannya.
kind-dev namespace defaultdev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBukaTiada dulang di sini.
dev-worker2BukaTiada dulang di sini.
Petunjuk
till.yaml minta kunci PASSWORD daripada Secret till.Cuba
Rakan sepasukan tulis Secret ini sendiri. Apply gagal. Baiki ia.
Baiki manifest ini, kemudian tekan Apply.
Tengok
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Kunci sebenar memang ada. Dengan encryption at rest (penyulitan semasa disimpan), API server kunci Secret sebelum menyimpannya. RBAC tentukan siapa boleh membacanya.
Semak
Tabiat baik atau tidak? Leret setiap satu.
Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.
Commit secret.yaml dengan kata laluan sebenar ke Git.
Anda berjaya!
Kini anda boleh beri pod kata laluan dengan Secret, secara selamat.
Nak tahu lebih (pilihan)
kubectl describe secret till tunjuk saiz, bukan nilai. Mount Secret sebagai fail, bukan env var. Env var boleh bocor dalam laporan crash. Kluster terurus selalunya sulitkan Secret dengan kunci awan (KMS). Pelajaran seterusnya: jauhkan Secret daripada Git.
Latihan sebenar (pilihan), hanya pada kluster latihan. Guna kata laluan palsu:
Misi sebenar
kubectl config current-contextkubectl create secret generic till --from-literal=PASSWORD=practice-onlykubectl get secret till -o jsonpath={.data.PASSWORD}echo cHJhY3RpY2Utb25seQ== | base64 -dkubectl delete secret till
0 daripada 5 langkah siap · Tanda anda disimpan.
English
You put the till password in a Secret. Its YAML says c3VwM3ItcmFoc2lh. It looks scrambled. But is it safe?
One command turns it back. That was base64: any bytes written as plain letters. It is a sticker that looks like a lock.
Who can read the till password right now?
Make the Secret and open the till. Then check its password.
till.yaml asks for the key PASSWORD from the Secret till.A teammate wrote this Secret by hand. Apply fails. Fix it.
Real locks exist. With encryption at rest, the API server locks Secrets before saving them. RBAC decides who may read them.
Good habit or not? Swipe each one.
You can now hand a pod a password with a Secret, safely.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Kubernetes: Secrets · Good practices for Kubernetes Secrets · Encrypting confidential data at rest
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?