Hesap Güvenliği Kancaları
Doğrulama, parola sıfırlama, çıkış ve erişimin on bir kancası.
Genel Bakış
Hesabın kimliğini koruyan her adım burada: e-posta ve telefon doğrulama, güvenlik sorusu, parola sıfırlama, giriş kodu ve çıkış.
İki kapı öne çıkar. Parola kapısı size ham parolayı verir; yalnız denetleyin. Erişim kapısı ise diğerlerinin tersi çalışır: dolu dönmek yerleşik denetimleri atlar.
Referans
E-posta değişimini izleme
Hesabın e-posta adresi değiştikten sonra çalışır. Yeni adres doğrulanmıştır.
Hook::add('action:user.email_changed', 10, function ($uid, $oldEmail, $newEmail) {
// Eski adrese de haber verin: hesap ele gecirildiyse tek uyari yolu odur.
Acme::alertOldAddress($oldEmail, $newEmail);
});E-posta doğrulamasını izleme
Müşteri e-posta adresini doğruladıktan sonra çalışır.
Hook::add('action:user.email_verified', 10, function ($user_id) {
Acme::unlockOnboarding($user_id);
});Telefon doğrulamasını izleme
Müşteri telefon numarasını doğruladıktan sonra çalışır.
Hook::add('action:user.phone_verified', 10, function ($uid, $phone) {
// Numara uluslararasi bicimdedir.
Acme::enableSmsAlerts($uid, $phone);
});Güvenlik sorusunun değişmesini izleme
Hesabın güvenlik sorusu kurulduğunda ya da kaldırıldığında çalışır.
Hook::add('action:user.security_question_changed', 10, function ($user_id, $has_question) {
// Kaldirma da bu kancadan gecer.
if (!$has_question) Acme::warnWeakerRecovery($user_id);
});Parola sıfırlama talebini izleme
Bir parola sıfırlama talebi açıldığında çalışır. Hem müşteri hem yönetici hesapları buradan geçer.
member ya da admin. Yönetici sıfırlamaları çok daha kritiktir; ayrımı gözetin.Hook::add('action:user.password_reset_requested', 10, function ($userId, $type, $email) {
// Yonetici sifirlamasi cok daha kritik.
if ($type === 'admin') Acme::alertSecurityTeam($userId, $email);
});Çıkışı izleme
Bir oturum kapandığında çalışır.
admin ya da member.Hook::add('action:user.logged_out', 10, function ($data, $type) {
// Oturum yoksa dizi BOS gelir.
if (!($data['id'] ?? 0)) return;
Acme::closeSession((int) $data['id'], $type);
});Giriş kodunun gönderilmesini izleme
Tek kullanımlık giriş kodu gönderildiğinde çalışır.
Hook::add('action:user.login_code_issued', 10, function ($userId, $channel, $expiry) {
// Kodun kendisi bilerek gecilmez.
Acme::noteLoginAttempt($userId, $channel);
});Cihaza güvenilmesini izleme
Hesap, iki adımlı doğrulama ekranında "bu cihaza güven" kutusunu işaretleyip tarayıcı hatırlandığında çalışır.
member veya admin.Hook::add('action:user.device_trusted', 10, function ($userId, $type, $window, $ua) {
Acme::securityLog('device_trusted', $userId, ['type' => $type, 'days' => $window]);
});Cihaz güveninin kaldırılmasını izleme
Hesabın güvenilir cihazları kaldırıldığında çalışır: parola sıfırlama, iki adımlı doğrulamanın açılıp kapanması, kurtarma koduyla giriş, "her yerden çıkış" veya hesabın kendi listesinden kaldırma.
member veya admin. Tip verilmeden yapılan toplu temizlikte boş gelir — bütün tipler gitmiştir.1 geçirir.Hook::add('action:user.device_trust_revoked', 10, function ($userId, $type, $count) {
Acme::securityLog('trust_revoked', $userId, ['count' => $count]);
});Parola sıfırlamayı durdurma
Bir yönetici parolası sıfırlanmadan önce çalışır. Kendi parola politikanızı burada dayatırsınız.
Hook::add('gate:user.password_reset', 10, function ($user_id, $password, $by) {
// Ham parola: yalniz denetleyin, hicbir yere YAZMAYIN.
if (strlen($password) < 16) return 'Yonetici parolasi en az 16 karakter olmali.';
return null;
});Müşteriyi kendi ekranınıza yönlendirme
Müşteri panele girdiğinde, yerleşik erişim denetimlerinden önce çalışır: eksik alan, kişisel veri onayı ve fatura bilgisi kontrollerinin öncesindedir.
Hook::add('gate:user.full_access', 10, function ($id) {
// Dolu donus YERLESIK DENETIMLERI ATLAR: kosulu dar tutun.
if (Acme::mustAcceptTerms($id)) return Utility::AppAdress() . '/acme/terms';
return null;
});Tuzaklar
Öteki kapılarda dolu dönüş engeller; erişim kapısında dolu dönüş yönlendirir ve yerleşik denetimlerin tamamını atlar. Koşulsuz bir adres döndürmek, eksik alan ve rıza kontrollerini kalıcı olarak devre dışı bırakır.
Parola sıfırlama kapısı yeni parolayı düz metin verir; politika denetimi için gereklidir. Onu günlüğe yazmak, saklamak ya da dışarı göndermek, tam da korumaya çalıştığınız şeyi sızdırır.
İlgili Makaleler
Geri bildiriminiz için teşekkürler!
Yukarıda bulamadığınız her şey için destek ekibimiz her zaman yanınızda.