diff --git a/app/routers/qualys.py b/app/routers/qualys.py index 81bd206..265bb4c 100644 --- a/app/routers/qualys.py +++ b/app/routers/qualys.py @@ -977,6 +977,32 @@ async def qualys_deploy_page(request: Request, db=Depends(get_db)): return templates.TemplateResponse("qualys_deploy.html", ctx) +@router.post("/qualys/deploy/save-settings") +async def qualys_deploy_save_settings(request: Request, db=Depends(get_db)): + """Sauvegarde activation_id_linux/customer_id/server_uri sans lancer de deploiement.""" + from fastapi.responses import JSONResponse + user = get_current_user(request) + if not user: + return JSONResponse({"ok": False}, status_code=401) + perms = get_user_perms(db, user) + if not can_edit(perms, "qualys"): + return JSONResponse({"ok": False, "msg": "Permission refusee"}, status_code=403) + from ..services.secrets_service import set_secret + body = await request.json() + saved = [] + try: + for key in ("qualys_activation_id_linux", "qualys_activation_id_windows", + "qualys_customer_id", "qualys_server_uri"): + val = (body.get(key) or "").strip() + if val: + set_secret(db, key, val, f"Save manuelle depuis /qualys/deploy") + saved.append(key) + db.commit() + return JSONResponse({"ok": True, "saved": saved, "msg": f"{len(saved)} valeur(s) sauvegardee(s)"}) + except Exception as e: + return JSONResponse({"ok": False, "msg": str(e)[:200]}, status_code=500) + + @router.post("/qualys/deploy/run") async def qualys_deploy_run(request: Request, db=Depends(get_db)): from fastapi.responses import JSONResponse diff --git a/app/templates/qualys_deploy.html b/app/templates/qualys_deploy.html index e260b53..5d69627 100644 --- a/app/templates/qualys_deploy.html +++ b/app/templates/qualys_deploy.html @@ -42,6 +42,10 @@ +