Quellcode durchsuchen

Fix api_server: validate extra_params

StrayWarrior vor 21 Stunden
Ursprung
Commit
2d8669c10d
1 geänderte Dateien mit 7 neuen und 0 gelöschten Zeilen
  1. 7 0
      pqai_agent_server/api_server.py

+ 7 - 0
pqai_agent_server/api_server.py

@@ -413,6 +413,13 @@ def save_native_agent_configuration():
     extra_params = req_data.get('extra_params', {})
     if isinstance(extra_params, dict):
         extra_params = json.dumps(extra_params)
+    elif isinstance(extra_params, str):
+        try:
+            json.loads(extra_params)
+        except json.JSONDecodeError:
+            return wrap_response(400, msg='extra_params should be a valid JSON object or string')
+    if not extra_params:
+        extra_params = '{}'
 
     if not name:
         return wrap_response(400, msg='name is required')