Selaa lähdekoodia

fix: enhance filename validation and extraction in FileService #16867 (#16869)

tags/1.2.0
GuanMu 7 kuukautta sitten
vanhempi
commit
d65da600e5
No account linked to committer's email address
1 muutettua tiedostoa jossa 7 lisäystä ja 1 poistoa
  1. 7
    1
      api/services/file_service.py

+ 7
- 1
api/services/file_service.py Näytä tiedosto

import datetime import datetime
import hashlib import hashlib
import os
import uuid import uuid
from typing import Any, Literal, Union from typing import Any, Literal, Union


source_url: str = "", source_url: str = "",
) -> UploadFile: ) -> UploadFile:
# get file extension # get file extension
extension = filename.split(".")[-1].lower()
extension = os.path.splitext(filename)[1].lstrip(".").lower()

# check if filename contains invalid characters
if any(c in filename for c in ["/", "\\", ":", "*", "?", '"', "<", ">", "|"]):
raise ValueError("Filename contains invalid characters")

if len(filename) > 200: if len(filename) > 200:
filename = filename.split(".")[0][:200] + "." + extension filename = filename.split(".")[0][:200] + "." + extension



Loading…
Peruuta
Tallenna