link-it / govway

API Gateway per la Pubblica Amministrazione italiana
https://govway.org
GNU General Public License v3.0
53 stars 10 forks source link

Chiarimenti GovWay erogazione #157

Open lucamontano98 opened 6 months ago

lucamontano98 commented 6 months ago

Buon pomeriggio, abbiamo un erogatore che utilizza il profilo ModI e necessitiamo di controllare la richiesta dei fruitori. Se volessimo utilizzare l'API di PDND per ottenere delle informazioni riguardo il chiamante ed altri asset ad esso collegati e volessimo agganciarla all'erogatore (prima di chiamare l'API finale con indirizzo base riportato nel connettore dell'erogazione stessa) come possiamo procedere? Grazie mille.

Cordiali saluti.

Luca Montano

andreapoli commented 6 months ago

Buon pomeriggio @lucamontano98 .

Puoi seguire le indicazioni fornite nella sezione API PDND per attivare l'utilizzo delle API con il fine di ottenere informazioni sull’organizzazione a cui il client afferisce che saranno consultabili tramite la console di monitoraggio nel dettaglio di una transazione.

lucamontano98 commented 6 months ago

Buon pomeriggio @andreapoli, com'è possibile ingaggiare degli endpoint di API PDND per ottenere delle informazioni circa gli asset presenti nella richiesta arrivata all'erogatore, in modo tale che quest'ultimo possa validarla? E' possibile dall'erogatore chiamare direttamente gli endpoint dell'API (passando eventualmente per il fruitore esposto su GovWay che può effettuare tali chiamate)? Grazie mille.

Distinti saluti.

Luca Montano

andreapoli commented 6 months ago

Puoi far utilizzare all'erogatore, autorizzandolo nel controllo-accessi della configurazione, la fruizione con profilo di interoperabilità "ModI" e nome "api-pdnd" descritta nella sezione API PDND.

Buona serata.

lucamontano98 commented 5 months ago

Buonasera, ok, grazie mille. Sarebbe possibile chiamare vari endpoint di api-pdnd esposta come fruizione ed ottenere vari claim come risultato sui quali andar poi a porre delle condizioni nella configurazione "Autorizzazione per Token Claims" dell'erogazione interessata? Noi al momento effettuiamo quest'operazione lato codice su alcune erogazioni ModI e vorremmo sapere se si può definire una configurazione ad hoc che opera allo stesso modo. Grazie mille.

Distinti saluti.

Luca Montano

andreapoli commented 5 months ago

Buonasera.

Potresti realizzare una Attribute Auhority per ogni chiamata con il fine di recuperare gli elementi da verificare e poi realizzare la verifica degli attributi all'interno della configurazione Autorizzazione per Token Claims come riportato in qualche esempio presente in fondo alla sezione.

lucamontano98 commented 5 months ago

Buonasera, grazie mille per il riscontro. Ho provato a definire una Attribute Authority e delle policy autorizzative lato erogazione. Avrei bisogno di forwardare il token bearer dall'erogatore verso l'API finale, solo che tale token viene riportato all'interno del campo 'authorization', invece che in 'Authorization'. Posso chiederLe cortesemente come posso forwardarlo tramite il corretto header http? Grazie mille.

Distinti saluti.

Luca Montano

andreapoli commented 5 months ago

Buonasera.

Premetto che gli header HTTP sono case insensitive come indicato nel rfc7230.

Il token viene inoltrato al backend, se richiesto nella token policy, esattamente con lo stesso nome con cui è stato ricevuto in ingresso. Puoi verificarlo, abilitando la funzionalità di Registrazione Messaggi.

Se vuoi attuare una modifica del nome puoi utilizzare una Trasformazione modificando l'header come richiesto. Di seguito un esempio:

Esempio