feat: add rate limiting, case-insensitive usernames and session security
This commit is contained in:
@@ -37,7 +37,15 @@ class RegisterController extends Controller
|
||||
}
|
||||
|
||||
$request->validate([
|
||||
'username' => ['required', 'string', 'max:255', 'alpha_dash', 'unique:'.User::class],
|
||||
'username' => [
|
||||
'required', 'string', 'max:255', 'alpha_dash',
|
||||
function ($attribute, $value, $fail) {
|
||||
$exists = User::whereRaw('LOWER(username) = ?', [strtolower($value)])->exists();
|
||||
if ($exists) {
|
||||
$fail('The username has already been taken.');
|
||||
}
|
||||
},
|
||||
],
|
||||
'first_name' => ['required', 'string', 'max:255'],
|
||||
'last_name' => ['required', 'string', 'max:255'],
|
||||
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:'.User::class],
|
||||
|
||||
Reference in New Issue
Block a user