Vedi Pwas al lavoro: 30 minuti guidati su un'applicazione già funzionante. Prenota la demo →
Confronta i prodotti Pwas nel tuo settore Prenota una demo
Pwas-One
ERPShopCRMDoc ManagerAI Agent
Pwas.FrameworkPwas.ClientPwas.OrchestratorPwas.Microservice
Pwas CLIAssessmefyDynamic Registry Builder
Soluzioni Settori Documentazione Partner Richiedi una demo Inizia ora
Italiano English
pwas.it — powered by pooel.it
soluzioni · sistemi regolamentati

Ogni azione automatica lascia una traccia replicabile.

Hook, logging per categoria e ricorsione governata — pensati per contesti audit-heavy fin dall'inizio, non aggiunti dopo quando la traccia serve e non c'è.

il problema

L'audit trail aggiunto dopo è sempre incompleto.

Se il logging non è parte del motore fin dall'inizio, ogni nuovo percorso di codice rischia di restare fuori dalla traccia. Pwas registra hook attorno a ogni operazione di lettura, scrittura, autenticazione ed esecuzione, con logging configurabile per categoria — così l'audit non dipende dalla disciplina di chi scrive il prossimo endpoint.

la differenza che conta

La domanda dell'auditor, e le due risposte possibili.

La differenza fra le due risposte non dipende dalla qualità del software né dalla diligenza delle persone. Dipende da una scelta architetturale fatta anni prima, spesso senza rendersene conto.

Quando la tracciabilità è un'aggiunta — un modulo di logging, una tabella di storico, un servizio che registra eventi — dipende dal fatto che ogni percorso di codice si ricordi di chiamarla. Nella pratica, più il sistema cresce, più aumentano i percorsi che non la chiamano: un'importazione massiva scritta in fretta, una correzione fatta direttamente in produzione, un endpoint di servizio nato per il supporto interno. Nessuno di questi vuole eludere l'audit: semplicemente nessuno si è ricordato.

Il risultato è una traccia che copre i percorsi principali e ha buchi esattamente dove servirebbe: nelle eccezioni, che sono quelle su cui l'auditor fa domande.

Quando la traccia è una conseguenza

Nel modello dichiarativo ogni operazione che tocca un dato passa da un unico motore, e attorno a quel motore ci sono hook che si attivano prima e dopo ogni operazione, per ogni categoria: lettura, scrittura, autenticazione, esecuzione di pipeline. Non esiste un percorso alternativo che permetta di scrivere un dato senza passare di lì, perché quel motore è il modo in cui i dati si scrivono.

La conseguenza pratica è che la domanda "questo percorso è tracciato?" smette di avere senso: tutti i percorsi lo sono, inclusa l'importazione massiva scritta in fretta e inclusa l'azione proposta da un agente AI.

Cosa resta registrato, oltre al fatto

Un audit trail che dice solo "il record X è stato modificato il giorno Y dall'utente Z" risponde a metà della domanda. La parte che conta, in un contesto regolamentato, è perché.

Per questo, accanto alla traccia delle operazioni, resta registrato il livello decisionale: quando un'azione nasce da un'automazione, viene registrato quale intento l'ha generata, quale piano è stato compilato, quali strumenti sono stati invocati, quale decisione è stata presa e con quale motivazione. Ed è un registro indipendente da quello delle richieste tecniche, perché risponde a una domanda diversa e deve poter essere consultato da chi non è un tecnico.

Aggiungete a questo il fatto che le regole applicate sono dichiarate e versionate con la propria decorrenza, e la ricostruzione diventa completa: si sa cosa è successo, chi lo ha fatto, perché, e sotto quali regole vigenti in quel momento.

il confronto

Tracciabilità aggiunta contro tracciabilità strutturale.

Audit trail come modulo

