Örnek sorular
Security Iam SecretsZorluk 1
Erişim kontrolünde least privilege (en az yetki) ilkesi ne anlama gelir?
- aHer kimliğe varsayılan olarak admin erişimi verilir, ancak bir olay sonrası kısıtlanır.
- bYönetimi kolaylaştırmak için tüm kimlikler aynı ortak kimlik bilgilerini paylaşır.
- cHer kimliğe yalnızca görevini yerine getirmek için gereken izinler verilir, fazlası verilmez.✓
- dİzinler bir kez gözden geçirilir ve sonrasında asla değiştirilmez.
Açıklama:Least privilege, bir görev için gereken erişimin verilmesi demektir; credential ele geçirilirse blast radius'u minimize eder. Varsayılan olarak geniş erişim verip yalnızca olay sonrası kısıtlamak tam tersi bir yaklaşımdır ve çoğu zaman büyük bir attack surface bırakır. Paylaşılan credential'lar accountability ve auditability'yi ortadan kaldırır. İzinler roller değiştikçe periyodik gözden geçirme gerektirir, tek seferlik bir kurulum değildir.
Security Iam SecretsZorluk 1
Authentication (kimlik doğrulama) ile authorization (yetkilendirme) arasındaki temel fark nedir?
- aAuthentication bir kimliğin kim olduğunu doğrular; authorization o kimliğin neler yapabileceğini belirler.✓
- bAuthentication kimliğin neler yapabileceğini belirler; authorization ise o kimliğin gerçekte kim olduğunu doğrular.
- cAuthentication ve authorization ikisi de kimliği doğrular, yalnızca oturumun farklı anlarında çalışır.
- dAuthorization yalnızca insan kullanıcılar için geçerlidir, authentication ise hem insan hem servis kimlikleri için geçerlidir.
Açıklama:Authentication 'sen kimsin' sorusuna (kimlik doğrulama), authorization ise 'ne yapabilirsin' sorusuna (izin kontrolü) cevap verir — bunlar ayrı adımlardır, aynı kontrolün iki adı değildir. Authorization yalnızca insan kullanıcılarla sınırlı değildir; service account'lar ve machine identity'ler de yetkilendirilir.
Security Iam SecretsZorluk 1
Veritabanı parolaları veya API anahtarları gibi credential'lar neden doğrudan uygulama kaynak koduna gömülmemeli?
- aVersion control sistemleri her commit'i otomatik olarak tarar ve credential'a benzeyen her string'i saklanmadan önce anında şifreler.
- bKaynak kod version control'de tutulur ve ekiple paylaşılır; bu yüzden koda gömülen bir credential repoya erişimi olan herkese açık olur, silinse bile.✓
- cBu yalnızca public repository'ler için önemlidir — private repository'ler, kime erişim verilirse verilsin, herhangi bir tür credential'ı gömmek için doğası gereği güvenli yerlerdir.
- dCredential "read-only" bir anahtarsa sorun yok, çünkü sızan bir read-only anahtar yalnızca veriyi görüntülemek için kullanılabilir ve asla gerçek bir zarar veremez.
Açıklama:Kaynak koddaki credential'lar kodun gittiği her yere gider: version control history, fork'lar, backup'lar, CI log'ları — sonraki bir commit'te silmek eski history'den yok etmez. Version control credential görünümlü string'leri otomatik şifrelemez, private repo'lar doğası gereği güvenli değildir (ele geçirilmiş laptop'lar, eski çalışanlar, yanlış yapılandırılmış erişim), ve 'read-only' bir anahtar bile hassas veriyi açığa çıkarabilir, ki bu zaten zarar vericidir.
Security Iam SecretsZorluk 1
Multi-factor authentication (MFA), yalnızca parolaya kıyasla login sürecine ne ekler?
- aDaha katı bir minimum uzunluk şartı ekler, çünkü MFA temelde kullanıcıları öncekinden daha fazla karakter içeren parolalar seçmeye zorlar.
- bAyrı saklanan bir yedek parola ekler; ana parola unutulduğunda giriş yapmak için bu kullanılabilir.
- cKullanıcı hesabına her başarılı girişte tetiklenen otomatik bir parola rotation'ı ekler.
- dİkinci, bağımsız bir kimlik kanıtı ekler (ör. bir cihazdan tek kullanımlık kod); böylece sızan bir parola tek başına yeterli olmaz.✓
Açıklama:MFA, parolaya ek olarak ikinci, bağımsız bir faktör gerektirir; böylece sızan bir parola tek başına authenticate olmak için yeterli olmaz. Parola uzunluğu, yedek parola veya her girişte otomatik rotation ile ilgisi yoktur.
Security Iam SecretsZorluk 1
'Encryption in transit' (ör. TLS) neyi korur?
- aBirinin, filesystem'e doğrudan erişim sağladıktan sonra server diskindeki dosyaları doğrudan okumasını engeller.
- bBir client ile server arasındaki ağ trafiğinin, ağ üzerinden giderken biri tarafından araya girilip okunmasını engeller.✓
- cBirinin, art arda birçok giriş denemesi yaparak bir kullanıcının parolasını tekrar tekrar tahmin etmesini engeller.
- dBirinin, uygulama zaten production'a çıktıktan çok sonra deploy edilmiş kaynak kodunu değiştirmesini engeller.
Açıklama:TLS, veri ağ üzerinden hareket ederken interception/eavesdropping'e karşı korur. Diskteki veriyi korumak, farklı bir kontrol olan encryption at rest'in işidir. Brute-force parola tahmini ve kaynak kod bütünlüğü, başka kontrollerle (rate limiting, code signing/erişim kontrolü) ele alınan ilgisiz konulardır.
Security Iam SecretsZorluk 1
Bir veritabanında veya object storage'da tutulan veri için 'encryption at rest' ne anlama gelir?
- aVeri diskte şifreli biçimde tutulur; böylece yalnızca storage'a ham erişim, okunabilir bir veri açığa çıkarmaz.✓
- bVeri yalnızca iki ayrı servis arasında bir ağ üzerinden aktif olarak aktarılırken şifrelenir.
- cVeri disk alanından tasarruf etmek için sıkıştırılır, ki 'at rest' teriminin burada asıl ifade ettiği budur.
- dVeri, maruziyeti azaltmak amacıyla sabit bir saklama süresi geçtikten sonra otomatik olarak silinir.
Açıklama:Encryption at rest, saklanan veriyi korur; böylece disklere/storage'a ham erişim, decryption key olmadan okunabilir veri açığa çıkarmaz. Ağ üzerinden aktarım (bu in-transit encryption'ın işi), sıkıştırma veya saklama politikalarıyla ilgisi yoktur.