Skip to content

GovWay v3.2.0.rc1

Pre-release
Pre-release
Compare
Choose a tag to compare
@andreapoli andreapoli released this 30 Sep 14:22
· 1587 commits to master since this release

Nuovo Profilo di Interoperabilità ModI PA

La 3.2.0 è la prima versione di GovWay a supportare completamente il profilo ModIPA, assicurando in maniera del tutto trasparente alle applicazioni interne al dominio, la conformità delle API (sia in fruzione che in erogazione) alle nuove Linee Guida AGID di Interoperabilità.

Il Modello di Interoperabilità di ModIPA mantiene sostanzialmente invariato il concetto di dominio di un'amministrazione rispetto a quanto prevedeva il precedente modello SPCoop, rendendo quindi le modalità di configurazione dei profili previsti da ModiPA del tutto analoghe a quelle già adottate per SPCoop.

Tramite la govwayConsole è quindi possibile gestire tutti gli aspetti previsti dalle Linee Guida.

  • Profili di Interazione: definiscono la modalità con cui interagiscono fruitore ed erogatore di una API. Sono supportati i due profili previsti in ModIPA:

    • Bloccante: il fruitore invia la richiesta e resta bloccato in attesa di ricevere la risposta dall'erogatore;
    • Non Bloccante: il fruitore non resta in attesa dopo aver inviato la richiesta, se non per ricevere una notifica di presa in carico. Per ottenere la risposta sarà poi necessario effettuare una distinta interazione, esplicitamente prevista dallo scenario del servizio.
  • Sicurezza Canale: gestione della sicurezza inerente il canale di comunicazione tra i domini fruitore ed erogatore. Sono supportati i due profili previsti in ModIPA:

    • [IDAC01] Direct Trust Transport-Level Security: comunicazione basata sul canale SSL con trust del certificato X509 fornito dal dominio erogatore.
    • [IDAC02] Direct Trust mutual Transport-Level Security: comunicazione basata sul canale SSL con mutua autenticazione, tramite trust dei certificati X509 del fruitore e dell'erogatore.
  • Sicurezza Messaggio: gestione della sicurezza a livello di messaggio, inerente lo scambio di informazioni tra le applicazioni agli estremi del flusso di comunicazione. I profili di sicurezza previsti si distinguono per il caso SOAP e per quello REST:

    • [IDAS01 o IDAR01] Direct Trust con certificato X.509 su SOAP o REST: Tramite la validazione del certificato X509, inserito dall'applicazione mittente all'interno del token di sicurezza della richiesta, l'applicativo destinatario verifica la corrispondenza delle identità e la validità del messaggio, prima di procedere con l'invio della risposta.
    • [IDAS02 o IDAR02] Direct Trust con certificato X.509 su SOAP o REST con unicità del token/messaggio: estensione del profilo precedente con l'aggiunta di un meccanismo di filtro che impedisce il processamento di un messaggio di richiesta duplicato.
    • [IDAS03 o IDAR03] Integrità del payload del messaggio SOAP o REST: profilo che estende i profili precedenti aggiungendo la gestione della firma del payload come verifica di integrità del messaggio ricevuto.
  • URL di Invocazione API: le linee guida richiedono una indicazione esplicita della tecnologia utilizzata (REST o SOAP) e la versione. Le url con cui vengono esposte le API su GovWay soddisfano entrambi i requisiti.

Nuova funzionalità per taggare le API

Alle API è adesso possibile associare uno o più tag al fine di raccoglierle in un gruppo tematico.

La creazione di un tag o l'associazione di un tag preesistente alle API avviene tramite la govwayConsole, direttamente in fase di registrazione dell'API stessa o, successivamente, accedendo all'elenco dei tag di una API.

Il raggruppamento in tag permette:

  • tramite la govwayMonitor, di filtrare per tag le ricerche sulle transazioni o la generazione di report statistici;

  • tramite la govwayConsole, di filtrare per tag le ricerche sulle configurazioni di API, erogazioni e fruizioni.

Miglioramenti alle Funzionalità di Sicurezza

Sono state introdotte le seguenti nuove funzionalità:

  • Connettore HTTPS: è stata aggiunta la possibilità di indicare opzionalmente l'alias della chiave privata da utilizzare per l'autenticazione client; funzionalità utile quando il keystore contiene più chiavi private.

  • CRL: è adesso possibile indicare una lista di CRL per la validazione dei certificati sia sul connettore https che nelle configurazioni relative alla sicurezza messaggio (es. WSSecurity, JOSE Signature, OAuth2 ...).

  • Cache: tutti i keystore e CRL acceduti da GovWay, sia per la sicurezza a livello trasporto che a livello messaggio, sono ora gestiti tramite cache.

  • Frontend HTTPS: se la terminazione ssl viene gestita su un frontend (Apache httpd, IIS, etc) che inoltra su header http i certificati x.509 o il DN dei certificati client autenticati, GovWay può adesso essere configurato per processare le informazioni presenti in tali header.

