API per integrazione con portale onboarding
Come descritto in #19, è in corso il lavoro di sviluppo di un portale di onboarding rivolto ai SP per gestire tutti i flussi di adesione alla federazione SPID, modifica dei servizi attivi, pubblicazione dei metadati. In questo portale è prevista una fase di validazione tecnica dei servizi caricati prima che questi vadano in produzione nella federazione SPID. A tale scopo bisogna integrare nel portale in corso di sviluppo questo IdP di test in modo da poter raccogliere l'esito dei test e consentire al portale di avanzare il workflow delle pratiche.
Il testenv2 dovrà esporre delle API per:
- caricare/eliminare metadata SP;
- leggere lo storico delle validazioni eseguite in relazione a questo SP.
In particolare lo storico deve contenere, per ciascuna operazione:
- timestamp operazione;
- tipo di richiesta soggetta a validazione (AuthnRequest, LogoutRequest, LogoutResponse);
- richiesta completa;
- risultato validazione (con elenco errori);
- eventuale variante risposta custom selezionata dall'utente.
Il portale di onboarding genererà i metadati usando le informazioni inserite dal SP all'interno del portale stesso, poi attiverà l'SP presso il testenv inviandone i metadati, e poi periodicamente interrogherà il testenv per avere l'elenco delle validazioni eseguite. Quando le riterrà sufficienti in base alle proprie policy, avanzerà il proprio workflow (e probabilmente cancellerà il SP dal testenv, per poi riattivarlo quando fossero necessarie ulteriori validazioni).
A questo scopo la modalità multiutente descritta in #6 non è necessaria (lo è invece il database).
In alternativa possiamo evitare di creare queste API e fare in modo che il portale di onboarding scriva/legga direttamente nel database del testenv2.
Potremmo fare API + single-page application.
Con il merge di #198 il testenv2 è in grado di leggere i metadati dei SP direttamente da un database PostgreSQL. Non servono più API per il caricamento dei metadati, perché un'applicazione esterna come ad esempio il portale di onboarding può andare a scrivere direttamente lì. A questo punto possiamo usare lo stesso approccio anche per registrare lo storico delle validazioni, che poi il portale di onboarding potrà leggere direttamente dal database.
Imho I'll portale di onboarding non dovrebbe dipendere dal DB di testenv2.
Significherebbe avere componenti fortemente accoppiate senza un requisito stringente.
R
Il dom 21 apr 2019, 22:51 Alessandro Ranellucci [email protected] ha scritto:
Con il merge di #198 https://github.com/italia/spid-testenv2/pull/198 il testenv2 è in grado di leggere i metadati dei SP direttamente da un database PostgreSQL. Non servono più API per il caricamento dei metadati, perché un'applicazione esterna come ad esempio il portale di onboarding può andare a scrivere direttamente lì. A questo punto possiamo usare lo stesso approccio anche per registrare lo storico delle validazioni, che poi il portale di onboarding potrà leggere direttamente dal database.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/italia/spid-testenv2/issues/128#issuecomment-485281592, or mute the thread https://github.com/notifications/unsubscribe-auth/AAIWQ3AYOZZLRNWN5JTFRPLPRTHVFANCNFSM4FQG47GA .