Copre i percorsi che qualcuno si è ricordato di coprire

  • Ogni nuovo percorso di codice deve ricordarsi di registrare l'evento.
  • Le importazioni massive e le correzioni straordinarie sfuggono più spesso.
  • La traccia registra il fatto, raramente la motivazione.
  • Ricostruire una decisione richiede di interpretare log tecnici.
  • Le regole applicate all'epoca non sono più leggibili se nel frattempo sono cambiate.
  • Un agente AI che agisce sui dati apre una superficie non coperta.
Tracciabilità nel motore

Copre ogni percorso, perché non ce ne sono altri

  • Gli hook si attivano attorno a ogni operazione: non c'è una via che li aggiri.
  • Importazioni, correzioni e operazioni di servizio passano dallo stesso motore.
  • Accanto al fatto resta registrato l'intento, il piano e la motivazione.
  • La ricostruzione è una consultazione leggibile anche da chi non è tecnico.
  • Le regole sono dichiarate e versionate: si legge quella vigente all'epoca.
  • Le azioni di un agente passano dalla stessa verifica e dalla stessa traccia.
governance dell'automazione

Le azioni sensibili si fermano, non procedono.

Ogni scrittura proposta da un agente resta in attesa di conferma umana, con il contenuto esatto già visibile prima dell'approvazione.

  1. 01

    Classificazione delle azioni

    Si decide, insieme, quali operazioni sono di sola lettura, quali sono scritture a basso impatto e quali sono sensibili. È una decisione di business e va presa da chi risponde del processo, non dal fornitore.

  2. 02

    Verifica preventiva del piano

    Prima di qualunque esecuzione, il piano proposto viene confrontato con i permessi reali dell'utente che l'ha richiesto. Un piano che non supera la verifica non viene eseguito neppure parzialmente.

  3. 03

    Conferma umana con payload visibile

    Per le azioni sensibili, chi conferma vede il contenuto esatto che verrà scritto e il record che verrà toccato. Non un avviso generico: il dato specifico, prima che diventi definitivo.

  4. 04

    Limiti di esecuzione espliciti

    Ogni piano compilato gira sotto limiti su numero di passi, profondità di annidamento, iterazioni e dimensione delle interrogazioni. La ricorsione è negata per default e va abilitata esplicitamente, con tracciamento end-to-end.

  5. 05

    Registrazione indipendente

    Intento, piano, strumento invocato, decisione e motivazione restano in un registro separato da quello tecnico, consultabile da chi deve rispondere del processo senza dover leggere log applicativi.

tracciabilità

La traccia nasce dal meccanismo, non dopo.

Ogni regola ha una decorrenza, ogni operazione viene verificata contro la versione in vigore e lascia un’evidenza esportabile.