Miglioramenti alla Console di Monitoraggio

Sono state introdotte le seguenti nuove funzionalità:

  • Ricerca delle Transazioni: è stata riorganizzata, classificando in sezioni le diverse modalità di ricerca:

    • Ricerca generica: consente di effettuare ricerche tramite la selezione di valori in liste ('base') o campi liberi ('avanzata').

    • Ricerca per mittente: consente di selezionare il fruitore della richiesta in base a vari criteri:

      • Valori dei claims di un Token
      • Identità del Soggetto
      • Identità dell'applicativo
      • Principal del chiamante
      • Indirizzo IP del client
    • Ricerca per identificativo: consente di individuare una transazione tramite l'identificativo applicativo, l'id del messaggio o l'id di transazione.

  • Tipologia delle Transazioni: è stata reintrodotta la possibilità di ricerca senza dover indicare obbligatoriamente la tipologia della transazione (erogazione/fruizione).

  • Indirizzo IP del Chiamante: è stata aggiunta la possibilità di effettuare la ricerca di transazioni specificando l'indirizzo IP del chiamante. L'indirizzo IP può riferirsi all'indirizzo IP del client o al valore dell'header http 'X-Forwarded-For'.
    L'indirizzo IP può essere inoltre utilizzato per filtrare i risultati dei report statistici (Distribuzione per API, per Operazione, per Soggetto ...). Infine è stata introdotta un nuovo tipo di report basato sugli indirizzi IP dei chiamanti.

  • Ricerca per Identificativo di Collaborazione: aggiunta la possibilità di effettuare ricerche per individuare tutte le transazioni correlate attraverso il medesimo identificativo di collaborazione.

  • Ricerca per Identificativo della Richiesta: consente di invidivuare una transazione che è correlata ad una precedente richiesta, tramite l'id di riferimento richiesta

Miglioramenti sulla Visualizzazione delle Url di Invocazione

Rivista la modalità di visualizzazione delle Url di Invocazione delle API esposte da GovWay per assicurare che, in presenza di un reverse proxy che media le comunicazioni https con GovWay, sia possibile configurare opportunamente le url di invocazione delle API esposte da GovWay allineandole con le eventuali configurazioni specifiche realizzate sul reverse proxy.

Miglioramenti all'Installer

Sono state apportati i seguenti miglioramenti all'installer binario:

  • Aggiunto supporto per il nuovo profilo di interoperabilità 'ModI PA'.

  • L'installer adesso genera, all'interno degli script sql, informazioni relative ai parametri di installazione selezionati. Tali informazioni sono poi consultabili tramite la sezione 'Runtime' della 'govwayConsole'.

  • Nella modalità di aggiornamento vengono adesso prodotte informazioni utili a individuare le modifiche intervenute sui file di configurazione (dist/cfg) rispetto alla versione precedente.

Fix minori

Sono stati risolti i seguenti bug:

  • Riconoscimento Azione per API Soap: risolto bug che causava il fallimento durante il riconoscimento dell'azione basato sull'interfaccia wsdl se vi erano più operazioni che condividevano la definizione di un medesimo header soap.

  • Token Policy: sono stati corretti alcuni bug inerenti la gestione dei token OAuth2:

    • [#45] Malfunzionamento nella funzione di "Token Forward" tramite header http
      'Authorization'.

    • Malfunzionamento nella gestione di alcune funzioni delle TokenPolicy. Quando disabilitate, se già in uso nella configurazione delle API, la funzionalità rimaneva abilitata sull'API anche se non più visualizzata nella maschera di controllo degli accessi e quindi non più disabilitabile.

    • Il truststore per gestire le comunicazioni ssl verso Google conteneva un certificato scaduto che è stato rimosso lasciando nel truststore la sola CA che possiede una scadenza con data Dicembre 2021.

  • Dump Binario: risolto malfunzionamento che si verificava nel caso di messaggi senza payload. Non venivano salvati gli header HTTP presenti se era stata abilitata la funzionalità di dump binario.

  • Informazioni Runtime e Verifica Connettività: abilitando la configurazione in cluster delle console, l'accesso alla sezione 'Runtime' e l'accesso alla funzionalità di 'Verifica Connettività' di un connettore produceva il seguente errore: java.lang.NoClassDefFoundError: org/springframework/web/util/UriUtils ...

  • Profilo 'Fatturazione Elettronica': la riconciliazione sulle notifiche descritta nell'Issue #27 non funzionava su database di tipo Oracle. Inoltre la riconciliazione specifica per la fatturazione attiva, riguardante il trasmittente e l'applicativo mittente non funzionava correttamente.