diff options
author | Kristofer Hallin <kristofer@sunet.se> | 2022-01-18 15:17:51 +0100 |
---|---|---|
committer | Kristofer Hallin <kristofer@sunet.se> | 2022-01-18 15:17:51 +0100 |
commit | 8c74d878efe5d0e36fc274e42ba5d108c5f0747c (patch) | |
tree | d47c6ca42cfcf72689a804cc1ad2e1593135e59f /src/routers | |
parent | 8eb45f6d4baa0e71b021e334b9ac20ce903d4dde (diff) |
More scanner stuff.feature.callhome
Diffstat (limited to 'src/routers')
-rw-r--r-- | src/routers/scanner.py | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/routers/scanner.py b/src/routers/scanner.py index 645cd74..3296b83 100644 --- a/src/routers/scanner.py +++ b/src/routers/scanner.py @@ -20,18 +20,18 @@ async def scanner(uuid, data: Request, Authorize: AuthJWT = Depends()): status_code=400) if 'targets' in json_data: - if isinstance(json_data['targets'], str): + if isinstance(json_data['targets'], list): Scanner.comment(uuid, json_data['targets']) else: return JSONResponse(content={"status": "error", - "message": "Targets should be a string."}, + "message": "Targets should be a list."}, status_code=400) if 'scanner' in json_data: - if isinstance(json_data['comment'], str): + if isinstance(json_data['scanner'], dict): Scanner.comment(uuid, json_data['scanner']) else: return JSONResponse(content={"status": "error", - "message": "Scanner should be a string."}, + "message": "Scanner should be a dict."}, status_code=400) if 'comment' in json_data: if isinstance(json_data['comment'], str): @@ -50,18 +50,22 @@ async def scanner(uuid, data: Request, Authorize: AuthJWT = Depends()): return JSONResponse(content={"status": "error", "message": "Enabled should be boolean."}, status_code=400) + if Scanner.get(uuid=uuid): + Scanner.update(uuid, json_data) + else: + return JSONResponse(content={"status": "error", + "message": "Scanner don't exist."}, + status_code=400) + + return JSONResponse(content={"status": "success", + "message": "Scanner updated."}, + status_code=200) @router.get('/callhome/{uuid}') async def callhome(uuid, data: Request, Authorize: AuthJWT = Depends()): - Authorize.jwt_required() - - raw_jwt = Authorize.get_raw_jwt() - if 'user' not in raw_jwt or raw_jwt['user'] != "scanner": - return JSONResponse(content={"status": "error", - "message": "Invalid token type."}, - status_code=400) + Authorize.jwt_required() try: UUID(uuid).version |