liweiquan пре 2 година
родитељ
комит
f8d5503f45
1 измењених фајлова са 10 додато и 1 уклоњено
  1. 10 1
      app/crud/programme.py

+ 10 - 1
app/crud/programme.py

@@ -1,3 +1,4 @@
+import re
 import time
 from typing import List
 from app import models, schemas
@@ -14,10 +15,18 @@ host = config.get('PROGRAMME', 'host')
 chart = config.get('PROGRAMME', 'chart')
 path_type = config.get('PROGRAMME', 'path_type')
 
+def check_password(password: str):
+    p_bool = bool(re.search(r"(?:,|/|\$)", "1234$"))
+    if not p_bool:
+        raise Exception("密码中存在特殊符号(,或/或$)")
+
+
+
 def create_programme(db: Session, item: schemas.ProgrammeCreate):
     db_item = db.query(models.Programme).filter(models.Programme.project_id == g.project_id).first()
     if db_item:
         raise Exception("该项目已存在编程,不可重复创建")
+    check_password(item.password)
     p_res = send_util.get_jupyter_password({"password": item.password})
     password = p_res['data']
     db_item = models.Programme(**{
@@ -82,9 +91,9 @@ def update_jupyter_password(db: Session, item: schemas.ProgrammeUpdate):
     db_item: models.Programme = db.query(models.Programme).filter(models.Programme.id == item.programme_id).first()
     if not db_item:
         raise Exception("未找到该编程")
-    print()
     if db_item.status == 1:
         raise Exception("程序正在运行,请先停止再修改密码")
+    check_password(item.password)
     p_res = send_util.get_jupyter_password({"password": item.password})
     password = p_res['data']
     db_item.password = password