| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- namespace App\Module\User\Validation;
- use App\Module\App\SessionApp;
- use App\Module\Sys\Config;
- use App\Module\User\Services\Google2Fa;
- use App\Module\User\Services\User;
- use App\Module\User\Validator\AuthPasswordApp;
- use UCore\ValidationCore;
- class SPasswordCheck
- {
- static public function validationRules($rules, ValidationCore $validation)
- {
- $scene = $validation->getName();
- $user_id = SessionApp::getUserId();
- $info2 = User::infoinfo($user_id);
- $authArray = Config::getValueDefault('auth_'.$scene);
- $fa2 = Google2Fa::must_check($info2, $scene);
- if($fa2){
- // 输入2fa
- if($authArray['auth_password']??false){
- // 开启安全密码
- //2fa+安全密码 = 只输入2fa
- }else{
- // 2fa+不输入安全密码 = 只输入2fa
- }
- $rules[]=[
- 'password2fa','required',
- 'msg'=>'必须进行动态密码验证'
- ];
- $rules[]=[
- 'password2fa',new \App\Module\User\Validator\Google2FAApp($validation),
- 'msg'=>'动态密码验证错误'
- ];
- }else{
- // 不输入2fa
- if($authArray['auth_password']??false){
- // 开启安全密码
- $rules[]=[
- 'auth_password','required',
- 'msg'=>'必须进行安全密码验证'
- ];
- $rules[]=[
- 'auth_password',new AuthPasswordApp($validation),
- 'msg'=>'安全密码验证错误'
- ];
- }else{
- // 不开启安全密码
- }
- }
- return $rules;
- }
- }
|