col mio team stiamo lavorando su un API per un e-service di un ente che non ha ancora effettuato l’onboarding.
Nella fase di verifica, da guida ufficiale (Utilizzare i voucher - PDND Interoperabilità) è riportato:
“All’interno del file, l’erogatore cerca l’oggetto che ha lo stesso kid presente nell’header del voucher. In quello stesso oggetto troverà la chiave pubblica al parametro n . Effettuerà dunque una verifica della firma, che la chiave privata usata per firmare il voucher corrisponda a quella pubblica appena ottenuta.”
Poiché non abbiamo ancora accesso alla piattaforma volevamo capire se per ottenere la chiave privata usata per firmare il voucher e poter così effettuare il controllo sul token, esiste un qualche servizio esposto da piattaforma o bisogna procedere in qualche altro modo?
Direi che l’onboarding è necessario.
Poi l’ente crea un client e-service e gli associa una finalità e qualche utente, tipicamente del fornitore, che carica sul client la chiave pubblica di una coppia che si è generato per conto suo.
Si fa tutti da interfaccia web, no servizi esposti.
Fin qui la guida era chiara ed esaustiva. Il dubbio che ancora ci rimane è che poi il fruitore chiamerà l’API (che sta su una qualche macchina) e questa dovrà verificare che chi ha chiamato ha i permessi necessari. Quindi estrapola dall’header della request il JWT e controlla che la chiave pubblica presente nel token corrisponda alla chiave privata che ha firmato il voucher, come viene effettuato quest’ultimo passaggio?
Buongiorno, non ho ben capito " All’interno del file, l’erogatore cerca l’oggetto che ha lo stesso kid presente nell’header del voucher. In quello stesso oggetto troverà la chiave pubblica al parametro n . Effettuerà dunque una verifica della firma, che la chiave privata usata per firmare il voucher corrisponda a quella pubblica appena ottenuta." Non ho capito se bisogna confrontare la firma del JWS con la n trovata da PDND. Grazie mille a chiunque risponderà!