feat(auth): block admin login IP after 4 failures for 20 min, email login alerts

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
baodev0
2026-10-22 22:35:35 +07:00
co-authored by Claude Opus 5.5
parent fe68171aa7
commit e34362b9bd
16 changed files with 403 additions and 27 deletions
+26
View File
@@ -0,0 +1,26 @@
<?php
namespace App\Mail\Admin;
use App\Mail\TemplateMailable;
use Illuminate\Bus\Queueable;
class AdminLoginAlertMail extends TemplateMailable
{
use Queueable;
/**
* @param array{admin_name: string, admin_username: string, login_time: string, client_ip: string, user_agent: string} $data
*/
public function __construct(public array $data) {}
protected function scenario(): string
{
return 'admin_login_alert';
}
protected function variables(): array
{
return $this->data;
}
}