z230
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
# janssenpc_file_receive_v1.2
|
||||
|
||||
Stáhne soubory čekající na serveru `msgs.buzalka.cz` do `##JNJPrenos\ZHovorcovic\`.
|
||||
Spouští se ručně na JNJ stroji dle potřeby.
|
||||
|
||||
## Spuštění (JNJ stroj)
|
||||
```
|
||||
C:\Users\vbuzalka\OneDrive - JNJ\##JNJPrenos\Python\python.exe "C:\Users\vbuzalka\OneDrive - JNJ\##JNJPrenos\Python\janssenpc_file_receive_v1.2.py"
|
||||
```
|
||||
(cestu ke skriptu případně upravit podle skutečného umístění)
|
||||
|
||||
## Princip
|
||||
1. `GET /status` → seznam Fernet tokenů (zašifrovaná jména souborů ve frontě
|
||||
Dropbox `UploadToJNJ`). Zscaler vidí jen neprůhledné řetězce.
|
||||
2. Pro každý token `GET /item/{token}` s hlavičkou `Accept: application/json`
|
||||
→ server (app.py >= v2.3) vrátí `{"data": "<fernet_b64>"}`.
|
||||
3. Klient dešifruje `data` (Fernet z TOKENu) → obsah souboru; jméno získá
|
||||
dešifrováním tokenu. Uloží do `ZHovorcovic\` (zamčený soubor → ` (2)` atd.).
|
||||
4. Server po vydání souboru přesouvá originál do `UploadToJNJ/##Trash/`.
|
||||
|
||||
## Proč JSON (v1.2)
|
||||
Korporátní filtr (Zscaler/SiteMinder) blokoval binární downloady — při prvním
|
||||
stažení PDF si odpověď zachytil, sám si zkusil soubor stáhnout znovu (na serveru
|
||||
viditelné jako druhý GET bez auth → 401) a klientovi vrátil
|
||||
`403 Forbidden` + redirect s `?_sm_nck=1`. JSON odpověď (`application/json`)
|
||||
AV sandbox na přílohy nespouští.
|
||||
|
||||
## Vazby
|
||||
- Server: `EmailsImport/DockerCustomApp/app.py` v2.3 (endpoint `/item` — JSON při
|
||||
`Accept: application/json`, jinak binárka pro starší klienty).
|
||||
- Protějšek pro upload: `janssenpc_file_watch.py` / `janssenpc_file_send`.
|
||||
|
||||
## Historie
|
||||
- v1.2 (2026-06-10): přenos obsahu jako JSON (bypass AV sandboxu filtru)
|
||||
- v1.1 (2026-06-08): jména souborů jako Fernet tokeny v URL (bypass DLP)
|
||||
- v1.0: první verze
|
||||
Reference in New Issue
Block a user