AAAWgmp1bWIAAAAeanVtZGMycGEAEQAQgAAAqgA4m3EDYzJwYQAAABZcanVtYgAAAEdqdW1kYzJtYQARABCAAACqADibcQN1cm46YzJwYTphMTJjMjhkNC0zZGJiLTRiNTktODIxMC00YWUxN2NmZjZiM2MAAAADl2p1bWIAAAApanVtZGMyYXMAEQAQgAAAqgA4m3EDYzJwYS5hc3NlcnRpb25zAAAAALxqdW1iAAAARGp1bWRjYm9yABEAEIAAAKoAOJtxE2MycGEuaW5ncmVkaWVudC52MwAAAAAYYzJzaGfxvAafhYNyySkVM7vbc4oAAABwY2JvcqNpZGM6Zm9ybWF0bWltYWdlL3N2Zyt4bWxqaW5zdGFuY2VJRHgseG1wOmlpZDoyOTJmM2JhYS1lY2Q1LTQ3MGItOWEzNC1hMTVjMTk0MWM2NzJscmVsYXRpb25zaGlwaHBhcmVudE9mAAAB4mp1bWIAAABBanVtZGNib3IAEQAQgAAAqgA4m3ETYzJwYS5hY3Rpb25zLnYyAAAAABhjMnNoEOEouCAD1BDHS0X7vU7j4wAAAZljYm9yomdhY3Rpb25zgqJmYWN0aW9ua2MycGEub3BlbmVkanBhcmFtZXRlcnOha2luZ3JlZGllbnRzgaJjdXJseC1zZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmluZ3JlZGllbnQudjNkaGFzaFggvW3/bcygBcR9Wz6WaUcZIP8E9lZUEGJ8Ad5yxezMalukZmFjdGlvbngdY29tLmFudGhyb3BpYy5jbGF1ZGUucHJvdmlkZWRqcGFyYW1ldGVyc6F4H2NvbS5hbnRocm9waWMub3JpZ2luLWNvbmZpZGVuY2VndW5rbm93bmtkZXNjcmlwdGlvbnhmQ2xhdWRlIHByb3ZpZGVkIHRoaXMgZmlsZSBhdCB0aGUgcmVxdWVzdCBvZiBhIHVzZXIgYW5kIG1heSBoYXZlIGNyZWF0ZWQgb3IgbW9kaWZpZWQgdGhlIGZpbGUgY29udGVudHMubXNvZnR3YXJlQWdlbnShZG5hbWVmQ2xhdWRlcmFsbEFjdGlvbnNJbmNsdWRlZPUAAADIanVtYgAAAEBqdW1kY2JvcgARABCAAACqADibcRNjMnBhLmhhc2guZGF0YQAAAAAYYzJzaEnkroC7wF8FPNRwWF2UoigAAACAY2JvcqVjYWxnZnNoYTI1NmNwYWRMAAAAAAAAAAAAAAAAZGhhc2hYIIwEk8cTZyHtrC4XP0H4ljSg5WLt0ViV6IGDnmwOyDG6ZG5hbWVuanVtYmYgbWFuaWZlc3RqZXhjbHVzaW9uc4GiZXN0YXJ0GQEBZmxlbmd0aBkeBAAAAj5qdW1iAAAAJ2p1bWRjMmNsABEAEIAAAKoAOJtxA2MycGEuY2xhaW0udjIAAAACD2Nib3KlY2FsZ2ZzaGEyNTZpc2lnbmF0dXJleE1zZWxmI2p1bWJmPS9jMnBhL3VybjpjMnBhOmExMmMyOGQ0LTNkYmItNGI1OS04MjEwLTRhZTE3Y2ZmNmIzYy9jMnBhLnNpZ25hdHVyZWppbnN0YW5jZUlEeCx4bXA6aWlkOjhkZDEwMzM5LTE2MWYtNDgyNC05M2I4LTE3NGMzZjU0YTEwMnJjcmVhdGVkX2Fzc2VydGlvbnODomN1cmx4LXNlbGYjanVtYmY9YzJwYS5hc3NlcnRpb25zL2MycGEuaW5ncmVkaWVudC52M2RoYXNoWCC9bf9tzKAFxH1bPpZpRxkg/wT2VlQQYnwB3nLF7MxqW6JjdXJseCpzZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmFjdGlvbnMudjJkaGFzaFggJXZDGgCZg+QjHPQx2fphovXdt2OJN4OVJlgy6SIx1tKiY3VybHgpc2VsZiNqdW1iZj1jMnBhLmFzc2VydGlvbnMvYzJwYS5oYXNoLmRhdGFkaGFzaFgg2ch3hGB4jeT1SZNwRp0LhrqdD4C4+C7gG94D2kW3xQp0Y2xhaW1fZ2VuZXJhdG9yX2luZm+jZG5hbWVvQW50aHJvcGljIEZpbGVzZ3ZlcnNpb25lMS4wLjBrc3BlY1ZlcnNpb25lMi40LjAAABA4anVtYgAAAChqdW1kYzJjcwARABCAAACqADibcQNjMnBhLnNpZ25hdHVyZQAAABAIY2JvctKEWQISogEmGCFZAgowggIGMIIBjaADAgECAhRA5aAK7sI50L64g/oGQgU9Z1UTADAKBggqhkjOPQQDAzBJMRcwFQYDVQQKEw5BbnRocm9waWMsIFBCQzEuMCwGA1UEAxMlQW50aHJvcGljIENvbnRlbnQgQ3JlZGVudGlhbHMgUm9vdCBDQTAeFw0yNjA4MDcxODQzNTZaFw0yODA4MDYxOTQzNTZaMEQxFzAVBgNVBAoTDkFudGhyb3BpYywgUEJDMSkwJwYDVQQDEyBBbnRocm9waWMgQ2xhdWRlIENvbnRlbnQgU2lnbmluZzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJh6CmvLUBgFFNU0vUKlOVtE6djd17L5SuwX0LemFisBM3dkd/3cyjxFA3Qo5S46fX0/ihY0VZ7mfb9KF703t5OjWDBWMA4GA1UdDwEB/wQEAwIHgDAVBgNVHSUEDjAMBgorBgEEAYPoXgIBMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUzlHiBIFOZFsj+OPEz5o+nMHXXMIwCgYIKoZIzj0EAwMDZwAwZAIwMXMdFJ4BetLLVY7ORuE9noqbbAZOZn/aArXyTwFAZfKrPzxF2vPoJNf1+UCdg1XGAjBwX1zd9WGqYkqmL5SFqw1QySjr1zJfpJM9+1rdDwSPLMOPOjKuiXjoU/pUUeG9RwmhY3BhZFkNngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZYQA/dpDvtU6nlA2jjD2s/x8nEsGbEsInFKPWDKrYS1kV5PsbuscyM44ZbQX0CwX9lH+LQ5YHdvKlxQO87LW/Yi/c=Traceability built into the mechanism, not bolted onRules carry an effective date, every operation is checked against the version in force when it happens, and each step leaves an audit record that can be exported for inspection. Changing a threshold is a configuration change with its own history.REGULATED WORK, TRACEABLE BY CONSTRUCTIONRule with effective dateVERSIONEDOperationCHECKED AGAINST ITEvidence storedWHO · WHAT · WHENAudit exportREADY FOR INSPECTIONRESULTNo retroactive changesFull history keptInspection in hours
le garanzie

