İki Faktörlü Kimlik Doğrulama
Two-Factor Authentication (2FA)
- İngilizcesi
- Two-Factor Authentication
- Türkçe karşılığı
- iki adımlı doğrulama, iki aşamalı doğrulama
- Okunuşu
- tu fektır otentikeyşın
Günlük kullanımda iki ad da yaygın.
Kısaca
İki faktörlü kimlik doğrulama, kimliği doğrulamak için parola artı bir kod ya da güvenlik anahtarı gibi iki farklı türde kanıt isteyen bir giriş yöntemidir.
İki faktörlü kimlik doğrulama nedir?
İki faktörlü kimlik doğrulama (2FA), giriş sürecine ikinci bir kontrol ekler; böylece çalınmış bir parola tek başına hesabı ele geçirmek için yeterli olmaz. İki kanıt farklı faktör türlerinden gelmelidir: parola gibi bildiğiniz bir şey; telefon veya donanım anahtarı gibi sahip olduğunuz bir şey; ya da parmak izi gibi olduğunuz bir şey. Çok faktörlü kimlik doğrulama (MFA), iki veya daha fazla faktör kullanmayı ifade eden genel terimdir.
Yaygın ikinci faktörler arasında; bir kimlik doğrulayıcı uygulamadan gelen ve her 30 saniyede bir değişen zamana dayalı tek kullanımlık parolalar (TOTP), güvenilir bir telefonda onaylanan anlık bildirimler, donanım güvenlik anahtarları ve sahip olduğunuz bir cihazı parmak izi, yüz taraması veya PIN ile birleştiren passkey'ler bulunur. SMS ile gönderilen kodlar hiç yoktan iyidir, ancak ele geçirilebilir ya da bir suçlunun mobil operatörü numaranızı kendi SIM kartına taşımaya ikna ettiği SIM-swap saldırılarıyla çalınabilir.
2FA, banka kartı ve PIN'i gibi çalışır: kartınızı bulan biri PIN olmadan para çekemez, PIN'inizi duyan biri de yine karta ihtiyaç duyar. Yine de her 2FA aynı ölçüde güçlü değildir; çünkü saldırganlar kullanıcıları tek kullanımlık kodları sahte giriş sayfalarına yazmaya kandırabilir veya onay verene kadar onları anlık bildirimlerle boğabilir. FIDO2 ve WebAuthn standartlarına dayanan, güvenlik anahtarları ve passkey'ler gibi phishing'e dirençli yöntemler en iyi korumayı sağlar.
2FA, MFA ve iki adımlı doğrulama terimleri sıklıkla birbirinin yerine kullanılır; ancak iki adımlı doğrulama, e-postayla gönderilen kod gibi daha zayıf olanlar dahil, herhangi bir ek giriş adımını tanımlayabilir. 2FA uygularken yalnızca SMS değil, kimlik doğrulayıcı uygulamalar ve passkey'ler sunun, TOTP sırlarını şifreli saklayın, kod denemelerine hız sınırı koyun ve kullanıcılara bir cihazı kaybettiklerinde kullanmaları için tek kullanımlık kurtarma kodları verin.
Önemli noktalar
- 2FA, giriş için iki farklı türde kanıt gerektirir.
- Çalınmış bir parola tek başına artık hesabı ele geçirmeye yetmez.
- Kimlik doğrulayıcı uygulamalar, güvenlik anahtarları ve passkey'ler SMS kodlarından daha güçlüdür.
- WebAuthn tabanlı phishing'e dirençli yöntemler en iyi korumayı sağlar.
- 2FA uygularken kurtarma kodları sunun ve denemelere hız sınırı koyun.
Örnek
// Step 1 passed (correct password); now check the 6-digit code
app.post("/login/2fa", twoFactorRateLimit, async (req, res) => {
const user = await db.users.findById(req.session.pendingUserId);
// TOTP secrets are stored encrypted; verifyTotp comes from a TOTP library
const secret = decrypt(user.totpSecretEncrypted);
if (!verifyTotp(req.body.code, secret)) {
return res.status(401).send("Invalid code");
}
// Both factors verified: finish the login
delete req.session.pendingUserId;
req.session.userId = user.id;
res.redirect("/dashboard");
});Sık sorulan sorular
2FA ile MFA arasındaki fark nedir?
İki faktörlü kimlik doğrulama tam olarak iki faktör kullanır, çok faktörlü kimlik doğrulama ise iki veya daha fazla faktör anlamına gelir. Gündelik kullanımda bu terimler çoğunlukla aynı şey sayılır.
SMS ile iki faktörlü kimlik doğrulama güvenli midir?
SMS kodları yalnızca paroladan çok daha iyidir, ancak SIM-swap saldırıları, phishing sayfaları veya kötü amaçlı yazılımlarla çalınabilir. Kimlik doğrulayıcı uygulamalar daha güçlüdür; güvenlik anahtarları veya passkey'ler ise phishing'e karşı en dirençli olanlardır.
2FA cihazımı kaybedersem ne olur?
Çoğu servis kurulum sırasında, oturum açıp yeni bir cihaz kaydetmenize izin veren tek kullanımlık kurtarma kodları sunar; bunları parola yöneticisi gibi güvenli bir yerde saklayın. Kurtarma kodları veya yedek bir yöntem yoksa hesap kurtarma genellikle servisle daha yavaş bir kimlik doğrulama sürecini gerektirir.
İlgili sayfalar
- Kimlik DoğrulamaGüvenlik, s. 19Kimlik doğrulama, bir kullanıcının, cihazın veya servisin gerçekten iddia ettiği kişi olduğunu, örneğin parola ya da passkey kontrol ederek doğrulama işlemidir.
- YetkilendirmeGüvenlik, s. 48Yetkilendirme, kimliği doğrulanmış bir kullanıcının ya da servisin hangi verileri okuyabileceğine, değiştirebileceğine veya silebileceğine karar vermektir.
- ŞifrelemeGüvenlik, s. 42Şifreleme, veriyi bir anahtarla karıştırarak yalnızca doğru anahtara sahip olanın onu özgün ve okunabilir hâline geri çevirebilmesini sağlama işlemidir.
- Rate LimitingBackend ve API'ler, s. 37Rate limiting, istemcinin belli bir sürede yapabileceği istek sayısını sınırlayıp sunucuyu ya da API'yi kötüye kullanımdan ve aşırı yükten koruyan tekniktir.
- Zero TrustGüvenlik, s. 49Zero trust, varsayılan olarak hiçbir kullanıcı, cihaz veya ağa güvenmeyip her isteği kimliğe, cihaz sağlığına ve bağlama göre doğrulayan güvenlik modelidir.
Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin