-
Notifications
You must be signed in to change notification settings - Fork 0
5 Collaudo DevTools
Il collaudo e la manutenzione del motore Panzer v7 all'interno delle infrastrutture della Pubblica Amministrazione richiedono un monitoraggio rigoroso tramite la console dei moduli di sviluppo del browser (F12 / DevTools) applicando un approccio Zero Trust.
Durante le sessioni di ispezione attiva, l'operatore tecnico deve fare riferimento alla seguente mappatura semantica delle stringhe generate nativamente dal Service Worker nei log di console:
| Log del Sistema in Console | Livello | Significato Operativo e Innesco Codice |
|---|---|---|
๐ข SW: Fetching from Network -> |
SUCCESS |
La rete risponde entro i timeout del profilo attivo. Rilascio immediato al frontend. |
โ๏ธ SW: Background Caching Execution... |
ASYNC |
Esecuzione asincrona di isValidBlob e cifratura senza bloccare il thread dell'utente. |
๐ฆ๐ก๏ธ [Bunker-Decrypted] Serviced: |
OFFLINE |
Subentro del Bunker. Risorsa core estratta, decifrata in AES-GCM 256-bit e servita. |
๐จ SW: Storage Pieno! Emergency Clean... |
WARNING |
Scattato QuotaExceededError. Pulizia automatica del Magazzino volatile. |
โ ๏ธ SW: ErrorPage B64 Not Blob... |
ERROR |
Eccezione o fallimento logico nella gestione dei flussi binari o dei fallback del database. |
ACTIVATION_ABORTED_SECURITY_BREACH |
CRITICAL |
Fallimento del Canary Check sul vettore statico. Wipe totale dell'IndexedDB PWA_Vault. |
graph LR
subgraph DevTools ["Ispezione Console F12"]
L1["๐ข SW: Fetching from Network"]
L2["โ๏ธ SW: Background Caching"]
L3["๐ฆ๐ก๏ธ Bunker-Decrypted Serviced"]
L4["๐จ SW: Storage Pieno!"]
L5["โ ๏ธ SW: ErrorPage B64 Not Blob"]
end
subgraph Provenienza ["Infrastruttura Client / Server"]
Server["โ๏ธ Server Remoto"]
Cache["๐พ Cache Locale"]
Bunker["๐ฆ๐ก๏ธ CONFIG.cacheName"]
Quota["๐จ QuotaExceededError"]
B64["โ ๏ธ Base64 Conversione"]
end
L1 --> Server
L2 --> Cache
L3 --> Bunker
L4 --> Quota
L5 --> B64
style L1 fill:#e2f0d9,stroke:#385723,color:#000
style L3 fill:#fff2cc,stroke:#d6b656,color:#000
style L4 fill:#fce4d6,stroke:#c00000,color:#000
style L5 fill:#fff2cc,stroke:#b25900,color:#000
-
๐ฆ๐ก๏ธ (Bunker)(mappato inCONFIG.cacheName): Indica operazioni di lettura, scrittura o ripristino di un asset di sistema core. Questa zona รจ protetta da cifratura hardware-assisted AES-GCM, isolata e vitale per il funzionamento offline. Il frontend riceve queste risorse marchiate dall'header personalizzatoX-PWA-Source: Bunker-Decrypted. -
๐ฆ๐ (Magazzino)(mappato inCONFIG.userCacheName): Indica la gestione delle risorse utente sussidiarie. ร un'area di storage dinamica, volatile, non cifrata e sacrificabile in caso di emergenza, vincolata al ciclo di vita diCONFIG.userCacheTTL.
In presenza di anomalie hardware sul client o di degrado severo dei canali di comunicazione, la console registrerร i seguenti comportamenti automatici di sicurezza:
-
๐จ SW: Storage Pieno! Emergency Clean...-
Causa: Il dispositivo client ha esaurito lo spazio disco allocato dal browser per l'applicazione (
QuotaExceededError). -
Azione del software: Il Service Worker avvia immediatamente una purga selettiva del magazzino volatile
CONFIG.userCacheName(cache utente), preservando l'integritร assoluta dei file ospitati nel bunkerCONFIG.cacheName.
-
Causa: Il dispositivo client ha esaurito lo spazio disco allocato dal browser per l'applicazione (
-
ACTIVATION_ABORTED_SECURITY_BREACHo Eccezione Critica del Vault-
Causa: Rilevata corruzione irreversibile, alterazione strutturale, fallimento del test sul vettore di controllo binario (Canary Data "KANARY") o totale assenza delle chiavi logiche del Vault all'interno di IndexedDB (
PWA_Vault). -
Azione del software (Wipe, Messaggistica & Refresh): Il Service Worker attiva un protocollo distruttivo-rigenerativo immediato (Factory Reset). Esegue un wipe totale cancellando istantaneamente tutte le cache attive legate a
CONFIG.cacheNameeCONFIG.userCacheName, rasa al suolo l'IndexedDB e invia una notifica broadcast viapostMessagea tutte le finestre aperte del frontend. L'interfaccia intercetta il segnale e forza un ricaricamento immediato della pagina (window.location.reload()).
-
Causa: Rilevata corruzione irreversibile, alterazione strutturale, fallimento del test sul vettore di controllo binario (Canary Data "KANARY") o totale assenza delle chiavi logiche del Vault all'interno di IndexedDB (
sequenceDiagram
autonumber
participant DB as ๐๏ธ IndexedDB (PWA_Vault)
participant SW as โ๏ธ Service Worker (sw.js)
participant CA as ๐พ Caches (Bunker/Magazzino)
participant FE as ๐ฅ๏ธ Frontend (Finestre Aperte)
Note over SW: Rilevato Errore Critico o Fallimento Canary Check
SW->>DB: Wipe Totale (Tabula Rasa)
SW->>CA: Cancellazione di CONFIG.cacheName & CONFIG.userCacheName
SW->>FE: broadcastMessage ('ACTIVATION_ABORTED_SECURITY_BREACH')
Note over FE: Intercettazione segnale postMessage
FE->>FE: Esecuzione window.location.reload()
Note over FE: Il browser riparte da zero come prima installazione pulita
-
Effetto Nuova Installazione: Il browser si ritrova davanti a una tabula rasa assoluta e avvia un ciclo di re-installazione ex-novo. Se la comunicazione diretta con il frontend dovesse fallire durante la crisi, l'effetto si concretizza in modo deterministico alla primissima riapertura o aggiornamento manuale dell'applicazione da parte dell'utente, costringendo il sistema a ripartire da uno stato nativo pulito e a riscaricare tutti gli asset core integri direttamente dal server d'origine. Nel caso limite in cui la rete sia totalmente assente e il re-fetch fallisca, il motore si isolerร definitivamente nello stato logico protetto
VAULT_LOCKED_NO_KEY, dirottando l'erogazione versoCONFIG.fallbackImageo stampando la pagina d'emergenza HTML 503.
Per forzare la verifica delle routine di rete, si raccomanda di configurare il pannello Network dei DevTools emulando profili di connessione degradati (es. Fast 3G o Slow 3G). Questo permette di validare visivamente il corretto funzionamento della routine getNetworkProfile, l'estrazione dei limiti da CONFIG.networkResilient.profiles e lo scatto automatico dei relativi timeout dinamici.
Tip
SIMULAZIONE DEL TOTAL BLACKOUT NEI TEST DI COLLAUDO:
Nel pannello Application -> Service Workers dei DevTools, spunta la casella "Offline" e monitora i log. Se il sistema รจ a regime, vedrai comparire esclusivamente stringhe con il marcatore ๐ฆ๐ก๏ธ [Bunker-Decrypted] Serviced:, a testimonianza del fatto che la PWA sta girando in totale isolamento dal server e decifrando le risorse al volo via Web Crypto API.
-
๐ Home
๐ Pagina principale del Progetto -
๐ Capitolo 1: Introduzione
๐จโโ๏ธ Requisiti legali e conformitร CAD (Art. 68/69) ๐ -
โ๏ธ Capitolo 2: Architettura
๐ก๏ธ๐ฆ Bunker Mode e crittografia AES-GCM del Vault ๐๐๏ธ -
๐ก Capitolo 3: Note Finali
โ๏ธ Esempi di utilizzo pratico nella PA ๐๏ธ -
๐๏ธ Perchรฉ ๐ช Panzer v7+
๐ฝ Indipendenza ed eliminazione del Vendor Lock-in ๐ซ๐ -
๐ฅ Capitolo 4: Collaudo
๐ฅ Battesimo di Fuoco, Debug e Log ๐๐ -
๐ก๏ธ Capitolo 5: Paradigma Difensivo
Logiche di ๐ซ๐ฅ anti-tampering e Zeroization ๐งฝ -
๐ Capitolo 6: Determina
๐จ๏ธ Modello pronto ed esecutivo per i dirigenti ๐ผ -
๐ง Capitolo 7: Estensione Zero-Trust ๐
๐๐งช Concept: Architetturale e Framework di Sicurezza per le PA ๐๏ธ -
๐๏ธ๐จ Capitolo 8: Protezione PA
๐ Disciplinare Tecnico di Tutela dell'Ente con linee guida per Affidamenti Esterni. ๐ข -
๐โข๏ธ Capitolo 9: La Difesa Oltre il Confine
๐๐งช Concept: di un sistema di difesa attiva per operare in modalitร Out-of-Sandbox ๐๐ซ -
๐๏ธ๐ฎ PA Futuro Digitale
๐๐ Concept: Manifesto tecnologico e linee guida d'architettura per l'Iper Cloud PA ๐ฉ๏ธ