Cosa è strutturale e cosa no.

Proprietà del motore, verificabili in demo.

100%
delle operazioni con hook attivabili

Lettura, scrittura, autenticazione ed esecuzione: gli hook precedono e seguono ogni operazione, per costruzione e non per convenzione.

per categoria
il logging configurabile

Si sceglie cosa registrare e a quale livello di dettaglio per ciascuna categoria, senza dover intervenire percorso per percorso.

negata
la ricorsione, per default

Una pipeline può rientrare in sé stessa solo se lo dichiara, con tracciamento completo: nessun ciclo silenzioso.

separato
l'audit delle decisioni

Il registro di intento, piano e motivazione è indipendente da quello delle richieste tecniche, perché risponde a una domanda diversa.

Queste sono proprietà della piattaforma. Non costituiscono una certificazione di conformità: la verifica dell'aderenza ai requisiti normativi applicabili alla vostra attività compete a voi e ai vostri consulenti. Quello che la piattaforma offre sono gli strumenti strutturali che quella verifica richiede.

approfondimento

Le domande delle funzioni di controllo.

"Ci garantite la conformità?"

No, e chi ve lo promette vi sta dicendo una cosa che non può mantenere. La conformità non è una proprietà di un software: è una proprietà di come un'organizzazione usa quel software dentro i propri processi, valutata rispetto a norme che riguardano voi e non noi.

Quello che un sistema può fare è fornire gli elementi strutturali che una conformità verificabile richiede, e che senza software sono costosissimi da ottenere: regole esplicite e versionate, controlli applicati dal motore e non dalle persone, tracciabilità completa e ricostruibile, poteri di deroga dichiarati e misurabili.

