|string> */ public function rules(): array { $rules = [ 'email' => 'required|email', // 로그인은 기존 비밀번호를 대조하는 행위이지 새 정책을 강제하는 지점이 아니다. // 길이 규칙을 두면 정책 미달 비밀번호에 422 를 주어 미인증 공격자에게 그 사실을 누설한다. 'password' => 'required|string', ]; // 모듈/플러그인이 validation rules를 동적으로 추가할 수 있도록 훅 제공 return HookManager::applyFilters('core.auth.login_validation_rules', $rules, $this); } /** * Get custom messages for validator errors. * * @return array */ public function messages(): array { return [ 'email.required' => __('validation.auth.email.required'), 'email.email' => __('validation.auth.email.email'), 'password.required' => __('validation.auth.password.required'), ]; } }