Manuale completo
Tutte le pagine della documentazione in un unico documento, nell’ordine di lettura. Pensato per la stampa o il salvataggio in PDF: usa la funzione di stampa del browser e scegli «Salva come PDF». Aggiornato al 5 agosto 2026.
Primi passi
Che cos’è CRAnotify, come si crea l’organizzazione e cosa configurare il primo giorno.
Che cos’è CRAnotify
CRAnotify è un cockpit di conformità per gli obblighi di segnalazione dell’Articolo 14 del Cyber Resilience Act (Regolamento (UE) 2024/2847). Prende in carico un evento — una vulnerabilità segnalata, un incidente rilevato — e lo porta lungo un percorso tracciato: qualificazione, verdetto, notifica precompilata, deposito manuale sulla piattaforma ENISA, con un registro immutabile di tutto ciò che è stato deciso e quando.
Il problema che risolve
L’Art. 14 impone termini brevissimi: 24 ore per la preallerta dal momento in cui il fabbricante viene a conoscenza di una vulnerabilità attivamente sfruttata o di un incidente grave, 72 ore per l’aggiornamento, poi una relazione finale. Il problema, in pratica, non è depositare: è arrivare al deposito con una decisione difendibile e con la prova di averla presa nei tempi. Tre cose vanno fatte bene e sotto pressione:
- Qualificare l’evento — vulnerabilità sfruttata o incidente grave? C’è davvero il presupposto dell’obbligo?
- Datare la consapevolezza, perché il termine decorre da lì e non da quando qualcuno se ne accorge davvero.
- Documentare il ragionamento, perché in caso di ispezione conta poter mostrare come si è deciso, non solo che cosa si è deciso.
CRAnotify tiene insieme le tre cose in un unico percorso, con un orologio che non si ferma e un registro che non si riscrive.
Che cosa fa
Che cosa non fa
Non deposita al posto tuo. La trasmissione alla Single Reporting Platform di ENISA e al CSIRT è un atto del fabbricante e passa dai tuoi credenziali istituzionali. CRAnotify prepara il contenuto, ti porta sulla piattaforma e registra l’esito quando carichi la ricevuta.
- Non dà pareri legali. Il motore riproduce la struttura dell’Art. 14; la responsabilità della qualificazione resta di chi la firma.
- Non decide al posto tuo nei casi dubbi. Quando gli elementi non bastano, il verdetto è «sospeso» con un promemoria di ricontrollo: uno stato onesto è preferibile a una risposta inventata.
- Non fa scansioni di vulnerabilità. Si collega agli strumenti che già usi per la distinta base (vedi SBOM), ma non è uno scanner.
A chi serve
Al fabbricante di prodotti con elementi digitali che rientra nell’ambito del regolamento: chi immette sul mercato dell’Unione software o dispositivi connessi con il proprio nome o marchio. In azienda, le figure che lo usano sono in genere tre, e corrispondono ai ruoli configurabili:
| Chi | Che cosa fa in CRAnotify | Ruolo tipico |
|---|---|---|
| Responsabile sicurezza / prodotto | Qualifica gli eventi, conduce il triage, prepara la notifica e deposita. | Amministratore o Valutatore |
| Team tecnico | Riceve le segnalazioni, verifica lo sfruttamento, cura l’anagrafica dei prodotti. | Valutatore |
| Legale / compliance | Sorveglia i termini, consulta il registro, produce il fascicolo difensivo. | Sola lettura (con escalation dedicata) |
Quando scattano gli obblighi
Gli obblighi di segnalazione dell’Art. 14 si applicano dall’11 settembre 2026; i requisiti essenziali del regolamento seguono più tardi. Significa che la prima cosa da avere pronta non è la conformità del prodotto, ma la capacità di segnalare in 24 ore: catena di escalation, canale di ricezione, procedura di qualificazione. È esattamente ciò che questo prodotto mette in piedi.
Buona pratica. Prima della data, fai girare almeno un evento finto dall’inizio alla fine in modalità esercitazione. Le prove a freddo rivelano i buchi (indirizzi sbagliati, referenti irreperibili, credenziali della piattaforma mai attivate) quando costa poco scoprirli.
Prossimo passo
Se non hai ancora un account: Creare l’account e l’organizzazione. Se l’account c’è già: Configurazione iniziale.
Calcolatore di classe di rischio
Prima di configurare il flusso, la domanda giusta è un'altra: il mio prodotto rientra nel Cyber Resilience Act? E in quale classe? Il calcolatore risponde in modo orientativo in quattro passi, e indica gli obblighi minimi e il fascicolo tecnico che ti servirà. È uno strumento pubblico e gratuito: lo trovi su https://cranotify.eu/classe-rischio.
Risultato orientativo, non un parere legale. La classificazione definitiva spetta al fabbricante e dipende dalla «funzionalità principale» del prodotto. Il calcolatore non prende decisioni al posto tuo e non usa intelligenza artificiale: è un albero decisionale deterministico su una mappa scritta e verificata sulle fonti ufficiali.
I quattro passi
Le classi e cosa comportano
La «funzionalità principale» conta più del nome
Una categoria «importante» o «critica» si applica per la funzionalità principale del prodotto, non per una funzione accessoria. Integrare un componente che sarebbe a sua volta un prodotto importante (per esempio un sistema operativo dentro uno smartphone) non rende l'intero prodotto «importante»: conta la funzionalità principale del prodotto nel suo insieme. Per i casi limite, la scelta va documentata e verificata con un esperto.
Su cosa si basa
La mappa categoria → classe è ancorata alle fonti primarie: il Regolamento di esecuzione (UE) 2025/2392, che stabilisce le descrizioni tecniche delle categorie di prodotti importanti e critici, letto insieme all'Allegato III (classe I e II) e all'Allegato IV del Reg. (UE) 2024/2847. La logica di ambito segue la guida della Commissione sull'applicazione del CRA. Ogni voce della mappa cita il punto di riferimento.
Ricevere il riepilogo
Dall'esito puoi farti inviare via email il riepilogo della classe e la checklist degli obblighi (facoltativo, con consenso). Il risultato resta comunque visibile a schermo senza lasciare alcun dato.
Il calcolatore risponde alla domanda «rientro nel CRA?». Il triage dentro l'applicazione risponde a una domanda diversa e successiva: «questo evento fa scattare l'obbligo di segnalazione dell'Art. 14?». Sono due assi complementari.
Creare l’account e l’organizzazione
Ogni account appartiene a un’organizzazione: il contenitore dei tuoi case, prodotti, registro e configurazioni. Chi si registra dal modulo pubblico fonda una nuova organizzazione e ne diventa amministratore; chi arriva su invito entra in un’organizzazione esistente.
Registrazione self-service
Alla registrazione si sceglie fra due strade: con email e password, oppure con l’identità aziendale Google o Microsoft. In entrambi i casi il primo amministratore — il fondatore della nuova azienda — è attivo subito: nessuna approvazione, nessun link di conferma via email.
Con email e password
- Apri https://cranotify.eu/registrazione.
- Indica ragione sociale, partita IVA (verificata su VIES), paese e il tuo ruolo nella catena — fabbricante, importatore o distributore.
- Indica nome ed email dell’amministratore e scegli una password di almeno 10 caratteri; un indicatore di robustezza ti guida mentre la digiti.
- Al termine sei già dentro: l’applicazione apre il cruscotto dei case con dati dimostrativi.
Con Google o Microsoft
I pulsanti «Registrati con Google» e «Registrati con Microsoft» saltano la password: dopo l’autenticazione presso il provider completi solo i dati aziendali (ragione sociale, partita IVA, paese, ruolo nella catena). L’email è già verificata dal provider, l’account nasce solo-SSO, senza password, e da lì entri direttamente.
Appena creata l’organizzazione parte un’email di benvenuto (via AWS SES) con il link di accesso e le prime cose da fare.
La registrazione self-service fonda sempre una nuova organizzazione, anche se il dominio email coincide con quello di un’organizzazione già presente: entrare in un gruppo esistente avviene per invito o via SSO aziendale, non registrandosi. Se il tuo amministratore ha disattivato la registrazione aperta, la pagina lo dice e va chiesto un invito.
Se l’email di benvenuto non arriva entro pochi minuti, controlla la posta indesiderata e i filtri aziendali su no-reply@cranotify.eu. Non è comunque un ostacolo: l’account è già attivo e puoi entrare da https://cranotify.eu/login. I moduli di accesso e registrazione sono protetti da un controllo anti-bot invisibile (Cloudflare Turnstile).
Invitare i colleghi
Da Area utente › Azienda e persone › Persone l’amministratore invita gli altri utenti indicando indirizzo e ruolo. L’invitato riceve un link a uso singolo valido 7 giorni che lo inserisce nella tua organizzazione (non ne fonda una nuova).
| Ruolo | Che cosa può fare |
|---|---|
| Amministratore | Tutto: configurazioni aziendali, utenti, abbonamento, API, SBOM, avvisi, modulo pubblico. |
| Valutatore | Lavora sui case: triage, verdetto, notifica, deposito. Gestisce il proprio profilo, la propria password e la propria verifica in due passaggi. |
| Sola lettura | Consulta case, registro e fascicoli. Non modifica nulla. |
Il dettaglio dei permessi e della catena di escalation è in Utenti, ruoli ed escalation.
Domini consentiti
In Dati azienda puoi elencare i domini email ammessi (per esempio tuaazienda.it, tuaazienda.com). L’elenco governa l’ingresso nell’organizzazione: invito e accesso con SSO. Se lasciato vuoto, non c’è restrizione di dominio.
Buona pratica. Compila l’elenco appena l’organizzazione è creata: governa chi può entrare per invito e con l’SSO aziendale, e tiene il team dentro un’unica organizzazione con un registro unitario.
I dati dimostrativi
Una nuova organizzazione parte con alcuni case e prodotti di esempio, utili per capire l’interfaccia senza aspettare che accada qualcosa di vero. Sono riconoscibili dai nomi di fantasia e si possono archiviare quando non servono più. Per provare il flusso completo generando comunicazioni marcate come non reali, usa invece la modalità esercitazione.
Dopo la registrazione
Le tre cose da fare subito, nell’ordine: censire i prodotti, indicare il referente della catena di escalation, provare il flusso in esercitazione. Le trovi spiegate in Configurazione iniziale.
Accesso, SSO e verifica in due passaggi
L’applicazione risponde su https://cranotify.eu. Si entra con email e password oppure con l’identità aziendale Google o Microsoft; la verifica in due passaggi è per singolo utente e si attiva dal proprio profilo.
Accesso con password
- Inserisci email e password nella pagina di accesso.
- Se hai attivato la verifica in due passaggi, l’applicazione chiede il codice a sei cifre generato dall’app di autenticazione.
- Alla conferma si apre il cruscotto dei case.
La password deve avere almeno 10 caratteri. È conservata solo come impronta crittografica: nessuno, nemmeno l’assistenza, può leggerla o comunicartela.
I tentativi di accesso, di reimpostazione password e di registrazione sono limitati per indirizzo di provenienza. Dopo troppi tentativi ravvicinati la risposta diventa «troppe richieste»: si attende qualche minuto, non è un blocco dell’account. La pagina di accesso è inoltre protetta da un controllo anti-bot invisibile (Cloudflare Turnstile), che non chiede nulla quando tutto è regolare.
Password dimenticata
Dalla pagina di accesso, «Password dimenticata» invia un link di reimpostazione a uso singolo valido 30 minuti. Aperto il link, si imposta la nuova password; a operazione avvenuta parte una email di conferma. Se la conferma arriva e non sei stato tu, cambia immediatamente la password e avvisa l’assistenza: qualcuno ha accesso alla tua casella.
Accesso con Google o Microsoft
Quando i provider sono configurati, la pagina di accesso mostra i pulsanti «Continua con Google» e «Continua con Microsoft». Ci sono due strade distinte, e conviene non confonderle.
- Accesso social globale. Entri nell’account già esistente associato a quell’indirizzo email — che dev’essere unico. Il provider verifica l’identità e tu salti la password. Se non esiste alcun account attivo con quell’email, l’accesso è rifiutato con «nessun account attivo»: l’accesso social non crea nulla. Per fondare una nuova azienda si usa la registrazione.
- SSO aziendale (per organizzazione). Chi arriva dall’indirizzo SSO della propria organizzazione — quello che porta lo slug dell’organizzazione — viene creato al primo accesso tramite provisioning JIT (Just-In-Time): i gruppi dell’identità aziendale sono mappati sui ruoli dell’applicazione, così ciascuno entra con i permessi giusti senza un invito manuale.
I domini consentiti e la mappatura gruppi→ruoli dell’SSO aziendale vanno impostati prima di far accedere il team: governano chi entra e con quale ruolo. L’accesso social globale, invece, non fonda organizzazioni — un’email sconosciuta viene semplicemente respinta.
Verifica in due passaggi (TOTP)
Si attiva da Area utente › Il mio account › Sicurezza. È una scelta del singolo utente, non dell’organizzazione: ciascuno protegge il proprio accesso.
- Premi «Attiva la verifica in due passaggi». Compaiono una chiave testuale e un indirizzo
otpauth://da acquisire con l’app di autenticazione (Google Authenticator, Microsoft Authenticator, 1Password, Aegis…). - Digita il codice a sei cifre mostrato dall’app per confermare che l’acquisizione è riuscita.
- Salva i codici di recupero che compaiono a questo punto: si vedono una volta sola.
I codici di recupero si mostrano una volta sola. Conservali fuori dall’applicazione — un gestore di password, una cassaforte aziendale. Ogni codice funziona una sola volta ed è l’unico modo per rientrare se perdi il telefono. Senza codici e senza app, il rientro passa dall’assistenza e richiede verifiche che non sono immediate: esattamente ciò che non vuoi durante un termine di 24 ore.
Per disattivarla si usa lo stesso pannello. Il codice a sei cifre cambia ogni 30 secondi ed è accettato anche con un piccolo scarto di orologio; se viene rifiutato di continuo, l’ora del telefono è sfasata — sincronizzala.
Sessioni attive
Nella stessa pagina compare l’elenco delle sessioni aperte, con dispositivo e provenienza; quella corrente è indicata. Ogni riga si può revocare: la revoca ha effetto immediato e il dispositivo dovrà accedere di nuovo. Il cambio della password e la disattivazione dell’account invalidano le sessioni esistenti.
Buona pratica. Un giro di controllo delle sessioni ogni volta che qualcuno lascia l’azienda o cambia portatile. È veloce ed è una delle prove di diligenza più semplici da esibire.
Uscita e scadenza
«Esci» chiude la sessione corrente e cancella il cookie. Le sessioni hanno comunque una durata limitata: dopo un periodo di inattività viene richiesto di accedere di nuovo. Il cookie di sessione viaggia solo su HTTPS in produzione e non è leggibile da script.
Configurazione iniziale
Sette cose vanno fatte prima che arrivi la prima segnalazione vera. Non richiedono più di un’ora complessiva, e sono esattamente le stesse che la lista di attivazione dell’applicazione tiene sotto controllo.
La lista
| # | Passo | Dove | Perché |
|---|---|---|---|
| 1 | Censire i prodotti | Prodotti | Un case si aggancia a un prodotto: senza anagrafica non si compila la notifica. |
| 2 | Indicare la catena di escalation | Area utente › Azienda e persone › Persone | Decide chi riceve i solleciti e quando entra il legale. |
| 3 | Invitare i colleghi con i ruoli | Area utente › Persone | Nessun processo di 24 ore regge su una persona sola. |
| 4 | Attivare il modulo pubblico | Area utente › Modulo embedded | È il canale di divulgazione coordinata: senza, le segnalazioni arrivano dove capita. |
| 5 | Preparare i prerequisiti di deposito | Deposito | Le credenziali istituzionali non si attivano in 24 ore. |
| 6 | Attivare la verifica in due passaggi | Area utente › Sicurezza | L’accesso al fascicolo probatorio va protetto. |
| 7 | Provare il flusso in esercitazione | Menu › Esercitazione | Verifica che tutto quanto sopra funzioni davvero. |
1. Censire i prodotti
In Prodotti inserisci i prodotti con elementi digitali che la tua organizzazione immette sul mercato: nome, versione, identificativi (numero di serie, part number, codice a barre, indirizzo MAC quando pertinente), categoria, data di rilascio e fine del periodo di supporto. Il dettaglio dei campi è in Anagrafica dei prodotti.
Parti dai prodotti realmente sul mercato nell’Unione, non dal catalogo storico. Un’anagrafica di quattro prodotti curata vale più di quaranta righe copiate dal gestionale.
2. La catena di escalation
In Persone si indicano quattro recapiti, con funzioni distinte:
Usa indirizzi monitorati fuori orario. Le 24 ore non si fermano di notte né nei fine settimana: se il referente è una casella controllata solo in ufficio, la catena è già rotta.
3. Utenti e ruoli
Invita almeno un secondo amministratore e i valutatori che condurranno il triage. Assegna «Sola lettura» a chi deve solo consultare (compliance, legale esterno). Vedi Utenti, ruoli ed escalation.
4. Il modulo pubblico
In Area utente › Modulo embedded personalizza alias di posta, testo introduttivo e campi, poi copia il frammento <iframe> e incollalo nella pagina «security» del tuo sito. Nella stessa schermata trovi il contenuto del file security.txt da pubblicare su /.well-known/security.txt. Dettagli in Modulo pubblico di segnalazione.
5. I prerequisiti di deposito
La schermata Deposito contiene una lista di controllo con due voci: l’account EU Login abilitato per la piattaforma unica di segnalazione e il referente presso il CSIRT nazionale. Sono spunte informative — non bloccano il deposito — ma vanno risolte in anticipo, perché attivare credenziali istituzionali richiede giorni, non ore.
6. Verifica in due passaggi
Attivala per tutti gli utenti che possono scrivere. Procedura in Accesso, SSO e verifica in due passaggi.
7. La prova generale
Attiva la modalità esercitazione e porta un case finto fino al deposito. Cronometra: se dalla segnalazione al testo pronto passano più di un paio d’ore, il collo di bottiglia è organizzativo e va risolto adesso.
Configurazioni successive
Come è fatta l’applicazione
Una barra laterale a sinistra, il contenuto al centro, e — quando un case è in lavorazione — l’orologio dei termini sempre visibile. Le schermate sono poche e ognuna corrisponde a un passo del flusso.
La navigazione
| Voce | Indirizzo | A che serve |
|---|---|---|
| Case | /casi | Il cruscotto: tutti i case aperti con stato e termine. |
| Triage | /triage-app | La qualificazione guidata dell’evento in tre fasi. |
| Notifica | /notifica | La bozza della comunicazione all’autorità. |
| Registro | /registro | Il registro delle attività, filtrabile ed esportabile. |
| Prodotti | /prodotti | L’anagrafica dei prodotti con elementi digitali. |
| Area utente | /account | Profilo, azienda, abbonamento, modulo, API, SBOM, avvisi. |
La mappa completa degli indirizzi, con chi può aprirli, è in Mappa degli indirizzi.
L’orologio dei termini
Quando un case ha un termine in corso, l’intestazione mostra il conto alla rovescia: tempo residuo, momento di consapevolezza, scadenza calcolata e finestra di riferimento (24 ore per la preallerta). Accanto al conteggio, un’etichetta con icona dichiara lo stato del termine: il colore accompagna, non sostituisce:
Il conteggio scorre nel browser ma è ancorato alla scadenza calcolata dal server: ricaricare la pagina o cambiare fuso non lo altera. Il funzionamento completo è in Fasi e termini.
La lista di attivazione
Nella barra laterale c’è una scheda con un livello (Base, Presidiato, Solido, Esemplare) e sette passi. Non è un gioco: sono i sette comportamenti che, messi insieme, dimostrano una gestione diligente degli obblighi.
| Passo | Si considera fatto quando… |
|---|---|
| Primo triage | almeno un case è stato qualificato con esito registrato. |
| Deposito nei tempi | una preallerta è stata depositata prima della scadenza. |
| Utenti avvisati | l’avviso agli utenti impattati (Art. 14(8)) è stato diffuso e registrato. |
| Catena a monte | un componente di terzi è stato segnalato al manutentore (Art. 13(6)). |
| Distinta base collegata | almeno due strumenti SBOM sono attivi. |
| Anagrafica completa | almeno quattro prodotti sono censiti con identificativi. |
| Pronto al deposito | prodotti, ruoli, alias di segnalazione e prerequisiti sono configurati. |
Un passo coperto da procedure esterne a CRAnotify si può segnare come fatto manualmente: l’indicatore misura la tua organizzazione, non l’uso del software.
La fascia dell’abbonamento
Sopra il contenuto può comparire una fascia con lo stato dell’abbonamento: giorni di prova rimanenti, periodo di tolleranza o sola lettura. In tolleranza e in sola lettura la scrittura è bloccata, mentre lettura, registro ed esportazioni restano sempre disponibili — il registro è una prova, non un servizio a consumo. Vedi Abbonamento e fatturazione.
Lingua e accessibilità
L’interfaccia è disponibile in italiano e inglese; il selettore è nell’intestazione del sito pubblico e la scelta viene ricordata. L’applicazione è utilizzabile da tastiera, il focus è sempre visibile, i contrasti rispettano il livello AA e il layout regge fino a 380 pixel di larghezza. La dichiarazione completa è su https://cranotify.eu/accessibilita.
Segnale di esercitazione
Con la modalità esercitazione attiva l’intestazione lo dichiara e ogni voce di registro prodotta viene marcata [esercitazione]. È il modo per non confondere mai una prova con un adempimento reale.
Flusso di conformità
Dalla segnalazione ricevuta al deposito sulla piattaforma ENISA, fase per fase.
Panoramica del flusso
Un evento attraversa cinque passaggi. Ognuno produce qualcosa di verificabile: uno stato, un verdetto motivato, un testo, una ricevuta, una riga di registro. Il percorso è sempre lo stesso, sia che l’evento arrivi da un ricercatore esterno sia che nasca da un tuo rilevamento interno.
I cinque passaggi
- Ricezione — ciò che arriva da fuori (modulo pubblico, connettori, API, OSV) diventa un segnale in ingresso (INCOMING); una persona lo promuove a case (stato nuovo) oppure lo dispone. Un inserimento manuale nasce già come case nuovo. Vedi Case: dal segnale al caso.
- Triage — tre domande qualificano l’evento e fissano il momento di consapevolezza. Da lì parte l’orologio. Vedi Triage guidato.
- Verdetto — il motore applica la tabella decisionale e indica la base normativa, oppure sospende. Vedi Verdetto e base normativa.
- Notifica — la bozza della comunicazione: i campi determinati dal motore sono già compilati, tu aggiungi i fatti. Vedi Notifica: la bozza.
- Deposito — si trasmette sulla piattaforma unica di ENISA e si carica in CRAnotify la ricevuta ottenuta. Vedi Deposito.
Dopo il primo deposito il case non è chiuso: restano l’aggiornamento a 72 ore e la relazione finale, ciascuno con la propria bozza e la propria ricevuta. Vedi Fasi e termini.
Lo schema completo
evento ricevuto
├─ portale/connettori/API/OSV → SEGNALE (INCOMING) → promosso → «nuovo»
└─ inserimento manuale → «nuovo»
│
TRIAGE (3 fasi)
│
┌───────────────┬───────────┴──────────┬────────────────┐
nessun obbligo sospeso obbligo obbligo
→ archiviata → ricontrollo Art. 14(2)(a) Art. 14(4)(a)
└──────────┬─────────┘
NOTIFICA (bozza)
│
DEPOSITO preallerta (24 h)
│ ricevuta ENISA
stato «in corso»
│
DEPOSITO aggiornamento (72 h)
│
DEPOSITO relazione finale
│
stato «adempiuto»
Che cosa resta come prova
Ogni passaggio scrive nel registro delle attività una riga concatenata alla precedente. A fine percorso hai, per ciascun case:
- la cronologia completa con autore e momento di ogni atto;
- i verdetti registrati in sequenza, con la motivazione — anche quelli superati da una valutazione successiva;
- le ricevute rilasciate dalla piattaforma per ciascuna fase, con l’eventuale numero di protocollo;
- gli allegati della segnalazione, distinti fra verificati e non verificati;
- il fascicolo difensivo stampabile che li raccoglie.
Chi fa che cosa
| Passaggio | Ruolo minimo | Nota |
|---|---|---|
| Promuovere un segnale a caso | Valutatore | Un segnale non promosso non entra nel flusso e non fa partire alcun orologio. |
| Condurre il triage | Valutatore | L’autore resta a registro. |
| Depositare e caricare la ricevuta | Valutatore | Le credenziali della piattaforma sono aziendali, non di CRAnotify. |
| Modificare i destinatari dell’escalation | Amministratore | Operazione amministrativa, registrata. |
Quanto tempo serve davvero
Il triage richiede minuti; ciò che consuma le 24 ore è tutto quello che sta intorno: raggiungere chi sa rispondere alla domanda sullo sfruttamento, recuperare gli elementi tecnici, ottenere l’approvazione interna al testo. Ecco perché la configurazione dell’escalation e la prova in esercitazione valgono più di qualunque funzione del prodotto.
Buona pratica. Apri il case appena arriva la segnalazione, anche prima di sapere se l’obbligo esiste. Il triage si può sospendere; il tempo perso prima di aprire il case, no.
Azioni: il lavoro da fare
La casella Azioni è l’elenco delle cose che qualcuno deve fare, con l’oggetto su cui si esercitano, il motivo per cui esistono e chi le ha in carico. Si apre da Azioni nel menu e si svuota chiudendo ogni riga con un gesto che resta scritto. Non è un elenco di notizie: è la coda di lavoro.
Perché non è una notifica
«La sincronizzazione con Dependency-Track è terminata» è una notizia: si legge e si dimentica. «Rivedi tre nuove corrispondenze» è un’azione: ha un destinatario, un oggetto, spesso un termine, e finisce in una decisione registrata. Sono due cose diverse e stanno in due posti diversi.
Tenerle insieme sembra comodo e non lo è: la seconda si perde dentro la prima, ed è il modo più comune di mancare un termine di 24 ore senza che nessuno abbia sbagliato niente. Le notizie restano in Notifiche; qui c’è solo ciò che richiede un gesto.
Un’azione dice sempre «qualcuno deve valutare se ricorre l’obbligo», mai «l’obbligo ricorre». Il verdetto lo produce il triage con una persona che risponde alle domande; la coda porta al lavoro, non lo conclude.
Da dove nascono
Le azioni non si creano a mano. Nascono da tre strade, e nessuna delle tre scrive un valore al posto tuo:
Lo stesso lavoro non si duplica: se una condizione persiste, l’azione che la rappresenta resta una sola e si aggiorna. Soglie diverse restano avvisi diversi — «mancano 90 giorni» e «mancano 30 giorni» sono due cose da sapere, non la stessa cosa detta due volte.
Le esercitazioni e i prodotti archiviati non entrano in coda.
Il termine viene dal case, non dall’azione
Quando un’azione è agganciata a un case, accanto compare il termine di legge di quel case. Quel termine non è memorizzato nell’azione: viene letto dal motore ogni volta che apri la pagina. Se qualcuno corregge il momento di consapevolezza, il termine mostrato qui cambia con esso, perché è sempre lo stesso e unico valore — quello del case.
Quando l’azione non è agganciata a un case, non compare nessun termine. Non ne viene inventato uno «operativo» a titolo di promemoria: a schermo un termine inventato sarebbe indistinguibile da uno legale, e la differenza fra i due è esattamente ciò che conta. Se vuoi darti una scadenza interna, usa l’assegnazione e i tuoi strumenti di squadra.
In pratica. Il numero da guardare per capire quanto tempo resta è sempre quello della scheda del case (Fasi e termini). La coda delle azioni lo ripete per comodità; non lo decide.
Priorità e stati
La priorità ordina la coda: critica è riservata a ciò che ha davvero un termine che corre, poi alta, normale, bassa. Gli stati dicono a che punto è il lavoro, non se la tua organizzazione è conforme:
| Stato | Significato |
|---|---|
| Aperta | Nessuno l’ha ancora presa in mano. |
| In revisione | Qualcuno ci sta lavorando. |
| Attesa fornitore / responsabile / evidenza | Ferma su qualcuno di preciso. Un’attesa che non dice chi si aspetta è la casella in cui le cose restano per mesi. |
| Completata | Il lavoro è stato fatto. |
| Chiusa | Si è deciso che non andava fatto, e il perché è scritto. |
Chiudere un’azione
Un’azione esce dalla coda in tre modi, e i tre non si confondono:
- Completata. Il lavoro è stato fatto. Serve la tua identità: resta scritto chi ha completato e quando.
- Respinta, con motivazione obbligatoria. Si decide che non c’era da lavorare. Il campo del motivo non è facoltativo e non accetta una parola sola. Un’azione respinta senza motivo, riletta un anno dopo da un’autorità, è indistinguibile da un’azione dimenticata — e la differenza fra le due è quella fra diligenza e negligenza.
- Decaduta. La condizione osservata non c’è più: la distinta base è arrivata, il ruolo è stato confermato altrove. Qui è il sistema che ritira una propria proposta, e lo fa solo su ciò che aveva aperto lui e che nessuno ha ancora preso in mano. Appena una persona la assegna o la mette in revisione, quell’azione è sua e la chiude lei.
Riaprire un’azione chiusa si può, e richiede anch’esso una motivazione. La versione precedente non viene cancellata: resta nella storia, accanto alla nuova.
Ogni assegnazione, cambio di stato, completamento, respinta e riapertura lascia una riga nel registro delle attività, con l’autore e l’istante. È il motivo per cui la motivazione è obbligatoria: serve a chi rileggerà, non a chi scrive.
Assegnare e prendere in carico
Un’azione senza assegnatario è di tutti e quindi di nessuno. Dalla coda si filtra per assegnate a me, non assegnate o tutte; dal dettaglio si assegna a una persona oppure si prende in carico. Anche l’assegnazione è un gesto: resta scritto chi ha assegnato, oltre a chi è stato assegnato.
I numeri in cima
Sopra la coda ci sono dei conteggi — aperte, critiche, da rivedere, in attesa, non assegnate. Sono conteggi, non un punteggio: ognuno si può ricontare a mano scorrendo l’elenco, e nessuno di essi dice se un prodotto è conforme. In CRAnotify non esiste una percentuale di conformità, qui come altrove.
Case: dal segnale al caso
Un case è l’unità di lavoro: un evento qualificato, con il suo prodotto, la sua cronologia, i suoi allegati e — se l’obbligo esiste — i suoi termini. Ogni case ha un identificativo non prevedibile nella forma CRA-IT-2026-123456, generato in modo casuale: dal numero non si deduce quanti eventi hai avuto. Un caso non nasce da solo da un evento esterno: nasce da una decisione umana.
Da dove arriva un case
/signals), non un caso. Una persona lo esamina e, se è pertinente, lo promuove a caso: solo allora il caso esiste e l’awareness viene fissata.Segnale ≠ caso. Ricevere un evento non fa partire alcun orologio legale: non c’è awareness finché non promuovi. È la promozione — o l’inserimento manuale — a creare il caso e a fissare il «momento di consapevolezza». Il dettaglio del ciclo dei segnali è in Modulo pubblico e nella coda INCOMING.
Inserire un case a mano
La schermata chiede il minimo indispensabile per ricostruire la provenienza dell’informazione:
| Campo | Che cosa scrivere |
|---|---|
| Prodotto | Il prodotto con elementi digitali coinvolto, scelto dall’anagrafica. |
| Canale | Come è arrivata: modulo, email, interno. |
| Riferimento | Il tuo identificativo esterno: numero di ticket, protocollo, identificativo CVE se già noto. |
| Mittente e recapito | Chi ha segnalato e come ricontattarlo. Sono i dati che permettono di dare riscontro al segnalante. |
| Oggetto e testo | La segnalazione così com’è arrivata. Meglio incollare l’originale che riassumerlo. |
| Allegati | Fino a tre file (max 5 MB ciascuno). Caricati da un utente autenticato, risultano verificati. |
Buona pratica. Incolla il testo integrale della segnalazione, comprese le intestazioni della email. La ricostruzione del «momento di consapevolezza» in sede di ispezione poggia proprio su quel dettaglio.
Disporre di un segnale in ingresso
Un segnale arrivato da fuori non entra nel flusso automaticamente. Nella coda INCOMING (/signals) una persona lo esamina e sceglie fra queste disposizioni:
- Promuovi — il segnale è un evento reale e pertinente: crea un caso in stato nuovo, con l’awareness che dichiari in quel momento. L’atto resta a registro.
- Collega — riguarda un caso che già esiste: lo agganci a quel caso senza crearne uno nuovo, e gli allegati del segnale lo seguono.
- Duplicato / Informativo / Ignora — non merita un caso a sé (già noto, solo per conoscenza, oppure spam o non pertinente): il segnale si chiude con la motivazione conservata. Non viene cancellato: anche il rifiuto è una decisione da poter mostrare.
La disposizione del segnale è un presidio di sicurezza, non una formalità: impedisce che contenuti non fidati (e i loro allegati) entrino nel fascicolo probatorio prima che una persona li abbia guardati, e impedisce che un evento faccia partire gli orologi legali senza che nessuno l’abbia deciso. Vedi Quarantena e difese anti-abuso.
Gli stati del case
| Stato | Significato | Passo successivo |
|---|---|---|
| nuovo | Case creato (segnale promosso o inserimento manuale), da qualificare. | Avviare il triage. |
| triage | Qualificazione in corso. | Completare le tre fasi. |
| obbligo | Il triage ha rilevato l’obbligo di notifica: l’orologio corre. | Preparare la notifica e depositare. |
| in corso | Preallerta depositata; restano aggiornamento e relazione finale. | Depositare le fasi successive. |
| adempiuto | Relazione finale depositata: il percorso è concluso. | Conservare il fascicolo. |
| archiviata | Nessun obbligo, oppure caso archiviato senza triage. | Nessuno; resta consultabile. |
La schermata del case
Il dettaglio raccoglie in una pagina sola: la segnalazione come è arrivata, gli allegati con il loro stato di verifica, la cronologia delle azioni sul case, la fase corrente con il suo termine e le azioni disponibili. Aprire il case aggiorna anche l’indicazione di «ultimo accesso», che alimenta il sollecito per mancato riscontro (vedi Email: famiglie e destinatari).
Presa in carico
Quando un case è in obbligo compare il pulsante Prendi in carico. Dichiara che il referente se ne sta occupando: l’escalation verso sostituto e legale rappresentante viene sospesa per quel termine, e la dichiarazione resta a registro. Usalo: evita che il legale riceva avvisi mentre la cosa è già presidiata.
Archiviare senza triage
Un case palesemente irrilevante si può archiviare senza qualificarlo. Anche questo lascia una riga di registro con la motivazione: la scelta di non valutare è essa stessa una decisione.
Allegati
Sono ammessi fino a tre file per case. Gli allegati caricati da utenti autenticati risultano verificati; quelli arrivati dal portale pubblico restano non verificati e sono trattati come materiale non fidato: si scaricano solo (mai visualizzati nella pagina) e sono accessibili solo agli utenti della tua organizzazione.
Triage guidato
Il triage qualifica l’evento in tre fasi. Non è un questionario: ogni risposta ha un effetto preciso sul verdetto e sul termine, e resta a registro con il nome di chi l’ha data. Si avvia dal dettaglio del case con «Avvia il triage» e prosegue a /triage-app.
Fase 1 · Qualificazione dell’evento
Di che natura è l’evento rilevato? Il regolamento distingue la vulnerabilità attivamente sfruttata dall’incidente grave che incide sulla sicurezza del prodotto. Da questa qualificazione dipende la base normativa applicabile.
| Opzione | Quando sceglierla |
|---|---|
| Vulnerabilità in un prodotto con elementi digitali | C’è un difetto tecnico che può essere sfruttato per compromettere il prodotto o l’ambiente in cui opera. |
| Incidente grave con impatto sulla sicurezza | È già accaduto qualcosa che ha compromesso disponibilità, integrità o riservatezza del prodotto o dei dati trattati. |
| Nessuna delle due ipotesi | Malfunzionamento senza rilievo di sicurezza, o segnalazione non pertinente. Porta direttamente a «nessun obbligo». |
Se l’evento è insieme una vulnerabilità e un incidente (una falla sfruttata che ha causato un’interruzione), qualificalo secondo ciò che intendi notificare per primo e annota il resto nella descrizione. Le due basi normative hanno termini di relazione finale diversi: vedi Fasi e termini.
Fase 2 · Presupposto dell’obbligo
La seconda domanda cambia a seconda della risposta data alla prima.
Se hai scelto «vulnerabilità»
Esiste evidenza di sfruttamento attivo? La vulnerabilità segnalata non equivale alla vulnerabilità sfruttata: l’obbligo sorge in presenza di elementi che attestino l’uso effettivo da parte di terzi.
- Sì, evidenza documentata di uso effettivo — registri di esecuzione non autorizzata, exploit in circolazione, conferma da fonte affidabile.
- No, la vulnerabilità risulta soltanto segnalata — divulgazione da parte di un ricercatore, nessun indizio di sfruttamento in corso.
- Elementi insufficienti per decidere — l’analisi è in corso: la valutazione viene sospesa e ripresa con promemoria.
Se hai scelto «incidente grave»
L’evento ha inciso sulla capacità del prodotto di proteggere disponibilità, integrità o riservatezza? L’obbligo sorge quando l’evento ha effettivamente compromesso una proprietà di sicurezza del prodotto o dei dati trattati; la sola anomalia, senza impatto sulla sicurezza, non integra il presupposto.
- Sì, compromesse — interruzione di servizio, alterazione, accesso non autorizzato confermati.
- No, nessun impatto sulla sicurezza — malfunzionamento o disservizio senza compromissione delle proprietà di sicurezza.
- Elementi insufficienti per decidere — valutazione sospesa con promemoria.
«Elementi insufficienti» non è una scappatoia: è la risposta corretta quando davvero non sai. Produce un verdetto sospeso con un promemoria di ricontrollo, e la sospensione stessa è documentata. Rispondere «no» per chiudere la pratica, e scoprire poi che lo sfruttamento c’era, è la situazione peggiore in cui puoi trovarti.
Fase 3 · Decorrenza del termine
Da quando l’azienda ne è venuta a conoscenza? Il termine di 24 ore decorre dal momento della consapevolezza. Indica l’orario documentabile: la prima ricezione della segnalazione o il primo riscontro interno.
Da questo momento parte l’orologio, che calcola la scadenza a 24 ore.
Modificare il momento di consapevolezza
Si può correggere anche dopo, se emerge che l’azienda ne era a conoscenza prima. La modifica richiede una motivazione, ricalcola immediatamente la scadenza, resta a registro con valore precedente e nuovo, e genera un avviso al referente e al legale rappresentante. È volutamente vistosa: spostare un termine è un atto che deve poter essere spiegato.
Conclusione del triage
Al termine delle tre fasi il motore applica la tabella decisionale e produce il verdetto. Il triage:
- scrive nel registro l’avvio e la conclusione, con l’autore;
- aggiunge il verdetto alla storia dei verdetti del case — la sequenza è cumulativa: una nuova valutazione non cancella la precedente;
- porta il case nello stato corrispondente all’esito;
- invia al referente l’esito (obbligo o nessun obbligo).
Un triage si può rifare quante volte serve: quando arrivano nuovi elementi, si riavvia dal dettaglio del case. La sequenza dei verdetti mostrerà come la valutazione si è evoluta, che è esattamente ciò che serve dimostrare.
Che cosa succede con «sospeso»
Il case resta in valutazione e viene programmato un promemoria di ricontrollo per il referente. Nel frattempo l’orologio della preallerta continua a essere mostrato: la sospensione riguarda la tua capacità di decidere, non il decorso del termine di legge.
Verdetto e base normativa
Il verdetto è la conseguenza meccanica delle due risposte di qualificazione. La tabella è esplicita e non ha zone grigie nascoste: dalle stesse risposte si ottiene sempre lo stesso esito, ed è per questo che il ragionamento è difendibile.
La tabella decisionale
| Fase 1 · natura | Fase 2 · presupposto | Verdetto | Base normativa |
|---|---|---|---|
| Nessuna delle due ipotesi | — | nessun obbligo | — |
| Vulnerabilità | Sfruttamento attivo documentato | obbligo | Art. 14(2)(a) |
| Vulnerabilità | Solo segnalata, nessuno sfruttamento | nessun obbligo | — |
| Vulnerabilità | Elementi insufficienti | sospeso | da riesaminare |
| Incidente grave | Proprietà di sicurezza compromesse | obbligo (incidente) | Art. 14(4)(a) |
| Incidente grave | Nessun impatto sulla sicurezza | nessun obbligo | — |
| Incidente grave | Elementi insufficienti | sospeso | da riesaminare |
Nessuna delle due ipotesi produce un obbligo senza una risposta confermata alla seconda fase: qualificare un evento come «incidente grave» non basta di per sé a far scattare la notifica. Il presupposto va accertato.
Obbligo di notifica
Il case passa in stato obbligo, l’orologio delle 24 ore è attivo e la schermata del verdetto indica:
- la base normativa applicabile — Art. 14(2)(a) per la vulnerabilità sfruttata, Art. 14(4)(a) per l’incidente grave;
- il destinatario — CSIRT nazionale ed ENISA attraverso la piattaforma unica di segnalazione;
- il termine calcolato dal momento di consapevolezza;
- le azioni successive: preparare la notifica, avvisare gli utenti impattati, segnalare a monte se il difetto è in un componente di terzi.
Parte inoltre l’avviso di esito al referente, e la sequenza dei solleciti dell’orologio è armata.
Nessun obbligo
Il case viene archiviato con il verdetto motivato. Non è una cancellazione: resta consultabile e il verdetto resta nel registro. In una verifica successiva, poter mostrare che l’evento era stato esaminato e ritenuto fuori ambito vale quanto una notifica depositata.
Buona pratica. Nel campo motivazione scrivi l’elemento decisivo, non la conclusione: «nessun exploit noto, PoC non funzionante su versioni supportate, conferma del ricercatore» è utile; «non applicabile» non lo è.
Sospeso
Il caso resta aperto in valutazione e viene fissato un promemoria di ricontrollo per il referente. Da riprendere appena arriva l’elemento mancante: la conferma dello sfruttamento, il riscontro del team, la risposta del segnalante.
La sospensione non sospende il termine di legge. Se il presupposto poi si conferma, le 24 ore restano ancorate al momento di consapevolezza originario, non a quando hai sciolto il dubbio. Tratta il sospeso come una corsa contro il tempo, non come una pausa.
La storia dei verdetti
Ogni conclusione di triage aggiunge una riga alla storia del case: momento, risposte date, esito, base normativa, momento di consapevolezza applicato, autore e motivazione. Le righe si accumulano, non si sostituiscono. È la ricostruzione di come la valutazione si è evoluta man mano che arrivavano informazioni — la prova che la tua è stata una gestione attiva e non un’omissione.
Dopo il verdetto
Con un obbligo accertato il passo successivo è la bozza di notifica. Se il difetto risiede in un componente di terzi, o se ci sono utenti da avvisare, vedi anche Avviso agli utenti e catena a monte: sono adempimenti distinti dalla notifica all’autorità e vanno tracciati separatamente.
Notifica: la bozza
La schermata Notifica prepara il contenuto della comunicazione all’autorità. Una parte è già scritta perché discende dal verdetto; il resto sono i fatti, che solo tu conosci. Tutto ciò che digiti qui viene riproposto nelle fasi successive, così l’aggiornamento a 72 ore non riparte da zero.
Quello che decide il motore
Questi campi non si modificano: sono la conseguenza del triage, ed è un bene che lo restino.
Quello che scrivi tu
Natura dell’evento
Che cosa è successo, in termini tecnici e verificabili. Utile includere: componente o funzione interessata, versioni coinvolte, vettore di attacco, identificativo CVE se assegnato, e — per la vulnerabilità sfruttata — gli elementi da cui risulta lo sfruttamento. Evita valutazioni di gravità non supportate: qui servono i fatti.
Misure adottate
Che cosa hai già fatto e che cosa stai facendo: mitigazioni temporanee, indicazioni date ai clienti, disattivazione di funzioni, tempi previsti per la correzione. Se al momento della preallerta non hai ancora una misura, scrivilo: «analisi in corso, mitigazione attesa entro …» è una risposta legittima entro 24 ore ed è meglio di un campo vuoto.
Referente
La persona che l’autorità può contattare: nome, ruolo, indirizzo email e telefono raggiungibile. Deve essere qualcuno che risponde davvero — anche fuori orario, in una fase attiva.
Buona pratica. Prepara in anticipo tre testi-tipo (vulnerabilità sfruttata, incidente con interruzione, incidente con esposizione di dati) e tienine copia. Alle tre di notte la differenza fra depositare in tempo e sforare è il tempo speso a scrivere il primo paragrafo.
Anteprima e coerenza
La schermata mostra il documento come risulterà, distinguendo visivamente i campi determinati dal motore da quelli compilati da te. Verifica prima di procedere:
- il prodotto indicato è quello giusto (nome e versione coincidono con l’anagrafica);
- la base normativa corrisponde alla natura dell’evento come l’hai qualificato;
- il momento di consapevolezza e la scadenza sono quelli che intendi sostenere;
- il referente è raggiungibile ora, non in generale.
Salvataggio della bozza
La bozza si salva con il case e resta disponibile: puoi tornarci, farla rileggere a un collega, riprenderla dopo un’interruzione. Ogni fase dell’obbligo (preallerta, aggiornamento, finale) conserva la propria bozza, così i tre testi restano distinti e ricostruibili.
La bozza non viene trasmessa a nessuno: CRAnotify non invia comunicazioni all’autorità. Il passaggio successivo, il deposito, avviene sulla piattaforma di ENISA con le tue credenziali.
Che cosa non mettere nella bozza
- Credenziali, chiavi o token, nemmeno revocati o d’esempio.
- Dati personali non necessari: se il caso ha coinvolto dati di clienti, descrivi categorie e volumi, non gli interessati.
- Exploit funzionanti. Descrivi il vettore, non fornire l’arma.
Passo successivo
Con la bozza pronta si va a Deposito sulla piattaforma ENISA. Ricorda che il deposito si considera avvenuto in CRAnotify solo quando carichi la ricevuta rilasciata dalla piattaforma.
Deposito sulla piattaforma ENISA
Il deposito è l’unico passaggio che avviene fuori da CRAnotify: la comunicazione si trasmette sulla Single Reporting Platform con le credenziali istituzionali della tua azienda. CRAnotify ti porta lì con il testo pronto e registra l’esito quando carichi la ricevuta ottenuta.
Perché non depositiamo noi
La segnalazione dell’Art. 14 è un atto del fabbricante, che impegna la sua responsabilità e passa dalla sua identità digitale (EU Login e le abilitazioni presso il CSIRT nazionale). Delegarla a un fornitore introdurrebbe un anello che non potresti dimostrare di controllare. Quello che possiamo garantire — e che serve in caso di verifica — è la prova di che cosa è stato depositato e quando.
Prerequisiti
La schermata mostra una lista di controllo con due voci:
Le spunte sono informative: non bloccano il deposito. Servono a non arrivare alle 24 ore scoprendo che le credenziali non ci sono. Sono anche una delle condizioni del passo «Pronto al deposito» della lista di attivazione.
La procedura
- Verifica i campi riepilogati nella schermata: base normativa, tipo di comunicazione, destinatari, prodotto, natura, misure, referente.
- Apri la piattaforma dal collegamento presente nella pagina e trasmetti la comunicazione con le tue credenziali.
- Scarica dalla piattaforma la ricevuta del deposito (PDF, immagine o la email di conferma salvata come
.eml). - Torna su CRAnotify, carica la ricevuta e — se la piattaforma lo ha assegnato — indica il numero di protocollo.
- Conferma. Il case cambia stato e la fase successiva si apre.
La ricevuta è obbligatoria
Senza il file della ricevuta il deposito non viene registrato e lo stato del case resta invariato. Non è una rigidità arbitraria: un deposito dichiarato ma non provato non ti difende in un’ispezione. Formati accettati: PDF, PNG, JPEG, .eml, fino a 10 MB.
Il file viene conservato con il case, ricondotto alla fase a cui si riferisce, e compare nel fascicolo difensivo insieme al momento di caricamento e al numero di protocollo.
Sono tre stati distinti: preparato non è trasmesso, e trasmesso non è riscontrato. Generare o impacchettare un PDF non è di per sé un deposito né una presa d’atto; solo il caricamento della ricevuta reale — un file conservato in modalità write-once nel caveau, con il suo protocollo — registra l’avvenuto deposito. Nulla viene mai inviato all’autorità in automatico.
Che cosa succede alla conferma
| Fase depositata | Il case passa a… | Termini che si aprono |
|---|---|---|
| Preallerta | in corso | Aggiornamento a 72 ore. Per l’incidente grave anche la relazione finale (un mese); per la vulnerabilità la relazione finale si ancora alla misura correttiva. |
| Aggiornamento a 72 ore | in corso, fase «relazione finale» | Se è una vulnerabilità, qui si indica la data di disponibilità della misura correttiva: la scadenza della relazione finale diventa quella data più 14 giorni. |
| Relazione finale | adempiuto | Nessuno: il percorso è concluso. |
A ogni conferma viene scritta una riga di registro con base normativa, fase, nome della ricevuta ed eventuale protocollo, e parte l’avviso ai referenti (e al legale rappresentante, se ha scelto di riceverli).
Attenzione al significato di «in corso». Depositare la preallerta non chiude l’adempimento: lo stato «adempiuto» arriva solo con la relazione finale. È una distinzione che nelle verifiche fa differenza.
Se il caricamento viene rifiutato
| Messaggio | Causa | Rimedio |
|---|---|---|
| «Allega la ricevuta…» | Nessun file selezionato. | Seleziona il file scaricato dalla piattaforma. |
| «Ricevuta non valida» | Formato non ammesso o file corrotto. | Usa PDF, PNG, JPEG o .eml. Una stampa in PDF della pagina di conferma va bene. |
| «Il caricamento è troppo grande» | Oltre 10 MB. | Ricomprimi il PDF o salva solo la pagina di conferma. |
Dopo il deposito
La schermata di conferma richiama gli adempimenti che restano — completamento delle informazioni richieste dall’autorità, aggiornamenti e conservazione delle evidenze — e dà accesso al fascicolo. Se non l’hai ancora fatto, è il momento di valutare l’avviso agli utenti impattati.
Fasi e termini
L’obbligo dell’Art. 14 non si esaurisce con una comunicazione: sono tre, in sequenza, ciascuna con il proprio termine. CRAnotify tiene un orologio per la fase corrente e apre la successiva quando la precedente viene depositata.
Le tre fasi
| Fase | Termine | Decorre da |
|---|---|---|
| Preallerta | 24 ore | Il momento di consapevolezza fissato nel triage. |
| Aggiornamento | 72 ore | Il deposito della preallerta. |
| Relazione finale | Vedi sotto: dipende dalla natura dell’evento. | Il deposito dell’aggiornamento, con ancoraggio diverso per vulnerabilità e incidente. |
La relazione finale
È una scelta deliberata: mostrare un conto alla rovescia inventato per un termine che dipende da un evento futuro sarebbe peggio che non mostrarlo. La data di disponibilità della misura si indica al momento del deposito dell’aggiornamento a 72 ore; da quel momento la scadenza compare e resta a registro il ri-ancoraggio.
Come funziona l’orologio
L’orologio mostra tempo residuo, momento di consapevolezza, scadenza calcolata e finestra di riferimento della fase corrente. Il conteggio scorre nel browser ma è ancorato alla scadenza calcolata dal server: ricaricare la pagina, cambiare dispositivo o fuso orario non lo altera.
I solleciti automatici
Sulla fase corrente lo scheduler valuta periodicamente i termini aperti e invia gli avvisi ai destinatari della catena di escalation. Ogni avviso è inviato una volta sola per case, fase e destinatario, e lascia una riga nel registro.
| Momento | Chi riceve | Perché |
|---|---|---|
| Avvio dell’orologio | Referente, sostituto | Il termine è partito: si sappia subito. |
| 16 ore al termine | Referente | Primo richiamo, ancora in tempo utile per organizzarsi. |
| 4 ore al termine | Referente, sostituto | La finestra si stringe: entra il sostituto. |
| 1 ora al termine | Referente, sostituto, legale rappresentante | Rischio concreto di sforare: il legale deve saperlo prima, non dopo. |
| Nessun riscontro sul case | Referente, sostituto, legale | Nessuno ha aperto il case da troppo tempo mentre un termine correva. |
| Termine superato | Referente, sostituto, legale | Lo sforamento va documentato, non nascosto. |
| Promemoria di ricontrollo | Referente | Un verdetto «sospeso» attende ancora elementi. |
La dichiarazione di presa in carico sul case sospende l’escalation verso sostituto e legale per quel termine: usala quando il referente se ne sta occupando davvero.
Fusi orari e momenti
I momenti sono conservati in UTC e mostrati nell’ora locale italiana; nel registro sono in formato GG/MM HH:MM. Il conteggio è in ore piene dal momento di consapevolezza: 24 ore da un evento delle 22:30 scadono alle 22:30 del giorno dopo, non a fine giornata lavorativa.
Le 24 ore non conoscono fine settimana né festività. Se il referente indicato non è raggiungibile il sabato, il presidio non esiste: rivedi la catena di escalation, non l’orologio.
Se il momento di consapevolezza cambia
La correzione del momento di consapevolezza ricalcola immediatamente la scadenza della preallerta, richiede una motivazione, resta a registro con valore vecchio e nuovo e genera un avviso a referente e legale rappresentante. Se lo spostamento porta la scadenza nel passato, l’orologio segna subito «scaduto»: è un’informazione, non un fallimento del software.
Dopo l’adempimento
Depositata la relazione finale, il case passa ad adempiuto e non ha più termini attivi. Restano le prove: registro, ricevute e fascicolo. Un avviso ti ricorda quando si avvicina la fine del periodo di conservazione del fascicolo (vedi Dati personali e conservazione).
Avviso agli utenti e catena a monte
Accanto alla notifica all’autorità, il regolamento prevede due adempimenti che riguardano altri destinatari: informare gli utenti impattati e segnalare al manutentore un difetto che risiede in un componente di terzi. CRAnotify li tratta come attività distinte, ciascuna con la propria traccia nel registro.
Avviso agli utenti impattati · Art. 14(8)
Quando un evento incide sulla sicurezza del prodotto, il fabbricante informa senza indebito ritardo gli utenti del prodotto — e, se opportuno, tutti gli utenti — dell’evento e delle misure correttive o di mitigazione che possono adottare.
La schermata Avvisa gli utenti (dal percorso del deposito) permette di:
- scegliere il perimetro dei destinatari: utenti registrati, clienti e distributori, tutti i soggetti impattati;
- partire da un testo-base già impostato, da adattare al caso;
- registrare l’avviso come eseguito, con perimetro e momento.
CRAnotify non invia l’avviso ai tuoi clienti: la diffusione avviene con i tuoi canali (avvisi di sicurezza, email ai clienti, note di rilascio, portale prodotto). Qui se ne registra l’esecuzione, che è ciò che va poi dimostrato.
Buona pratica. Nell’avviso indica sempre: prodotto e versioni interessate, che cosa può accadere, che cosa deve fare l’utente adesso, quando arriverà la correzione. Un avviso che descrive il problema senza dire cosa fare genera solo chiamate all’assistenza.
Segnalazione al manutentore · Art. 13(6)
Se la vulnerabilità riguarda un componente di terzi incluso nel prodotto — una libreria open source, un modulo di fornitore — il fabbricante la segnala alla persona o all’entità che lo mantiene.
La schermata Segnalazione a monte elenca i componenti registrati nella distinta base del prodotto (vedi Anagrafica dei prodotti), propone un testo-base e registra l’avvenuta segnalazione.
- Segnala al canale di sicurezza dichiarato dal progetto (
SECURITY.md,security.txt, advisory privati), non a un canale pubblico. - Concorda una finestra di divulgazione coordinata prima di pubblicare dettagli.
- Conserva la corrispondenza: è la prova che la catena a monte è stata attivata.
In che ordine
La notifica all’autorità ha i termini più stretti e ha la precedenza. Gli altri due adempimenti seguono, ma non aspettare la relazione finale per farli: l’avviso agli utenti è tanto più utile quanto prima arriva, e la segnalazione a monte spesso è la condizione perché la correzione esista.
consapevolezza ──24 h──▶ preallerta all’autorità
│
├─▶ avviso agli utenti impattati (Art. 14(8), senza indebito ritardo)
└─▶ segnalazione al manutentore a monte (Art. 13(6), appena identificato)
Che cosa resta a registro
| Atto | Riga di registro | Tipo |
|---|---|---|
| Avviso agli utenti registrato | «Avviso agli utenti impattati registrato» con il perimetro dei destinatari | notifica |
| Avviso riaperto | «Avviso agli utenti impattati riaperto» | notifica |
| Segnalazione a monte registrata | «Segnalazione al manutentore registrata» con riferimento ai componenti | notifica |
Entrambe le attività contano nell’lista di attivazione: sono due dei sette passi.
Da non confondere
L’avviso agli utenti non sostituisce la notifica all’autorità, e la notifica all’autorità non sostituisce l’avviso agli utenti. Sono obblighi distinti con destinatari e finalità diverse: adempierne uno solo lascia scoperto l’altro.
Assistente CRA
L’assistente CRA è un copilota di conformità: è disponibile in ogni pagina del cruscotto e ti affianca mentre compili — spiega, guida e cita gli articoli del Cyber Resilience Act. È basato su AWS Bedrock (Claude) e conosce il contesto della pagina in cui ti trovi. Resta consultivo: orienta, ma non qualifica eventi, non calcola termini e non decide se un obbligo esiste — quelle restano decisioni del motore deterministico e tue. Oltre a rispondere nel riquadro di conversazione, aiuta a scrivere: riformula, sintetizza, traduce, prepara la bozza di un avviso.
I compiti disponibili
| Compito | Che cosa produce |
|---|---|
| Riformula | Riscrive il testo fornito in modo chiaro, professionale e conciso, senza aggiungere fatti. |
| Sintesi | Riassume una segnalazione in un sommario strutturato (fatti, prodotto, impatto potenziale), senza qualificare l’obbligo né indicare scadenze. |
| Traduci | Traduce fra italiano e inglese mantenendo invariati i termini tecnici e i riferimenti normativi. |
| Bozza di avviso | Prepara una comunicazione agli utenti a partire dai fatti forniti, in tono sobrio e non allarmistico. |
Che cosa non fa, per costruzione
- Non stabilisce il verdetto del triage né la base normativa: quelli escono dalla tabella decisionale, non da un modello linguistico.
- Non fissa né sposta termini e momenti di consapevolezza.
- Non deposita, non invia comunicazioni, non modifica lo stato di un case.
- Non risponde fuori perimetro: se la richiesta non riguarda la conformità al Cyber Resilience Act e i testi collegati, rifiuta.
Ogni risposta è una bozza da revisionare: non ha valore legale finché una persona non la fa propria. I riferimenti normativi che il modello cita sono confrontati con il corpus di orientamenti sul regolamento su cui è ancorato; le citazioni non riscontrate vengono segnalate insieme alla bozza.
Come usarlo bene
- Parti da fatti già scritti: incolla la segnalazione, gli appunti, la bozza grezza. L’assistente riscrive, non inventa il contenuto.
- Chiedi un compito alla volta: prima la sintesi, poi la riformulazione del testo definitivo.
- Rileggi e correggi: nomi di prodotto, versioni, date e riferimenti normativi vanno verificati sempre.
- Porta il testo approvato nella bozza di notifica o nell’avviso agli utenti.
Buona pratica. Usa l’assistente per la forma quando il tempo stringe (tradurre un avviso, ripulire un testo scritto di corsa alle tre di notte) e mai per la sostanza. La qualificazione dell’evento è la parte che ti difende: quella si ragiona.
Dati e riservatezza
- Al modello, servito tramite AWS Bedrock, arriva il testo che fornisci più il contesto della pagina in cui stai lavorando (la sezione, il case o il prodotto aperto). Non vengono mai trasmessi in blocco l’intero registro o tutte le anagrafiche.
- Non inserire credenziali, chiavi, dati personali di terzi non necessari o exploit funzionanti.
- Ogni generazione lascia una riga nel registro delle attività (compito e modello usato), così l’uso dello strumento è tracciato.
Quote e disponibilità
La finestra di conversazione
Il riquadro di conversazione è disponibile in ogni pagina del cruscotto e risponde a domande sull’uso del prodotto e sulla conformità, tenendo conto del contesto della pagina in cui ti trovi — la sezione, il case o il prodotto aperto. Valgono lo stesso perimetro e le stesse quote. È pensato per una domanda puntuale mentre lavori, non per una consulenza estesa: per una risposta che impegna qualcuno, c’è l’assistenza.
Registro e prove
Il registro delle attività, la sua integrità, il fascicolo difensivo e la ricostruzione a una data.
Registro delle attività
Il registro è il libro degli atti dell’organizzazione: ogni decisione, comunicazione e configurazione rilevante vi lascia una riga con momento, autore e riferimenti. È il cuore della difesa: davanti a un’autorità conta poter mostrare che cosa è stato fatto e quando, non ricordarselo.
Che cosa viene registrato
| Tipo | Esempi di eventi |
|---|---|
| segnalazione | Segnalazione ricevuta dal portale pubblico, case inserito manualmente. |
| valutazione | Avvio e conclusione del triage, verdetto, accettazione o rifiuto di una segnalazione, presa in carico, archiviazione, modifica del momento di consapevolezza. |
| notifica | Deposito di preallerta, aggiornamento e relazione finale; avviso agli utenti; segnalazione al manutentore; invio degli avvisi operativi. |
| amministrazione | Modifiche a dati aziendali, utenti, escalation, chiavi API, integrazioni SBOM, canali di avviso, modulo pubblico, sicurezza dell’account. |
Ogni riga contiene: identificativo breve, momento, tipo, case di riferimento, autore, descrizione dell’evento e riferimenti (base normativa, nome della ricevuta, destinatari…).
Consultare e filtrare
- Filtro per tipo — tutti, segnalazione, valutazione, notifica.
- Ricerca testuale — cerca in descrizione, riferimenti e numero di case.
- Ordinamento — per data, identificativo, tipo, evento o autore, crescente o decrescente.
Dal dettaglio di un case si vede la sola cronologia di quel case, che è spesso la vista più utile durante una lavorazione.
Esportare in CSV
Il pulsante di esportazione produce un CSV che rispetta i filtri attivi. Le colonne sono:
id, timestamp, tipo, caso, autore, evento, riferimenti, hash, prev_hash
Il file è codificato in UTF-8 con marcatore iniziale, così si apre correttamente anche con Excel in italiano. Le due colonne finali sono le impronte della catena di integrità: sono ciò che permette a un terzo di verificare l’esportazione senza accedere al sistema.
Buona pratica. Esporta il registro a ogni chiusura di case e archivialo dove conservi le prove contrattuali. L’esportazione è sempre disponibile, anche se l’abbonamento è scaduto o in sola lettura.
Perché le alterazioni sono rilevabili
Le righe si aggiungono, non si correggono né si cancellano. Se una valutazione era sbagliata, se ne registra una nuova: la sequenza mostrerà l’errore e la correzione, che è esattamente ciò che dimostra una gestione attiva. Un registro modificabile a posteriori non proverebbe nulla — e la catena di hash rende la modifica immediatamente evidente.
Voci di esercitazione
Con la modalità esercitazione attiva, ogni riga prodotta è preceduta da [esercitazione]. Restano nel registro (una prova generale è essa stessa una prova di diligenza) ma non si confondono con gli adempimenti reali.
L’autore delle righe
L’autore è l’utente che ha compiuto l’atto. Le righe generate dal sistema — l’invio programmato di un sollecito, per esempio — riportano l’origine automatica. Se una riga mostra un trattino, l’azione è avvenuta senza un utente identificabile (tipicamente uno scheduler): è normale per gli avvisi, non lo è per un deposito.
Conservazione
Il registro è conservato per l’intero periodo di conservazione del fascicolo e non viene cancellato da una richiesta di cancellazione dei dati personali: è documentazione di adempimento normativo. Il dettaglio è in Dati personali e conservazione.
Integrità del registro
Ogni riga del registro contiene l’impronta crittografica della riga precedente. Ne risulta una catena: modificare, inserire o eliminare una riga rende incoerenti tutte quelle successive, e la verifica lo rileva indicando il punto esatto della rottura.
Come funziona
Quando una riga viene scritta, il sistema calcola un’impronta SHA-256 su un contenuto canonico che comprende:
- l’impronta della riga precedente della stessa organizzazione (la prima riga si aggancia a un valore iniziale legato al codice organizzazione);
- il momento esatto in formato canonico;
- tipo, case, autore, descrizione e riferimenti.
riga 1: hash₁ = H( "genesis:ORG-…" ‖ ts₁ ‖ tipo₁ ‖ caso₁ ‖ autore₁ ‖ testo₁ ‖ meta₁ )
riga 2: hash₂ = H( hash₁ ‖ ts₂ ‖ tipo₂ ‖ caso₂ ‖ autore₂ ‖ testo₂ ‖ meta₂ )
riga 3: hash₃ = H( hash₂ ‖ … )
L’identificativo breve visibile nell’interfaccia (otto caratteri) è il prefisso dell’impronta della riga: è comodo da citare in una comunicazione e riconduce senza ambiguità alla riga completa.
Le catene sono per organizzazione: la tua sequenza è indipendente da quella di chiunque altro, e nessun dato di altre organizzazioni entra nel calcolo.
La verifica
La pagina del registro mostra l’esito della verifica: numero di righe controllate ed esito complessivo. Il controllo ricalcola l’intera catena e confronta ogni impronta con quella memorizzata.
Se la catena risulta interrotta
Non è una condizione da ignorare né da «sistemare» da soli. Le cause possibili sono poche e vanno distinte prima di intervenire.
- Esporta subito il CSV completo, senza filtri: contiene le impronte e congela lo stato attuale come evidenza.
- Non modificare nulla nel registro e non tentare di ricostruire righe.
- Apri una richiesta di assistenza con categoria «Problema tecnico», indicando il numero della prima riga incoerente e allegando il CSV.
- Annota l’accaduto nei tuoi registri interni di sicurezza: se qualcuno ha manomesso i dati, la scoperta e la reazione sono esse stesse elementi da documentare.
Cause tipiche, in ordine di frequenza: un ripristino parziale del database da un backup disallineato; un intervento manuale sulla base dati; una migrazione interrotta. Un’alterazione ostile è rara ma è precisamente ciò che il meccanismo esiste per rendere visibile.
Che cosa prova (e che cosa no)
Non si tratta di una marcatura temporale certificata da un terzo: è un’evidenza interna di non alterazione. Se il tuo contesto richiede una marca temporale qualificata, applicala all’esportazione periodica del registro, che è un file autoconsistente.
Far verificare l’esportazione a un terzo
Il CSV contiene, per ogni riga, i campi che entrano nel calcolo più hash e prev_hash. Un consulente o un perito può ricalcolare la catena in modo indipendente: parte dal valore iniziale legato al codice organizzazione, concatena i campi nell’ordine documentato e verifica che ogni impronta corrisponda. Nessun accesso al nostro sistema è necessario.
Fascicolo difensivo
Il fascicolo raccoglie in un unico documento tutto ciò che riguarda un case: identificazione, termini, ricevute di deposito, allegati e cronologia completa. È il documento da consegnare a un’autorità, a un legale o a un revisore.
Che cosa contiene
Come si genera
Si apre dal case in lavorazione (o dal registro) alla voce Fascicolo. Il documento è composto per la stampa: usa la funzione di stampa del browser e salva in PDF. Il risultato è autoconsistente — non contiene collegamenti che devono restare raggiungibili per essere letto.
Buona pratica. Genera il fascicolo a ogni deposito, non solo alla chiusura. Un PDF datato per fase mostra lo stato delle conoscenze in quel momento, che è ciò che conta per valutare la ragionevolezza delle decisioni prese.
Come si usa
- Con l’autorità — accompagna o segue la comunicazione depositata, quando viene chiesto di documentare la gestione dell’evento.
- Con il legale — è la base fattuale su cui costruire una difesa: date, atti, autori.
- In audit e due diligence — dimostra che esiste un processo e che è stato seguito, non solo scritto in una procedura.
- Internamente — è la lettura più utile in una revisione post-evento: dove si sono persi i minuti.
L’impronta del documento
Nell’intestazione compare un’impronta che sintetizza gli elementi identificativi del fascicolo (case, ricevuta, momento del deposito). Serve a citare una copia specifica in una comunicazione e a verificare che due copie coincidano. La verifica di integrità sostanziale resta quella della catena del registro, che copre tutte le righe riportate nella cronologia.
Quando il fascicolo non basta
Il fascicolo documenta ciò che è passato da CRAnotify. Le prove che vivono altrove — la corrispondenza con il ricercatore, i log dei tuoi sistemi, il codice della correzione, gli avvisi pubblicati ai clienti — vanno conservate insieme al fascicolo, non al suo posto. Un raccoglitore per case, con il PDF del fascicolo come indice, è l’organizzazione che regge meglio nel tempo.
Esportazioni collegate
| Documento | Dove | Contenuto |
|---|---|---|
| Fascicolo del case | Case › Fascicolo | Il case completo, per la stampa. |
| Registro in CSV | Registro › Esporta | Tutte le righe (con i filtri attivi) e le impronte della catena. |
| Esportazione dati account | Area utente › Legale | I dati dell’account in formato JSON. |
| Ricevute di deposito | Case › Ricevute | I file originali rilasciati dalla piattaforma. |
Ricostruzione a una data
Prima o poi arriva una domanda con una data dentro: «di che cosa era fatto il tuo software, e che cosa sapeva la tua organizzazione, il 12 marzo?». Questa pagina risponde. Ricostruisce ciò che risultava registrato su un prodotto fino a un momento preciso, e non aggiunge niente di quello che è arrivato dopo. Non è una valutazione: dice che cosa c’era, mai se fosse abbastanza.
Dove si trova
Dalla pagina di un prodotto, linguetta Ricostruzione a una data: è l’unica delle linguette che porta su una pagina propria (/ricostruzione?id=…), perché ha un parametro che le altre non hanno — il momento da ricostruire.
La regola che decide tutto
Il filtro è su quando l’abbiamo saputo, non su quando il fatto è accaduto nel mondo. Un’evidenza che riguarda marzo ma è arrivata a giugno non è nella ricostruzione di aprile: includerla costruirebbe una prova che quel giorno non esisteva.
Dove entrambi i tempi sono dichiarati, le righe li mostrano tutti e due: «registrato» — la data su cui la pagina filtra — e «osservato», quando il fatto è accaduto. Restano distinti a schermo come lo sono nei dati.
Scegliere il momento
Europe/Rome, come per tutto il resto del prodotto. L’istante effettivamente ricostruito viene stampato in pagina: una ricostruzione senza il proprio momento non è verificabile.La data viaggia nell’indirizzo e il modulo è una GET: l’indirizzo di una ricostruzione si manda a un collega o si allega a una risposta, e riapre esattamente la stessa pagina.
Finché non chiedi una data non viene mostrato nessun elenco. Un elenco vuoto si legge come «non risulta nulla», che è un’affermazione — mentre a quel punto non è ancora stata fatta nessuna domanda.
I quattro capitoli
| Capitolo | Che cosa mostra |
|---|---|
| Distinte base | Una riga per release: la versione più alta registrata entro quel momento, con formato, numero di componenti, strumento e impronta. Se l’elenco dei componenti era stato conservato in parte, la riga lo dice. |
| Evidenze | Che cosa conteneva il fascicolo a quel momento, nello stato in cui era allora — non nello stato di oggi. |
| Corrispondenze dalle fonti | Che cosa una fonte aveva agganciato a un componente della distinta base entro quel momento. Una corrispondenza è un’osservazione: vedi Valutazioni VEX. |
| Lavoro aperto a quel momento | La coda com’era allora: che cosa restava da fare e a chi era assegnato. |
Ogni capitolo porta il numero delle proprie righe, che si riconta scorrendo l’elenco. I numeri non si sommano fra loro e non compongono un indicatore.
Nessun termine viene stampato. Il termine di un caso lo calcola il motore per oggi, e metterlo accanto a uno stato passato sarebbe un anacronismo. Per le scadenze si guarda il case, non questa pagina.
Quando un capitolo è vuoto lo dice a parole, e dice anche da che cosa dipende: che nessuna fonte avesse agganciato niente non è un’affermazione sul prodotto — dipende da quali distinte base erano arrivate e da quali fonti erano collegate.
A che cosa serve, in pratica
Insieme al registro delle attività, alla verifica di integrità e al fascicolo difensivo, è la parte probatoria del prodotto: il registro dice che cosa è stato fatto, la ricostruzione che cosa si poteva sapere mentre lo si faceva.
Che cosa questa pagina non fa
Non modifica niente. Non registra un fatto, non aggiorna un prodotto e non lascia una riga di registro: una ricostruzione che cambiasse ciò che ricostruisce non proverebbe nulla. Non emette giudizi, non calcola percentuali e non produce una riga di sintesi.
Le date sono stampate con l’anno, a differenza del resto dell’applicazione: questa pagina esiste per un momento preciso del passato, e «12/03» sarebbe ambiguo proprio dove serve essere verificabili.
Prodotti e distinta base
L’anagrafica dei prodotti con elementi digitali, la distinta base, le valutazioni VEX, i controlli, la documentazione tecnica e i fornitori a monte.
Anagrafica dei prodotti
L’anagrafica elenca i prodotti con elementi digitali che la tua organizzazione immette sul mercato. Serve a due cose molto concrete: agganciare ogni case al prodotto giusto e avere sottomano, quando il tempo stringe, gli identificativi che l’autorità chiede.
I campi
| Campo | Che cosa indicare |
|---|---|
| Nome | Il nome commerciale con cui il prodotto è immesso sul mercato. |
| Versione | La versione o la linea di versioni interessata. Se ne mantieni più d’una, valuta una riga per linea. |
| Numero di serie · Part number | Gli identificativi che permettono di individuare l’esemplare o il lotto. |
| Codice a barre · MAC | Per i prodotti fisici e connessi, quando applicabili. |
| Categoria | La classificazione che usi internamente (o quella rilevante ai fini del regolamento). |
| Rilascio | Data di immissione sul mercato. |
| Fine del supporto | Termine del periodo di supporto. È un dato che il regolamento considera rilevante e che ti conviene avere esplicito. |
| Stato | In commercio, in fine vita, ritirato. |
| Distinta base | Riferimento alla SBOM del prodotto: formato e provenienza. Vedi SBOM. |
Importare ed esportare in CSV
L’anagrafica si popola anche da un file, utile quando i prodotti stanno già in un gestionale o in un foglio di calcolo. Dalla schermata Prodotti: Esporta CSV scarica l’elenco corrente, Importa CSV ne carica uno. Il file esportato si reimporta senza modifiche. Nel menu Importa CSV un collegamento «Scarica CSV di esempio» fornisce un file già intestato con due righe illustrative, da riempire e reimportare.
ID,Nome,Versione,Categoria,SN,PN,Barcode,MAC,Rilascio,FineSupporto,Stato
Al termine la schermata riporta quanti prodotti sono stati aggiunti e quanti saltati; i salti avvengono se il piano è in sola lettura o se si raggiunge il limite di prodotti. Ogni prodotto importato porta nello storico la nota «importato da CSV», e l’operazione lascia una riga nel registro delle attività.
Buona pratica. Prima di un’importazione massiva esporta l’elenco esistente: hai così il file di confronto per accorgerti dei duplicati, e un punto di ripristino se il contenuto non è quello atteso.
Componenti
Per ogni prodotto puoi elencare i componenti di terzi rilevanti, con manutentore e licenza. È l’elenco che ti serve quando una vulnerabilità risiede a monte: la segnalazione al manutentore parte da qui, e la presenza del manutentore evita la ricerca affannosa del canale di sicurezza mentre l’orologio corre.
Buona pratica. Non replicare l’intera distinta base a mano. Elenca i componenti critici — quelli il cui difetto compromette la sicurezza del prodotto — e collega gli strumenti SBOM per il resto.
Note e modifiche
Lo storico è particolarmente utile sul campo «fine del supporto»: se una data viene spostata, la modifica resta visibile con la sua motivazione.
Limiti di piano
Non c’è un tetto ai prodotti censibili: il numero di Prodotti gestiti attivi determina il prezzo, non un permesso. La schermata Area utente › Abbonamento › Piano mostra quanti ne stai gestendo. Archiviare un prodotto non più in commercio lo toglie dal perimetro attivo e dal conteggio senza cancellarne la storia: vedi Abbonamento e fatturazione.
Quanto deve essere completa
Quattro prodotti censiti con identificativi completi valgono, ai fini della lista di attivazione, più di venti righe con il solo nome. In una notifica, l’autorità si aspetta di poter individuare il prodotto senza ambiguità: nome, versione e almeno un identificativo stabile.
Se un case viene aperto su un prodotto assente dall’anagrafica, la notifica avrà un campo prodotto generico e in fase di verifica sarà una lacuna evidente. Censisci prima, non durante l’emergenza.
Il legame con i case
Ogni case indica il prodotto coinvolto; dalla scheda prodotto si vede il numero di case a esso collegati. È la vista che rivela i prodotti che ti danno più problemi — informazione che serve alla gestione del rischio quanto alla conformità.
Distinta base e strumenti SBOM
La distinta base del software (SBOM) elenca i componenti che compongono un prodotto. Serve a rispondere in fretta alla domanda che conta durante un incidente: «questo difetto ci riguarda?». CRAnotify non genera SBOM: si collega agli strumenti che già produci in pipeline e ne registra la sincronizzazione.
Strumenti collegabili
Da Area utente › SBOM si attivano gli strumenti in uso e si inseriscono, dove serve, indirizzo e token di accesso:
La configurazione è per organizzazione ed è un’operazione da amministratore; ogni modifica lascia una riga nel registro.
Come funzionano le connessioni
Il collegamento avviene con il modello a token: sul portale dello strumento si genera una chiave API (o Personal Access Token) e la si incolla nel campo corrispondente. Il pulsante Verifica connessioni esegue una chiamata autenticata reale allo strumento e riporta l’esito per ciascuno: ok, token rifiutato o irraggiungibile.
In pratica. Il token generato sullo strumento va conservato come una password: chi lo possiede può leggere i dati della tua distinta base. Ruotalo periodicamente e revocalo se un collaboratore lascia il team.
Ricezione automatica dalle tue pipeline
Uno scanner in CI può inviare direttamente la SBOM a CRAnotify. L’invio autentica con una chiave API che porta lo scope products:write, sull’intestazione X-CRA-API-Key (in alternativa Authorization: Bearer cra_live_…). Il prodotto è identificato dallo SKU nel percorso:
curl -X POST "https://api.cranotify.eu/api/v1/external/products/PRD-4f2a91/sbom?tool=trivy&release=2.4.1" \
-H "X-CRA-API-Key: cra_live_…" \
-H "Content-Type: application/json" \
--data-binary @sbom.json
| Aspetto | Valore |
|---|---|
| Formati accettati | CycloneDX (JSON) e SPDX (JSON). |
| Dimensione massima | 25 MB per invio. |
Parametro tool | Facoltativo: se assente, lo strumento viene riconosciuto dai metadati del documento. |
| Prodotto (SKU nel percorso) | Il prodotto è identificato dallo SKU nel percorso (/products/{sku}/sbom): la distinta si aggancia sempre a quel prodotto. Uno SKU inesistente nella tua organizzazione viene rifiutato (vedi sotto). |
Parametro release | Facoltativo: aggancia il documento a una release precisa nello storico del prodotto. Se assente, si usa la release che il prodotto dichiara corrente. |
| Risposta | JSON con strumento, formato, numero di componenti e di vulnerabilità, momento di ricezione. |
Un invio riuscito marca lo strumento come realmente collegato (non basta aver salvato un token), aggiorna il conteggio dei componenti e lascia una riga nel registro.
| Risposta | Significato |
|---|---|
401 invalid_api_key | Chiave assente, errata o revocata. |
403 (scope mancante) | La chiave esiste ma non porta lo scope products:write. |
404 unknown_product | Lo SKU nel percorso indica un prodotto che non esiste nella tua organizzazione. Uno SKU di un’altra organizzazione dà la stessa risposta di uno mai creato. |
422 unrecognised_sbom_format | Il corpo non è né CycloneDX né SPDX in JSON. |
Lo storico: le distinte non si sovrascrivono
Ogni distinta base ricevuta viene conservata come un fatto a sé, con due tempi distinti — quando è stata prodotta e quando l’abbiamo ricevuta. L’identità di una distinta è prodotto + release: un secondo invio per la stessa release diventa una nuova versione, e quella precedente resta leggibile.
La SBOM appartiene dunque a una release precisa ed è versionata per release (mai sovrascritta). Caricamento web, API esterna e CLI convergono tutti sullo stesso modello versionato. Il dettaglio del rilascio (/releases/{id}) mostra le informazioni della release, lo storico delle SBOM e l’inventario dei componenti.
Non è una comodità. Se un’autorità chiede quale versione di un componente fosse distribuita nel giorno in cui la tua organizzazione ha avuto consapevolezza di un problema, la risposta va ricostruita su ciò che il sistema poteva sapere quel giorno — e «non lo sappiamo più» è una risposta che nessuna diligenza successiva recupera.
Caricare una distinta a mano
Dalla scheda di un prodotto si può caricare un file SBOM direttamente, senza pipeline e senza chiave. Serve il primo giorno, quando l’integrazione non c’è ancora ma il prodotto deve già smettere di essere cieco: senza una distinta base, una vulnerabilità pubblicata su un componente non si può agganciare a nessun prodotto.
Il file passa dagli stessi controlli dell’invio automatico — stessi formati, stesso limite di 25 MB, stessi rifiuti — ed entra nello stesso storico. Se non indichi una release viene usata quella che il prodotto dichiara corrente; se il prodotto non ne dichiara nessuna, il caricamento viene rifiutato invece di inventarne una. Resta scritto che a portare dentro quel documento è stata una persona, e quale.
A che cosa serve nel flusso
- Restringere il perimetro. Quando esce una vulnerabilità su una libreria diffusa, la distinta base dice in quali dei tuoi prodotti quella libreria si trova, e in quale versione.
- Alimentare la segnalazione a monte. I componenti censiti sono l’elenco da cui parte la segnalazione al manutentore.
- Documentare la diligenza. Due strumenti attivi coprono uno dei sette passi della lista di attivazione.
CRAnotify non decide al posto tuo se un componente vulnerabile rende il prodotto sfruttabile: la presenza di una libreria non equivale alla presenza del difetto sfruttabile in quel contesto. La valutazione resta il triage.
Formati
Gli standard supportati sono CycloneDX e SPDX. Se produci SBOM in un solo formato, va bene: l’importante è che siano aggiornate a ogni rilascio. Una distinta base ferma a due anni fa è peggio di nessuna, perché induce a conclusioni sbagliate.
Come organizzarsi
- Genera la SBOM nella pipeline di build, non a mano.
- Inviala a CRAnotify a ogni rilascio con la chiave dedicata (scope
products:writesoltanto). - Tieni nell’anagrafica l’elenco dei componenti critici con il rispettivo manutentore.
- Verifica ogni tanto che la data dell’ultima sincronizzazione corrisponda all’ultimo rilascio.
Il tuo ruolo CRA per ogni prodotto
Il Cyber Resilience Act non attribuisce obblighi a un’azienda in astratto: li attribuisce a un operatore economico rispetto a un prodotto. La stessa società può essere fabbricante del router che progetta, importatore del modulo che compra fuori dall’Unione e distributore di un terzo prodotto — con obblighi diversi, nello stesso momento. Per questo in CRAnotify il ruolo si dichiara sulla scheda di ogni Prodotto gestito, non una volta sola in anagrafica aziendale.
I tre operatori economici
| Ruolo | Chi è |
|---|---|
| Fabbricante | Chi sviluppa o fa sviluppare il prodotto e lo immette sul mercato con il proprio nome o marchio. |
| Importatore | Chi, stabilito nell’Unione, immette sul mercato un prodotto di un fabbricante di un paese terzo. |
| Distributore | Chi mette a disposizione sul mercato un prodotto senza essere né fabbricante né importatore. |
I tre valori sono un elenco chiuso: non se ne aggiungono altri, perché da questa dichiarazione dipende quali obblighi ti vengono mostrati.
Proposto non vuol dire confermato
Un ruolo può arrivare in tre modi che non hanno alcun effetto: dichiarato a livello di organizzazione, importato da un file, proposto da un’euristica. Sulla scheda del prodotto li trovi sotto Proposti — non hanno effetto.
Un ruolo comincia a valere solo quando una persona lo conferma, e la conferma registra chi l’ha data e quando. Il motivo è semplice: mostrare a un distributore gli obblighi del fabbricante è un errore che chi legge non ha modo di riconoscere. Finché non confermi nulla, CRAnotify non ti mostra nessun obbligo legato al ruolo — preferisce tacere che dire la cosa sbagliata.
Se hai dichiarato i ruoli della tua organizzazione in Area utente › Azienda, quei ruoli compaiono come proposta su ogni prodotto nuovo. Non vengono mai confermati al posto tuo: «siamo anche importatori» non dice di quale prodotto la tua organizzazione lo è.
Chiudere un ruolo non lo cancella
Quando la tua organizzazione smette di distribuire un prodotto, chiudi il ruolo dalla sua scheda. Da quel momento gli obblighi legati a quel ruolo non ti vengono più mostrati, ma la storia resta: resta la data in cui il ruolo è iniziato, quella in cui è finito, e chi ha compiuto entrambi i gesti. Gli obblighi maturati mentre la tua organizzazione distribuiva quel prodotto non spariscono perché ha smesso.
Che cosa finisce nel registro
Ogni proposta, conferma e chiusura è una riga con autore e data. È materiale del fascicolo difensivo: davanti a un’autorità la domanda non è soltanto «che ruolo aveva la tua organizzazione», ma «da quando, fino a quando, e chi lo ha stabilito».
Entità giuridiche e operatori economici
Un gruppo che vende nell’Unione ha quasi sempre più società, e il Cyber Resilience Act attribuisce obblighi a ciascuna separatamente. Qui si censiscono le società attraverso cui la tua organizzazione immette i prodotti sul mercato, e si dice quale società ha quale ruolo su quale Prodotto gestito. Il ruolo vive sulla relazione fra entità e prodotto, non sul prodotto: è l’unico modo di rappresentare un gruppo che è fabbricante di una cosa e importatore di un’altra.
Dove si trova
Da Prodotti, pulsante Entità giuridiche nella barra degli strumenti (/prodotti?vista=entita). Due pannelli: l’elenco delle entità, e la tabella Entità ↔ Prodotto gestito con i ruoli CRA.
L’entità primaria
Ogni organizzazione ne ha una, ed è quella derivata dai dati che hai inserito in Area utente › Azienda: porta l’etichetta di primaria e non si crea a mano. È l’entità a cui viene attribuito ciò che non è stato assegnato altrove — in particolare i campi «Fabbricante» del fascicolo di documentazione tecnica vengono da lei.
Le società che aggiungi da questa schermata sono entità aggiuntive. La primaria resta quella dell’anagrafica aziendale: cambiarne i dati si fa modificandola qui, e la modifica è una versione nuova, non una sovrascrittura silenziosa.
I campi di un’entità
| Campo | Che cosa indicare |
|---|---|
| Denominazione legale (obbligatoria) | Il nome con cui la società è iscritta. È quello che finisce su una dichiarazione di conformità. |
| Nome commerciale | Solo se differisce dalla denominazione legale. |
| Paese (obbligatorio) | Codice ISO 3166-1 alpha-2, da un elenco chiuso: i 27 Stati membri, i paesi SEE e i paesi terzi da cui si vende nell’Unione. È un elenco chiuso perché «Germania», «DE» e «germany» sarebbero altrimenti tre paesi diversi per il codice. |
| Fuso orario | Identificatore IANA. In assenza, Europe/Rome. |
| Sede legale, partita IVA, registro imprese, sito | Gli identificativi della società. |
| Contatto normativo | Chi risponde per questa società delle questioni di conformità. Compare nel fascicolo tecnico. |
| Email di fatturazione | Recapito amministrativo dell’entità. |
Alcuni metadati per paese — per l’Italia PEC e codice SDI — sono stati scritti dall’anagrafica aziendale e non passano da questo modulo: compaiono in sola lettura sulla scheda dell’entità.
Il paese è un dato geografico, non una conclusione normativa. L’etichetta che dice se la sede è nell’Unione racconta dove sta la società, non quali obblighi le competano. Quali obblighi competono alla tua organizzazione dipende dal ruolo che confermi su ciascun prodotto.
Ogni modifica va confermata
Sia la registrazione di una nuova entità sia la modifica di una esistente chiedono una spunta esplicita, e il controllo è del server: una conferma che vive solo nel browser non è una conferma. Ogni salvataggio crea una versione con il suo autore e la sua data — la precedente resta — e lascia una riga nel registro delle attività.
Un identificativo di entità viene accettato solo se è già di questa organizzazione: non è possibile «modificare» l’entità di un’altra azienda, e non nasce un omonimo con lo stesso identificativo.
Il legame fra entità e Prodotto gestito
La tabella Entità ↔ Prodotto gestito è il punto in cui più società servono davvero: lo stesso gruppo può essere fabbricante del router che progetta, importatore del modulo che compra fuori dall’Unione e distributore di un terzo prodotto, con società diverse e obblighi diversi, nello stesso momento.
Un ruolo proposto — arrivato da un’importazione, da un’euristica o dai ruoli dichiarati in anagrafica aziendale — compare a parte e non ha nessun effetto finché una persona non lo conferma. È la stessa regola che vale sulla scheda del prodotto, con la stessa identità di sessione.
Che cosa cambia quando confermi
Un ruolo confermato è l’unico che i workflow leggono. Da lì dipende quali controlli CRA compaiono per quel prodotto e quale ruolo il fascicolo tecnico dichiara. Non cambia nessuna data e nessuna scadenza: le scadenze nascono da un case, non dall’anagrafica.
Nessun gesto di questa schermata scrive un verdetto, una data o un destinatario. È anagrafica: censisce chi è la tua organizzazione e rispetto a che cosa. Il resto lo decide il flusso di conformità.
Chi può farlo
Le pagine si consultano con qualunque ruolo applicativo; i gesti — registrare un’entità, modificarla, confermare o chiudere un ruolo — richiedono un ruolo che possa scrivere, quindi non un profilo in sola lettura. Vedi Utenti, ruoli ed escalation.
Valutazioni VEX
Una distinta base dice che il tuo prodotto contiene OpenSSL 3.0.11; una fonte dice che quella versione ha una vulnerabilità pubblicata. Da lì non segue che il prodotto sia vulnerabile: il componente può non essere raggiungibile, la funzione difettosa può non essere usata, una mitigazione può essere già in posto. VEX è il documento con cui dici quale delle due cose è vera, e te ne assumi l’affermazione. CRAnotify ti porta la corrispondenza; la valutazione resta tua.
Dove si trova
Scheda Vulnerabilità della pagina di un prodotto (/prodotto?id=…&tab=vulnerabilita). Ogni riga è una corrispondenza osservata: la vulnerabilità, il componente agganciato, la fonte che l’ha vista, e accanto la valutazione umana — o la sua assenza, dichiarata a parole.
Quattro passaggi, e restano quattro
- Una fonte osserva una corrispondenza fra un componente della distinta base e una vulnerabilità pubblicata.
- Una persona valuta: sceglie uno status e ne dà la ragione. Ne nasce una bozza.
- Una persona approva la bozza. È un gesto distinto, con il proprio nome e la propria data.
- Da quel momento la dichiarazione è ciò che l’azienda dice di sapere sul proprio prodotto, e solo allora finisce nei documenti che escono.
I passaggi sono quattro apposta. Comprimerli in un pulsante solo significherebbe che l’aggiornamento di una fonte, di notte, cambia ciò che dichiari di sapere sul tuo prodotto. Chi valuta e chi approva possono essere due persone, e in un’organizzazione che tiene alla propria difendibilità lo sono.
Una corrispondenza non è una valutazione
La riga aperta mostra due strati affiancati e distinti: a sinistra i dati di origine (fonte, componente, PURL, release, riferimento, quando è stata registrata), a destra la valutazione umana. Lo strato di origine porta scritto che CRAnotify non ha stabilito nessuna applicabilità normativa: è un segnale.
Se nessuno ha ancora valutato, la colonna umana non mostra un trattino ma dice «Non valutata — richiede revisione umana». Un trattino, o una casella vuota, si legge come «niente da segnalare», che è il contrario di ciò che è vero.
I quattro status dello standard
Sono quelli di CSAF/OpenVEX. Non ne aggiungiamo e non ne rinominiamo: chi consuma un VEX si aspetta questi, e una semantica inventata renderebbe il documento illeggibile proprio a chi dovrebbe leggerlo.
| Status | Che cosa afferma |
|---|---|
under_investigation · In valutazione | Stai ancora guardando: nessuna affermazione sul prodotto. |
not_affected · Non interessato | Dice a chi legge di non preoccuparsi. La giustificazione è obbligatoria. |
affected · Interessato | Il prodotto ne è interessato. |
fixed · Corretto | Una versione correttiva è disponibile. Dire quale, nella giustificazione, è ciò che la rende utile. |
«Interessato» non fa partire nessun termine. È la condizione da cui, insieme allo sfruttamento attivo, può discendere l’obbligo dell’Art. 14 — ma se ci sia un obbligo lo stabilisce il motore, su un case, dopo una consapevolezza confermata nel triage. Registrare uno status VEX non apre una scadenza e non emette un verdetto.
Registrare una valutazione
Dal riquadro della riga: scegli lo status e scrivi la giustificazione. La vulnerabilità e il componente sono quelli della corrispondenza e non si digitano — così la dichiarazione resta agganciata a ciò che è stato osservato. L’identità di chi valuta viene dalla sessione: non c’è un campo del modulo da cui possa arrivare, ed è la ragione per cui nessun percorso automatico può produrre una bozza.
Approvare è il secondo gesto
Sotto una bozza compare Approva questa valutazione, con l’avviso che la valutazione è registrata ma non approvata. L’approvazione registra chi l’ha data e quando, e vale solo per una dichiarazione di quel prodotto: l’applicazione lo verifica sul server, così un modulo costruito a mano non può approvare, dalla pagina di un prodotto, la dichiarazione di un altro.
Approvare due volte non è un errore: la seconda volta non cambia niente.
Dove finiscono le dichiarazioni approvate
Solo le dichiarazioni approvate vengono citate nel fascicolo di documentazione tecnica e sono ciò che si può mostrare a un terzo. Una bozza è un’opinione in corso, e pubblicarla equivarrebbe a dichiarare qualcosa che nessuno ha firmato.
Ogni valutazione e ogni approvazione lascia una riga nel registro delle attività, con la vulnerabilità, lo status, il componente, chi ha valutato e chi ha approvato.
Se non c’è nessuna corrispondenza
La scheda lo dice a parole: nessuna fonte ha agganciato una vulnerabilità pubblicata a un componente di questo prodotto. Non è un’affermazione sul prodotto: dipende da quali distinte base sono arrivate e da quali fonti sono collegate. Un prodotto senza distinta base non produce corrispondenze, e il silenzio non è una buona notizia.
Il lavoro di revisione ancora da fare compare anche nella coda delle azioni, filtrabile per prodotto.
Controlli CRA ed evidenze
La scheda Evidenze di un prodotto risponde a una domanda sola: per i requisiti che si applicano a questo prodotto, che cosa c’è e che cosa manca. Conta oggetti, e non assegna un voto: la presenza di un’evidenza riempie una casella, non chiude un obbligo, e una cifra unica di sintesi verrebbe letta come un giudizio anche quando è solo un rapporto.
Dove si trova
Scheda Evidenze della pagina di un prodotto (/prodotto?id=…&tab=evidenze). Tre pannelli: la copertura per dominio, l’elenco dei controlli applicabili con il gesto accanto a ciascuno, e le evidenze raccolte più recenti.
I controlli dipendono dai ruoli confermati
Quali requisiti compaiono dipende da chi è la tua organizzazione rispetto a quel prodotto. Un ruolo soltanto proposto non aggiunge requisiti: mostrare a un distributore i controlli del fabbricante è un errore che chi legge non ha modo di riconoscere.
Se per il prodotto non è stato confermato nessun ruolo CRA, non compare nessun controllo, e la scheda lo dice. Non significa che non ce ne siano: significa che il prodotto non dichiara ancora chi è la tua organizzazione. Si parte da Il tuo ruolo CRA per ogni prodotto.
| Controllo | Fonte normativa | Per quale ruolo |
|---|---|---|
| Distinta base del software (SBOM) del prodotto | Allegato I Parte II punto 1 | Fabbricante |
| Periodo di supporto dichiarato | Art. 13(8) | Fabbricante |
| Processo di gestione delle vulnerabilità documentato | Allegato I Parte II | Fabbricante |
| Canale di segnalazione delle vulnerabilità pubblicato | Allegato I Parte II punto 5 | Fabbricante |
| Documentazione tecnica del prodotto | Art. 31 e Allegato VII | Fabbricante |
| Identità e contatto del fabbricante a monte | Art. 19 | Importatore |
| Evidenza della verifica della marcatura e della documentazione | Art. 19 e Art. 20 | Importatore, distributore |
L’elenco è deliberatamente minimo e ogni riga cita un articolo verificabile. Un elenco lungo di requisiti inventati darebbe l’impressione di una copertura che non c’è. Non è la lista completa degli adempimenti del regolamento: è l’insieme dei controlli che questo prodotto sa seguire con delle evidenze.
Gli stati di un controllo
Tutti descrivono lo stato della raccolta. Nessuno è un giudizio, tranne «non applicabile», che è l’unico a essere una dichiarazione di una persona — e la sua etichetta lo dice.
La copertura per dominio
Il primo pannello raggruppa i controlli per domanda — distinta base, gestione delle vulnerabilità, documentazione tecnica, ciclo di vita e supporto, documentazione dei fornitori — e mostra un rapporto del tipo «2 / 3». Non c’è la percentuale accanto, ed è una scelta: un rapporto si riconta, un voto no.
Attenzione a due stati che si somigliano e non sono la stessa cosa: «Nessun controllo applicabile» dice che nessun ruolo confermato richiede quei requisiti, mentre «Non applicabile» dice che una persona ha valutato e dichiarato. La prima è una configurazione mancante, la seconda una valutazione.
Dichiarare un controllo non applicabile
Accanto a ogni controllo c’è Dichiara non applicabile. Il modulo si apre sulla riga del controllo a cui si riferisce, e non su un dominio: una dichiarazione più larga di quella che intendevi dare è quella che poi non si difende.
La motivazione è obbligatoria, e il controllo è del server: «non applicabile» senza un perché non si difende davanti a nessuno. Scrivi perché quel requisito non riguarda questo prodotto — non perché in generale ti sembri di non doverlo coprire.
La dichiarazione resta visibile sulla riga con chi l’ha fatta, quando, e la motivazione per esteso: chi rilegge non deve andarla a cercare nel registro. Il pulsante Revoca la dichiarazione la ritira, e il controllo torna fra quelli da coprire; la revoca è anch’essa un gesto registrato, con il suo autore.
Il sistema può accorgersi che un controllo non ha evidenze; non può concludere che non serviva averne. Questa è la ragione per cui il gesto esiste ed è tuo.
Da dove arrivano le evidenze
Un’evidenza porta sempre con sé la propria provenienza: sapere da dove viene è metà del suo valore.
L’elenco in fondo alla scheda mostra le evidenze più recenti con lo stato in cui si trovano — dove è arrivato ogni documento nel suo percorso, mai che cosa prova.
A cosa serve, dopo
I controlli coperti sono ciò che il fascicolo di documentazione tecnica cita come evidenza, ciascuno con la data in cui il sistema l’ha appreso. Il lavoro rimasto compare nella coda delle azioni. E per ricostruire che cosa risultava a una certa data — quando arriva la domanda di un’autorità — c’è Ricostruzione a una data.
Documentazione tecnica e firma
Questa schermata prepara due documenti — il fascicolo di documentazione tecnica e la dichiarazione UE di conformità — e conserva la prova di chi li ha firmati e quando. Non stabilisce se il prodotto rispetti il regolamento: nessuna schermata di CRAnotify lo fa, perché quella è una valutazione dell’operatore economico. La firma è il gesto più impegnativo che il prodotto offre, e pretende di più di un clic: la tua identità viene riprovata nel momento in cui firmi.
Dove si trova
Da Prodotti, pulsante Documentazione tecnica nella barra degli strumenti: si apre l’indice, con una riga per Prodotto gestito e tre stati per riga — fascicolo, percorso di conformità, dichiarazione. Da lì si entra nella pagina di un prodotto. La schermata non ha una voce di navigazione propria: vive sotto Prodotti.
L’indice non mostra un totale, una percentuale né un punteggio di sintesi. Ogni numero che vedi — quanti campi mancano, quante evidenze ci sono — si riconta a mano aprendo la riga. Un numero unico che riassume «come va» verrebbe letto come un giudizio di conformità, qualunque etichetta gli si metta accanto.
Il fascicolo si assembla, non si conclude
Il fascicolo viene precompilato dai dati che il sistema ha già, e ogni campo porta con sé da dove viene e di quando è. La colonna «provenienza» non è decorativa: chi rivede il documento deve poter risalire alla fonte senza chiedere a chi l’ha compilato.
| Campo | Provenienza |
|---|---|
| Denominazione, identificativo interno, categoria, versione | Anagrafica dei prodotti |
| Fabbricante: denominazione legale, sede, paese, contatto normativo | Entità giuridica primaria |
| Ruolo dell’operatore economico | Ruoli confermati su quel prodotto |
| Periodo di supporto (fine), data di rilascio | Ciclo di vita del prodotto |
| Evidenze: distinta base, processo, divulgazione coordinata, documento | L’evidenza più recente di ciascun tipo (vedi Controlli CRA ed evidenze) |
| Dichiarazioni VEX approvate | Solo quelle approvate: una bozza è un’opinione in corso (vedi Valutazioni VEX) |
Un dato che manca non viene inventato. Il campo resta vuoto e dice «informazione richiesta». Un fascicolo con un buco dichiarato si completa; uno con un buco riempito da un valore plausibile si scopre in ispezione, e a quel punto il problema non è più il dato.
Il percorso di conformità dice dove sei arrivato
Il secondo pannello registra i passi del tuo lavoro di valutazione. Sono questi, e sono stati della raccolta, non esiti:
Per registrare un passo scegli lo stato e scrivi su che cosa si fonda. Per «decisione registrata» il campo è obbligatorio, e il controllo è del server: una decisione registrata senza le evidenze su cui poggia non è difendibile davanti a nessuno.
Che cosa nessuno di questi passi significa. Nessuno dice che il prodotto rispetti il regolamento, e non esiste un passo che lo direbbe: «conforme», «certificato» e «approvato per il mercato» non sono stati previsti e non lo diventeranno. Se ne fa carico chi immette il prodotto sul mercato.
La firma pretende la tua identità, di nuovo
Firmare significa che una persona dichiara che quel documento è quello. Per questo il gesto non parte da una sessione lasciata aperta su un portatile in una sala riunioni: al momento della firma il modulo chiede
- la tua password, sempre;
- il codice del secondo fattore se il tuo account ha la verifica in due passaggi attiva. Se non l’hai attivata, il campo non compare — e questo è il motivo migliore per attivarla: vedi Sicurezza dell’account.
La ri-autenticazione non è una cortesia dell’interfaccia: è una condizione del modello. Le funzioni che appongono la firma rifiutano di eseguirla senza la prova d’identità, quindi non esiste un percorso — un’API, un’importazione, un pulsante futuro — che possa saltarla.
Serve anche il ruolo giusto: la firma passa dallo stesso controllo del deposito, ed è riservata ai ruoli Amministratore e Approvatore. Un Valutatore vede il fascicolo, registra i passi del percorso, ma non firma: vedi Utenti, ruoli ed escalation.
Il documento che viene firmato è riassemblato dal sistema in quel momento: non entra nulla di ciò che il browser rimanda. Si firma quello che il sistema sa adesso, non quello che era a schermo dieci minuti prima.
Che cosa pretende ciascuna delle due firme
| Condizione | Fascicolo tecnico | Dichiarazione UE |
|---|---|---|
| Nessun campo mancante | Sì | Sì |
| Ri-autenticazione (password, e codice se attivo) | Sì | Sì |
| Una decisione registrata nel percorso di conformità | — | Sì |
| Spunta di conferma esplicita | — | Sì |
Quando una condizione non è soddisfatta il pulsante è spento e la pagina dice perché: elenca per nome i campi che mancano, o segnala che manca una decisione registrata. Un pulsante che sparisce senza spiegarsi lascia chi guarda a indovinare, e chi indovina conclude che il software è rotto.
La spunta della dichiarazione dice: «firmo questa dichiarazione per conto dell’operatore economico e me ne assumo la responsabilità». È esplicita perché una firma data per sbaglio non si ritira.
Se la firma non passa
| Messaggio | Che cosa è successo |
|---|---|
| «La password non corrisponde» | Nulla è stato firmato e nulla è cambiato. Il tentativo però lascia una riga nel registro, con chi l’ha compiuto. |
| «Il codice del secondo fattore non è valido» | Come sopra. Il codice va letto dall’app di autenticazione nel momento in cui si invia. |
| «Troppi tentativi di firma» | Il freno sui tentativi ravvicinati è scattato. Si riprova più tardi. |
| «Il documento ha ancora campi da compilare» | Completa i campi elencati e riprova: una firma su un fascicolo con un buco è una firma su un vuoto. |
| «Il percorso di conformità non ha ancora registrato una decisione» | Registra il passo «decisione registrata», con la sua base, prima di firmare la dichiarazione. |
| «Serve la conferma esplicita» | La spunta della dichiarazione non era barrata. |
| «La sessione non porta un’identità» | Rientra e riprova: un gesto senza identità non si esegue. |
Che cosa resta dopo la firma
Firmare non riscrive niente: aggiunge una versione, con il suo autore e il suo momento. La versione precedente resta nella storia del documento, e lo stato passa a «Firmato». Il gesto lascia una riga nel registro delle attività e diventa materiale probatorio: davanti a un’autorità la domanda non è solo «la tua organizzazione ha la documentazione», ma «chi l’ha approvata, quando, e su che cosa».
La versione stampabile
Il collegamento Versione stampabile apre il documento impaginato per la stampa; il PDF lo produce la finestra di stampa del browser, come per il fascicolo difensivo. Una bozza si può stampare, e dichiara di essere una bozza: un documento stampato che non dice il proprio stato è quello che finisce nel fascicolo sbagliato.
Portale fornitori
Un importatore deve raccogliere dal fabbricante a monte la documentazione, le dichiarazioni, le distinte base. Di solito lo si fa via email, e l’esito è una cartella di allegati di cui nessuno sa più la provenienza. Qui il fornitore carica da sé, in un portale che vede pochissimo, e ogni documento arriva marcato con chi l’ha portato e quando. Il fornitore afferma; a verificare tocca alla tua organizzazione.
Due schermate, e un confine fra loro
/fornitori, dentro l’applicazione. Da Prodotti, pulsante Fornitori. È riservato agli amministratori dell’organizzazione: invitare un estraneo a leggere la documentazione dei propri prodotti non è un gesto operativo./fornitore?t=…, su un indirizzo separato da quello dell’applicazione. Chi entra non ha un account, non ha una sessione e non appartiene alla tua organizzazione: ha un collegamento con un token, come chi apre il modulo pubblico di segnalazione.Il collegamento da consegnare al fornitore lo compone il pannello: si copia e si manda così com’è. Non va ricostruito a mano.
Invitare un fornitore
| Campo | Che cosa indicare |
|---|---|
| Nome (obbligatorio) | Come riconoscerai questo fornitore nell’elenco. |
| Recapito (obbligatorio) | Un indirizzo email valido. Serve a sapere a chi hai dato accesso. |
| Tipo | Fornitore di componenti, fabbricante a monte, importatore, distributore, fornitore di evidenze. Elenco chiuso. |
| Prodotti condivisi (almeno uno) | Solo Prodotti gestiti attivi, e solo tuoi. Un invito senza prodotti non dà accesso a niente e viene rifiutato. |
| Durata | 7, 30, 90 o 180 giorni. |
Il token compare una volta sola. Di quel collegamento il sistema conserva solo l’impronta: non finisce in un log, in una riga di registro né in un’email che possiamo rileggere. Se si perde non si recupera — si revoca l’invito e se ne emette un altro. È il comportamento voluto, non un limite.
Una variante non si condivide da sola e un prodotto archiviato non è più nel perimetro attivo: entrambi restano fuori dall’elenco condivisibile.
Chiedere un documento
Su ogni invito attivo puoi aprire una richiesta: un prodotto fra quelli condivisi e una riga di testo che dice che cosa ti serve. La richiesta compare nel portale del fornitore sotto «Che cosa ti è stato chiesto», e quando lui deposita un documento rispondendo a quella richiesta lo stato avanza da sé fino a documento ricevuto — e si ferma lì.
Gli ultimi tre stati li scrive soltanto la tua organizzazione. Non esistono stati come «fabbricante conforme»: quella è una conclusione, e non nasce da un portale.
Ciò che arriva è in quarantena
Il documento che deposita un fornitore è un file che manda un estraneo, e riceve lo stesso trattamento degli allegati del modulo pubblico di segnalazione.
Un documento caricato non è un documento accettato. Ciò che arriva nasce «da rivedere» e nessun percorso di questa superficie lo porta a «rivista»: quel passaggio è un gesto di una persona della tua organizzazione. È così che il regolamento distribuisce le responsabilità, e un software che le comprimesse le sposterebbe su chi non le ha. Vedi Controlli CRA ed evidenze.
Che cosa vede il fornitore
Il suo nome, il nome della tua organizzazione, la data di scadenza dell’accesso, i prodotti che gli hai condiviso, le richieste a lui assegnate e ciò che ha caricato lui. Niente altro: non l’anagrafica, non i case, non gli altri fornitori, non il registro. Il portale non è indicizzabile e non viene messo in cache.
Un collegamento sconosciuto, scaduto o revocato riceve la stessa risposta: «questo collegamento non apre niente». Distinguere i tre casi direbbe a chi prova se un token è mai esistito.
Revocare
Il pulsante revoca chiude la porta subito, non alla scadenza del token: dal gesto successivo quel collegamento non passa più. Un accesso che si toglie «prima o poi» non è un accesso che si è tolto. Il documento già depositato resta — è materiale del fascicolo — e resta scaricabile dal tuo pannello.
Nell’elenco ogni invito porta il proprio stato — attivo, revocato o scaduto — e gli inviti revocati restano visibili: serve poter dire «questo accesso è chiuso», e a chi l’ha chiuso.
Che cosa finisce nel registro
L’emissione di un invito, la revoca, l’apertura di una richiesta, il suo aggiornamento e l’arrivo di un documento lasciano ciascuno una riga nel registro delle attività. Il token in chiaro e il recapito del fornitore non ci finiscono: il primo è un segreto, il secondo è un dato personale che in un pacchetto di evidenze non serve.
Canale di segnalazione
Il modulo pubblico da incorporare nel tuo sito e le difese anti-abuso.
Modulo pubblico di segnalazione
Il modulo è la porta d’ingresso per chi vuole segnalarti una vulnerabilità: ricercatori, clienti, integratori. Vive su un indirizzo dedicato alla tua organizzazione e si può incorporare nel tuo sito. Ogni invio crea un segnale in ingresso (INCOMING), con marca temporale — non un case: nessun orologio legale parte finché una persona non promuove il segnale a caso.
L’indirizzo del tuo modulo
Lo trovi in Area utente › Modulo embedded nella forma:
https://cranotify.eu/f/<codice modulo>
Il codice è casuale e non enumerabile: dal tuo indirizzo non si risale a quelli di altre organizzazioni. La radice del dominio del modulo non è una pagina pubblica: senza codice, si viene rimandati al sito.
Incorporarlo nel tuo sito
La stessa schermata fornisce un frammento pronto:
<iframe src="https://cranotify.eu/f/<codice>?embed=1"
width="100%" height="640"
class="embed-demo"
title="Segnala una vulnerabilità" loading="lazy"></iframe>
Con ?embed=1 viene mostrata solo la scheda del modulo, senza intestazione né testi di contorno: si integra nella tua pagina «security» o «contatti». Il modulo è l’unica superficie del prodotto che può essere inclusa in un altro sito; tutto il resto rifiuta di essere incorniciato.
Che cosa si personalizza
vulnerability@tuodominio). Compare nel modulo e nel security.txt.Il file security.txt
La schermata genera il contenuto del file previsto dalla RFC 9116, da pubblicare su https://tuodominio/.well-known/security.txt. Contiene l’indirizzo del tuo modulo, l’alias di posta, le lingue preferite e una data di scadenza. È il modo standard con cui un ricercatore capisce dove segnalare: pubblicalo, costa cinque minuti ed evita che le segnalazioni arrivino sull’account social di qualcuno.
Che cosa vede chi segnala
- Il nome della tua organizzazione, il testo introduttivo e l’elenco dei prodotti da selezionare.
- Campo descrizione (da 10 a 5000 caratteri), recapito facoltativo, eventuali allegati (fino a tre, 5 MB ciascuno).
- Alla conferma, una schermata generica di ricevuto: il messaggio è arrivato. La superficie pubblica non conferma se un prodotto o un’organizzazione esistano, e non assegna un numero di pratica pubblico.
Buona pratica. Lascia attiva la segnalazione anonima. Un ricercatore che non vuole esporsi altrimenti pubblica, e una divulgazione non coordinata è il peggior modo per venire a conoscenza di una vulnerabilità.
Che cosa succede dalla tua parte
- Nasce un segnale in ingresso, visibile in INCOMING (
/signals): non è ancora un case e non fa partire alcun orologio legale (vedi Case: dal segnale al caso). - Una persona lo esamina e decide: promuovilo a caso (l’awareness la fissi tu in quel momento), collegalo a un caso esistente, oppure disponilo come duplicato, informativo o da ignorare.
- La casella sicurezza configurata nell’escalation riceve un avviso di nuovo segnale.
- Se hai collegato Slack, Teams o un webhook, arriva anche lì (vedi Slack, Teams e webhook).
- Il registro annota la ricezione del segnale (
signal_created), con il canale di divulgazione coordinata come riferimento.
Rispondere al segnalante
La schermata di «ricevuto» non è una risposta: dice solo che il messaggio è arrivato. Il riscontro di merito lo dai tu, con i tempi della divulgazione coordinata concordati con il ricercatore. Il recapito lasciato dal segnalante è nel dettaglio del segnale, e viene portato nel caso al momento della promozione.
Un ricercatore ignorato pubblica. Prevedi chi risponde e in quanto tempo prima di attivare il modulo: è una decisione organizzativa, non tecnica.
Difese
Il modulo è pubblico e senza autenticazione, quindi è protetto su più livelli: limiti di frequenza per indirizzo di provenienza, campo trappola e tempo minimo di compilazione, verifica anti-bot facoltativa, ingresso come segnale non promosso e trattamento non fidato degli allegati. Il dettaglio è in Quarantena e difese anti-abuso.
Quarantena e difese anti-abuso
Il modulo di segnalazione è l’unica superficie che accetta contenuti da sconosciuti, allegati compresi. È protetto su più livelli, con un principio guida: una segnalazione autentica non deve andare persa, nemmeno quando una difesa non riesce a pronunciarsi.
I livelli di difesa
| Livello | Come funziona | Se scatta |
|---|---|---|
| Limite di frequenza | Conteggio degli invii per indirizzo di provenienza, su una finestra breve e su base giornaliera. | Messaggio «troppe segnalazioni da questo indirizzo, riprova più tardi». |
| Campo trappola | Un campo nascosto che un essere umano non può compilare. | Invio scartato in silenzio, dietro una schermata di ringraziamento plausibile. |
| Tempo minimo | Un contrassegno firmato dal server misura quanto tempo è passato fra apertura e invio. | Invio istantaneo scartato in silenzio. |
| Verifica anti-bot | Cloudflare Turnstile, se configurata sull’installazione. | Token non valido: invio rifiutato con messaggio esplicito. |
| Limiti di contenuto | Descrizione fra 10 e 5000 caratteri, email valida o vuota, dimensione complessiva massima. | Errore in pagina, con il testo conservato. |
| Quarantena | Il segnale resta non promosso (INCOMING). | Non diventa un case né entra nel fascicolo finché una persona non lo esamina e lo promuove. |
Quando la verifica anti-bot non è raggiungibile
Se il servizio di verifica non risponde per un problema di rete, l’invio viene accettato e il segnale è marcato «turnstile non verificabile» nel registro. È una scelta deliberata: perdere una segnalazione autentica è un danno peggiore di un segnale di spam che comunque resta non promosso. Un token presente ma non valido è invece un rifiuto netto.
Allegati non fidati
I file arrivati dal modulo pubblico sono trattati come materiale ostile fino a prova contraria:
- sono conservati separatamente e marcati non verificati;
- non vengono mai mostrati dentro la pagina: si scaricano soltanto, con un tipo di contenuto che impedisce l’esecuzione nel browser;
- sono accessibili solo agli utenti autenticati della tua organizzazione, mai da un indirizzo indovinato;
- l’estensione dichiarata non basta: il tipo reale viene riconosciuto dal contenuto e i formati non ammessi vengono scartati.
Aprili in un ambiente isolato. Un allegato di segnalazione è, per definizione, un file che qualcuno ha costruito per dimostrarti che qualcosa si rompe.
Se un allegato viene scartato per formato o dimensione, il resto della segnalazione entra comunque: il testo non si perde per colpa di un file.
La verifica preliminare
Finché il segnale resta non promosso (INCOMING) le azioni sono tre: promuoverlo a case, collegarlo a un case esistente, oppure archiviarlo (duplicato, informativo o scartato). La revisione risponde a tre domande:
- È pertinente? Riguarda un tuo prodotto e ha rilievo di sicurezza, o è una richiesta di assistenza travestita?
- È intelligibile? C’è abbastanza per capire di che cosa si parla, o va chiesto un chiarimento al segnalante?
- È un duplicato? Se sì, collegalo al case esistente.
Un’archiviazione conserva la motivazione: anche la decisione di non trattare una segnalazione è una decisione tracciata.
Buona pratica. Esamina ogni segnale entro poche ore lavorative. Un segnale non fa correre alcun termine di legge finché non è promosso a case; ma al momento della promozione il momento di consapevolezza si fissa esplicitamente e può indicare un istante anteriore — quello in cui l’organizzazione ha davvero saputo. Rimandare la revisione non guadagna tempo.
Dati del segnalante
Il recapito è facoltativo. Se assente, il segnale riporta «non fornito (anonimo)». Al segnalante appare soltanto una schermata generica di avvenuta ricezione: nessuna presa d’atto automatica e nessun numero di protocollo pubblico. Se il recapito è presente, viene usato solo per un eventuale riscontro da parte di una persona: non alimenta liste né comunicazioni commerciali. Il trattamento è descritto nell’informativa privacy.
Isolamento fra organizzazioni
Ogni modulo è legato a una sola organizzazione tramite il codice nell’indirizzo. Un codice inesistente restituisce «pagina non trovata» — non si scopre quali organizzazioni esistono provando indirizzi. Le segnalazioni ricevute sono visibili solo agli utenti dell’organizzazione destinataria.
Avvisi e comunicazioni
Le email transazionali, i solleciti dell’orologio e i canali di chat.
Email: famiglie e destinatari
Le email di CRAnotify sono transazionali: nascono da un fatto (un termine che si avvicina, un deposito registrato, un invito) e vanno a chi quel fatto riguarda. Non esistono comunicazioni promozionali. Le famiglie operative lasciano una traccia nel registro: l’avviso inviato è esso stesso una prova.
Le famiglie
| Famiglia | Contenuto | Traccia a registro |
|---|---|---|
| A · Identità | Verifica dell’indirizzo, benvenuto, reimpostazione password, cambio email, invito. | No |
| B · Orologio | Avvio del termine, solleciti a 16/4/1 ora, mancato riscontro, termine superato, promemoria di ricontrollo, modifica del momento di consapevolezza, presa in carico. | Sì |
| C · Atti | Esito del triage, deposito della preallerta, aggiornamento a 72 ore, relazione finale. | Sì |
| D · Portale | Presa d’atto al segnalante, avviso di nuova segnalazione alla casella sicurezza. | Sì |
| E/G · Sistema | Configurazione da completare, conservazione del fascicolo in scadenza, mancato recapito di un avviso. | No |
| F · Dati personali | Esportazione, richiesta di cancellazione, eventuale comunicazione di violazione. | No |
Chi riceve che cosa
I destinatari si risolvono sui recapiti della catena di escalation, non su un elenco generico:
Idempotenza e nuovi tentativi
- Un avviso, una volta sola. Ogni invio è identificato dalla combinazione organizzazione, case, tipo, fase e destinatario: uno stesso sollecito non arriva due volte, nemmeno se lo scheduler viene eseguito più volte.
- Tentativi con attesa crescente. Un recapito fallito viene ritentato; dopo tre tentativi falliti l’avviso è dichiarato non recapitabile e viene segnalato agli amministratori.
- Registrazione. Per le famiglie operative resta a registro destinatario, momento e tipo di messaggio usato.
Se l’invio email non è configurato sull’installazione, l’applicazione continua a funzionare: gli avvisi non partono ma il flusso, i termini e il registro restano intatti. Lo stato delle integrazioni è visibile in Area utente.
Comportamento in esercitazione
Con la modalità esercitazione attiva il legale rappresentante viene escluso dalle escalation e gli avvisi di sistema sul mancato recapito sono sospesi. Il resto degli invii funziona, così la prova è realistica senza coinvolgere chi non deve essere disturbato per una simulazione.
Mittente e contenuto
Le email partono da no-reply@cranotify.eu con nome «CRAnotify». Contengono un titolo, il fatto in poche righe, un collegamento diretto al case e — quando pertinente — l’indicazione del perché stai ricevendo quel messaggio. In calce ci sono i dati societari e la precisazione che si tratta di comunicazioni relative a un adempimento contrattuale, non promozionali.
Autorizza no-reply@cranotify.eu nei filtri antispam aziendali prima di aver bisogno dei solleciti. Un avviso «1 ora al termine» finito nella posta indesiderata è un avviso che non esiste.
Verificare che funzioni
Da Area utente è disponibile un invio di prova verso il proprio indirizzo (mai verso un indirizzo indicato a mano: è una difesa contro l’abuso). Se la prova arriva e i solleciti no, il problema è nei recapiti dell’escalation, non nell’invio.
Per il quadro completo dei momenti in cui parte ciascun sollecito, vedi Fasi e termini.
Slack, Teams e webhook
Oltre alla posta, gli eventi possono arrivare dove la squadra guarda davvero: un canale Slack, un canale Microsoft Teams, o un tuo sistema attraverso un webhook firmato. Si configurano da Area utente › Avvisi e sono un’operazione da amministratore.
I canali
| Canale | Che cosa serve | Formato |
|---|---|---|
| Slack | Un incoming webhook dello spazio di lavoro. | Messaggio con titolo in grassetto, testo e collegamento al case. |
| Microsoft Teams | Un connettore incoming webhook del canale. | Scheda con titolo, testo e collegamento. |
| Webhook generico | Un tuo endpoint HTTPS. | JSON con event, title, text, link, firmato in HMAC. |
Quali eventi inviare
Gli eventi si attivano singolarmente: nuova segnalazione, esito del triage, scadenza in avvicinamento. Attiva solo ciò che richiede un’azione — un canale che suona per ogni cosa smette di essere letto dopo una settimana.
Buona pratica. Un canale dedicato (per esempio #cra-notify) con le sole nuove segnalazioni e le scadenze, e nessuno degli eventi informativi. Chi presidia i termini deve poter distinguere a colpo d’occhio ciò che è urgente.
Il webhook firmato
Il webhook generico invia un POST JSON con l’intestazione:
X-CRA-Signature: sha256=<HMAC-SHA256 del corpo, in esadecimale>
Il segreto è generato per la tua organizzazione ed è visibile nella schermata degli avvisi. Il ricevente deve:
- leggere il corpo grezzo, prima di qualunque deserializzazione;
- calcolare l’HMAC-SHA256 con il segreto condiviso;
- confrontarlo con l’intestazione usando un confronto a tempo costante;
- rifiutare la richiesta se non coincide.
// esempio in Go
mac := hmac.New(sha256.New, []byte(segreto))
mac.Write(corpoGrezzo)
atteso := "sha256=" + hex.EncodeToString(mac.Sum(nil))
if !hmac.Equal([]byte(atteso), []byte(r.Header.Get("X-CRA-Signature"))) {
http.Error(w, "firma non valida", http.StatusUnauthorized)
return
}
Senza verifica della firma il tuo endpoint accetta qualunque messaggio da chiunque ne conosca l’indirizzo. Se il segreto è stato esposto, rigeneralo dalla schermata degli avvisi e aggiorna il ricevente.
Messaggio di prova
La schermata invia un messaggio di prova a tutti i canali attivi e registra l’esito di ciascuno nel registro delle attività («ok» oppure l’errore restituito). È il modo rapido per distinguere fra un indirizzo sbagliato, un connettore disattivato dallo spazio di lavoro e un problema di rete.
Limiti e comportamento
- Ogni invio ha un tempo massimo di attesa breve: un canale lento non rallenta il flusso di lavoro.
- Un canale che risponde con un errore viene registrato come fallito, ma non blocca gli altri canali né la posta elettronica.
- Questi canali sono un duplicato comodo, non il canale probatorio: le prove restano il registro e le email operative.
Che cosa viene inviato
Il messaggio contiene il titolo dell’evento, poche righe descrittive (prodotto e identificativo del case) e il collegamento al case. Non contiene il testo integrale della segnalazione né gli allegati: chi non ha accesso all’applicazione non ottiene informazioni riservate dal solo canale di chat.
Account e amministrazione
Utenti, sicurezza, abbonamento, API, dati personali, esercitazione.
Utenti, ruoli ed escalation
Due concetti distinti, che conviene non confondere: i ruoli dicono che cosa un utente può fare nell’applicazione; la catena di escalation dice chi viene avvisato quando un termine si avvicina. Un utente può essere referente senza essere amministratore, e viceversa.
I ruoli
| Ruolo | Può | Non può |
|---|---|---|
| Amministratore | Tutto: dati aziendali, utenti e inviti, escalation, abbonamento, chiavi API, SBOM, canali di avviso, modulo pubblico, richieste sui dati personali. | — |
| Valutatore | Lavorare sui case: accettare segnalazioni, triage, notifica, deposito, prodotti. Gestire il proprio profilo, la propria password, la propria verifica in due passaggi e le proprie sessioni. | Modificare configurazioni dell’organizzazione. |
| Sola lettura | Consultare case, registro, fascicoli ed esportazioni. | Modificare alcunché. |
Le operazioni amministrative sono negate per impostazione predefinita a chi non è amministratore: un tentativo viene rifiutato e lasciato a registro. Il ruolo non è mai modificabile dal modulo di profilo — solo un amministratore lo assegna.
Invitare
Da Area utente › Azienda e persone › Persone: indirizzo, ruolo, invio. L’invitato riceve un link a uso singolo valido 7 giorni che lo inserisce nella tua organizzazione. Fino all’accettazione la richiesta resta in stato «in attesa» ed è visibile nell’elenco. Se il link scade, basta inviare un nuovo invito.
Domini consentiti
In Dati azienda si elencano i domini email ammessi. L’elenco governa l’ingresso nell’organizzazione (invito e accesso unico), non la fondazione di una nuova organizzazione tramite registrazione self-service. Vuoto significa nessuna restrizione.
Buona pratica. Compila i domini prima di attivare l’SSO aziendale per il team: governano chi entra per invito e con l’accesso unico, e tengono tutti dentro un’unica organizzazione con un registro unitario.
La catena di escalation
Quattro recapiti con funzioni diverse. Sono indirizzi email, non necessariamente utenti dell’applicazione.
| Recapito | Funzione | Riceve |
|---|---|---|
| Referente | Presidio operativo del termine. | Avvio dell’orologio, 16/4/1 ora, esiti del triage, depositi, promemoria di ricontrollo. |
| Sostituto | Ridondanza del presidio. | Avvio, 4 ore, 1 ora, mancato riscontro, termine superato. |
| Legale rappresentante | Garanzia: sa quando qualcosa sta andando storto. | 1 ora al termine, mancato riscontro, superamento, modifica del momento di consapevolezza. Facoltativamente anche le conferme di deposito. |
| Casella sicurezza | Casella di squadra per l’intake. | Nuove segnalazioni dal portale pubblico. |
Il legale rappresentante è tenuto fuori dall’operatività di proposito: se riceve avvisi ogni giorno smette di leggerli, e il giorno che conta l’avviso passa inosservato. Non usarlo come indirizzo del referente.
Indirizzi con conferma
Accanto ai quattro recapiti, la stessa schermata permette di comporre un elenco ordinato di destinatari degli avvisi con conferma dell’indirizzo: chi viene aggiunto riceve un messaggio con un link di conferma e comincia a ricevere gli avvisi solo dopo averlo aperto. L’ordine dell’elenco è l’ordine di priorità, e da lì si rinvia la conferma o si rimuove un destinatario.
Perché la conferma. Un refuso in un indirizzo non produce alcun errore visibile: produce silenzio. Con la conferma, un destinatario non verificato è evidente nell’elenco prima che serva davvero.
Presa in carico
Quando il referente dichiara la presa in carico su un case, l’escalation verso sostituto e legale viene sospesa per quel termine. È il modo per evitare la telefonata inutile del legale mentre qualcuno ci sta già lavorando — e resta a registro chi se n’è assunto la responsabilità.
Limiti di piano
Il numero di utenze non è soggetto a tetto e non incide sul prezzo: si paga per Prodotti gestiti, non per persone. L’uso corrente è indicato in Abbonamento › Piano.
Quando qualcuno lascia l’azienda
- Revoca le sue sessioni attive.
- Rimuovi l’utenza o portala a «Sola lettura» se serve conservare la tracciabilità.
- Verifica che non compaia come referente, sostituto o casella sicurezza nell’escalation.
- Ruota le chiavi API che aveva creato (vedi API e chiavi).
Le righe di registro firmate con il suo nome restano: sono documentazione di atti compiuti, non dati modificabili.
Sicurezza dell’account
L’account dà accesso al fascicolo probatorio dell’organizzazione: chi vi entra può leggere segnalazioni non ancora pubbliche e produrre atti che restano a registro. Le impostazioni di sicurezza sono in Area utente › Il mio account › Sicurezza e riguardano ciascun utente singolarmente.
Password
- Lunghezza minima 10 caratteri; il cambio richiede la password corrente.
- È conservata solo come impronta con algoritmo adattivo: non è leggibile, nemmeno da noi.
- Il cambio lascia una riga nel registro (senza il valore, ovviamente) e invalida le altre sessioni.
Usa un gestore di password e una passphrase lunga anziché una password complicata da ricordare. Se l’organizzazione ha l’accesso unico, preferisci quello: una credenziale in meno da gestire.
Verifica in due passaggi
Basata su codici temporanei (TOTP) generati da un’app di autenticazione. Attivazione in tre passaggi: si genera la chiave, la si acquisisce nell’app, si conferma con un codice a sei cifre. Alla conferma compaiono i codici di recupero, mostrati una sola volta e scaricabili.
Conserva i codici di recupero fuori dall’applicazione e fuori dal telefono che genera i codici. Ogni codice funziona una volta sola. Senza app e senza codici, il rientro richiede verifiche di identità che non sono immediate.
Il codice cambia ogni 30 secondi ed è accettato con una piccola tolleranza sull’orologio. Se viene sempre rifiutato, l’ora del dispositivo è sfasata: sincronizzala.
Sessioni attive
L’elenco mostra le sessioni aperte con dispositivo e provenienza; la corrente è evidenziata. Ogni riga si revoca singolarmente, con effetto immediato. Revoca quando: cambi portatile, sospetti un accesso non tuo, o qualcuno lascia l’azienda.
Come funziona la sessione
Difese applicate a tutti
- Limiti di frequenza su accesso, reimpostazione password e registrazione, per contenere tentativi automatici.
- Verifica anti-bot con Cloudflare Turnstile (CAPTCHA invisibile) sui moduli pubblici di accesso e registrazione, quando configurata.
- Notifica dei cambi sensibili: il cambio dell’indirizzo email avvisa sia il vecchio sia il nuovo indirizzo, così una sostituzione silenziosa non è possibile.
- Intestazioni di sicurezza e politica dei contenuti restrittiva su tutte le pagine dell’applicazione, che non può essere incorniciata da altri siti.
- Isolamento fra organizzazioni: ogni richiesta è risolta sull’organizzazione dell’utente; gli allegati sono raggiungibili solo dalla propria.
Se sospetti un accesso non autorizzato
- Cambia la password e attiva la verifica in due passaggi se non è attiva.
- Revoca tutte le sessioni tranne quella corrente.
- Ruota o revoca le chiavi API dell’organizzazione.
- Esporta il registro: conterrà le azioni compiute, con momento e autore.
- Apri una richiesta all’assistenza indicando l’intervallo temporale sospetto.
La sicurezza del servizio
Per segnalare una vulnerabilità di CRAnotify stesso: security@cranotify.eu. Accettiamo la divulgazione coordinata e rispondiamo nei tempi indicati nel nostro security.txt. Le comunicazioni relative a eventuali violazioni che ti riguardano seguono il percorso descritto in Dati personali e conservazione.
Abbonamento e fatturazione
L’abbonamento si gestisce da Area utente › Abbonamento, articolato in Piano, Pagamento e Fatture. Un principio guida tutto ciò che segue: lettura ed esportazione restano sempre possibili, anche a piano scaduto. Il registro è una prova di adempimento, non un servizio a consumo.
Che cosa determina il prezzo
Ogni funzionalità è inclusa, sempre. Triage guidato, orologio e solleciti, modulo pubblico e white-label, ruoli e gradi di escalation, avvisi su Slack e Teams, integrazioni SBOM, API e webhook, SSO OIDC, registro con identificativi a integrità verificabile e fascicolo difensivo: non c’è nulla che un piano ti neghi. Non ha senso vendere a rate la capacità di rispettare una legge.
Quello che cambia è il perimetro: quanti Prodotti gestiti dichiari. Un Prodotto gestito è il prodotto, non la sua declinazione commerciale — SKU, GTIN, revisioni hardware, versioni firmware e SBOM sono varianti dello stesso prodotto e non si contano a parte. Un prodotto archiviato esce dal perimetro attivo e non si conta, ma la sua storia resta.
| Prodotti gestiti | Al mese |
|---|---|
| oltre | si concorda |
Questi sono punti di una curva, non piani: 27 Prodotti gestiti costano il prezzo di 27, non quello di 50. I valori intermedi seguono la stessa curva e aggiungere un prodotto non fa mai saltare il conto. La fatturazione annuale include due mensilità. Da Prodotti gestiti in su il prezzo resta visibile ma si passa dalle vendite; oltre si concorda, con ordine d’acquisto se necessario: scrivi a amministrazione@cranotify.eu.
La capacità si acquista a slot Prodotto: quanti Prodotti gestiti attivi puoi tenere. Finché resti entro gli slot, censire un prodotto è immediato; se provi a superarli, l’app non ti sbatte la porta in faccia — apre l’acquisto di uno slot in un clic e, subito dopo, crea il prodotto. Un prodotto archiviato non consuma slot. Il perimetro CRA è quello che è, e dichiararlo per intero è esattamente ciò che serve: aggiungere capacità è una pratica di pochi secondi, non un tetto contro cui sbattere.
Stati dell’abbonamento
L’abbonamento ha cinque stati. La colonna che conta è la penultima: il lavoro regolatorio non si ferma mai per un pagamento. Ciò che si mette in pausa quando il pagamento non è in regola è soltanto la creazione di nuove risorse a pagamento — nuovi Prodotti gestiti oltre gli slot acquistati e nuove chiavi API.
| Stato | Che cosa significa | Case, triage, deposito, evidenze, export | Nuovi prodotti e chiavi API |
|---|---|---|---|
| In prova | Prova di 14 giorni, senza metodo di pagamento. | Sì | Sì (entro gli slot) |
| Attivo | Abbonamento pagante, in regola. | Sì | Sì (entro gli slot) |
| Pagamento in ritardo | Un addebito è fallito: sei in un periodo di grazia e il servizio continua. | Sì | Sì (entro gli slot) |
| Sospeso | Dopo alcuni addebiti falliti consecutivi. | Sì | In pausa |
| Cancellato | Abbonamento chiuso. I dati restano (conservazione decennale). | Sì | No |
Lo stato è mostrato in una fascia sopra il contenuto, con i giorni residui quando sei in prova. In Abbonamento compaiono anche l’avviso di grazia (quando un addebito è fallito) e la nota di sospensione, che dichiara per iscritto che i tuoi dati regolatori restano disponibili.
Un obbligo di legge non si sospende perché è scaduta una carta di credito: aprire case, condurre triage, depositare, allegare evidenze ed esportare restano sempre possibili, in ogni stato — anche sospeso o cancellato. Se un pagamento è in ritardo, regolarizzalo per non perdere la creazione di nuovi prodotti; ma il termine in corso lo rispetti comunque.
Un addebito fallito non chiude nulla di colpo: prima è «pagamento in ritardo» (grazia, servizio attivo), e solo dopo alcuni tentativi falliti consecutivi si passa a «sospeso». Un pagamento riuscito riporta ad «attivo» e azzera il conteggio dei tentativi. Da «cancellato» si esce solo con un nuovo pagamento — una nuova sottoscrizione —, mai da sé: la cancellazione è terminale, ma i dati non si toccano.
Attivare l’abbonamento
- Da Abbonamento › Pagamento premi Paga con carta: si apre la pagina sicura del gestore dei pagamenti. Lì inserisci la carta e scegli la periodicità (mensile o annuale); i dati della carta non transitano mai dai nostri sistemi.
- La quantità non si sceglie: è il numero di Prodotti gestiti attivi, e lo legge il server dall’anagrafica. In prova non c’è addebito: la fatturazione parte alla scadenza.
- L’abbonamento risulta attivo alla ricezione del webhook firmato del gestore dei pagamenti, non al ritorno dal browser. Metodo, riferimento mascherato e periodicità li mostriamo poi in sola lettura: arrivano dal gestore.
Il pagamento con carta è ricorrente: a ogni ciclo il gestore addebita e invia la conferma, che genera la fattura. Gli accordi non-carta (SEPA o bonifico) li imposta l’amministrazione CRAnotify per la singola azienda: scrivi a amministrazione@cranotify.eu.
Fatture
L’elenco delle fatture riporta numero, data, piano, importo e stato. Per la fatturazione elettronica italiana compila in Dati azienda ragione sociale, partita IVA, codice destinatario (SDI) e PEC: sono i dati che finiscono in fattura.
Disdetta
La disdetta è senza penali e ha effetto alla fine del periodo pagato. Prima della chiusura:
- Esporta il registro in CSV (senza filtri).
- Salva i fascicoli difensivi dei case rilevanti.
- Scarica le ricevute di deposito allegate ai case.
- Esporta i dati dell’account da Area utente › Legale.
Fallo comunque una volta l’anno, indipendentemente dalla disdetta: un archivio locale delle prove è il modo più semplice per non dipendere da nessun fornitore nel momento in cui servono.
Quando il perimetro cambia
Non ci sono tetti nascosti né limiti sulle utenze: la capacità è esplicita, la misuri in slot Prodotto e la aggiungi quando serve. Superare gli slot non è un rifiuto — è la richiesta di aggiungere uno slot, in un clic. Impedirti di dichiarare il perimetro CRA reale della tua organizzazione significherebbe impedirti esattamente ciò per cui paghi, e ciò che la legge chiede alla tua organizzazione di sapere; per questo la capacità si aggiunge, non si contratta.
I contratti enterprise fanno eccezione al listino a slot: un limite prodotti su misura lo imposta l’amministrazione CRAnotify per la singola azienda (mai il cliente da sé), e vale come tetto effettivo al posto degli slot acquistati. Per un accordo enterprise scrivi a amministrazione@cranotify.eu.
Da Abbonamento › Piano, il riquadro «E se cambia il perimetro?» mostra che cosa succede al canone aggiungendo o archiviando Prodotti gestiti, prima di confermare: quanti ne gestisci oggi, quanto costano, quanti ne gestiresti e quanto costerebbero. È una stima calcolata dal motore, non muove nulla da sola.
Archiviare un Prodotto gestito lo toglie dal perimetro attivo e dal conteggio, ma non cancella niente: storia, evidenze, casi, registro, SBOM e documenti restano dove sono. L’archiviazione è un fatto di perimetro, non un modo per far sparire una prova.
Quando la variazione ha effetto sulla fattura dipende dalle condizioni del tuo abbonamento: verificale in fattura o nel portale di fatturazione.
API e chiavi di integrazione
Le chiavi API permettono ai tuoi sistemi di parlare con CRAnotify — oggi soprattutto per inviare le distinte base dalle pipeline. Si gestiscono da Area utente › API ed è un’operazione da amministratore.
Creare una chiave
- Indica un nome che dica a che cosa serve («CI build backend», «Dependency-Track produzione»), non «chiave 1».
- Seleziona i permessi: solo quelli necessari.
- Alla creazione il segreto completo compare una volta sola. Copialo subito nel gestore dei segreti del tuo sistema.
Il segreto non è recuperabile: il sistema ne conserva solo l’impronta. Se lo perdi, ruota la chiave — è un’operazione di pochi secondi, e nessuno dovrebbe conservare un segreto in chiaro «per sicurezza».
Permessi
| Permesso | Consente |
|---|---|
incidents:write | Registrare un segnale di sicurezza in ingresso. |
products:read | Leggere il catalogo prodotti con stato SBOM e livello di rischio. |
compliance:read | Leggere il punteggio di conformità dell’organizzazione. |
products:write | Inviare le distinte base dalle pipeline. |
Seleziona solo i permessi necessari: non esistono chiavi «tuttofare». Una chiave usata per un’operazione fuori dai suoi permessi riceve un rifiuto esplicito con 403. L’elenco completo degli endpoint che ciascun permesso sblocca è nel Riferimento API v1.
Autenticare una chiamata
X-CRA-API-Key: cra_live_…
# in alternativa
Authorization: Bearer cra_live_…
Esempio completo di invio SBOM per uno SKU (vedi Distinta base e strumenti SBOM):
curl -X POST https://api.cranotify.eu/api/v1/external/products/SKU-123/sbom \
-H "X-CRA-API-Key: cra_live_…" \
-H "Content-Type: application/json" \
--data-binary @sbom.json
| Codice | Significato |
|---|---|
401 | Chiave assente, errata, revocata o scaduta. |
403 | La chiave è valida ma priva del permesso richiesto. |
422 | Contenuto non riconosciuto (formato SBOM non valido). |
405 | Metodo non consentito: l’ingestione accetta solo POST. |
429 | Limite di frequenza superato (100/min per chiave). |
Rotazione e revoca
Creazione, rotazione e revoca lasciano una riga nel registro delle attività, con il nome della chiave (mai il segreto).
Buona pratica. Una chiave per sistema, mai una condivisa fra più integrazioni: solo così la revoca colpisce ciò che deve e nient’altro. Ruota a ogni cambio di personale che aveva accesso ai segreti.
L’host API pubblico
L’API pubblica risponde su api.<dominio>. Espone quattro endpoint: apertura di un segnale in ingresso, lettura del catalogo prodotti, lettura del punteggio di conformità e ingestione SBOM. Le tre letture/apertura rispondono anche nella forma breve sotto /v1. Ogni endpoint, con parametri, schemi ed esempi, è nel Riferimento API v1; il documento OpenAPI 3 grezzo è su https://api.cranotify.eu/swagger/openapi.json e la console navigabile su https://api.cranotify.eu/swagger.
GET https://api.cranotify.eu/v1/products
{"products":[ … ],"count":N}
Alternative alle API
Molte integrazioni non hanno bisogno di chiavi:
- Ricevere eventi nei tuoi sistemi: il webhook firmato.
- Estrarre il registro: l’esportazione CSV, che comprende le impronte della catena di integrità.
- Estrarre i prodotti: l’esportazione CSV dell’anagrafica, con la corrispondente importazione.
- Esportare i dati dell’account: l’esportazione JSON da Area utente › Legale.
Riferimento API v1
L’API pubblica di CRAnotify è una superficie B2B ristretta e deliberata: registra un segnale di sicurezza in ingresso, legge il catalogo prodotti e il punteggio di conformità, e riceve le distinte base dalle pipeline. Restituisce sempre JSON. Ogni chiamata è autenticata con una chiave API della tua organizzazione ed è limitata a quella organizzazione: una chiave non vede mai i dati di un altro cliente, e il tenant arriva dalla chiave, mai dal corpo della richiesta. Per esplorare gli endpoint in modo interattivo usa la console su https://api.cranotify.eu/swagger, generata dalla stessa specifica OpenAPI 3 (https://api.cranotify.eu/swagger/openapi.json).
Guida alle chiavi. Creazione, permessi, rotazione e revoca delle chiavi sono descritti in API e chiavi di integrazione. Qui si documenta il contratto degli endpoint.
Indirizzo di base
In produzione l’API risponde sull’host dedicato api.<dominio>. Le tre letture e l’apertura di un incidente rispondono lì anche nella forma breve /v1:
https://api.cranotify.eu/v1/products
Su ogni host (compreso quello unificato di sviluppo) gli stessi endpoint rispondono sotto il prefisso completo /api/v1/external. L’ingestione delle distinte base è disponibile solo in questa forma completa. La specifica scaricata riporta l’indirizzo dell’host che l’ha servita.
Autenticazione
Presenta la chiave nell’header X-CRA-API-Key oppure come bearer token. I due modi sono equivalenti.
X-CRA-API-Key: cra_live_…
# in alternativa
Authorization: Bearer cra_live_…
Sugli endpoint di lettura sono ammessi solo GET; l’apertura di un incidente e l’ingestione SBOM accettano solo POST. Un metodo diverso riceve 405.
Permessi (scope)
Ogni chiave porta uno o più permessi; il permesso richiesto è specifico dell’endpoint. Non esistono chiavi «tuttofare»: una chiave di sola lettura non può aprire un incidente né inviare una SBOM.
| Permesso | Sblocca |
|---|---|
incidents:write | Registrare un segnale di sicurezza in ingresso. |
products:read | Leggere il catalogo prodotti con stato SBOM e livello di rischio. |
compliance:read | Leggere il punteggio di conformità dell’organizzazione. |
products:write | Inviare una distinta base dalle pipeline. |
Endpoint
La superficie pubblica è composta da quattro endpoint. Non c’è impaginazione: gli elenchi tornano interi con il loro conteggio.
| Metodo e percorso | Permesso | Descrizione |
|---|---|---|
POST /api/v1/external/incidents | incidents:write | Registra un segnale di sicurezza in ingresso (INCOMING). Non crea un caso: nessuna awareness, nessun orologio 24h/72h. La trasformazione in caso è una decisione umana nella console. |
GET /api/v1/external/products | products:read | Catalogo prodotti con stato della distinta base e livello di rischio derivato dai casi attivi. Risponde {"products":[…],"count":N}. |
GET /api/v1/external/compliance-score | compliance:read | KPI di conformità in tempo reale: CRA Health Score a regole, MTTN medio, copertura SBOM, timer 24h/72h attivi. |
POST /api/v1/external/products/{sku}/sbom | products:write | Ingestione di una SBOM CycloneDX/SPDX per il prodotto indicato dallo SKU. Converge sullo stesso modello versionato per release degli upload web e CLI (vedi Distinta base). |
Sull’host dedicato api.cranotify.eu le prime tre rispondono anche nella forma breve /v1/incidents, /v1/products, /v1/compliance-score.
Non esistono endpoint di lettura dei casi, del profilo della chiave, del registro o di verifica del registro dall’API pubblica: sono operazioni della sola console. L’API non restituisce alcuna busta impaginata.
Limite di frequenza
Ogni chiave ha un limite di 100 richieste al minuto. Oltre soglia la risposta è 429 con gli header X-RateLimit-Limit, X-RateLimit-Remaining e Retry-After.
Esempi
# Catalogo prodotti
curl -H "X-CRA-API-Key: cra_live_…" https://api.cranotify.eu/v1/products
# Punteggio di conformità
curl -H "Authorization: Bearer cra_live_…" https://api.cranotify.eu/v1/compliance-score
# Apertura di un segnale in ingresso
curl -X POST -H "X-CRA-API-Key: cra_live_…" -H "Content-Type: application/json" \
-d '{"title":"…","description":"…"}' \
https://api.cranotify.eu/v1/incidents
# Invio di una SBOM per uno SKU
curl -X POST -H "X-CRA-API-Key: cra_live_…" -H "Content-Type: application/json" \
--data-binary @sbom.cyclonedx.json \
https://api.cranotify.eu/api/v1/external/products/SKU-123/sbom
Che cosa l’API non espone
Il catalogo prodotti riporta metadati e stato di conformità, mai i segreti dell’organizzazione. L’identità e il recapito di chi ha segnalato una vulnerabilità, le note del Privilege Vault, i segreti TOTP e le chiavi di archiviazione non sono raggiungibili dall’API pubblica.
Codici di errore
| Codice | Significato |
|---|---|
401 | Chiave assente, errata, revocata o scaduta. |
403 | Chiave valida ma priva del permesso richiesto. |
405 | Metodo non ammesso sull’endpoint. |
422 | Corpo non valido: campi mancanti sull’apertura di un incidente, oppure SBOM che non è né CycloneDX né SPDX. |
429 | Limite di frequenza superato (100/min per chiave). |
Specifica e console API
https://api.cranotify.eu/swagger (/docs resta un alias) mostra ogni endpoint, i parametri, gli schemi e gli esempi. È servita da noi, senza CDN.https://api.cranotify.eu/swagger/openapi.json — importalo in Postman, Insomnia o in un generatore di client.Dati personali e conservazione
CRAnotify tratta pochi dati personali ma li tratta in un contesto delicato: segnalazioni non pubbliche, decisioni con effetti legali, prove destinate a durare. Questa pagina spiega che cosa è conservato, per quanto, e come si esercitano i diritti dell’interessato.
Quali dati
| Categoria | Contenuto | Da dove arriva |
|---|---|---|
| Utenti | Nome, indirizzo email, ruolo, impronta della password, sessioni attive. | Registrazione, invito, accesso unico. |
| Organizzazione | Ragione sociale, partita IVA, sede, PEC, codice destinatario, recapiti di escalation. | Dati aziendali. |
| Segnalazioni | Testo, prodotto indicato, recapito del segnalante (facoltativo), allegati. | Modulo pubblico, inserimento manuale. |
| Registro | Atti compiuti, con autore e momento. | Uso dell’applicazione. |
| Fatturazione | Dati fiscali e documenti contabili. | Abbonamento. |
I dati risiedono nell’Unione europea e sono separati per organizzazione: nessun dato di un’altra organizzazione entra nelle tue viste, nei tuoi esiti di ricerca o nella tua catena di integrità.
Esercitare i diritti
Da Area utente › Legale sono disponibili tre azioni, ciascuna registrata e confermata via email:
Che cosa resta dopo una cancellazione
Il registro delle attività e le ricevute di deposito non vengono cancellati su richiesta: sono documentazione di adempimenti normativi con un proprio periodo di conservazione. Cancellarli significherebbe distruggere la prova che un obbligo è stato assolto — a danno, prima di tutto, dell’organizzazione stessa.
Restano dunque: le righe di registro (comprensive di autore e momento), le ricevute rilasciate dalla piattaforma, i documenti contabili per il periodo previsto dalla normativa fiscale. Vengono invece rimossi i dati dell’account non necessari a quelle finalità.
Periodo di conservazione
Il fascicolo di un case è conservato per il periodo che consente di documentare l’adempimento in caso di verifica. Quando la scadenza si avvicina, un avviso lo segnala al referente e agli amministratori: è il momento per decidere se archiviare esternamente le prove che vuoi tenere più a lungo.
Buona pratica. Non affidarti a un solo depositario. Alla chiusura di ogni case esporta registro e fascicolo e conservali con la documentazione di conformità del prodotto.
Dati dei segnalanti
Il recapito del segnalante è facoltativo ed è usato solo per la presa d’atto e per il riscontro. Una segnalazione anonima non contiene dati identificativi. Tratta con attenzione gli allegati: possono contenere dati personali di terzi che il segnalante ha incluso senza pensarci — se non servono alla valutazione, non replicarli nella notifica.
Fornitori coinvolti
Per erogare il servizio ci avvaliamo di fornitori per l’invio delle email transazionali, l’infrastruttura di hosting, i pagamenti e il monitoraggio degli errori. L’elenco aggiornato, con ruoli e basi giuridiche, è nell’informativa privacy. Gli errori applicativi sono raccolti senza corpi delle richieste, cookie o intestazioni di autenticazione, e gli utenti vi compaiono con identificativo, organizzazione e ruolo — mai con l’indirizzo email.
Uso dell’intelligenza artificiale
L’assistente CRA invia al modello il testo che fornisci e il contesto della pagina in cui lavori, non l’intero registro né le anagrafiche. Non prende decisioni con effetti legali e ogni suo esito è una bozza da revisionare. La posizione completa è su https://cranotify.eu/ia.
Contatti
Per richieste sui dati personali: privacy@cranotify.eu. Per il resto, l’assistenza.
Modalità esercitazione
L’esercitazione serve a scoprire i punti deboli della tua organizzazione quando non costa nulla. Il flusso funziona per intero — orologio, avvisi, registro, deposito — ma ogni traccia prodotta è marcata come prova generale e il legale rappresentante resta fuori dalle escalation.
Attivare e disattivare
Si attiva dal menu, alla voce Esercitazione. Con la modalità attiva l’intestazione lo dichiara in modo visibile e:
- ogni riga di registro prodotta è preceduta da
[esercitazione]; - il legale rappresentante è escluso dalle escalation;
- gli avvisi di sistema sul mancato recapito sono sospesi;
- tutto il resto — orologio, solleciti al referente e al sostituto, deposito, fascicolo — funziona normalmente.
La disattivazione riporta il comportamento ordinario. Le righe già marcate restano marcate: sono la prova che l’esercitazione è avvenuta.
Perché farla
Le cose che si scoprono solo provando:
- il referente indicato ha cambiato ruolo sei mesi fa;
- gli avvisi finiscono nella posta indesiderata del filtro aziendale;
- nessuno sa dove sono le credenziali della piattaforma di segnalazione;
- chi deve approvare il testo della notifica non è raggiungibile la sera;
- il prodotto coinvolto non è in anagrafica e nessuno conosce il part number.
Buona pratica. Un’esercitazione a semestre, in orario scomodo (venerdì pomeriggio), con un osservatore che cronometra i passaggi. Il numero che conta è quanto tempo passa dalla segnalazione al testo pronto per il deposito.
Uno scenario pronto
- Attiva l’esercitazione.
- Invia una segnalazione dal modulo pubblico come farebbe un ricercatore esterno, indicando un prodotto reale.
- Verifica che l’avviso arrivi alla casella sicurezza e ai canali di chat configurati.
- Accetta la segnalazione e conduci il triage con esito «obbligo»: fissa come momento di consapevolezza quello della segnalazione.
- Controlla che l’orologio parta e che l’avviso di avvio raggiunga referente e sostituto.
- Compila la bozza di notifica come se andasse davvero depositata, e falla approvare da chi la approverebbe davvero.
- Simula il deposito caricando un PDF di prova come ricevuta.
- Genera il fascicolo e leggilo: è ciò che consegneresti a un’autorità.
- Disattiva l’esercitazione e archivia il case di prova.
Il debriefing
Rispondi per iscritto a quattro domande e conserva la risposta con il fascicolo dell’esercitazione:
Avvertenze
Non usare l’esercitazione per «provare» un evento reale: se l’evento è vero, le righe marcate come esercitazione indebolirebbero la tua documentazione. E ricorda di disattivarla alla fine — una segnalazione autentica che arrivasse con la modalità ancora attiva produrrebbe tracce marcate e un legale non avvisato.
Riferimenti
Glossario, stati, mappa degli indirizzi e risoluzione dei problemi.
Glossario
Le parole del regolamento e quelle dell’applicazione, con la traduzione dalle une alle altre. Dove il significato tecnico differisce dall’uso comune, la differenza è indicata: è quasi sempre lì che nascono gli errori di qualificazione.
Il regolamento
L’applicazione
/signals) e non è ancora un case: nessun termine di legge decorre finché una persona non lo promuove a case, lo collega a un case esistente o lo archivia.Falsi amici
| Non confondere | Con | Differenza |
|---|---|---|
| Vulnerabilità segnalata | Vulnerabilità sfruttata | Solo la seconda fa scattare l’obbligo dell’Art. 14(2)(a). |
| Notifica all’autorità | Avviso agli utenti | Obblighi distinti, destinatari diversi: uno non sostituisce l’altro. |
| Preallerta depositata | Adempimento concluso | Dopo la preallerta restano l’aggiornamento a 72 ore e la relazione finale. |
| Sospeso | Termine sospeso | La sospensione riguarda la tua valutazione, non il decorso del termine di legge. |
| Ruolo (permessi) | Recapito di escalation | Il primo dice che cosa si può fare, il secondo chi viene avvisato. |
Stati, verdetti e tipi di evento
Le tabelle di riferimento dell’applicazione, in una pagina sola. Utile da tenere aperta durante una lavorazione o da allegare a una procedura interna.
Stati del case
| Stato | Origine | Azioni disponibili |
|---|---|---|
| nuovo | Inserimento manuale, o segnale esterno promosso a case. | Avviare il triage, archiviare. |
| triage | Triage avviato. | Completare le tre fasi. |
| obbligo | Verdetto di obbligo. | Prendere in carico, preparare la notifica, depositare. |
| in corso | Preallerta depositata. | Depositare aggiornamento e relazione finale. |
| adempiuto | Relazione finale depositata. | Consultare, generare il fascicolo. |
| archiviata | Nessun obbligo o archiviazione. | Consultare. |
Gli eventi che arrivano dall’esterno (modulo pubblico, connettori, API, intelligence) non nascono come case: vivono prima come segnali nella coda INCOMING (/signals), con i propri stati — nuovo, promosso, collegato, duplicato, informativo, scartato. Nessun termine di legge decorre finché una persona non promuove il segnale a case (è la promozione a fissare il momento di consapevolezza).
Verdetti
| Verdetto | Condizione | Base normativa | Effetto |
|---|---|---|---|
| obbligo | Vulnerabilità con sfruttamento documentato. | Art. 14(2)(a) | Orologio 24 ore, avviso al referente. |
| obbligo (incidente) | Incidente grave con proprietà di sicurezza compromesse. | Art. 14(4)(a) | Orologio 24 ore; relazione finale entro un mese dalla preallerta. |
| sospeso | Elementi insufficienti per decidere. | da riesaminare | Promemoria di ricontrollo; il termine di legge continua a decorrere. |
| nessun obbligo | Evento fuori ambito o presupposto assente. | — | Archiviazione con motivazione a registro. |
Fasi dell’obbligo e termini
| Fase | Termine | Decorre da | Alla conferma |
|---|---|---|---|
| Preallerta | 24 ore | Momento di consapevolezza | Il case passa a «in corso»; si apre l’aggiornamento. |
| Aggiornamento | 72 ore | Deposito della preallerta | Si apre la relazione finale; per la vulnerabilità si indica la data della misura correttiva. |
| Relazione finale · incidente | 1 mese | Deposito della preallerta | Il case passa ad «adempiuto». |
| Relazione finale · vulnerabilità | 14 giorni | Disponibilità della misura correttiva | Il case passa ad «adempiuto». |
Tipi di evento nel registro
| Tipo | Comprende |
|---|---|
| segnalazione | Ricezione dal portale, inserimento manuale. |
| valutazione | Promozione, collegamento o archiviazione di un segnale, avvio e conclusione del triage, verdetti, presa in carico, archiviazione, modifica del momento di consapevolezza. |
| notifica | Depositi delle tre fasi, avviso agli utenti, segnalazione a monte, invio degli avvisi operativi. |
| amministrazione | Configurazioni, utenti, escalation, chiavi API, SBOM, canali di avviso, sicurezza dell’account. |
Stati dell’orologio
Ogni stato porta icona ed etichetta: il colore non è mai l’unico segnale.
| Stato | Condizione |
|---|---|
| Oltre 4 ore | Oltre 4 ore al termine. |
| Meno di 4 ore | Meno di 4 ore al termine. |
| Termine superato | Termine superato. |
Stati dell’abbonamento
| Stato | Lavoro regolatorio | Nuovi prodotti / chiavi API | Lettura ed esportazione |
|---|---|---|---|
| in prova | Sì | Sì (entro gli slot) | Sì |
| attivo | Sì | Sì (entro gli slot) | Sì |
| pagamento in ritardo (grazia) | Sì | Sì (entro gli slot) | Sì |
| sospeso | Sì | No | Sì |
| cancellato | Sì | No | Sì |
«Lavoro regolatorio» = aprire case, condurre triage, depositare, allegare evidenze ed esportare: non si ferma mai per un pagamento. Dettagli in Abbonamento e fatturazione.
Mappa degli indirizzi
CRAnotify è un solo servizio distribuito su più domini, ciascuno con un compito. Sapere che cosa vive dove serve a configurare i DNS, i filtri aziendali e i preferiti del browser.
I domini
| Dominio | Che cosa serve | Accesso |
|---|---|---|
https://cranotify.eu | Sito pubblico: presentazione, prezzi, test di ambito, contatti. | Pubblico |
https://cranotify.eu | L’applicazione: dove si lavora sui case. | Con sessione |
https://cranotify.eu | Il modulo di segnalazione, incorporabile. | Pubblico, per codice modulo |
https://doc.cranotify.eu | Questa documentazione. | Pubblico |
api.<dominio> | API pubblica: 4 endpoint documentati (incidenti, prodotti, punteggio di conformità, ingestione SBOM); console su /swagger. | Chiave API |
Applicazione
| Indirizzo | Schermata | Ruolo minimo |
|---|---|---|
/login · /login/2fa | Accesso e verifica in due passaggi. | — |
/registrazione | Registrazione self-service. | — |
/reset · /reset/completa | Reimpostazione password. | — |
/verifica · /invito | Verifica dell’indirizzo, accettazione di un invito. | — |
/casi | Cruscotto dei case. | Sola lettura |
/signals | Coda INCOMING dei segnali in ingresso (modulo pubblico, connettori, API, intelligence): promozione a case, collegamento a un case, archiviazione. | Valutatore |
/case · /case/nuovo | Dettaglio del case, inserimento manuale. | Valutatore |
/triage-app · /verdetto | Triage guidato ed esito. | Valutatore |
/notifica · /deposito · /ricevuta | Bozza, deposito e conferma. | Valutatore |
/task/avviso · /task/monte | Avviso agli utenti e segnalazione a monte. | Valutatore |
/registro · /registro.csv · /fascicolo | Registro, esportazione, fascicolo difensivo. | Sola lettura |
/prodotti · /prodotto · /prodotti.csv | Anagrafica, scheda prodotto, esportazione. | Valutatore |
/releases/{id} | Dettaglio del rilascio: informazioni, storico delle SBOM versionate, inventario dei componenti, riscontri di vulnerabilità. | Sola lettura |
/prodotti?vista=entita · /anagrafica/… | Entità giuridiche e ruoli CRA per prodotto; raggruppamento e riorganizzazione dell’anagrafica. | Sola lettura per consultare; Valutatore per i gesti |
/prodotto?tab=vulnerabilita · /prodotto/vex | Valutazioni VEX: registrare e approvare. | Valutatore |
/prodotto?tab=evidenze · /prodotto/controllo | Controlli CRA ed evidenze, dichiarazione di non applicabilità. | Valutatore |
/documentazione-tecnica · /documentazione-tecnica/prodotto · /documentazione-tecnica/stampa | Documentazione tecnica, percorso di conformità, versione stampabile. | Sola lettura per consultare; Valutatore per registrare un passo |
/documentazione-tecnica/firma | Firma del fascicolo e della dichiarazione UE. Chiede la password e, se attivo, il codice del secondo fattore. | Approvatore |
/fornitori · /fornitori/documento | Pannello fornitori: inviti, richieste, documenti ricevuti. | Amministratore |
/ricostruzione | Ricostruzione a una data di un prodotto. | Sola lettura |
/account | Area utente (profilo, azienda, abbonamento, modulo, API, SBOM, avvisi, legale). | Sola lettura; le modifiche richiedono il ruolo relativo |
/account/security.txt | Il tuo file security.txt da pubblicare. | Amministratore |
/account/export.json | Esportazione dei dati dell’account. | Amministratore |
/esercitazione | Attivazione della modalità esercitazione. | Valutatore |
/allegato | Scaricamento di un allegato (mai visualizzato in pagina). | Valutatore |
/logout | Uscita. | — |
Ogni indirizzo dell’applicazione senza sessione valida rimanda alla pagina di accesso. L’applicazione non è indicizzata dai motori di ricerca e non può essere incorniciata da altri siti.
Superfici pubbliche
| Indirizzo | Contenuto |
|---|---|
https://cranotify.eu/f/<codice> | Il tuo modulo di segnalazione. |
https://cranotify.eu/f/<codice>?embed=1 | La versione da incorporare in un iframe. |
/fornitore?t=<token> | Il portale del fornitore, su un indirizzo separato da quello dell’applicazione: nessun account, nessuna sessione, solo il token del collegamento. Non indicizzabile. Il collegamento lo compone il pannello dei fornitori. |
https://cranotify.eu/prezzi · /faq · /glossario | Prezzi, domande frequenti, glossario del regolamento. |
https://cranotify.eu/privacy · /cookie · /termini · /note-legali · /ia · /accessibilita | Documenti legali e dichiarazioni. |
Documentazione
| Indirizzo | Contenuto |
|---|---|
https://doc.cranotify.eu/ | Indice generale. |
https://doc.cranotify.eu/<sezione>/<pagina> | Le pagine del manuale. |
https://doc.cranotify.eu/cerca?q=… | Ricerca a testo completo. |
https://doc.cranotify.eu/faq · /supporto | Domande frequenti e assistenza. |
Endpoint tecnici
| Indirizzo | Uso |
|---|---|
/healthz | Stato del servizio e della base dati (per i sistemi di monitoraggio). |
api.<dominio>/api/v1/external/products/{sku}/sbom | Ingestione della distinta base per lo SKU indicato; richiede lo scope products:write. |
api.<dominio>/swagger | Console e specifica OpenAPI dell’API pubblica (/docs è un alias). |
/webhook/stripe | Riservato al gestore dei pagamenti; verifica la propria firma. |
/robots.txt · /sitemap.xml | Indicizzazione delle superfici pubbliche. |
Risoluzione dei problemi
Le situazioni che arrivano più spesso in assistenza, con la causa tipica e la soluzione. Se la tua non è qui, apri una richiesta: aggiungeremo la voce.
Accesso
no-reply@cranotify.eu. Il link scade in 24 ore ed è a uso singolo.Avvisi e solleciti
Flusso e termini
/signals): va prima promosso a case — ed è la promozione a fissare il momento di consapevolezza — poi si avvia il triage. Finché resta non promosso è solo un segnale, non un case.Deposito
.eml..eml, fino a 10 MB.Scrittura bloccata
Registro e prove
Modulo pubblico
?embed=1) e che la tua pagina non applichi una politica dei contenuti che blocca i frame di terzi.Se serve aiuto
Apri una richiesta di assistenza indicando codice organizzazione, numero del case, che cosa stavi facendo e che cosa è successo. Per un termine in scadenza usa il telefono: +39 031 5478618.
Documentazione di CRAnotify · aggiornata al 5 agosto 2026 · https://doc.cranotify.eu
Intarmour® di Simone Nogara · Via Morazzone 4, 22100 Como (CO) · P. IVA IT03817020138 · support@cranotify.eu