La differenza che questo fa, nella pratica, è sul costo di dimostrare la conformità più che sulla conformità stessa. Un'organizzazione che deve istruire una verifica passa dal ricostruire comportamenti al consultare descrizioni. È un cambiamento di natura del lavoro, e chi ha vissuto un'ispezione capisce immediatamente quanto valga.

"La nostra funzione di controllo deve poter verificare le regole senza passare dall'IT. Si può?"

È il punto in cui questo approccio si distingue di più, e vale la pena spiegarlo con precisione perché è controintuitivo.

In un sistema tradizionale le regole di lavorazione sono codice. Per sapere cosa fa davvero il sistema bisogna chiedere a chi lo ha scritto, e la risposta è necessariamente una descrizione di seconda mano. La funzione di controllo può verificare gli esiti — campionando casi — ma non il meccanismo. È il motivo per cui i controlli sono statistici invece che strutturali.

Nel modello dichiarativo le regole sono un documento strutturato leggibile: quali controlli esistono, con quali soglie, con quale decorrenza, chi può derogare e in quali condizioni. E quel documento non è la documentazione del sistema: è il sistema. Non può esistere uno scostamento fra ciò che è scritto e ciò che viene applicato, perché sono la stessa cosa.

Una funzione di controllo può quindi leggerlo, confrontarlo con la normativa interna e rilevare differenze senza dipendere da nessuno. Il lavoro sui casi concreti resta, ma cambia natura: da ricostruzione a riscontro.

"Come gestite la conservazione e la modificabilità delle tracce?"

Tre aspetti distinti che conviene tenere separati, perché hanno soluzioni diverse.

L'integrità della traccia. Gli eventi di audit sono scritti in sola aggiunta: il flusso normale del sistema non prevede un percorso per modificarli o cancellarli. Questo non equivale a un'immutabilità crittografica garantita contro un amministratore di sistema con accesso diretto alla base dati — nessun sistema applicativo può promettere questo da solo. Dove il requisito lo impone, la traccia può essere replicata verso un archivio esterno in sola aggiunta o un sistema di conservazione dedicato.

La conservazione nel tempo. I periodi di conservazione sono dichiarati per categoria e coerenti con i vostri obblighi: si stabilisce quali tracce restano per quanto, e la regola è esplicita invece di essere una conseguenza della configurazione di un database.

La minimizzazione. Un audit trail completo è anche un archivio di dati personali. Per questo si dichiara esplicitamente quali contenuti finiscono nella traccia e quali no: registrare che un campo è stato modificato non richiede necessariamente di conservarne per anni il valore precedente, e questa è una scelta da fare consapevolmente con chi si occupa di protezione dei dati.

"Vogliamo usare l'AI ma il nostro comitato rischi ha bloccato tutto. Cosa possiamo portargli?"

La preoccupazione di un comitato rischi rispetto all'AI si riduce quasi sempre a tre domande precise. Vale la pena affrontarle una per una, perché formulate così hanno risposte verificabili.

"Può fare qualcosa che non dovrebbe?" No, e non per una policy ma per costruzione: un'azione non dichiarata come possibile per quell'utente in quel momento non ha un percorso di esecuzione. Il piano non compila. Questo è dimostrabile in demo, tentando di far eseguire a un agente un'operazione fuori dai permessi di chi la chiede.

"Possiamo fermarla prima che accada?" Sì: le azioni classificate come sensibili richiedono conferma umana esplicita con il contenuto esatto visibile. Quali azioni siano sensibili lo decidete voi, e la classificazione è essa stessa un documento leggibile che il comitato può approvare.

"Possiamo ricostruire cosa è successo?" Sì: intento, piano compilato, strumenti invocati, decisioni e motivazioni restano registrati in un audit indipendente. La ricostruzione non richiede di interpretare log tecnici.

Quello che non si può promettere, e che va detto al comitato, è che il modello non sbagli a interpretare una richiesta. Può sbagliare. La garanzia è che un errore di interpretazione non possa tradursi in un'azione non permessa, e che diventi visibile nel momento della conferma. È una garanzia diversa e più debole di quanto qualcuno vorrebbe sentirsi dire, ed è l'unica onesta.

