Skip to content

Commit e65dc57

Browse files
schrejDaneEveritt
authored andcommitted
Validate password on reset according to rules (pterodactyl#158)
* move password rules to Models\User::PASSWORD_RULES * validate new password according to rules on password reset * add password requirements info to auth.passwords.reset view
1 parent 9d69f47 commit e65dc57

File tree

4 files changed

+17
-1
lines changed

4 files changed

+17
-1
lines changed

app/Http/Controllers/Auth/ResetPasswordController.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,12 @@ public function __construct()
3131
{
3232
$this->middleware('guest');
3333
}
34+
35+
36+
protected function rules() {
37+
return [
38+
'token' => 'required', 'email' => 'required|email',
39+
'password' => 'required|confirmed|' . User::PASSWORD_RULES,
40+
];
41+
}
3442
}

app/Http/Controllers/Base/AccountController.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ public function password(Request $request)
8484

8585
$this->validate($request, [
8686
'current_password' => 'required',
87-
'new_password' => 'required|confirmed|different:current_password|regex:((?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,})',
87+
'new_password' => 'required|confirmed|different:current_password|' . Models\User::PASSWORD_RULES,
8888
'new_password_confirmation' => 'required'
8989
]);
9090

app/Models/User.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,13 @@ class User extends Model implements AuthenticatableContract,
7676
*/
7777
protected $hidden = ['password', 'remember_token', 'totp_secret'];
7878

79+
/**
80+
* The rules for user passwords
81+
*
82+
* @var string
83+
*/
84+
const PASSWORD_RULES = 'min:8|regex:((?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,})';
85+
7986
public function permissions()
8087
{
8188
return $this->hasMany(Permission::class);

resources/views/auth/passwords/reset.blade.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
<strong>{{ $errors->first('password') }}</strong>
5656
</span>
5757
@endif
58+
<p class="text-muted"><small>{{ trans('base.password_req') }}</small></p>
5859
</div>
5960
</div>
6061
<div class="form-group">

0 commit comments

Comments
 (0)