La modalità di negoziazione basata su uno scambio di un JWT firmato con l’authorization server, descritta nella sezione “Signed JWT”, è stata selezionata come modalità di negoziazione dei token sulla Piattaforma Digitale Nazionale Dati (PDND) descritta nella sezione “ID_AUTH_REST_01 tramite la Piattaforma Digitale Nazionale Dati (PDND)”.
Il protocollo di negoziazione, oltre ai parametri standard previsti dal rfc 7523 (https://datatracker.ietf.org/doc/html/rfc7523#section-2.2), prevede l’inserimento di alcuni parametri aggiuntivi all’interno del payload del JWT firmato:
purposeId: rappresenta l’identificativo della finalità dell’accordo di adesione recuperabile dalla piattaforma PDND;
sessionInfo: informazioni di sessione che non vengono gestite sulla piattaforma PDND ma consentono di essere inviate al momento della negoziazione per poi essere riportate all’interno dell’access token generato dalla PDND.
il protocollo della PDND prevede inoltre l’aggiunta dei seguenti parametri nella richiesta “x-www-form-urlencoded” :
client_id: se non viene definito alcun valore per il parametro verrà utilizzato il medesimo valore associato al Client ID definito nel payload del JWT;
resource: audience/url che identifica il servizio sulla PDND. Se non viene fornito alcun valore, il parametro non verrà inserito nella richiesta.
I parametri precedentemente descritti sono configurabili attivando la modalità PDND successivamente alla selezione del tipo “Signed JWT” come modalità di negoziazione (Fig. 449). Sono configurabili all’interno della sezione “JWT Payload” (Fig. 450) e della sezione “Dati Richiesta” (Fig. 451).
Fig. 449 Modalità di negoziazione “Signed JWT” via PDND
Fig. 450 Modalità di negoziazione “Signed JWT” via PDND: claim “purposeId” e “sessionInfo” nel payload JWT
Fig. 451 Modalità di negoziazione “Signed JWT” via PDND: parametri “client_id” e “resource” nella richiesta “x-www-form-urlencoded”
Per gli scambi di dati asincroni (Scambi di Dati Asincroni PDND) la PDND espone un endpoint dedicato alla negoziazione dei voucher delle diverse fasi dello scambio, configurabile nel campo URL Scambi Asincroni disponibile in modalità PDND (Fig. 452). Il campo è opzionale: se non viene valorizzato, l’endpoint viene calcolato aggiungendo il suffisso “.async” alla URL della policy, quando questa termina con “token.oauth2” (es. “https://auth.interop.pagopa.it/token.oauth2” diventa “https://auth.interop.pagopa.it/token.oauth2.async”). La stessa policy viene quindi utilizzata sia per le fruizioni sincrone che per quelle che prevedono uno scambio asincrono.
Fig. 452 Modalità di negoziazione “Signed JWT” via PDND: endpoint per gli scambi di dati asincroni