feat: 用户密码新增非法字符验证
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
from pydantic import BaseModel, ConfigDict
|
||||
import re
|
||||
from pydantic import BaseModel, ConfigDict, model_validator
|
||||
from pydantic.alias_generators import to_camel
|
||||
from typing import Optional
|
||||
from exceptions.exception import ModelValidatorException
|
||||
|
||||
|
||||
class UserLogin(BaseModel):
|
||||
@@ -23,6 +25,14 @@ class UserRegister(BaseModel):
|
||||
code: Optional[str] = None
|
||||
uuid: Optional[str] = None
|
||||
|
||||
@model_validator(mode='after')
|
||||
def check_password(self) -> 'UserRegister':
|
||||
pattern = r'''^[^<>"'|\\]+$'''
|
||||
if self.password is None or re.match(pattern, self.password):
|
||||
return self
|
||||
else:
|
||||
raise ModelValidatorException(message="密码不能包含非法字符:< > \" ' \\ |")
|
||||
|
||||
|
||||
class Token(BaseModel):
|
||||
access_token: str
|
||||
|
Reference in New Issue
Block a user