Black Friday · 27 Kasım 2026

Seçili sertifikalarda %90'a varan indirim.

Çok değerli bir kariyer hedefi için tek seferlik fırsat. Sınırlı sayıda kupon, önce bekleme listesine.

Ücretsiz ders · CKAD Hazırlık Programı · Modül 5: Ortam, yapılandırma ve güvenlik

Servis Hesaplarını En Dar Yetkiye İndirgemek

Her pod bir servis hesabıyla koşar ve varsayılan güçsüz kalmalı. Bu ders uygulamaya özel kimlikler çıkarır, en dar Rolleri bağlar, sonucu denetler.

11 dk okuma

Kazanımlar

  • Varsayılan servis hesabının ne yapabildiğini açıklamak (bilerek neredeyse hiçbir şey)
  • Uygulama başına hesaplar oluşturup tam gereken Rolleri bağlamak
  • Jetonları açıkça bağlayıp otomatik bağlamanın ne zaman kapalı kalacağını söylemek
  • Özneler arası auth can-i ile kimin ne yapabildiğini denetlemek

Neden önemli

Küme içi istemciler (CI dağıtıcıları, işleticiler, API çağıran uygulama arka uçları) servis hesaplarıyla kimlik doğrular; paylaşılan güçlü hesap ele geçen her podu küme çapı olaya çevirir. Uygulama başına dar bağlı hesaplar etki alanını uygulamanın meşru dokunduğuyla sınırlar. Sınav tam döngüyü ölçer: hesap, bağlama, kanıt.

Kavramlar

Servis hesapları insan dışı ad alanlı kimliklerdir. Her pod tam biriyle koşar (belirtilmedikçe varsayılan; belirtmenin nedeni budur). Roller artı RolBağlamaları fiilleri verir; kubectl auth can-i --as=system:serviceaccount:<adalanı>:<ad> taklit etmeden denetler. Jeton yansıtma kısa ömürlü, hedef kitleli jetonlar bağlar; API çağırmayan pod veya hesaplarda automountServiceAccountToken: false kimlik bilgilerini hırsızların erişiminden tümden kaldırır.

Kalıp uygulama başına tek hesap, tam fiillerini tutan tek Role bağlı, her değişiklik sonrası denetimlidir. Küme çapı ihtiyaçlar ClusterRolleri dar bağlı alır (bağlama yeriyle belirli ad alanları, uygulamaya asla küme yöneticisi).

Uygulamalı örnek

Yalnız tek Deploymenti yeniden başlatabilen dağıtıcı, başka hiçbir şey:

kubectl create serviceaccount deployer -n demo
kubectl create role restarter -n demo \
  --verb=get,list,patch --resource=deployments
kubectl create rolebinding deployer-restart -n demo \
  --role=restarter --serviceaccount=demo:deployer
kubectl auth can-i patch deployments -n demo \
  --as=system:serviceaccount:demo:deployer
# evet
kubectl auth can-i delete deployments -n demo \
  --as=system:serviceaccount:demo:deployer
# hayır
kubectl auth can-i get pods -n demo \
  --as=system:serviceaccount:demo:deployer
# hayır

Üç kontrol, üç yanıt, tek dar kimlik. API çağırmayan uygulamalar automountServiceAccountToken: false alır, jeton hiç yok: en dar yetki yokluğu da içerir.

Sınav notları

Tam özne adı uzun ve tamdır: yazım hatalı denetim var olmayan özneyi sorar, hep hayırdır, yanıltır. Bağlamalar hesaplara ad alanı artı adla başvurur: uygulamayı bağlamasız taşımak hakkını öksüz bırakır. Ve imaj çekme sırları API haklarından ayrıdır: imaj çekmek ne Rol ne jeton ister.

Mini kontrol

4 soruluk öz kontrol. Yanıtların cihazında kalır, saklanmaz ve gönderilmez. Yalnızca geçen skor (ör. 4 soruda 3) kaydedilir ve yalnızca ders ilerlemesinin kilidini açmak için: bir dersin tamamlanmış sayılması için en az 3 doğru gerekir. Hiçbir sertifika değerlendirmesine sayılmaz.

Ders geri bildirimi

Henüz yayında geri bildirim yok.

Geri bildirim yazmak için giriş yap ve dersi tamamla.

Kaynaklar

Alıştırma

Ad alanında yalnız ConfigMap okuyabilen kurgusal uygulamaya özel servis hesabı oluştur; sınırı üç auth can-i kontrolüyle kanıtla (biri evet, ikisi hayır); jeton otomatik bağlamayı nerede kapatacağını nedeninle söyle.

Geçme kriterleri

Hesap artı Rol artı bağlama doğru ve dar; üç kontrol doğru beklentiyle; otomatik bağlama yanıtı API çağırmayan podları hırsızlık azaltma gerekçesiyle adlandırır.

İlerlemeni kaydetmek için giriş yapÜcretsiz hesap: yalnızca ders ilerlemen ve quiz sonuçların saklanır.