Releases: link-it/govway
GovWay v3.4.1.p1
Bug Fix
Sono stati risolti i seguenti bug:
-
Risolta anomalia che impediva l’utilizzo della keyword 'securityToken' nelle trasformazioni di risposta per API configurate esclusivamente con la negoziazione token, senza pattern di sicurezza aggiuntivi.
-
Aggiornata la gestione delle govlet SUAP: l’indicazione del soggetto nella sezione audience e nel connettore dell’erogazione esterna è ora impostata dinamicamente in base al soggetto specificato durante il caricamento della govlet (rimosso il valore cablato "ENTE").
Per la console di gestione sono stati risolti i seguenti bug:
-
Risolto un problema che impediva la corretta visualizzazione delle schede di dettaglio quando la descrizione dell'elemento conteneva contenuti HTML. Ora il campo descrizione viene correttamente gestito tramite escape HTML in fase di lettura.
-
Risolte segnalazioni 'A form label must be associated with a control.' di SonarQube sulla pagina jsp 'edit-page.jsp'.
Per la console di monitoraggio sono stati risolti i seguenti bug:
- (#261) È stata corretta un’anomalia che impediva il corretto funzionamento della console. Il problema era dovuto alla presenza di un doppio carattere “//” all’interno dei riferimenti di alcune risorse,che causava il malfunzionamento dell’applicazione nel caso in cui l’ingress posto davanti alla console eseguisse l’operazione di merge slash. Tale comportamento provocava errori JavaScript che rendevano la webapp inutilizzabile, impedendo l’accesso alla schermata di login.
Per le API di configurazione sono stati risolti i seguenti bug:
- corretto il comportamento della risorsa '/api-config/v1/soggetti/{nome}' che non restituiva risultati per i soggetti privi di autenticazione configurata;
Sono state risolte le seguenti anomalie presenti nell'installer:
-
Aggiornati script SQL per compatibilità con MySQL 8.0+ (rimosso sql_mode 'NO_AUTO_CREATE_USER').
-
Corretta la generazione dello script SQL 'GovWayTracciamento.sql' che, nella modalità di installazione avanzata con database dedicato al tracciamento, non includeva la creazione della tabella 'OP2_SEMAPHORE'.
GovWay v3.4.1
Miglioramenti all'integrazione con la PDND
Tracing
La funzionalità di Tracing PDND è stato rivista nei seguenti aspetti:
-
È stata introdotta la possibilità di aggregare, prima della pubblicazione, le informazioni statistiche provenienti da più soggetti operativi in un unico record. Questa estensione consente di supportare scenari in cui più soggetti operativi non corrispondano necessariamente a enti distinti registrati sulla PDND.
-
In presenza di un pattern di tipo INTEGRITY, la configurazione predefinita di GovWay prevedeva l’utilizzo dell’identificativo del token di integrità come identificativo del messaggio. Tuttavia, poiché il report di tracciamento PDND si basa su tale identificativo, il valore riportato nel tracciamento non coincideva con il JTI del voucher, ovvero con l’identificativo generato dalla PDND stessa. L’anomalia è stata risolta introducendo il tracciamento esplicito dell’identificativo del token, che viene ora correttamente utilizzato nella generazione del file CSV destinato al tracciamento PDND.
-
È stato normalizzato l’header Content-Type nelle richieste multipart/form-data, sostituendo eventuali caratteri HTAB con SP negli OWS attorno al punto e virgola (;) e tra il tipo e il boundary. In alcuni ambienti, dove l’application server non effettuava la normalizzazione automatica degli header HTTP, tale anomalia causava il fallimento della pubblicazione dei record verso la PDND, con errori del tipo:
[{"code":"BAD_REQUEST_ERROR","detail":"Validation error: Required at "file""},
{"code":"BAD_REQUEST_ERROR","detail":"Validation error: Required at "date""}]L'errore avveniva a causa della presenza di tab nel
Content-Type, non accettati dal server PDND di Tracing.
API Interoperabilità
Aggiunto supporto all'integrazione delle api di interoperabilità v2 per:
- recupero delle chiavi: utilizzo delle risorse 'GET /keys/{kid}' per le chiavi client e 'GET /producerKeys/{kid}/' per le chiavi server;
- recupero delle informazioni del client e dell'organizzazione: utilizzo delle risorse 'GET /clients/{clientId}' e 'GET /tenants/{tenantId}'
Miglioramenti al Profilo di Interoperabilità 'ModI'
È stato aggiornato il controllo sulla presenza del claim “nbf”. In precedenza, il controllo veniva applicato in modo troppo restrittivo a tutte le erogazioni con profilo di interoperabilità ModI.
Con la nuova implementazione, la verifica della presenza del claim “nbf” è ora obbligatoria esclusivamente per le erogazioni ModI veicolate tramite la piattaforma PDND.
Miglioramenti alla funzionalità dei Connettori
Il canale NIO supporta ora la gestione di chiamate in modalità SSE (Server-Sent Events), che consentono al server di inviare eventi in streaming verso il client tramite una connessione long-lived identificata dal Content-Type text/event-stream.
Contestualmente, la gestione del canale NIO è stata ottimizzata introducendo l’utilizzo di virtual threads per lo streaming sia della richiesta che della risposta.
Miglioramenti alla funzionalità di Sicurezza Messaggio
È stata aggiunta la possibilità di specificare l’elemento 'AuthnContextDeclRef' all’interno di una 'AuthnStatement' nella sezione SAML generata tramite la funzionalità di sicurezza messaggio 'WS-Security SAML Token'.
Miglioramenti alla funzionalità di Tracciamento
Sono stati introdotti i seguenti miglioramenti al processo di failover attivato in caso di fallimento del tracciamento su database:
-
i file delle tracce salvati su filesystem includono ora nel nome un UUID, che ne garantisce l’univocità;
-
una gestione tramite semaforo su database viene adesso utilizzata per coordinare i timer di recupero delle tracce da filesystem tra più nodi in ambienti cluster, consentendo l’utilizzo di un volume persistente condiviso da tutti i nodi.
È stata inoltre aggiornata la documentazione relativa alla configurazione del tracciamento, al processo di failover e ai requisiti di spazio disco, con particolare attenzione agli ambienti cloud orchestrati.
Miglioramenti alla funzionalità di generazione dei report statistici
Sono stati apportati i seguenti miglioramenti:
-
aggiunta configurabilità dei criteri di raggruppamento, tramite proprietà '*.groupBy.', per ottimizzare la cardinalità delle aggregazioni;
-
migliorato il calcolo della latenza totale nelle aggregazioni statistiche:
- viene ora calcolata anche per le transazioni prive delle date di consegna al backend (data_uscita_richiesta e data_ingresso_risposta), aumentando la copertura e la precisione delle metriche;
- corretta la formula di calcolo delle latenze medie per escludere dal denominatore le richieste con latenza non disponibile (NULL o -1), eliminando la sottostima sistematica precedentemente causata da transazioni con esiti di errore e timestamp incompleti.
-
il record statistico memorizzato nella base dati relativo all’intervallo corrente viene ora registrato con 'stato_record=3', al fine di distinguerlo dai record riferiti a intervalli passati non più soggetti a modifiche ('stato_record=1').
Miglioramenti al supporto per l'integrazione con i servizi SUAP
Il plugin che consente di gestire gli errori previsti dalla Specifica Tecnica DPR-160 è stato rivisto nei seguenti aspetti:
-
la gestione di una richiesta che presentava un header HTTP Authorization valorizzato con il solo JWT, senza il prefisso Bearer, veniva gestita da GovWay restituendo erroneamente la risposta "PDND token not found", mentre la testsuite SUAP si attendeva il messaggio "Invalid PDND token". L'errore è stato allineato alla risposta prevista, in conformità alle specifiche SUAP.
-
la richiesta generata dalla suite di test BB verso la risorsa /instance/{cui_uuid}/document/{resource_id} non presenta volutamente l'header 'If-Match' definito come obbligatorio nell'interfaccia OpenAPI. In tali casi, GovWay restituiva erroneamente la risposta "ERROR_400_001 / incorrect request input", mentre la testsuite SUAP si attendeva il messaggio "ERROR_428_001 / hash not found". L'errore è stato allineato alla risposta prevista dal caso di errore ERROR_428_001.
Sono infine state realizzate GovLet che facilitano la configurazione delle erogazioni previste dalla certificazione SUAP.
Miglioramenti alla Console e alle API di Monitoraggio
Sono stati apportati i seguenti miglioramenti alle funzionalità di reportistica:
- è adesso possibile effettuare ricerche nello storico delle transazioni tramite l'identificativo del token Authorization (jti);
- nel dettaglio di una transazione, nella sezione 'Informazioni Mittente', viene adesso visualizzato anche l'identificativo del token.
Introduzione supporto OIDC/OAuth2 per le Console
Aggiunto il supporto per l’integrazione delle console con un authorization server conforme agli standard OpenID Connect (OIDC) e OAuth 2.0.
Miglioramenti all'Installer
Sono stati apportati i seguenti miglioramenti all'installer binario:
-
aggiunto supporto per wildfly 37 e 38;
-
aggiunto un nuovo tool 'govway-template-scan', che consente di eseguire una scansione della base dati di configurazione dei template caricati, al fine di individuare la presenza di una specifica keyword.
Questo strumento risulta particolarmente utile, ad esempio per identificare tramite la keyword "commons.lang.", i template che fanno uso della libreria commons-lang, non più inclusa negli archivi a partire dalle versioni 3.4.1. -
rivisto lo script di inizializzazione della tabella 'transazioni_esiti' per associare alla colonna 'govway_status_class' il numero della classe anziché l’identificativo della tabella di riferimento;
-
introdotta procedura di svecchiamento per db MySQL.
Nel caso di utilizzo dell’installer in modalità avanzata, con base dati dedicata alle informazioni statistiche, sono state risolte le seguenti anomalie nelle patch di aggiornamento da versioni precedenti:
- l'aggiunta della colonna id nella tabella statistiche risultava inclusa erroneamente nello script SQL relativo alle tracce, anziché in quello dedicato alla base dati statistica;
- le inizializzazioni dei semafori per la generazione delle statistiche erano presenti nello script SQL relativo alle configurazioni, anziché in quello dedicato alla base dati statistica. L'errata inizializzazione dei semafori comportava malfunzionamenti nella generazione delle statistiche, in particolare nelle installazioni in cui la gestione delle statistiche avveniva direttamente sul nodo run, anziché tramite il modulo batch.
Bug Fix
Sono state risolte le seguenti vulnerabilità relative alle librerie di terza parte:
-
CVE-2025-41249 e CVE-2025-41242: aggiornata libreria 'org.springframework:*' alla versione 6.2.11
-
CVE-2025-41248: aggiornata libreria 'org.springframework.security:* alla versione 6.5.5
-
CVE-2025-55163, CVE-2025-58057 e CVE-2025-58056: aggiornata libreria 'io.netty:*' alla versione 4.1.127.Final
-
CVE-2025-8916: aggiornata libreria 'org.bouncycastle:*' alla versione 1.81
-
CVE-2025-4949: aggiornata libreria 'org.eclipse.jgit:org.eclipse.jgit' alla versione 7.3.0.202506031305-r
-
CVE-2025-48913: aggiornata libreria 'org.apache.cxf:*' alla versione 4.1.3 (3.4.x)
-
CVE-2025-7962: aggiornata libreria 'org.eclipse.angus:angus-mail' alla versione 2.0.4
-
CVE-2025-48924: sostituita la dipendenza 'commons-lang:commons-lang' con 'org.apache.commons:commons-lang3'
-
CVE-2025-31672: aggiornata libreria 'org.apache.poi:poi' alla versione 5.4.1
-
CVE-2025-53864: aggiornate libreria 'com.nimbusds:nimbus-jose-jwt' alla versione 10.3.1
-
CVE-2025-48924: aggiornate libreria 'org.apache.commons:commons-lang3' alla versione 3.18.0
...
GovWay v3.3.18
Miglioramenti all'integrazione con la PDND
Tracing
La funzionalità di Tracing PDND è stata rivista nei seguenti aspetti:
-
È stata introdotta la possibilità di aggregare, prima della pubblicazione, le informazioni statistiche provenienti da più soggetti operativi in un unico record. Questa estensione consente di supportare scenari in cui più soggetti operativi non corrispondano necessariamente a enti distinti registrati sulla PDND.
-
In presenza di un pattern di tipo INTEGRITY, la configurazione predefinita di GovWay prevedeva l’utilizzo dell’identificativo del token di integrità come identificativo del messaggio. Tuttavia, poiché il report di tracciamento PDND si basa su tale identificativo, il valore riportato nel tracciamento non coincideva con il JTI del voucher, ovvero con l’identificativo generato dalla PDND stessa. L’anomalia è stata risolta introducendo il tracciamento esplicito dell’identificativo del token, che viene ora correttamente utilizzato nella generazione del file CSV destinato al tracciamento PDND.
-
È stato normalizzato l’header Content-Type nelle richieste multipart/form-data, sostituendo eventuali caratteri HTAB con SP negli OWS attorno al punto e virgola (;) e tra il tipo e il boundary. In alcuni ambienti, dove l’application server non effettuava la normalizzazione automatica degli header HTTP, tale anomalia causava il fallimento della pubblicazione dei record verso la PDND, con errori del tipo:
[{"code":"BAD_REQUEST_ERROR","detail":"Validation error: Required at "file""},
{"code":"BAD_REQUEST_ERROR","detail":"Validation error: Required at "date""}]L'errore avveniva a causa della presenza di tab nel
Content-Type, non accettati dal server PDND di Tracing.
API Interoperabilità
Aggiunto supporto all'integrazione delle api di interoperabilità v2 per:
- recupero delle chiavi: utilizzo delle risorse 'GET /keys/{kid}' per le chiavi client e 'GET /producerKeys/{kid}/' per le chiavi server;
- recupero delle informazioni del client e dell'organizzazione: utilizzo delle risorse 'GET /clients/{clientId}' e 'GET /tenants/{tenantId}'
Miglioramenti al Profilo di Interoperabilità 'ModI'
È stato aggiornato il controllo sulla presenza del claim "nbf". In precedenza, il controllo veniva applicato in modo troppo restrittivo a tutte le erogazioni con profilo di interoperabilità ModI.
Con la nuova implementazione, la verifica della presenza del claim “nbf” è ora obbligatoria esclusivamente per le erogazioni ModI veicolate tramite la piattaforma PDND.
Miglioramenti alla funzionalità di Sicurezza Messaggio
È stata aggiunta la possibilità di specificare l’elemento 'AuthnContextDeclRef' all’interno di una 'AuthnStatement' nella sezione SAML generata tramite la funzionalità di sicurezza messaggio 'WS-Security SAML Token'.
Miglioramenti alla funzionalità di Tracciamento
Sono stati introdotti i seguenti miglioramenti al processo di failover attivato in caso di fallimento del tracciamento su database:
-
i file delle tracce salvati su filesystem includono ora nel nome un UUID, che ne garantisce l’univocità;
-
una gestione tramite semaforo su database viene adesso utilizzata per coordinare i timer di recupero delle tracce da filesystem tra più nodi in ambienti cluster, consentendo l’utilizzo di un volume persistente condiviso da tutti i nodi.
È stata inoltre aggiornata la documentazione relativa alla configurazione del tracciamento, al processo di failover e ai requisiti di spazio disco, con particolare attenzione agli ambienti cloud orchestrati.
Miglioramenti alla funzionalità di generazione dei report statistici
Sono stati apportati i seguenti miglioramenti:
-
aggiunta configurabilità dei criteri di raggruppamento, tramite proprietà '*.groupBy.', per ottimizzare la cardinalità delle aggregazioni;
-
migliorato il calcolo della latenza totale nelle aggregazioni statistiche:
- viene ora calcolata anche per le transazioni prive delle date di consegna al backend (data_uscita_richiesta e data_ingresso_risposta), aumentando la copertura e la precisione delle metriche;
- corretta la formula di calcolo delle latenze medie per escludere dal denominatore le richieste con latenza non disponibile (NULL o -1), eliminando la sottostima sistematica precedentemente causata da transazioni con esiti di errore e timestamp incompleti.
-
il record statistico memorizzato nella base dati relativo all’intervallo corrente viene ora registrato con 'stato_record=3', al fine di distinguerlo dai record riferiti a intervalli passati non più soggetti a modifiche ('stato_record=1').
Miglioramenti al supporto per l'integrazione con i servizi SUAP
Il plugin che consente di gestire gli errori previsti dalla Specifica Tecnica DPR-160 è stato rivisto nei seguenti aspetti:
-
la gestione di una richiesta che presentava un header HTTP Authorization valorizzato con il solo JWT, senza il prefisso Bearer, veniva gestita da GovWay restituendo erroneamente la risposta "PDND token not found", mentre la testsuite SUAP si attendeva il messaggio "Invalid PDND token". L'errore è stato allineato alla risposta prevista, in conformità alle specifiche SUAP.
-
la richiesta generata dalla suite di test BB verso la risorsa /instance/{cui_uuid}/document/{resource_id} non presenta volutamente l'header 'If-Match' definito come obbligatorio nell'interfaccia OpenAPI. In tali casi, GovWay restituiva erroneamente la risposta "ERROR_400_001 / incorrect request input", mentre la testsuite SUAP si attendeva il messaggio "ERROR_428_001 / hash not found". L'errore è stato allineato alla risposta prevista dal caso di errore ERROR_428_001.
Sono infine state realizzate GovLet che facilitano la configurazione delle erogazioni previste dalla certificazione SUAP.
Miglioramenti alla Console e alle API di Monitoraggio
Sono stati apportati i seguenti miglioramenti alle funzionalità di reportistica:
- è adesso possibile effettuare ricerche nello storico delle transazioni tramite l'identificativo del token Authorization (jti);
- nel dettaglio di una transazione, nella sezione 'Informazioni Mittente', viene adesso visualizzato anche l'identificativo del token.
Introduzione supporto OIDC/OAuth2 per le Console
Aggiunto il supporto per l’integrazione delle console con un authorization server conforme agli standard OpenID Connect (OIDC) e OAuth 2.0.
Miglioramenti all'Installer
Sono stati apportati i seguenti miglioramenti all'installer binario:
-
rivisto lo script di inizializzazione della tabella 'transazioni_esiti' per associare alla colonna 'govway_status_class' il numero della classe anziché l’identificativo della tabella di riferimento;
-
introdotta procedura di svecchiamento per db MySQL.
Nel caso di utilizzo dell’installer in modalità avanzata, con base dati dedicata alle informazioni statistiche, sono state risolte le seguenti anomalie nelle patch di aggiornamento da versioni precedenti:
- l'aggiunta della colonna id nella tabella statistiche risultava inclusa erroneamente nello script SQL relativo alle tracce, anziché in quello dedicato alla base dati statistica;
- le inizializzazioni dei semafori per la generazione delle statistiche erano presenti nello script SQL relativo alle configurazioni, anziché in quello dedicato alla base dati statistica. L'errata inizializzazione dei semafori comportava malfunzionamenti nella generazione delle statistiche, in particolare nelle installazioni in cui la gestione delle statistiche avveniva direttamente sul nodo run, anziché tramite il modulo batch.
Bug Fix
Sono state risolte le seguenti vulnerabilità relative alle librerie di terza parte:
-
CVE-2025-55163, CVE-2025-58057 e CVE-2025-58056: aggiornata libreria 'io.netty:*' alla versione 4.1.127.Final
-
CVE-2025-8916: aggiornata libreria 'org.bouncycastle:*' alla versione 1.81
-
CVE-2025-48913, CVE-2025-48795: aggiornata libreria 'org.apache.cxf:*' alla versione 3.6.8
-
CVE-2025-31672: aggiornata libreria 'org.apache.poi:poi' alla versione 5.4.1
-
CVE-2025-53864: aggiornate libreria 'com.nimbusds:nimbus-jose-jwt' alla versione 10.3.1
-
CVE-2025-48924: aggiornate libreria 'org.apache.commons:commons-lang3' alla versione 3.18.0
Sono state risolte le seguenti vulnerabilità relative alle console di gestione e monitoraggio:
- CWE-307 (Brute Force)
- CWE-384 (Session Fixation)
Sono state risolte le seguenti vulnerabilità relative alle API di gestione e monitoraggio:
- CWE-307 (Brute Force)
Sono stati risolti i seguenti bug:
-
Corretta la gestione della codifica dei caratteri speciali [ e ] nelle query string delle URL. In precedenza, GovWay applicava una doppia codifica ai parametri contenenti questi caratteri (es. test%5B%5D → test%255B%255D), causando errori di interpretazione lato applicativo.
-
Corretto errore di inizializzazione degli schemi XSD ("Cannot resolve the name '... to a(n) type definition component'") dovuto alla presenza di inclusioni circolari tra file XSD.
Per il profilo di interoperabilità 'Fatturazione Elettronica' è stata gestita la seguente issue:
- (#214) In caso di errore di comunicazione con il backend (ad esempio per read timeout), il sistema restituisce comunque l’header HTTP 'GovWay-SDI-NomeFile', contenente il nome del file della fattura inviata. In questo modo è possibile identificare correttamente il nome del file associato alla fattura, anche in presenza di errori di comunicazione.
Per la console di gestione sono stati risolti i seguenti bug:
- Migliorata la gestione delle informazioni sensibili nel report di auditing quando la funzionalità BYOK non è attiva...
GovWay v3.4.0
Java 21, A.S. e Librerie 3Parti
Dalla versione 3.4.0, GovWay introduce nuovi vincoli sulle versioni minime dei prodotti parte dello stack tecnologico utilizzato:
-
La versione 21 di Java, la più recente release LTS (Long-Term Support) disponibile al momento.
-
Application Server:
- WildFly v28 (compatibile con JBoss EAP 8.0) o v35+ per WildFly
- Apache Tomcat v11
Sono state inoltre aggiornate alle versioni più recenti tutte le librerie terze parti utilizzate. Tra le più rilevanti:
- versione 4 di cxf per la gestione delle API Rest e Soap
- versione 6 di spring e spring-security
- httpcore 5 come libreria http
Miglioramenti alla Console di Monitoraggio
I criteri di ricerca utilizzati per consultare lo storico delle transazioni e per generare i report statistici possono ora essere salvati e riutilizzati in modo efficiente. Ogni ricerca può essere salvata con visibilità privata, rendendola accessibile esclusivamente all'utente che l'ha creata, oppure con visibilità pubblica, per condividerla con tutti gli utenti della piattaforma.
È stata inoltre introdotta una funzionalità che consente di caricare archivi ZIP contenenti transazioni precedentemente esportate, al fine di consultarne i dati direttamente dalla console.
Miglioramenti alla funzionalità dei Connettori
È stato razionalizzato l'utilizzo dell'IO asincrono, tramite un connettore di ingresso dedicato, che consente di instradare la richiesta su due canali distinti - BIO e NIO - in base al contesto di invocazione utilizzato. Questo consente una maggiore flessibilità nella gestione delle richieste, adattandosi a diverse modalità operative. Maggiori informazioni vengono fornite nella sezione 'Gestione I/O (BIO/NIO)' della guida alla Console di Gestione.
GovWay v3.3.17
Miglioramenti al Profilo di Interoperabilità 'ModI
In ottemperanza a quanto indicato nella segnalazione 198 - AgID - specifiche-tecniche-DPR-160-2010, è stata introdotta la possibilità di generare un token di integrità anche per richieste e/o risposte prive di payload, calcolando in questo caso il Digest su un body vuoto ("").
È stata inoltre migliorata la gestione della cache per i token di audit e per i token di autenticazione generati localmente dal fruitore. Un token viene adesso rigenerato prima della scadenza effettiva per evitare che il suo utilizzo prossimo alla scadenza risulti scaduto una volta ricevuto dall'erogatore.
Miglioramenti all'integrazione con la PDND
Per allinearsi alle modifiche introdotte dalla nuova versione delle Linee Guida AgID , la piattaforma è stata estesa con il supporto alle seguenti funzionalità.
Signal Hub
GovWay supporta l’integrazione dei soggetti erogatori di e-service, permettendo la configurazione diretta della funzionalità Signal Hub all’interno della piattaforma. In questo modo, tutte le funzionalità relative alla pseudoanonimizzazione dei dati e alla comunicazione con la PDND sono gestite automaticamente da GovWay, senza richiedere interventi sul backend dell’e-service.
L’integrazione trasparente è articolata in due componenti principali:
- Esposizione di un’operazione dedicata per il recupero delle informazioni crittografiche. GovWay espone automaticamente un’operazione REST/SOAP, conforme alle specifiche PDND, che consente ai fruitori di ottenere le informazioni crittografiche necessarie alla pseudoanonimizzazione degli identificativi relativi ai dati oggetto di variazione. L’implementazione è completamente gestita dalla piattaforma: l’e-service non deve sviluppare alcuna logica specifica, ma solo adeguare l’interfaccia pubblicata sulla PDND secondo le specifiche fornite da GovWay.
- Esposizione di un’interfaccia semplificata per l’invio dei segnali. GovWay fornisce un endpoint dedicato che l’e-service può invocare per pubblicare le variazioni di dato (segnali) senza doversi occupare della generazione dell’identificativo pseudoanonimizzato o della gestione delle complessità del protocollo Signal Hub (es. progressivi per ogni segnale). La piattaforma si occupa internamente di garantire la conformità alle specifiche PDND.
Tracing
In conformità con le nuove disposizioni, gli e-service devono trasmettere regolarmente alla PDND un report giornaliero in formato CSV contenente i log delle chiamate ricevute tramite l’interoperabilità.
GovWay gestisce in modo completamente trasparente questa funzionalità, occupandosi della raccolta, aggregazione e invio automatico dei tracciamenti attraverso le API messe a disposizione dalla PDND.
In questo modo, il soggetto erogatore non deve implementare alcuna logica aggiuntiva né preoccuparsi degli aspetti tecnici legati al conferimento dei log.
Identificativi presenti nel Voucher PDND
Tra gli header di integrazione inoltrati al backend sono adesso presenti anche le informazioni relative al consumerId, producerId, eserviceId e descriptorId presenti nel voucher PDND.
API Interoperabilità
Le informazioni recuperate tramite le API di interoperabilità relative all'identificativo esterno (externalId) e all'identificativo di registro della PDND (consumerId) di una organizzazione sono adesso utilizzabili per:
- filtrare le transazioni nelle ricerche dello storico e nella generazione di report statistici;
- generare report '3D' che utilizzano gli identificativi come informazione da visualizzare;
- raggruppare le richieste nel criterio di conteggio di una policy di Rate Limiting.
Inoltre il consumerId viene adesso visualizzato tra le informazioni di dettaglio di una transazione.
Infine è stata migliorata la gestione delle informazioni parziali o non disponibili ottenute dalle API Interop in relazione al clientId. In tali casi, le informazioni vengono comunque memorizzate temporaneamente nella cache locale, al fine di evitare chiamate ripetute e non necessarie verso la PDND. Tuttavia, rispetto alle informazioni acquisite correttamente, la loro permanenza in cache è ora ridotta: il valore predefinito è fissato a 5 minuti, contro i 30 giorni previsti per i dati completi
Finalità
È adesso possibile effettuare ricerche nello storico delle transazioni tramite l'identificativo della finalità PDND (purposeId).
Inoltre nel dettaglio di una transazione, nella sezione 'Informazioni Mittente', viene adesso visualizzato anche l'identificativo della finalità.
Token Policy di negoziazione
È stato introdotto un valore di default per il campo 'purposeId', che consente di definire e gestire purposeId differenti in funzione degli applicativi associati alla fruizione.
Inoltre, il box informativo relativo al campo purposeId è stato arricchito con una descrizione dettagliata dei valori ammessi, fornendo indicazioni utili per l’implementazione di diversi scenari configurativi.
Introduzione supporto per l'integrazione con i servizi SUAP
Utilizzando GovWay per la gestione dell’interoperabilità ModI, non è possibile delegare direttamente al backend SUAP tutti i casi di errore previsti dalla Specifica Tecnica DPR-160.
Ciò è dovuto al fatto che alcune comunicazioni vengono gestite direttamente da GovWay stesso, in presenza di errori di interoperabilità (ad esempio, token PDND non valido) o di problematiche di connettività verso il backend (ad esempio, connection refused o timeout). Gli errori generati da GovWay (ad esempio errori di autenticazione o indisponibilità del backend) rispettano la specifica RFC 7807, per la rappresentazione strutturata delle informazioni di errore, come previsto dalle Linee Guida di Interoperabilità. Al contrario, il formato degli errori previsto dalla specifica SUAP non risulta conforme, in quanto prevede la trasmissione degli errori attraverso oggetti JSON con una struttura differente, di cui si riporta di seguito un esempio:
::
{ "code": "ERROR_401_001", "message": "PDND token not found"}
Per garantire la conformità con i formati di errore attesi è stato quindi realizzato un plugin, attivabile all’interno della configurazione delle erogazioni dei servizi SUAP su GovWay, che consente di gestire i casi di errore e di trasformarli nella struttura JSON attesa, secondo quanto descritto nella Specifica Tecnica DPR-160.
Gli errori gestiti da GovWay sono i seguenti:
-
ERROR_400_001 - incorrect request input: uno o più parametri e/o la forma del body dell'operation non rispettano la sintassi definita nell'IDL OpenAPI.
-
ERROR_401_001 - PDND token not found: token di autorizzazione della PDND non presente nella richiesta.
-
ERROR_401_002 - Invalid PDND token: token di autorizzazione della PDND non valido.
-
ERROR_401_003 - AgID-JWT-Signature token not found: la richiesta non contiene l'header AgID-JWT-Signature.
-
ERROR_401_004 - invalid AgID-JWT-Signature token: token nell'header AgID-JWT-Signature non valido.
-
ERROR_404_001 - resource not found: risorsa richiesta non esistente.
-
ERROR_500_007 - response processing error: copre solamente i due casi seguenti:
- backend non disponibile: rappresenta la casistica in cui il backend non è raggiungibile per vari motivi (es. connection refused, connection timeout, read timeout).
- backend torna una risposta 5xx senza content-type o con un un content-type differente da application/json.
.. note::
Rimangono a carico dell'implementazione del backend SUAP gli altri codici di errore.
Bug Fix
Sono state risolte le seguenti vulnerabilità relative alle librerie di terza parte:
-
CVE-2025-48976: aggiornata libreria 'commons-fileupload:commons-fileupload' alla versione 1.6.0
-
CVE-2025-48734: aggiornata libreria 'commons-beanutils:commons-beanutils' alla versione 1.11.0
Sono stati risolti i seguenti bug che avvenivano in alcune condizioni limite caratterizzate da un numero elevato di richieste simultanee:
-
il contatore delle richieste in corso non veniva decrementato correttamente, causando il rifiuto delle richieste con errore 429, anche in assenza del numero effettivo di richieste simultanee previsto dal limite;
-
in caso di elevato numero di richieste SOAP simultanee, in situazioni limite di blocco dovuto a interazione con componenti esterni nella gestione delle richiesta (es: autorizzazione verso servizi esterni), poteva essere saturato il pool dei SAX Parser utilizzati per la gestione dei messaggi, provocando il fallimento anche di richieste non coinvolte nel problema generando il seguente errore nei log: "Couldn't get a SAX parser while constructing a envelope".
Per la console di gestione sono stati risolti i seguenti bug:
-
Aggiunto supporto, nel caricamento di un'interfaccia OpenAPI, per le seguenti casistiche, precedentemente segnalate erroneamente come anomalie:
- utilizzo delle anchor YAML (&chiave) e dei relativi riferimenti (*chiave);
- definizione di parametri con schema: {}
-
Corretto un malfunzionamento relativo alla creazione di un utente amministratore in ambiente single-tenant con successiva abilitazione dei flag DR. Sebbene il sistema impedisse correttamente la selezione dei soggetti (non previsti in modalità single-tenant), l'utenza creata nella base da...
GovWay v3.3.16.p2
Miglioramenti all'integrazione con la PDND
È Stato adeguato il profilo di interoperabilità 'ModI' alle nuove linee guida PDND indicate nell'issue 'pagopa/pdnd-interop-frontend#1215':
-
rivista la generazione dell’asserzione per la richiesta di voucher PDND, assicurando che includa esclusivamente i claim previsti dalla specifica;
-
introdotta la possibilità di configurare l’ID Ente per i soggetti con profilo ModI; in fase di validazione del voucher viene ora verificata la corrispondenza tra il claim producerId e l’ID Ente dell'erogatore configurato;
-
introdotta la possibilità di indicare 'eserviceId' e/o 'descriptorId' nella configurazione dell'erogazione; in fase di validazione del voucher viene ora verificata la corrispondenza tra il claim eserviceId e/o il claim descriptorId con i corrispettivi valori configurati;
-
infine sono aggiunti controlli espliciti sulla presenza dei claim 'iat', 'exp' e 'nbf' durante la validazione dei voucher PDND.
Bug Fix 3.3.16.p2
Corretto malfunzionamento sulla console di gestione 'govwayConsole' che impediva lo scorrimento di oltre 20 elementi nella cache PDND.
Risolto inoltre un bug nelle API di configurazione che non consentiva la creazione di un API con interfaccia 'OpenApi3.0'.
GovWay v3.3.16.p1
Miglioramenti alla gestione dei Keystore
È adesso possibile utilizzare keystore PKCS12 e JKS senza password.
Miglioramenti alla funzionalità 'Header di Integrazione'
È stata introdotta una nuova funzionalità che gestisce la riscrittura di eventuali header in ingresso con prefisso "GovWay-", producendo nuovi header HTTP con prefisso 'GovWay-Peer-'.
Questa funzionalità risulta particolarmente utile negli scenari di fruizione ModI o SPCoop, in cui anche la parte erogatrice è esposta tramite GovWay. In tali contesti, permette al client di ricevere entrambi gli identificativi generati dal GovWay locale e da quello dalla parte erogatrice, migliorando la tracciabilità e la gestione delle eventuali richieste di supporto.
Miglioramenti dei Log Applicativi
Aggiunta la possibilità di personalizzare i log applicativi di debug prodotti dalle applicazioni di GovWay tramite variabili di sistema o parametri Java. Le nuove opzioni permettono di:
- abilitare il log su console;
- aggiungere un identificativo del nodo nel percorso di log, facilitando la condivisione dello stesso filesystem tra più istanze;
- abilitare il log in formato JSON.
Bug Fix
Sono state risolte le seguenti vulnerabilità relative alle librerie di terza parte:
-
CVE-2025-22228: aggiornata libreria 'org.springframework.security:spring-security-crypto' alla versione 5.8.16-gov4j-1;
-
CVE-2025-25193: aggiornata libreria 'io.netty:*' alla versione 4.1.118.Final.
Sono stati risolti i seguenti bug:
-
Il token presente nell’header 'Authorization' non veniva inoltrato al backend in caso di API SOAP, nonostante la configurazione ne prevedesse l’inoltro.
-
I contatori delle policy di rate limiting non venivano aggiornati correttamente se si disabilitava il tracciamento su database.
-
Migliorata la tracciabilità nei casi in cui una policy non veniva elaborata a causa di malfunzionamenti interni, configurazioni errate o altre anomalie. In queste circostanze viene ora assegnato un esito di errore generico, distinto da "Violazione Rate Limiting", consentendo il tracciamento e la diagnosi anche quando la registrazione delle policy violate è disabilitata.
-
Nel profilo di interoperabilità 'ModI' una configurazione della risposta che prevedeva la personalizzazione del claim 'aud' veniva ignorata, impedendo l'assegnazione del valore configurato nei token di risposta generati.
-
Nella funzionalità di validazione dei contenuti applicativi per API SOAP, sono state risolte le seguenti anomalie:
-
In caso di fallimento nella costruzione dello schema XSD, la collezione degli schemi veniva serializzata nella directory
/tmp, causando potenziali problemi di esaurimento dello spazio nella partizione temporanea. Ora la collezione degli schemi viene registrata in una directory interna alla directory di log associata a GovWay, migliorando la gestione dello spazio e facilitando il debug. -
In presenza di schemi XSD con un grafo di import ciclico, l'applicazione andava in out of memory a causa della mancata gestione corretta di tale situazione.
-
In presenza di allegati contenenti uno spazio nel nome del file la validazione dei contenuti falliva.
-
Risolta l'anomalia "The prefix 'xml' cannot be bound to any namespace other than its usual namespace; neither can the namespace for 'xm'" be bound to any prefix other than 'xml'." che poteva accadere se l'API contenente lo schema 'http://www.w3.org/XML/1998/namespace' tra gli allegati caricati.
-
-
La diagnostica di Hazelcast veniva mantenuta attiva per default, generando file di log nel percorso LOG_DIR/hazelcast con il formato diagnostics-#-.log. Sebbene fossero presenti meccanismi di rotazione basati sulla dimensione del file, il nome del log cambiava a ogni riavvio dell'application server, portando nel tempo all'accumulo di file e al rischio di esaurimento dello spazio su disco. Per prevenire questo problema, la diagnostica di Hazelcast viene adesso disabilitata di default.
-
(#191) Arricchite tabelle 'statistiche' e 'transazioni_info' con una colonna 'id' definita come primary key.
-
Nelle configurazioni dei Key Management Service utilizzati per le funzionalità 'BYOK', veniva erroneamente utilizzata la keyword 'ksm' al posto di 'kms'. È stata apportata la correzione, mantenendo tuttavia il supporto della vecchia keyword per motivi di retrocompatibilità, deprecandone l’utilizzo.
-
Le funzionalità di lock basate su semafori sono state estese con uno scheduler che permette il rilascio automatico del lock dopo un timeout configurabile.
-
Nel log applicativo 'govway_core', in condizioni limite, avveniva il seguente errore: "Errore durante il dump del soap fault".
-
Introdotta una gestione delle risposte Problem Details non conformi; ora il connettore intercetta e registra correttamente le risposte contenenti Problem Details con struttura non valida (es. {"code":500,"status":"internal error"}), evitando la terminazione anomala della transazione. In questi casi, tuttavia, il codice di stato non può essere interpretato, quindi eventuali rispedizioni condizionate su tale informazione non saranno eseguite.
Per la console di gestione sono stati risolti i seguenti bug:
- Se il numero di regole di proxy pass definite superava le 9, l'ordinamento previsto non veniva mantenuto, causando un riordino errato. In particolare, le regole venivano ordinate in modo lessicografico anziché numerico.
Per la console di monitoraggio sono stati risolti i seguenti bug:
-
Corretto un problema nella risoluzione delle informazioni PDND nell’elenco delle transazioni e nei report statistici, che si verificava in presenza di più clientId associati alla stessa organizzazione. In tali casi, solo uno dei clientId veniva risolto correttamente, mostrando i dati dell’organizzazione, mentre per gli altri la risoluzione non avveniva come previsto.
-
È stato corretto un comportamento anomalo nel filtro di ricerca delle azioni per le API SOAP nelle sezioni "Transazioni" e "Statistiche", che impediva la selezione delle azioni. Il filtro funzionava correttamente per le API di tipo REST.
-
Nella ricerca per token, per principal o per indirizzo ip non veniva effettuato il trim del valore inserito in input.
-
(https://gitlab.link.it/gitlab/linkit/dev/govway/govway/-/issues/1583) Aggiunto il suffisso '.rollingFile' ai RollingFile appender in monitor.log4j2.properties per uniformarli agli altri file di configurazione log4j del progetto.
Per le API di configurazione sono stati risolti i seguenti bug:
-
aggiunto supporto per configurare un truststore di tipo PDND;
-
introdotto controllo sul valore del claim 'tipo_servizio' in modo da verificare che sia uno dei valori ammessi dal profilo di interoperabiltà.
GovWay v3.3.16
Miglioramenti alla gestione dei Certificati X.509
La funzionalità di validazione dei certificati tramite lista di revoca (CRL) è stata ampliata per consentire il download della CRL specificata nell'estensione 'CRLDistributionPoints' anche tramite il protocollo LDAP, oltre ai protocolli HTTP già precedentemente supportati.
Miglioramenti alla funzionalità di Autenticazione
Il gestore delle credenziali, utilizzabile per l'autenticazione dei certificati client ottenuti tramite header HTTP, supporta adesso la possibilità di interpretare un header valorizzato con una stringa vuota come indicazione che il fruitore non ha presentato alcun certificato client.
Miglioramenti alla funzionalità di Gestione dei Token
Aggiunto un criterio di tolleranza per la validazione del claim 'nbf' nei token di sicurezza ModI e nei token validati tramite Token Policy.
La tolleranza predefinita è impostata a 5 secondi, con la possibilità di personalizzarla tramite la configurazione di GovWay.
Miglioramenti alla funzionalità di Validazione dei Contenuti
La funzionalità di validazione dei contenuti tramite OpenAPI è stata modificata per garantire che i payload contenenti elementi 'date-time' non conformi a RFC 3339 (#section-5.6), come caratteri minuscoli (t, z) o spazi (' ') al posto del separatore T, vengano rifiutati.
Prima della modifica tali formati venivano accettati nei payload ma non negli header, nei parametri delle URL e nei path; adesso la validazione è uniforme su tutte le sorgenti.
È stata inoltre introdotta una configurazione parametrica che consente, se necessario, di ripristinare l'accettazione di formati non conformi.
Miglioramenti alla funzionalità di RateLimiting
Aggiunta una nuova metrica utilizzabile nelle politiche di Rate Limiting: "Numero Richieste Completate con Successo o Fault Applicativi".
Inoltre il controllo attuato dalla policy di rate limiting per dimensione messaggio è stato ottimizzato per utilizzare il valore dell'header HTTP 'Content-Length' se presente.
Infine nella funzionalità di controllo del traffico con sincronizzazione distribuita tramite hazelcast, è stato introdotto un meccanismo di recupero in caso di eccezione 'DistributedObjectDestroyedException' che può avvenire in casi limite in configurazioni del cluster che non utilizzano il CP Subsystem. Nell'intervento è stato reso configurabile il sistema di diagnostica di hazelcast e la validazione della configurazione utilizzata.
Miglioramenti alla funzionalità dei Connettori
Aggiunto un nuovo tipo di connettore, selezionabile tramite configurazione avanzata, che implementa la verifica dello stato di un servizio. Il nuovo connettore può essere utilizzato per supportare direttamente su GovWay la risorsa '/status' richiesta dalle linee guida ModI, nel caso in cui questa non sia nativamente disponibile nel backend dell'API.
Miglioramenti alla funzionalità di Trasformazione
In presenza di messaggi SOAPWithAttachments, è adesso possibile utilizzare una trasformazione per forzare la generazione del parametro 'start' nel Content-Type.
Miglioramenti al Profilo di Interoperabilità 'ModI'
Migliorata la gestione della registrazione di repository multipli delle chiavi PDND e/o di utilizzo di client interop differenti in ambiente Multi-Tenant:
- i repository multipli vengono ora rilevati automaticamente nella console di gestione e nei timer dedicati alla gestione delle interazioni con la PDND, eliminando la necessità di attivazione manuale nelle configurazioni dei vari tool;
- la proprietà 'remoteStore.pdnd.baseUrl' può ora essere definita utilizzando esclusivamente la base URL, senza il suffisso '/keys';
- aggiunti ulteriori criteri di personalizzazione per le configurazioni Multi-Tenant.
È stata inoltre risolta un'anomalia nella funzionalità ModI relativa all'imbustamento delle fruizioni per applicativi identificati tramite autenticazione interna di tipo 'token'. Il keystore definito nell'applicativo non veniva correttamente utilizzato, generando le seguenti segnalazioni di errore:
-
in caso di token generati senza PDND:
"Il profilo di sicurezza richiesto 'idam01' richiede l'identificazione di un applicativo".
-
in caso di negoziazione del token tramite PDND:
"Il tipo di keystore indicato nella token policy 'PDND' richiede l'autenticazione e l'identificazione di un applicativo fruitore: Servizio applicativo anonimo".
Miglioramenti alla Console di Gestione
Migliorata l'usabilità con l'introduzione della funzionalità di copia negli appunti al passaggio del mouse su campi specifici, come ad esempio "URL Invocazione" e "Connettore" delle erogazioni o fruizioni.
Inoltre nella sezione "runtime" è stata introdotta la possibilità di effettuare il refresh della pagina mantenendo l'utente nella stessa sezione in cui è stato effettuato il refresh.
Bug Fix
Sono state risolte le seguenti vulnerabilità relative alle librerie di terza parte:
-
- aggiornata libreria 'org.apache.cxf:*' alla versione 3.6.5
- aggiornata libreria 'org.ow2.asm:asm' alla versione 9.7.1
-
CVE-2024-38827: aggiornata libreria 'org.springframework.security:*' alla versione 5.8.16
-
CVE-2024-38829: aggiornata libreria 'org.springframework.ldap:*' alla versione 2.4.4
-
CVE-2024-47535: aggiornata libreria 'io.netty:*' alla versione 4.1.115
-
Corrette nuove segnalazioni di vulnerabilità emerse in seguito all'aggiornamento dei seguenti tools di analisi statica:
- SpotBugs alla versione 4.8.6;
- SonarQube alla versione '10.7'.
Sono stati risolti i seguenti bug:
-
risolta anomalia presente nella funzionalità 'FileTrace' per la registrazione delle transazioni, dove l'informazione 'requester', se registrata con l'opzione 'logBase64', veniva codificata in Base64 due volte;
-
quando la funzionalità di proxy pass reverse per gli header HTTP è attiva, se un header Location contiene un'URL con query parameter che non corrisponde a quella del connettore (e quindi non viene tradotta), l'header veniva inoltrato al client senza i query parameters.
Per la console di gestione sono stati risolti i seguenti bug:
- utilizzando il database 'SQLServer', si verificava un errore inatteso accedendo alla sezione 'Handler' nelle opzioni avanzate di un'erogazione/fruizione e cliccando su una qualsiasi delle liste relative alla richiesta o alla risposta.
Per la console di monitoraggio sono stati risolti i seguenti bug:
-
il filtro utilizzato per la ricerca delle transazioni o per la generazione di report statistici non permetteva di selezionare una risorsa o un'azione semplicemente scegliendo l'API. Era necessario selezionare la voce Implementazione API. Ora, il filtro per risorse/azioni consente la selezione sia tramite l'API che tramite la sua implementazione, offrendo maggiore flessibilità.
-
corretta anomalia che causava la registrazione di comandi SQL nel file di log 'govway_monitor_core.log' invece che nel file 'govway_monitor_sql.log'.
Infine è stato aggiunto su tutti i tools un controllo dello stato della connessione al rilascio al datasource che consente di:
- verificare la presenza di transazioni aperte (autoCommit disabilitato);
- effettuare il log dello stack trace per identificare la classe responsabile;
- richiamare
setAutoCommit(true)per ripristinare lo stato corretto.
Grazie all'introduzione del controllo sulla connessione è stato individuata e corretta un'anomalia presente in alcuni casi limite, in cui i driver per l'accesso al database delle configurazioni restituivano al pool una connessione con l'opzione autoCommit disabilitata.
GovWay v3.3.15.p2
Bug Fix
Sono state risolte le seguenti vulnerabilità relative alle librerie di terza parte:
-
CVE-2024-38821: aggiornate librerie 'org.springframework.security:*' alla versione 5.8.15
-
CVE-2024-38820: aggiornate librerie 'org.springframework:*' alla versione 5.3.39-gov4j-1
-
- aggiornata libreria 'commons-io:commons-io' alla versione 2.15.1
- aggiornata libreria 'org.apache.velocity:velocity-engine-core' alla versione 2.4
CVE-2024-45772: aggiornate librerie 'org.apache.lucene:*' alla versione 9.12.0.
Sono stati risolti i seguenti bug:
-
Quando si definivano erogazioni o fruizioni con gruppi di configurazioni specifiche per operazioni, eventuali modifiche alla configurazione CORS venivano applicate solo alle operazioni del gruppo predefinito. Di conseguenza, per le operazioni degli altri gruppi, continuava ad essere utilizzata la configurazione CORS di default.
-
La validazione dei contenuti, successiva alla verifica di una firma WSSecurity, falliva se l'elemento da validare conteneva elementi tipizzati tramite "xsi:type" e la dichiarazione dei namespace dei prefissi associati era presente nell'elemento Envelope della busta SOAP. L'errore riscontrato era simile al seguente: "UndeclaredPrefix: Cannot resolve 'test:EsempioType' as a QName: the prefix 'test' is not declared.".
-
La validazione di un certificato di firma utilizzato in un header WSSecurity, inclusa l'analisi delle CRL, veniva eseguita su tutti i certificati della catena, compresi quelli intermedi, anche se era stato fornito solo il file CRL relativo al certificato finale. Di conseguenza, durante la validazione di un certificato intermedio, compariva l'errore: "No CRLs found for issuer 'cn=ExampleCA,ou=TEST,o=Example,c=IT'". Per risolvere il problema, era necessario fornire un file CRL per ogni certificato, inclusi quelli intermedi. Per evitare questa configurazione complessa e prevenire il fallimento della validazione quando viene fornito un solo file CRL, la configurazione predefinita ora presume che il file CRL sia relativo solo al certificato finale e non viene utilizzato per validare i certificati intermedi.
Inoltre sono state aggiunte utility:
- per la gestione dell'ora legale e solare, utilizzate nella funzionalità di riconsegna con presenza in carico dei messaggi.
Per la console di gestione sono stati risolti i seguenti bug:
-
la pagina iniziale che consente di effettuare il login nella console (es. http://127.0.0.1:8080/govwayConsole/) restituiva un codice di risposta HTTP 500 invece di 200;
-
nella configurazione di un'API ModI con pattern INTEGRITY_REST, la scelta dell'header HTTP "Custom-JWT-Signature" comporta che la gestione dell'integrità non venga eseguita in modo integrato, ma sia demandata all'applicazione. A causa di questo comportamento, la maschera di configurazione non era del tutto intuitiva e poteva far pensare che si stesse solo modificando il nome dell'header HTTP, mentre in realtà cambiava anche la modalità di gestione dell'integrità. È stata quindi aggiunta una nota esplicativa per chiarire meglio il funzionamento.
Miglioramenti al Profilo di Interoperabilità 'SPCoop'
Se il gateway fruitore riceve dalla controparte erogatrice del servizio un messaggio di errore SPCoop come risposta, la busta viene validata e viene generato un messaggio applicativo di errore che viene ritornato all'applicativo mittente, come descritto nel documento "Sistema pubblico di cooperazione: PORTA DI DOMINIO v1.1", voce "PD_UR-5".
Anche con la voce "Sbustamento SPCoop" disabilitata, viene comunque restituito un messaggio applicativo di errore.
È stata aggiunta la possibilità di modificare il comportamento di default, precedentemente descritto, per inoltrare all'applicativo mittente esattamente il messaggio di errore SPCoop ricevuto dalla controparte.
GovWay v3.3.15.p1
Bug Fix
Sono state risolte le seguenti vulnerabilità relative alle librerie di terza parte:
-
CVE-2024-38808, CVE-2024-38809: aggiornata libreria 'org.springframework:*' alla versione 5.3.39;
-
CVE-2024-45801 aggiornata libreria 'org.webjars:swagger-ui' alla versione 4.19.1.
Sono stati risolti i seguenti bug:
-
(#170) abilitando la validazione degli header in una Token Policy di Validazione e inserendo i valori attesi solo per i claim 'typ' e 'alg', si otteneva uno dei seguenti errori inattesi:
- "JWT header validation failed; null"
- "JWT header validation failed; Expected claim 'cty' not found"
-
(#171) utilizzando il profilo 'Fatturazione Elettronica' su Tomcat, durante la validazione di una richiesta di notifica di decorrenza termini, nei log diagnostici si manifestava la seguente anomalia:
- "Eccezione INFO con codice [GOVWAY-5] - EccezioneValidazioneProtocollo: Traccia di una precedente fattura inviata, con identificativo SDI [xxx], non rilevata: Errore durante la ricerca del datasource..."
Inoltre sono state aggiunte utility:
-
per trattare gli attributi mustUnderstand e actor attraverso gli elementi request e response accessibili tramite trasformazioni;
-
è stata aggiunta un'opzione che permette di disabilitare, su singola erogazione o fruizione, il controllo della validità (scadenza) del certificato X.509 utilizzato per firmare un token; la verifica può anche essere condizionata alla presenza o meno del certificato nel truststore.
Per la console di gestione sono stati risolti i seguenti bug:
-
quando si navigava in liste interne a una singola erogazione o fruizione (ad esempio, gli applicativi autorizzati nel controllo degli accessi), il passaggio alla pagina successiva veniva erroneamente mantenuto anche quando si accedeva a una lista di un'altra erogazione o fruizione comportando una visualizzazione scorretta: nella seconda pagina potevano non esserci dati e non era più possibile tornare indietro alla pagina precedente;
-
la maschera di caricamento di un certificato in un applicativo o in un soggetto è stata rivista per rendere più chiaro cosa comporta disabilitare la verifica del certificato.
Per la console di monitoraggio sono stati risolti i seguenti bug:
-
nella distribuzione statistica a 3 dimensioni, personalizzata per esito, non venivano incluse le transazioni gestite con successo;
-
in caso di transazioni fallite per indisponibilità del backend, veniva erroneamente riportata una dimensione per una risposta inesistente nei dettagli del messaggio di risposta, sia quando la richiesta era diretta verso il dominio interno che verso quello esterno, nonostante nessuna risposta potesse esistere a causa del fallimento della connessione.
Infine è stata corretta una anomalia presente all'interno del tool command line 'govway-vault-cli' che ne impediva il funzionamento su database oracle.