EN: Read in English
Dunia K6: Pengawal · Cabaran bos
Kunci dapur
Anda akan belajar: lulus tahap Pod Security restricted dan beri bot CI hanya hak yang ia perlu.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Kubernetes 1.37 pada 31 Okt 2026
Masalahnya
Ketik setiap titik pada garis masa.
Kedai Kancil buka esok. Zonnya tiada pengawal. Bot CI pegang kunci induk. Kunci dapur, bilik demi bilik.
Cuba
Bilik 1: hidupkan restricted untuk kedai. Dry run dulu, untuk lihat apa yang akan rosak.
kind-dev namespace defaultdev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBuka- shop·hj28m
dev-worker2Buka- shop·rklp9
Petunjuk
Tambah--dry-run=server dan kluster tak ubah apa-apa.Cuba
Amaran tadi sebut empat peraturan yang dilanggar. Baris mana yang membaikinya?
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Cuba
Bilik 2: Mei apply kedai selepas anda kunci zon. Tiada dulang berjalan. Dua pembaikan menunggu dalam folder. Satu masih langgar peraturan. Jalankan dua dulang.
kind-dev namespace defaultdev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBukaTiada dulang di sini.
dev-worker2BukaTiada dulang di sini.
Petunjuk
Deployment masuk dengan amaran. Dulangnya ditolak kemudian.Cuba
Bilik 3: bot CI pegang cluster-admin dalam kedai. Cabut wayar itu. Beri ia kad deployer sahaja.
Sambung wayar sehingga setiap jawapan sepadan. Beri yang perlu sahaja.
Siapa (palam)
- ci-bot (ServiceAccount · ci)
- mei (pengguna)
Role (soket)
- Role deployer · kedai
get, list, patch · deployments
- ClusterRole cluster-admin · seluruh kluster
* · *
Wayar (binding)
- ci-bot ke cluster-adminRoleBinding · dalam namespace kedai
Tunjuk ci-bot-admin sebagai YAML
apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: ci-bot-admin namespace: kedai subjects: - kind: ServiceAccount name: ci-bot namespace: ci roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin
Boleh atau tidak? (kubectl auth can-i)
kubectl auth can-i patch deployments -n kedai --as=system:serviceaccount:ci:ci-botyessepatutnya yes sepadanDibenarkan oleh ci-bot-admin → cluster-admin.kubectl auth can-i get secrets -n kedai --as=system:serviceaccount:ci:ci-botyessepatutnya no belum lagiDibenarkan oleh ci-bot-admin → cluster-admin.kubectl auth can-i delete deployments -n kedai --as=system:serviceaccount:ci:ci-botyessepatutnya no belum lagiDibenarkan oleh ci-bot-admin → cluster-admin.
Tanya soalan anda sendiri
kubectl auth can-i get pods -n kedai --as=system:serviceaccount:ci:ci-botyes
Petunjuk
Cabut dulu. Kemudian sambung ci-bot pada deployer, dalam kedai.Cuba
Bilik 4: sekarang di terminal. Buang kunci induk. Apply kad tugas dan pin. Kemudian tanya sebagai bot.
kind-dev namespace defaultPetunjuk
Tiga arahan, kemudian satu soalan. Bot itu tinggal dalam zon ci.Semak
Semakan akhir. Kerja bot kini perlu baca log pod untuk lapor ralat. Apa anda tambah?
Pilih satu jawapan.
Anda berjaya!
Kini anda boleh kunci zon dan kecilkan kunci bot.
Nak tahu lebih (pilihan)
Latihan sebenar (pilihan): buat keempat-empat bilik dalam kluster kind buang sahaja. Buat zon kedai dan ci dulu. Dry run setiap label. Baca bar merah jambu “anda di sini” sebelum setiap delete.
Misi sebenar
kubectl create namespace kedai && kubectl create namespace cikubectl label ns kedai pod-security.kubernetes.io/enforce=restrictedkubectl create serviceaccount ci-bot -n cikubectl create role deployer -n kedai --verb=get,list,patch --resource=deployments && kubectl create rolebinding ci-bot-deployer -n kedai --role=deployer --serviceaccount=ci:ci-botkubectl auth can-i get secrets -n kedai --as=system:serviceaccount:ci:ci-bot
0 daripada 5 langkah siap · Tanda anda disimpan.
English
Kedai Kancil opens tomorrow. Its zone has no guard. The CI bot holds a master key. Lock the kitchen, room by room.
Room 1: switch on restricted for kedai. Dry run first, to see what would break.
--dry-run=server and the cluster changes nothing.The warnings named four broken rules. Which lines fix them?
Room 2: Mei applied the shop after you locked the zone. Zero trays run. Two fixes wait in your folder. One still breaks a rule. Get two trays running.
Room 3: the CI bot holds cluster-admin in kedai. Unplug that wire. Give it only the deployer card.
Room 4: now in the terminal. Remove the master key. Apply the job card and pin it. Then ask as the bot.
Last check. The bot’s job now also reads pod logs to report errors. What do you add?
You can now lock a zone and keep a bot’s keys small.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Pod Security Standards · Using RBAC authorization · RBAC good practices
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?