verifica rapida

È il vostro caso?

Probabilmente sì

  • Dovete poter ricostruire chi ha fatto cosa, quando e perché, a distanza di anni.
  • Le vostre regole di lavorazione cambiano e dovete poter leggere quelle vigenti all'epoca.
  • Una funzione di controllo interna deve poter verificare le regole in autonomia.
  • Volete introdurre automazione o AI in processi soggetti a verifica.
  • I poteri di deroga esistono ma oggi non sono né dichiarati né misurati.
  • Avete subito o temete una verifica in cui la ricostruzione richiederebbe giorni.

Probabilmente no

  • Vi serve un sistema di conservazione a norma o una piattaforma di firma digitale.
  • Cercate una certificazione: quella riguarda la vostra organizzazione, non il software.
  • I vostri processi non sono soggetti a verifiche e la tracciabilità non vi serve.
  • Il requisito è esclusivamente di sicurezza perimetrale e non di tracciabilità applicativa.
domande frequenti

Sistemi regolamentati: le domande specifiche.

L'audit trail è modificabile da un amministratore?
Gli eventi sono scritti in sola aggiunta e il funzionamento normale del sistema non prevede un percorso per modificarli. Va però detto con precisione che questo non equivale a un'immutabilità garantita contro chi abbia accesso diretto alla base dati con privilegi amministrativi: nessun sistema applicativo può garantirlo da solo. Dove il requisito è stringente, la traccia si replica verso un archivio esterno in sola aggiunta o verso un sistema di conservazione dedicato, e quella replica diventa il riferimento.
Come si gestiscono le regole che cambiano nel tempo?
Le regole hanno una decorrenza dichiarata e la lavorazione di un caso resta associata ai criteri vigenti quando è avvenuta. Modificare una soglia oggi non altera la leggibilità delle decisioni prese in passato: una verifica che riapra un caso di due anni fa vede i valori di allora. Come trattare i casi in corso al momento di un cambio è una scelta da fare esplicitamente all'inizio, perché ha conseguenze operative.
Possiamo esportare le tracce verso il nostro sistema di raccolta log?
Sì. Gli eventi possono essere inoltrati verso sistemi esterni di raccolta e correlazione secondo i formati che quei sistemi accettano. È una configurazione frequente nelle organizzazioni che hanno già un presidio centralizzato e vogliono che anche le applicazioni di linea vi confluiscano, invece di tenere isole di log separate.
Che rapporto c'è con gli adempimenti in materia di protezione dei dati?
La configurazione dichiarativa agevola la redazione del registro dei trattamenti e l'eventuale valutazione d'impatto, perché quali dati esistono, chi li vede e per quanto restano è scritto esplicitamente invece di essere una conseguenza implicita del codice. Gli adempimenti restano però vostri in qualità di titolare; noi operiamo come responsabile del trattamento con gli accordi previsti.
Le azioni sensibili richiedono sempre conferma umana?
Quali azioni richiedono conferma lo decidete voi, e la classificazione è un documento leggibile che le vostre funzioni di controllo possono approvare. La configurazione tipica prevede letture senza conferma, scritture a basso impatto con notifica e scritture sensibili con conferma esplicita e contenuto visibile. Togliere la conferma dove non serve è legittimo, purché sia una decisione consapevole e documentata.
Dove risiedono i dati e le tracce?
Dove decidete: nella vostra infrastruttura, su cloud europeo o in configurazione mista. Nei contesti regolamentati l'installazione nel proprio perimetro è la scelta più frequente ed è una modalità di distribuzione a pieno titolo, non una versione ridotta del prodotto. La scelta viene documentata nel progetto e resta reversibile.

Operi in un settore regolamentato?

Parliamo dei tuoi requisiti di audit e tracciabilità, e ti diciamo cosa la piattaforma copre e cosa resta vostro.